![]() |
ryujin 2.1.1 revision dbf0e3ba7acdb60b6d558e4257815df4a8f8daf9
|
#include <source/navier_stokes/parabolic_solver_gmg_operators.h>
Public Types | |
using | vector_type = dealii::LinearAlgebra::distributed::Vector< Number > |
using | block_vector_type = dealii::LinearAlgebra::distributed::BlockVector< Number > |
Public Member Functions | |
DiagonalMatrix ()=default | |
void | reinit (const vector_type &lumped_mass_matrix, const vector_type &density, const dealii::AffineConstraints< Number > &affine_constraints) |
vector_type & | get_vector () |
block_vector_type & | get_block_vector () |
void | vmult (vector_type &dst, const vector_type &src) const |
void | vmult (block_vector_type &dst, const block_vector_type &src) const |
A diagonal matrix used as a preconditioner for the non-multigrid CG iteration. The diagonal matrix is constructed by computing \(d_i=1/(\rho_i m_i)\) for a given lumped mass matrix \( m_i \), and a density field \( \rho_i \).
Definition at line 44 of file parabolic_solver_gmg_operators.h.
using ryujin::NavierStokes::DiagonalMatrix< dim, Number >::vector_type = dealii::LinearAlgebra::distributed::Vector<Number> |
Definition at line 50 of file parabolic_solver_gmg_operators.h.
using ryujin::NavierStokes::DiagonalMatrix< dim, Number >::block_vector_type = dealii::LinearAlgebra::distributed::BlockVector<Number> |
Definition at line 55 of file parabolic_solver_gmg_operators.h.
|
default |
Constructor
|
inline |
Compute the inverse of a given density \( \rho_i \) and a given lumped mass matrix \( m_i \), viz., \(d_i=1/(\rho_i m_i)\).
Definition at line 67 of file parabolic_solver_gmg_operators.h.
|
inline |
Get access to the internal vector to be externally filled.
Definition at line 92 of file parabolic_solver_gmg_operators.h.
|
inline |
Get access to the internal vector to be externally filled.
Definition at line 100 of file parabolic_solver_gmg_operators.h.
|
inline |
Apply on a vector.
Definition at line 108 of file parabolic_solver_gmg_operators.h.
|
inline |
Apply on a block vector.
Definition at line 122 of file parabolic_solver_gmg_operators.h.