Inherits Base< dim, ::LinearAlgebra::distributed::Vector< number > >.
|
| ABlockOperator () |
|
void | clear () override |
|
void | reinit (const Mapping< dim > &mapping, const DoFHandler< dim > &dof_handler_v, const DoFHandler< dim > &dof_handler_p, const AffineConstraints< number > &constraints_v, const AffineConstraints< number > &constraints_p, std::shared_ptr< MatrixFree< dim, double >> mf_storage, const unsigned int level=numbers::invalid_unsigned_int) |
|
void | set_cell_data (const OperatorCellData< dim, number > &data) |
|
void | compute_diagonal () override |
|
void | set_diagonal (const ::LinearAlgebra::distributed::Vector< number > &diag) |
|
|
void | inner_cell_operation (FEEvaluation< dim, degree_v, degree_v+1, dim, number > &velocity) const |
|
void | cell_operation (FEEvaluation< dim, degree_v, degree_v+1, dim, number > &velocity) const |
|
void | apply_add (::LinearAlgebra::distributed::Vector< number > &dst, const ::LinearAlgebra::distributed::Vector< number > &src) const override |
|
void | local_apply (const ::MatrixFree< dim, number > &data, ::LinearAlgebra::distributed::Vector< number > &dst, const ::LinearAlgebra::distributed::Vector< number > &src, const std::pair< unsigned int, unsigned int > &cell_range) const |
|
template<int dim, int degree_v, typename number>
class aspect::MatrixFreeStokesOperators::ABlockOperator< dim, degree_v, number >
Operator for the A block of the Stokes matrix. The same class is used for both active and level mesh operators.
Definition at line 421 of file matrix_free_operators.h.
§ ABlockOperator()
template<int dim, int degree_v, typename number>
§ clear()
template<int dim, int degree_v, typename number>
§ reinit()
template<int dim, int degree_v, typename number>
void aspect::MatrixFreeStokesOperators::ABlockOperator< dim, degree_v, number >::reinit |
( |
const Mapping< dim > & |
mapping, |
|
|
const DoFHandler< dim > & |
dof_handler_v, |
|
|
const DoFHandler< dim > & |
dof_handler_p, |
|
|
const AffineConstraints< number > & |
constraints_v, |
|
|
const AffineConstraints< number > & |
constraints_p, |
|
|
std::shared_ptr< MatrixFree< dim, double >> |
mf_storage, |
|
|
const unsigned int |
level = numbers::invalid_unsigned_int |
|
) |
| |
Initialize the MatrixFree object given in mf_storage
and use that to initialize this operator.
§ set_cell_data()
template<int dim, int degree_v, typename number>
Pass in a reference to the problem data.
§ compute_diagonal()
template<int dim, int degree_v, typename number>
Computes the diagonal of the matrix. Since matrix-free operators have not access to matrix elements, we must apply the matrix-free operator to the unit vectors to recover the diagonal.
§ set_diagonal()
template<int dim, int degree_v, typename number>
Manually set the diagonal inside the matrix-free object. This function is needed when using tangential constraints as the function compute_diagonal() cannot handle non-Dirichlet boundary conditions.
§ inner_cell_operation()
template<int dim, int degree_v, typename number>
Defines the inner-most operator on a single cell batch with the loop over quadrature points.
§ cell_operation()
template<int dim, int degree_v, typename number>
§ apply_add()
template<int dim, int degree_v, typename number>
Performs the application of the matrix-free operator. This function is called by vmult() functions MatrixFreeOperators::Base.
§ local_apply()
template<int dim, int degree_v, typename number>
void aspect::MatrixFreeStokesOperators::ABlockOperator< dim, degree_v, number >::local_apply |
( |
const ::MatrixFree< dim, number > & |
data, |
|
|
::LinearAlgebra::distributed::Vector< number > & |
dst, |
|
|
const ::LinearAlgebra::distributed::Vector< number > & |
src, |
|
|
const std::pair< unsigned int, unsigned int > & |
cell_range |
|
) |
| const |
|
private |
Defines the application of the cell matrix.
§ cell_data
template<int dim, int degree_v, typename number>
A pointer to the current cell data that contains viscosity and other required parameters per cell.
Definition at line 506 of file matrix_free_operators.h.
The documentation for this class was generated from the following file: