include/meltpooldg/linear_algebra/utilities_matrixfree.hpp File Reference
|
Developer Documentation
|
utilities_matrixfree.hpp File Reference
#include <deal.II/lac/generic_linear_algebra.h>#include <deal.II/matrix_free/matrix_free.h>#include <deal.II/matrix_free/operators.h>#include <meltpooldg/core/operator_base.hpp>#include <meltpooldg/core/scratch_data.hpp>#include <meltpooldg/utilities/fe_integrator.hpp>
Include dependency graph for utilities_matrixfree.hpp:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Namespaces | |
| namespace | MeltPoolDG |
| Interface for a general preconditioner. | |
| namespace | MeltPoolDG::Utilities |
| namespace | MeltPoolDG::Utilities::MatrixFree |
Typedefs | |
| template<typename number = double> | |
| using | MeltPoolDG::Utilities::MatrixFree::VectorType = dealii::LinearAlgebra::distributed::Vector< number > |
| template<typename number = double> | |
| using | MeltPoolDG::Utilities::MatrixFree::BlockVectorType = dealii::LinearAlgebra::distributed::BlockVector< number > |
Functions | |
| template<int dim, typename number = double, typename DoFVectorType = VectorType<number>, typename SrcRhsVectorType = VectorType<number>, typename std::enable_if_t< std::is_same_v< DoFVectorType, VectorType< number > >, int > = 0> | |
| void | MeltPoolDG::Utilities::MatrixFree::create_rhs_and_apply_dirichlet_matrixfree (OperatorMatrixFree< dim, number > &operator_base, DoFVectorType &rhs, const SrcRhsVectorType &src, const ScratchData< dim, dim, number > &scratch_data, const unsigned int dof_idx, const unsigned int dof_no_bc_idx, const bool zero_out, const std::optional< std::pair< std::vector< unsigned int >, std::vector< number > > > &additional_inhomogeneous_constraints=std::nullopt) |
| template<int dim, typename number = double, typename DoFVectorType = BlockVectorType<number>, typename SrcRhsVectorType = VectorType<number>, typename std::enable_if_t< std::is_same_v< DoFVectorType, BlockVectorType< number > >, int > = 0> | |
| void | MeltPoolDG::Utilities::MatrixFree::create_rhs_and_apply_dirichlet_matrixfree (OperatorMatrixFree< dim, number > &operator_base, DoFVectorType &rhs, const SrcRhsVectorType &src, const ScratchData< dim, dim, number > &scratch_data, const std::array< unsigned int, dim > &dof_indices_per_block, const unsigned int &dof_no_bc_idx, const bool zero_out, const std::optional< std::pair< std::vector< unsigned int >, std::vector< std::vector< number > > > > &additional_inhomogeneous_constraints=std::nullopt) |
| Compute the modified right-hand side for (inhomogeneous) dirichlet boundary conditions \( x_d \), as above, but for BlockVector solutions with component-wise DoF indices. | |
| template<int dim, int n_components, typename number > | |
| void | MeltPoolDG::Utilities::MatrixFree::local_apply_inverse_mass_matrix (const dealii::MatrixFree< dim, number > &matrix_free, VectorType< number > &dst, const VectorType< number > &src, const std::pair< unsigned int, unsigned int > &cell_range, const unsigned int dof_idx, const unsigned int quad_idx) |
Generated by