Steady-state problem operator with an equation system. More...
#include <EquationSystemProblemOperator.h>
Public Member Functions | |
| EquationSystemProblemOperator (MFEMProblem &problem) | |
| virtual void | SetGridFunctions () override |
| virtual void | Solve () override |
| virtual EquationSystem * | GetEquationSystem () const override |
| Returns a pointer to the operator's equation system. More... | |
| void | Mult (const mfem::Vector &, mfem::Vector &) const override |
| virtual void | SetTrialVariablesFromTrueVectors () |
| virtual void | Init (mfem::BlockVector &X) |
Public Attributes | |
| mfem::Array< int > | _block_true_offsets_test |
| mfem::Array< int > | _block_true_offsets_trial |
| mfem::BlockVector | _true_x |
| mfem::BlockVector | _true_rhs |
Protected Member Functions | |
| void | BuildEquationSystemOperator () |
| Add kernels/bcs and assemble the linear part of the equation system. More... | |
| void | SolveWithOperator (EquationSystem &equation_system, const mfem::Vector &rhs, mfem::Vector &x) |
| Solve the current equation system/operator using the configured nonlinear solver or linear solver for a purely linear problem. More... | |
Protected Attributes | |
| MFEMProblem & | _problem |
| Reference to the current problem. More... | |
| MFEMProblemData & | _problem_data |
| std::vector< std::string > | _trial_var_names |
| Vector of names of state gridfunctions used in formulation, ordered by appearance in block vector during solve. More... | |
| std::vector< std::string > | _test_var_names |
| std::vector< mfem::ParGridFunction * > | _trial_variables |
| std::vector< mfem::ParGridFunction * > | _test_variables |
| mfem::Vector * | _trial_true_vector = nullptr |
Private Attributes | |
| std::shared_ptr< EquationSystem > | _equation_system {nullptr} |
Steady-state problem operator with an equation system.
Definition at line 20 of file EquationSystemProblemOperator.h.
|
inline |
Definition at line 23 of file EquationSystemProblemOperator.h.
|
protected |
Add kernels/bcs and assemble the linear part of the equation system.
Definition at line 36 of file EquationSystemProblemOperator.C.
Referenced by Solve(), and Moose::MFEM::ComplexEquationSystemProblemOperator::Solve().
|
inlineoverridevirtual |
Returns a pointer to the operator's equation system.
Implements Moose::MFEM::EquationSystemInterface.
Reimplemented in Moose::MFEM::ComplexEquationSystemProblemOperator, and Moose::MFEM::EigenproblemESProblemOperator.
Definition at line 31 of file EquationSystemProblemOperator.h.
Referenced by BuildEquationSystemOperator(), Moose::MFEM::EigenproblemESProblemOperator::GetEquationSystem(), SetGridFunctions(), and Solve().
|
virtualinherited |
Reimplemented in Moose::MFEM::TimeDependentEquationSystemProblemOperator.
Definition at line 50 of file ProblemOperatorBase.C.
Referenced by Moose::MFEM::TimeDependentEquationSystemProblemOperator::Init().
|
inlineoverrideinherited |
Definition at line 28 of file ProblemOperator.h.
|
overridevirtual |
Reimplemented from Moose::MFEM::ProblemOperator.
Reimplemented in Moose::MFEM::ComplexEquationSystemProblemOperator.
Definition at line 17 of file EquationSystemProblemOperator.C.
|
virtualinherited |
Definition at line 67 of file ProblemOperatorBase.C.
Referenced by Moose::MFEM::TimeDependentEquationSystemProblemOperator::Solve().
|
overridevirtual |
Reimplemented from Moose::MFEM::ProblemOperator.
Reimplemented in Moose::MFEM::ComplexEquationSystemProblemOperator, and Moose::MFEM::EigenproblemESProblemOperator.
Definition at line 25 of file EquationSystemProblemOperator.C.
|
protectedinherited |
Solve the current equation system/operator using the configured nonlinear solver or linear solver for a purely linear problem.
Definition at line 79 of file ProblemOperatorBase.C.
Referenced by Moose::MFEM::TimeDependentEquationSystemProblemOperator::ImplicitSolve(), Solve(), and Moose::MFEM::ComplexEquationSystemProblemOperator::Solve().
|
inherited |
Definition at line 33 of file ProblemOperatorBase.h.
Referenced by Moose::MFEM::ProblemOperator::SetGridFunctions(), Moose::MFEM::TimeDependentProblemOperator::SetGridFunctions(), Moose::MFEM::ProblemOperatorBase::SetGridFunctions(), and Moose::MFEM::ComplexEquationSystemProblemOperator::SetGridFunctions().
|
inherited |
Definition at line 34 of file ProblemOperatorBase.h.
Referenced by Moose::MFEM::ProblemOperatorBase::Init(), Moose::MFEM::ProblemOperator::SetGridFunctions(), Moose::MFEM::TimeDependentProblemOperator::SetGridFunctions(), Moose::MFEM::ProblemOperatorBase::SetGridFunctions(), and Moose::MFEM::ComplexEquationSystemProblemOperator::SetGridFunctions().
|
private |
Definition at line 42 of file EquationSystemProblemOperator.h.
Referenced by GetEquationSystem().
|
protectedinherited |
Reference to the current problem.
Definition at line 45 of file ProblemOperatorBase.h.
Referenced by Moose::MFEM::TimeDependentEquationSystemProblemOperator::Init(), and Moose::MFEM::TimeDependentEquationSystemProblemOperator::Solve().
|
protectedinherited |
Definition at line 46 of file ProblemOperatorBase.h.
Referenced by Moose::MFEM::ComplexEquationSystemProblemOperator::ComplexEquationSystemProblemOperator(), Moose::MFEM::EigenproblemESProblemOperator::EigenproblemESProblemOperator(), Moose::MFEM::TimeDependentEquationSystemProblemOperator::ImplicitSolve(), Moose::MFEM::TimeDependentEquationSystemProblemOperator::Init(), Moose::MFEM::EigenproblemESProblemOperator::RecoverEigenproblemSolution(), Moose::MFEM::ProblemOperatorBase::SetGridFunctions(), Moose::MFEM::ComplexEquationSystemProblemOperator::SetGridFunctions(), Moose::MFEM::EigenproblemESProblemOperator::Solve(), Moose::MFEM::TimeDependentEquationSystemProblemOperator::Solve(), and Moose::MFEM::ProblemOperatorBase::SolveWithOperator().
|
protectedinherited |
|
protectedinherited |
Definition at line 53 of file ProblemOperatorBase.h.
Referenced by Moose::MFEM::ProblemOperator::SetGridFunctions(), Moose::MFEM::TimeDependentProblemOperator::SetGridFunctions(), and Moose::MFEM::ProblemOperatorBase::SetGridFunctions().
|
protectedinherited |
Definition at line 54 of file ProblemOperatorBase.h.
Referenced by Moose::MFEM::ProblemOperatorBase::Init(), Moose::MFEM::ProblemOperatorBase::SetTrialVariablesFromTrueVectors(), and Moose::MFEM::TimeDependentEquationSystemProblemOperator::Solve().
|
protectedinherited |
Vector of names of state gridfunctions used in formulation, ordered by appearance in block vector during solve.
Definition at line 50 of file ProblemOperatorBase.h.
Referenced by Moose::MFEM::EigenproblemESProblemOperator::RecoverEigenproblemSolution(), Moose::MFEM::ProblemOperatorBase::SetGridFunctions(), SetGridFunctions(), Moose::MFEM::ComplexEquationSystemProblemOperator::SetGridFunctions(), Moose::MFEM::TimeDependentEquationSystemProblemOperator::SetGridFunctions(), and Moose::MFEM::TimeDependentEquationSystemProblemOperator::Solve().
|
protectedinherited |
Definition at line 52 of file ProblemOperatorBase.h.
Referenced by Moose::MFEM::ProblemOperatorBase::Init(), Moose::MFEM::ProblemOperator::SetGridFunctions(), Moose::MFEM::TimeDependentProblemOperator::SetGridFunctions(), Moose::MFEM::ProblemOperatorBase::SetGridFunctions(), and Moose::MFEM::ProblemOperatorBase::SetTrialVariablesFromTrueVectors().
|
inherited |
Definition at line 36 of file ProblemOperatorBase.h.
Referenced by BuildEquationSystemOperator(), Moose::MFEM::TimeDependentEquationSystemProblemOperator::BuildEquationSystemOperator(), Moose::MFEM::TimeDependentEquationSystemProblemOperator::ImplicitSolve(), Moose::MFEM::ProblemOperatorBase::SetGridFunctions(), Moose::MFEM::ComplexEquationSystemProblemOperator::SetGridFunctions(), Solve(), and Moose::MFEM::ComplexEquationSystemProblemOperator::Solve().
|
inherited |
Definition at line 36 of file ProblemOperatorBase.h.
Referenced by BuildEquationSystemOperator(), Moose::MFEM::EigenproblemESProblemOperator::BuildEquationSystemOperator(), Moose::MFEM::TimeDependentEquationSystemProblemOperator::BuildEquationSystemOperator(), Moose::MFEM::TimeDependentEquationSystemProblemOperator::ImplicitSolve(), Moose::MFEM::ProblemOperatorBase::SetGridFunctions(), Moose::MFEM::ComplexEquationSystemProblemOperator::SetGridFunctions(), Solve(), and Moose::MFEM::ComplexEquationSystemProblemOperator::Solve().
1.8.14