https://mooseframework.inl.gov
Public Member Functions | Public Attributes | Protected Attributes | List of all members
Moose::MFEM::ProblemOperator Class Reference

Steady-state problem operator with no equation system. More...

#include <ProblemOperator.h>

Inheritance diagram for Moose::MFEM::ProblemOperator:
[legend]

Public Member Functions

 ProblemOperator (MFEMProblemData &problem)
 
void SetGridFunctions () override
 
virtual void Solve (mfem::Vector &)
 
void Mult (const mfem::Vector &, mfem::Vector &) const override
 
virtual void SetTestVariablesFromTrueVectors ()
 
virtual void SetTrialVariablesFromTrueVectors ()
 
virtual void Init (mfem::BlockVector &X)
 

Public Attributes

mfem::Array< int_block_true_offsets
 
mfem::BlockVector _true_x
 
mfem::BlockVector _true_rhs
 
mfem::OperatorHandle _equation_system_operator
 

Protected Attributes

MFEMProblemData_problem
 
std::vector< std::string > _test_var_names
 
std::vector< mfem::ParGridFunction * > _test_variables
 
std::vector< std::string > _trial_var_names
 
std::vector< mfem::ParGridFunction * > _trial_variables
 

Detailed Description

Steady-state problem operator with no equation system.

Definition at line 19 of file ProblemOperator.h.

Constructor & Destructor Documentation

◆ ProblemOperator()

Moose::MFEM::ProblemOperator::ProblemOperator ( MFEMProblemData problem)
inline

Definition at line 22 of file ProblemOperator.h.

22 : ProblemOperatorInterface(problem) {}
ProblemOperatorInterface(MFEMProblemData &problem)

Member Function Documentation

◆ Init()

void Moose::MFEM::ProblemOperatorInterface::Init ( mfem::BlockVector &  X)
virtualinherited

Reimplemented in Moose::MFEM::TimeDomainEquationSystemProblemOperator, and Moose::MFEM::EquationSystemProblemOperator.

Definition at line 36 of file ProblemOperatorInterface.C.

Referenced by Moose::MFEM::EquationSystemProblemOperator::Init(), and Moose::MFEM::TimeDomainEquationSystemProblemOperator::Init().

37 {
38  X.Update(_block_true_offsets);
39  for (size_t i = 0; i < _test_variables.size(); ++i)
40  {
41  X.GetBlock(i) = _test_variables.at(i)->GetTrueVector();
42  _test_variables.at(i)->MakeTRef(_test_variables.at(i)->ParFESpace(), X, _block_true_offsets[i]);
43  }
44 }
std::vector< mfem::ParGridFunction * > _test_variables

◆ Mult()

void Moose::MFEM::ProblemOperator::Mult ( const mfem::Vector &  ,
mfem::Vector &   
) const
inlineoverride

Definition at line 27 of file ProblemOperator.h.

27 {}

◆ SetGridFunctions()

void Moose::MFEM::ProblemOperator::SetGridFunctions ( )
overridevirtual

◆ SetTestVariablesFromTrueVectors()

void Moose::MFEM::ProblemOperatorInterface::SetTestVariablesFromTrueVectors ( )
virtualinherited

Definition at line 47 of file ProblemOperatorInterface.C.

Referenced by Moose::MFEM::TimeDomainEquationSystemProblemOperator::ImplicitSolve().

48 {
49  for (unsigned int ind = 0; ind < _test_variables.size(); ++ind)
50  {
51  _test_variables.at(ind)->SetFromTrueVector();
52  }
53 }
std::vector< mfem::ParGridFunction * > _test_variables

◆ SetTrialVariablesFromTrueVectors()

void Moose::MFEM::ProblemOperatorInterface::SetTrialVariablesFromTrueVectors ( )
virtualinherited

Definition at line 56 of file ProblemOperatorInterface.C.

Referenced by Moose::MFEM::TimeDomainEquationSystemProblemOperator::ImplicitSolve().

57 {
58  for (unsigned int ind = 0; ind < _trial_variables.size(); ++ind)
59  {
60  _trial_variables.at(ind)->SetFromTrueVector();
61  }
62 }
std::vector< mfem::ParGridFunction * > _trial_variables

◆ Solve()

virtual void Moose::MFEM::ProblemOperator::Solve ( mfem::Vector &  )
inlinevirtual

Reimplemented in Moose::MFEM::EquationSystemProblemOperator.

Definition at line 26 of file ProblemOperator.h.

26 {}

Member Data Documentation

◆ _block_true_offsets

mfem::Array<int> Moose::MFEM::ProblemOperatorInterface::_block_true_offsets
inherited

◆ _equation_system_operator

mfem::OperatorHandle Moose::MFEM::ProblemOperatorInterface::_equation_system_operator
inherited

Definition at line 32 of file ProblemOperatorInterface.h.

◆ _problem

MFEMProblemData& Moose::MFEM::ProblemOperatorInterface::_problem
protectedinherited

◆ _test_var_names

std::vector<std::string> Moose::MFEM::ProblemOperatorInterface::_test_var_names
protectedinherited

◆ _test_variables

std::vector<mfem::ParGridFunction *> Moose::MFEM::ProblemOperatorInterface::_test_variables
protectedinherited

◆ _trial_var_names

std::vector<std::string> Moose::MFEM::ProblemOperatorInterface::_trial_var_names
protectedinherited

◆ _trial_variables

std::vector<mfem::ParGridFunction *> Moose::MFEM::ProblemOperatorInterface::_trial_variables
protectedinherited

◆ _true_rhs

mfem::BlockVector Moose::MFEM::ProblemOperatorInterface::_true_rhs
inherited

◆ _true_x

mfem::BlockVector Moose::MFEM::ProblemOperatorInterface::_true_x
inherited

The documentation for this class was generated from the following files: