![]() |
ryujin 2.1.1 revision ee5cbcbf2346c1299c942d0e1f13b46449973c18
|
#include <source/euler_poisson/laplace_operator.h>


Classes | |
| struct | MultigridParameters |
Public Types | |
| using | ScalarHostVector = Vectors::ScalarHostVector< Number > |
| using | ScalarHostVectorFloat = Vectors::ScalarHostVector< float > |
| using | Preconditioner = dealii::PreconditionChebyshev< LaplaceOperator< dim, float >, ScalarHostVectorFloat > |
Public Member Functions | |
| MGSmoother ()=default | |
| void | initialize (const OfflineData< dim, Number > &offline_data, const std::set< dealii::types::boundary_id > boundary_ids, const MultigridParameters parameters) |
| void | vmult (ScalarHostVector &dst, const ScalarHostVector &src) const |
| void | Tvmult (ScalarHostVector &dst, const ScalarHostVector &src) const |
Static Public Attributes | |
| static constexpr unsigned int | order_fe = 1 |
| static constexpr unsigned int | order_quad = 2 |
A geometric multigrid smoother and preconditioner for the Laplace operator used when solving for the electrostatic potential.
Definition at line 387 of file laplace_operator.h.
| using ryujin::MGSmoother< dim, Number >::ScalarHostVector = Vectors::ScalarHostVector<Number> |
Definition at line 394 of file laplace_operator.h.
| using ryujin::MGSmoother< dim, Number >::ScalarHostVectorFloat = Vectors::ScalarHostVector<float> |
Definition at line 395 of file laplace_operator.h.
| using ryujin::MGSmoother< dim, Number >::Preconditioner = dealii::PreconditionChebyshev<LaplaceOperator<dim, float>, ScalarHostVectorFloat> |
Definition at line 397 of file laplace_operator.h.
|
default |
|
inline |
Definition at line 417 of file laplace_operator.h.
References ryujin::MGTransfer< dim, Number >::build(), ryujin::OfflineData< dim, Number >::discretization(), ryujin::OfflineData< dim, Number >::dof_handler(), ryujin::OfflineData< dim, Number >::dof_handler_cg(), ryujin::MGSmoother< dim, Number >::MultigridParameters::gmg_coarse_tolerance, ryujin::MGSmoother< dim, Number >::MultigridParameters::gmg_min_level, ryujin::MGSmoother< dim, Number >::MultigridParameters::gmg_smoother_degree, ryujin::MGSmoother< dim, Number >::MultigridParameters::gmg_smoother_max_eig, ryujin::MGSmoother< dim, Number >::MultigridParameters::gmg_smoother_n_cg_iter, and ryujin::MGSmoother< dim, Number >::MultigridParameters::gmg_smoother_range.
|
inline |
Definition at line 560 of file laplace_operator.h.
Referenced by ryujin::MGSmoother< dim, Number >::Tvmult().
|
inline |
Definition at line 567 of file laplace_operator.h.
References ryujin::MGSmoother< dim, Number >::vmult().
|
staticconstexpr |
Definition at line 391 of file laplace_operator.h.
|
staticconstexpr |
Definition at line 392 of file laplace_operator.h.