www.mooseframework.org
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Friends | List of all members
SubProblem Class Referenceabstract

Generic class for solving transient nonlinear problems. More...

#include <SubProblem.h>

Inheritance diagram for SubProblem:
[legend]

Public Member Functions

 SubProblem (const InputParameters &parameters)
 
virtual ~SubProblem ()
 
virtual EquationSystems & es ()=0
 
virtual MooseMeshmesh ()=0
 
virtual bool checkNonlocalCouplingRequirement ()
 
virtual void solve ()=0
 
virtual bool converged ()=0
 
virtual void onTimestepBegin ()=0
 
virtual void onTimestepEnd ()=0
 
virtual bool isTransient () const =0
 
virtual TagID addVectorTag (TagName tag_name)
 Create a Tag. More...
 
virtual TagID getVectorTagID (const TagName &tag_name)
 Get a TagID from a TagName. More...
 
virtual TagName vectorTagName (TagID tag)
 Retrieve the name associated with a TagID. More...
 
virtual std::map< TagName, TagID > & getVectorTags ()
 Return all vector tags, where a tag is represented by a map from name to ID. More...
 
virtual bool vectorTagExists (TagID tag)
 Check to see if a particular Tag exists. More...
 
bool vectorTagExists (const TagName &tag_name)
 Check to see if a particular Tag exists by using Tag name. More...
 
virtual unsigned int numVectorTags ()
 The total number of tags. More...
 
virtual TagID addMatrixTag (TagName tag_name)
 Create a Tag. More...
 
virtual TagID getMatrixTagID (const TagName &tag_name)
 Get a TagID from a TagName. More...
 
virtual TagName matrixTagName (TagID tag)
 Retrieve the name associated with a TagID. More...
 
virtual bool matrixTagExists (const TagName &tag_name)
 Check to see if a particular Tag exists. More...
 
virtual bool matrixTagExists (TagID tag_id)
 Check to see if a particular Tag exists. More...
 
virtual unsigned int numMatrixTags ()
 The total number of tags. More...
 
virtual std::map< TagName, TagID > & getMatrixTags ()
 Return all matrix tags in the sytem, where a tag is represented by a map from name to ID. More...
 
virtual bool hasVariable (const std::string &var_name) const =0
 
virtual MooseVariableFEBasegetVariable (THREAD_ID tid, const std::string &var_name, Moose::VarKindType expected_var_type=Moose::VarKindType::VAR_ANY, Moose::VarFieldType expected_var_field_type=Moose::VarFieldType::VAR_FIELD_ANY)=0
 Returns the variable reference for requested variable which must be of the expected_var_type (Nonlinear vs. More...
 
virtual MooseVariablegetStandardVariable (THREAD_ID tid, const std::string &var_name)=0
 Returns the variable reference for requested MooseVariable which may be in any system. More...
 
virtual VectorMooseVariablegetVectorVariable (THREAD_ID tid, const std::string &var_name)=0
 Returns the variable reference for requested VectorMooseVariable which may be in any system. More...
 
virtual bool hasScalarVariable (const std::string &var_name) const =0
 Returns a Boolean indicating whether any system contains a variable with the name provided. More...
 
virtual MooseVariableScalargetScalarVariable (THREAD_ID tid, const std::string &var_name)=0
 Returns the scalar variable reference from whichever system contains it. More...
 
virtual System & getSystem (const std::string &var_name)=0
 Returns the equation system containing the variable provided. More...
 
virtual void setActiveElementalMooseVariables (const std::set< MooseVariableFEBase *> &moose_vars, THREAD_ID tid)
 Set the MOOSE variables to be reinited on each element. More...
 
virtual const std::set< MooseVariableFEBase * > & getActiveElementalMooseVariables (THREAD_ID tid) const
 Get the MOOSE variables to be reinited on each element. More...
 
virtual bool hasActiveElementalMooseVariables (THREAD_ID tid) const
 Whether or not a list of active elemental moose variables has been set. More...
 
virtual void clearActiveElementalMooseVariables (THREAD_ID tid)
 Clear the active elemental MooseVariableFEBase. More...
 
virtual void setActiveMaterialProperties (const std::set< unsigned int > &mat_prop_ids, THREAD_ID tid)
 Record and set the material properties required by the current computing thread. More...
 
virtual const std::set< unsigned int > & getActiveMaterialProperties (THREAD_ID tid) const
 Get the material properties required by the current computing thread. More...
 
virtual bool hasActiveMaterialProperties (THREAD_ID tid) const
 Method to check whether or not a list of active material roperties has been set. More...
 
virtual void clearActiveMaterialProperties (THREAD_ID tid)
 Clear the active material properties. More...
 
virtual Assemblyassembly (THREAD_ID tid)=0
 
virtual void prepareShapes (unsigned int var, THREAD_ID tid)=0
 
virtual void prepareFaceShapes (unsigned int var, THREAD_ID tid)=0
 
virtual void prepareNeighborShapes (unsigned int var, THREAD_ID tid)=0
 
virtual Moose::CoordinateSystemType getCoordSystem (SubdomainID sid)=0
 
unsigned int getAxisymmetricRadialCoord () const
 Returns the desired radial direction for RZ coordinate transformation. More...
 
virtual DiracKernelInfodiracKernelInfo ()
 
virtual Real finalNonlinearResidual () const
 
virtual unsigned int nNonlinearIterations () const
 
virtual unsigned int nLinearIterations () const
 
virtual void addResidual (THREAD_ID tid)=0
 
virtual void addResidualNeighbor (THREAD_ID tid)=0
 
virtual void cacheResidual (THREAD_ID tid)=0
 
virtual void cacheResidualNeighbor (THREAD_ID tid)=0
 
virtual void addCachedResidual (THREAD_ID tid)=0
 
virtual void setResidual (NumericVector< Number > &residual, THREAD_ID tid)=0
 
virtual void setResidualNeighbor (NumericVector< Number > &residual, THREAD_ID tid)=0
 
virtual void addJacobian (THREAD_ID tid)=0
 
virtual void addJacobianNeighbor (THREAD_ID tid)=0
 
virtual void addJacobianBlock (SparseMatrix< Number > &jacobian, unsigned int ivar, unsigned int jvar, const DofMap &dof_map, std::vector< dof_id_type > &dof_indices, THREAD_ID tid)=0
 
virtual void addJacobianNeighbor (SparseMatrix< Number > &jacobian, unsigned int ivar, unsigned int jvar, const DofMap &dof_map, std::vector< dof_id_type > &dof_indices, std::vector< dof_id_type > &neighbor_dof_indices, THREAD_ID tid)=0
 
virtual void cacheJacobian (THREAD_ID tid)=0
 
virtual void cacheJacobianNeighbor (THREAD_ID tid)=0
 
virtual void addCachedJacobian (THREAD_ID tid)=0
 
virtual void prepare (const Elem *elem, THREAD_ID tid)=0
 
virtual void prepareFace (const Elem *elem, THREAD_ID tid)=0
 
virtual void prepare (const Elem *elem, unsigned int ivar, unsigned int jvar, const std::vector< dof_id_type > &dof_indices, THREAD_ID tid)=0
 
virtual void setCurrentSubdomainID (const Elem *elem, THREAD_ID tid)=0
 
virtual void setNeighborSubdomainID (const Elem *elem, unsigned int side, THREAD_ID tid)=0
 
virtual void prepareAssembly (THREAD_ID tid)=0
 
virtual void reinitElem (const Elem *elem, THREAD_ID tid)=0
 
virtual void reinitElemPhys (const Elem *elem, const std::vector< Point > &phys_points_in_elem, THREAD_ID tid, bool suppress_displaced_init=false)=0
 
virtual void reinitElemFace (const Elem *elem, unsigned int side, BoundaryID bnd_id, THREAD_ID tid)=0
 
virtual void reinitNode (const Node *node, THREAD_ID tid)=0
 
virtual void reinitNodeFace (const Node *node, BoundaryID bnd_id, THREAD_ID tid)=0
 
virtual void reinitNodes (const std::vector< dof_id_type > &nodes, THREAD_ID tid)=0
 
virtual void reinitNodesNeighbor (const std::vector< dof_id_type > &nodes, THREAD_ID tid)=0
 
virtual void reinitNeighbor (const Elem *elem, unsigned int side, THREAD_ID tid)=0
 
virtual void reinitNeighborPhys (const Elem *neighbor, unsigned int neighbor_side, const std::vector< Point > &physical_points, THREAD_ID tid)=0
 
virtual void reinitNeighborPhys (const Elem *neighbor, const std::vector< Point > &physical_points, THREAD_ID tid)=0
 
virtual void reinitScalars (THREAD_ID tid)=0
 
virtual void reinitOffDiagScalars (THREAD_ID tid)=0
 
virtual bool reinitDirac (const Elem *elem, THREAD_ID tid)=0
 Returns true if the Problem has Dirac kernels it needs to compute on elem. More...
 
virtual void getDiracElements (std::set< const Elem *> &elems)=0
 Fills "elems" with the elements that should be looped over for Dirac Kernels. More...
 
virtual void clearDiracInfo ()=0
 Gets called before Dirac Kernels are asked to add the points they are supposed to be evaluated in. More...
 
virtual void updateGeomSearch (GeometricSearchData::GeometricSearchType type=GeometricSearchData::ALL)=0
 
virtual GeometricSearchDatageomSearchData ()=0
 
virtual void meshChanged ()
 
virtual void storeSubdomainMatPropName (SubdomainID block_id, const std::string &name)
 Adds the given material property to a storage map based on block ids. More...
 
virtual void storeBoundaryMatPropName (BoundaryID boundary_id, const std::string &name)
 Adds the given material property to a storage map based on boundary ids. More...
 
virtual void storeSubdomainZeroMatProp (SubdomainID block_id, const MaterialPropertyName &name)
 Adds to a map based on block ids of material properties for which a zero value can be returned. More...
 
virtual void storeBoundaryZeroMatProp (BoundaryID boundary_id, const MaterialPropertyName &name)
 Adds to a map based on boundary ids of material properties for which a zero value can be returned. More...
 
virtual void storeSubdomainDelayedCheckMatProp (const std::string &requestor, SubdomainID block_id, const std::string &name)
 Adds to a map based on block ids of material properties to validate. More...
 
virtual void storeBoundaryDelayedCheckMatProp (const std::string &requestor, BoundaryID boundary_id, const std::string &name)
 Adds to a map based on boundary ids of material properties to validate. More...
 
virtual void checkBlockMatProps ()
 Checks block material properties integrity. More...
 
virtual void checkBoundaryMatProps ()
 Checks boundary material properties integrity. More...
 
virtual void markMatPropRequested (const std::string &)
 Helper method for adding a material property name to the _material_property_requested set. More...
 
virtual bool isMatPropRequested (const std::string &prop_name) const
 Find out if a material property has been requested by any object. More...
 
virtual void addGhostedElem (dof_id_type elem_id)=0
 Will make sure that all dofs connected to elem_id are ghosted to this processor. More...
 
virtual void addGhostedBoundary (BoundaryID boundary_id)=0
 Will make sure that all necessary elements from boundary_id are ghosted to this processor. More...
 
virtual void ghostGhostedBoundaries ()=0
 Causes the boundaries added using addGhostedBoundary to actually be ghosted. More...
 
virtual std::set< SubdomainIDgetMaterialPropertyBlocks (const std::string &prop_name)
 Get a vector containing the block ids the material property is defined on. More...
 
virtual std::vector< SubdomainName > getMaterialPropertyBlockNames (const std::string &prop_name)
 Get a vector of block id equivalences that the material property is defined on. More...
 
virtual bool hasBlockMaterialProperty (SubdomainID block_id, const std::string &prop_name)
 Check if a material property is defined on a block. More...
 
virtual std::set< BoundaryIDgetMaterialPropertyBoundaryIDs (const std::string &prop_name)
 Get a vector containing the block ids the material property is defined on. More...
 
virtual std::vector< BoundaryName > getMaterialPropertyBoundaryNames (const std::string &prop_name)
 Get a vector of block id equivalences that the material property is defined on. More...
 
virtual bool hasBoundaryMaterialProperty (BoundaryID boundary_id, const std::string &prop_name)
 Check if a material property is defined on a block. More...
 
virtual bool computingInitialResidual () const =0
 Returns true if the problem is in the process of computing it's initial residual. More...
 
virtual std::set< dof_id_type > & ghostedElems ()
 Return the list of elements that should have their DoFs ghosted to this processor. More...
 
const CouplingMatrix & nonlocalCouplingMatrix () const
 
virtual bool currentlyComputingJacobian () const
 Returns true if the problem is in the process of computing Jacobian. More...
 
bool & computingNonlinearResid ()
 Check whether residual being evaulated is non-linear. More...
 
bool safeAccessTaggedMatrices ()
 Is it safe to access the tagged matrices. More...
 
bool safeAccessTaggedVectors ()
 Is it safe to access the tagged vectors. More...
 
virtual void clearActiveFEVariableCoupleableMatrixTags (THREAD_ID tid)
 
virtual void clearActiveFEVariableCoupleableVectorTags (THREAD_ID tid)
 
virtual void setActiveFEVariableCoupleableVectorTags (std::set< TagID > &vtags, THREAD_ID tid)
 
virtual void setActiveFEVariableCoupleableMatrixTags (std::set< TagID > &mtags, THREAD_ID tid)
 
virtual void clearActiveScalarVariableCoupleableMatrixTags (THREAD_ID tid)
 
virtual void clearActiveScalarVariableCoupleableVectorTags (THREAD_ID tid)
 
virtual void setActiveScalarVariableCoupleableVectorTags (std::set< TagID > &vtags, THREAD_ID tid)
 
virtual void setActiveScalarVariableCoupleableMatrixTags (std::set< TagID > &mtags, THREAD_ID tid)
 
std::set< TagID > & getActiveScalarVariableCoupleableVectorTags (THREAD_ID tid)
 
std::set< TagID > & getActiveScalarVariableCoupleableMatrixTags (THREAD_ID tid)
 
std::set< TagID > & getActiveFEVariableCoupleableVectorTags (THREAD_ID tid)
 
std::set< TagID > & getActiveFEVariableCoupleableMatrixTags (THREAD_ID tid)
 
virtual void init ()=0
 
void _setCLIOption ()
 For Internal Use. More...
 
virtual void terminateSolve ()
 Allow objects to request clean termination of the solve. More...
 
virtual bool isSolveTerminationRequested ()
 Check of termination has been requested. More...
 
const std::string & type () const
 Get the type of this object. More...
 
const std::string & name () const
 Get the name of the object. More...
 
const InputParametersparameters () const
 Get the parameters of the object. More...
 
template<typename T >
const T & getParam (const std::string &name) const
 Retrieve a parameter for the object. More...
 
template<typename T >
getCheckedPointerParam (const std::string &name, const std::string &error_string="") const
 Verifies that the requested parameter exists and is not NULL and returns it to the caller. More...
 
bool isParamValid (const std::string &name) const
 Test if the supplied parameter is valid. More...
 
MooseAppgetMooseApp () const
 Get the MooseApp this object is associated with. More...
 
virtual bool enabled () const
 Return the enabled status of the object. More...
 
template<typename... Args>
void paramError (const std::string &param, Args... args)
 Emits an error prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message. More...
 
template<typename... Args>
void paramWarning (const std::string &param, Args... args)
 Emits a warning prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message. More...
 
template<typename... Args>
void paramInfo (const std::string &param, Args... args)
 Emits an informational message prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message. More...
 
template<typename... Args>
void mooseError (Args &&... args) const
 
template<typename... Args>
void mooseWarning (Args &&... args) const
 
template<typename... Args>
void mooseDeprecated (Args &&... args) const
 
template<typename... Args>
void mooseInfo (Args &&... args) const
 

Public Attributes

std::map< std::string, std::vector< dof_id_type > > _var_dof_map
 
const ConsoleStream _console
 An instance of helper class to write streams to the Console objects. More...
 

Protected Member Functions

MooseVariableFEBasegetVariableHelper (THREAD_ID tid, const std::string &var_name, Moose::VarKindType expected_var_type, Moose::VarFieldType expected_var_field_type, SystemBase &nl, SystemBase &aux)
 Helper function called by getVariable that handles the logic for checking whether Variables of the requested type are available. More...
 
PerfID registerTimedSection (const std::string &section_name, const unsigned int level)
 Call to register a named section for timing. More...
 

Protected Attributes

std::map< TagName, TagID_vector_tag_name_to_tag_id
 The currently declared tags. More...
 
std::map< TagID, TagName > _vector_tag_id_to_tag_name
 Reverse map. More...
 
std::map< TagName, TagID_matrix_tag_name_to_tag_id
 The currently declared tags. More...
 
std::map< TagID, TagName > _matrix_tag_id_to_tag_name
 Reverse map. More...
 
Factory_factory
 The Factory for building objects. More...
 
CouplingMatrix _nonlocal_cm
 
std::map< SubdomainID, Moose::CoordinateSystemType_coord_sys
 nonlocal coupling matrix; More...
 
DiracKernelInfo _dirac_kernel_info
 
std::map< SubdomainID, std::set< std::string > > _map_block_material_props
 Map of material properties (block_id -> list of properties) More...
 
std::map< BoundaryID, std::set< std::string > > _map_boundary_material_props
 Map for boundary material properties (boundary_id -> list of properties) More...
 
std::map< SubdomainID, std::set< MaterialPropertyName > > _zero_block_material_props
 Set of properties returned as zero properties. More...
 
std::map< BoundaryID, std::set< MaterialPropertyName > > _zero_boundary_material_props
 
std::set< std::string > _material_property_requested
 set containing all material property names that have been requested by getMaterialProperty* More...
 
std::vector< std::set< MooseVariableFEBase * > > _active_elemental_moose_variables
 This is the set of MooseVariableFEBases that will actually get reinited by a call to reinit(elem) More...
 
std::vector< unsigned int > _has_active_elemental_moose_variables
 Whether or not there is currently a list of active elemental moose variables. More...
 
std::vector< std::set< unsigned int > > _active_material_property_ids
 Set of material property ids that determine whether materials get reinited. More...
 
std::vector< std::set< TagID > > _active_fe_var_coupleable_matrix_tags
 
std::vector< std::set< TagID > > _active_fe_var_coupleable_vector_tags
 
std::vector< std::set< TagID > > _active_sc_var_coupleable_matrix_tags
 
std::vector< std::set< TagID > > _active_sc_var_coupleable_vector_tags
 
bool _requires_nonlocal_coupling
 nonlocal coupling requirement flag More...
 
std::set< dof_id_type > _ghosted_elems
 Elements that should have Dofs ghosted to the local processor. More...
 
unsigned int _rz_coord_axis
 Storage for RZ axis selection. More...
 
bool _currently_computing_jacobian
 Flag to determine whether the problem is currently computing Jacobian. More...
 
bool _computing_nonlinear_residual
 Whether residual being evaulated is non-linear. More...
 
bool _safe_access_tagged_matrices
 Is it safe to retrieve data from tagged matrices. More...
 
bool _safe_access_tagged_vectors
 Is it safe to retrieve data from tagged vectors. More...
 
bool _cli_option_found
 True if the CLI option is found. More...
 
bool _color_output
 True if we're going to attempt to write color output. More...
 
bool _termination_requested
 True if termination of the solve has been requested. More...
 
const InputParameters_pars
 Parameters of this object, references the InputParameters stored in the InputParametersWarehouse. More...
 
MooseApp_app
 The MooseApp this object is associated with. More...
 
const std::string & _type
 The type of this object (the Class name) More...
 
const std::string & _name
 The name of this object, reference to value stored in InputParameters. More...
 
const bool & _enabled
 Reference to the "enable" InputParaemters, used by Controls for toggling on/off MooseObjects. More...
 
const InputParameters_pg_params
 Params. More...
 
PerfGraph_perf_graph
 The performance graph to add to. More...
 
std::string _prefix
 A prefix to use for all sections. More...
 
std::map< SubdomainID, std::multimap< std::string, std::string > > _map_block_material_props_check
 Data structures of the requested material properties. More...
 
std::map< BoundaryID, std::multimap< std::string, std::string > > _map_boundary_material_props_check
 

Private Member Functions

std::string restrictionSubdomainCheckName (SubdomainID check_id)
 Helper functions for checking MaterialProperties. More...
 
std::string restrictionBoundaryCheckName (BoundaryID check_id)
 

Friends

class Restartable
 

Detailed Description

Generic class for solving transient nonlinear problems.

Definition at line 53 of file SubProblem.h.

Constructor & Destructor Documentation

◆ SubProblem()

SubProblem::SubProblem ( const InputParameters parameters)

Definition at line 30 of file SubProblem.C.

33  _nonlocal_cm(),
35  _rz_coord_axis(1), // default to RZ rotation around y-axis
40 {
41  unsigned int n_threads = libMesh::n_threads();
42  _active_elemental_moose_variables.resize(n_threads);
43  _has_active_elemental_moose_variables.resize(n_threads);
44  _active_material_property_ids.resize(n_threads);
45 
46  _active_fe_var_coupleable_matrix_tags.resize(n_threads);
47  _active_fe_var_coupleable_vector_tags.resize(n_threads);
48  _active_sc_var_coupleable_matrix_tags.resize(n_threads);
49  _active_sc_var_coupleable_vector_tags.resize(n_threads);
50 }
bool _requires_nonlocal_coupling
nonlocal coupling requirement flag
Definition: SubProblem.h:612
Factory & _factory
The Factory for building objects.
Definition: SubProblem.h:561
unsigned int _rz_coord_axis
Storage for RZ axis selection.
Definition: SubProblem.h:618
Problem(const InputParameters &parameters)
Definition: Problem.C:25
bool _currently_computing_jacobian
Flag to determine whether the problem is currently computing Jacobian.
Definition: SubProblem.h:621
std::vector< std::set< TagID > > _active_sc_var_coupleable_vector_tags
Definition: SubProblem.h:609
Factory & getFactory()
Retrieve the Factory associated with this App.
Definition: MooseApp.h:279
bool _computing_nonlinear_residual
Whether residual being evaulated is non-linear.
Definition: SubProblem.h:624
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseObject.h:57
bool _safe_access_tagged_vectors
Is it safe to retrieve data from tagged vectors.
Definition: SubProblem.h:630
std::vector< std::set< unsigned int > > _active_material_property_ids
Set of material property ids that determine whether materials get reinited.
Definition: SubProblem.h:601
std::vector< std::set< TagID > > _active_fe_var_coupleable_vector_tags
Definition: SubProblem.h:605
std::vector< unsigned int > _has_active_elemental_moose_variables
Whether or not there is currently a list of active elemental moose variables.
Definition: SubProblem.h:598
MooseApp & _app
The MooseApp this object is associated with.
Definition: MooseObject.h:171
std::vector< std::set< MooseVariableFEBase * > > _active_elemental_moose_variables
This is the set of MooseVariableFEBases that will actually get reinited by a call to reinit(elem) ...
Definition: SubProblem.h:594
bool _safe_access_tagged_matrices
Is it safe to retrieve data from tagged matrices.
Definition: SubProblem.h:627
CouplingMatrix _nonlocal_cm
Definition: SubProblem.h:563
std::vector< std::set< TagID > > _active_fe_var_coupleable_matrix_tags
Definition: SubProblem.h:603
std::vector< std::set< TagID > > _active_sc_var_coupleable_matrix_tags
Definition: SubProblem.h:607

◆ ~SubProblem()

SubProblem::~SubProblem ( )
virtual

Definition at line 52 of file SubProblem.C.

52 {}

Member Function Documentation

◆ _setCLIOption()

void Problem::_setCLIOption ( )
inlineinherited

For Internal Use.

Definition at line 36 of file Problem.h.

36 { _cli_option_found = true; }
bool _cli_option_found
True if the CLI option is found.
Definition: Problem.h:47

◆ addCachedJacobian()

virtual void SubProblem::addCachedJacobian ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ addCachedResidual()

virtual void SubProblem::addCachedResidual ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ addGhostedBoundary()

virtual void SubProblem::addGhostedBoundary ( BoundaryID  boundary_id)
pure virtual

◆ addGhostedElem()

virtual void SubProblem::addGhostedElem ( dof_id_type  elem_id)
pure virtual

◆ addJacobian()

virtual void SubProblem::addJacobian ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ addJacobianBlock()

virtual void SubProblem::addJacobianBlock ( SparseMatrix< Number > &  jacobian,
unsigned int  ivar,
unsigned int  jvar,
const DofMap &  dof_map,
std::vector< dof_id_type > &  dof_indices,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ addJacobianNeighbor() [1/2]

virtual void SubProblem::addJacobianNeighbor ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ addJacobianNeighbor() [2/2]

virtual void SubProblem::addJacobianNeighbor ( SparseMatrix< Number > &  jacobian,
unsigned int  ivar,
unsigned int  jvar,
const DofMap &  dof_map,
std::vector< dof_id_type > &  dof_indices,
std::vector< dof_id_type > &  neighbor_dof_indices,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ addMatrixTag()

TagID SubProblem::addMatrixTag ( TagName  tag_name)
virtual

Create a Tag.

Tags can be associated with Vectors and Matrices and allow objects (such as Kernels) to arbitrarily contribute values to any set of vectors/matrics

Note: If the tag is already present then this will simply return the TagID of that Tag

Parameters
tag_nameThe name of the tag to create, the TagID will get automatically generated

Reimplemented in DisplacedProblem.

Definition at line 101 of file SubProblem.C.

Referenced by DisplacedProblem::addMatrixTag(), FEProblemBase::createTagVectors(), NonlinearEigenSystem::NonlinearEigenSystem(), and NonlinearSystemBase::NonlinearSystemBase().

102 {
103  auto tag_name_upper = MooseUtils::toUpper(tag_name);
104  auto existing_tag = _matrix_tag_name_to_tag_id.find(tag_name_upper);
105  if (existing_tag == _matrix_tag_name_to_tag_id.end())
106  {
107  auto tag_id = _matrix_tag_name_to_tag_id.size();
108 
109  _matrix_tag_name_to_tag_id[tag_name_upper] = tag_id;
110 
111  _matrix_tag_id_to_tag_name[tag_id] = tag_name_upper;
112  }
113 
114  return _matrix_tag_name_to_tag_id.at(tag_name_upper);
115 }
std::map< TagName, TagID > _matrix_tag_name_to_tag_id
The currently declared tags.
Definition: SubProblem.h:555
std::string toUpper(const std::string &name)
Convert supplied string to upper case.
Definition: MooseUtils.C:708
std::map< TagID, TagName > _matrix_tag_id_to_tag_name
Reverse map.
Definition: SubProblem.h:558

◆ addResidual()

virtual void SubProblem::addResidual ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ addResidualNeighbor()

virtual void SubProblem::addResidualNeighbor ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ addVectorTag()

TagID SubProblem::addVectorTag ( TagName  tag_name)
virtual

Create a Tag.

Tags can be associated with Vectors and Matrices and allow objects (such as Kernels) to arbitrarily contribute values to any set of vectors/matrics

Note: If the tag is already present then this will simply return the TagID of that Tag

Parameters
tag_nameThe name of the tag to create, the TagID will get automatically generated

Reimplemented in DisplacedProblem.

Definition at line 55 of file SubProblem.C.

Referenced by DisplacedProblem::addVectorTag(), FEProblemBase::createTagVectors(), NonlinearSystemBase::getResidualNonTimeVector(), NonlinearSystemBase::getResidualTimeVector(), NonlinearEigenSystem::NonlinearEigenSystem(), and NonlinearSystemBase::NonlinearSystemBase().

56 {
57  auto tag_name_upper = MooseUtils::toUpper(tag_name);
58  auto existing_tag = _vector_tag_name_to_tag_id.find(tag_name_upper);
59  if (existing_tag == _vector_tag_name_to_tag_id.end())
60  {
61  auto tag_id = _vector_tag_name_to_tag_id.size();
62 
63  _vector_tag_name_to_tag_id[tag_name_upper] = tag_id;
64 
65  _vector_tag_id_to_tag_name[tag_id] = tag_name_upper;
66  }
67 
68  return _vector_tag_name_to_tag_id.at(tag_name_upper);
69 }
std::map< TagName, TagID > _vector_tag_name_to_tag_id
The currently declared tags.
Definition: SubProblem.h:549
std::string toUpper(const std::string &name)
Convert supplied string to upper case.
Definition: MooseUtils.C:708
std::map< TagID, TagName > _vector_tag_id_to_tag_name
Reverse map.
Definition: SubProblem.h:552

◆ assembly()

virtual Assembly& SubProblem::assembly ( THREAD_ID  tid)
pure virtual

◆ cacheJacobian()

virtual void SubProblem::cacheJacobian ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ cacheJacobianNeighbor()

virtual void SubProblem::cacheJacobianNeighbor ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ cacheResidual()

virtual void SubProblem::cacheResidual ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ cacheResidualNeighbor()

virtual void SubProblem::cacheResidualNeighbor ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ checkBlockMatProps()

void SubProblem::checkBlockMatProps ( )
virtual

Checks block material properties integrity.

See also
FEProblemBase::checkProblemIntegrity

Definition at line 435 of file SubProblem.C.

Referenced by FEProblemBase::checkProblemIntegrity().

436 {
437  // Variable for storing the value for ANY_BLOCK_ID/ANY_BOUNDARY_ID
439 
440  // Variable for storing all available blocks/boundaries from the mesh
441  std::set<SubdomainID> all_ids(mesh().meshSubdomains());
442 
443  // Loop through the properties to check
444  for (const auto & check_it : _map_block_material_props_check)
445  {
446  // The current id for the property being checked (BoundaryID || BlockID)
447  SubdomainID check_id = check_it.first;
448 
449  // In the case when the material being checked has an ID is set to ANY, then loop through all
450  // the possible ids and verify that the material property is defined.
451  std::set<SubdomainID> check_ids = {check_id};
452  if (check_id == any_id)
453  check_ids = all_ids;
454 
455  // Loop through all the block/boundary ids
456  for (const auto & id : check_ids)
457  {
458  // Loop through all the stored properties
459  for (const auto & prop_it : check_it.second)
460  {
461  // Produce an error if the material property is not defined on the current block/boundary
462  // and any block/boundary
463  // and not is not a zero material property.
464  if (_map_block_material_props[id].count(prop_it.second) == 0 &&
465  _map_block_material_props[any_id].count(prop_it.second) == 0 &&
466  _zero_block_material_props[id].count(prop_it.second) == 0 &&
467  _zero_block_material_props[any_id].count(prop_it.second) == 0)
468  {
469  std::string check_name = restrictionSubdomainCheckName(id);
470  if (check_name.empty())
471  check_name = std::to_string(id);
472  mooseError("Material property '",
473  prop_it.second,
474  "', requested by '",
475  prop_it.first,
476  "' is not defined on block ",
477  check_name);
478  }
479  }
480  }
481  }
482 }
virtual MooseMesh & mesh()=0
subdomain_id_type SubdomainID
Definition: MooseTypes.h:95
void mooseError(Args &&... args) const
Definition: MooseObject.h:140
std::string restrictionSubdomainCheckName(SubdomainID check_id)
Helper functions for checking MaterialProperties.
Definition: SubProblem.C:577
const SubdomainID ANY_BLOCK_ID
Definition: MooseTypes.h:319
std::map< SubdomainID, std::set< MaterialPropertyName > > _zero_block_material_props
Set of properties returned as zero properties.
Definition: SubProblem.h:577
std::map< SubdomainID, std::multimap< std::string, std::string > > _map_block_material_props_check
Data structures of the requested material properties.
Definition: SubProblem.h:589
std::map< SubdomainID, std::set< std::string > > _map_block_material_props
Map of material properties (block_id -> list of properties)
Definition: SubProblem.h:571

◆ checkBoundaryMatProps()

void SubProblem::checkBoundaryMatProps ( )
virtual

Checks boundary material properties integrity.

See also
FEProblemBase::checkProblemIntegrity

Definition at line 485 of file SubProblem.C.

Referenced by FEProblemBase::checkProblemIntegrity().

486 {
487  // Variable for storing the value for ANY_BLOCK_ID/ANY_BOUNDARY_ID
489 
490  // Variable for storing all available blocks/boundaries from the mesh
491  std::set<BoundaryID> all_ids(mesh().getBoundaryIDs());
492 
493  // Loop through the properties to check
494  for (const auto & check_it : _map_boundary_material_props_check)
495  {
496  // The current id for the property being checked (BoundaryID || BlockID)
497  BoundaryID check_id = check_it.first;
498 
499  // In the case when the material being checked has an ID is set to ANY, then loop through all
500  // the possible ids and verify that the material property is defined.
501  std::set<BoundaryID> check_ids{check_id};
502  if (check_id == any_id)
503  check_ids = all_ids;
504 
505  // Loop through all the block/boundary ids
506  for (const auto & id : check_ids)
507  {
508  // Loop through all the stored properties
509  for (const auto & prop_it : check_it.second)
510  {
511  // Produce an error if the material property is not defined on the current block/boundary
512  // and any block/boundary
513  // and not is not a zero material property.
514  if (_map_boundary_material_props[id].count(prop_it.second) == 0 &&
515  _map_boundary_material_props[any_id].count(prop_it.second) == 0 &&
516  _zero_boundary_material_props[id].count(prop_it.second) == 0 &&
517  _zero_boundary_material_props[any_id].count(prop_it.second) == 0)
518  {
519  std::string check_name = restrictionBoundaryCheckName(id);
520  if (check_name.empty())
521  check_name = std::to_string(id);
522  mooseError("Material property '",
523  prop_it.second,
524  "', requested by '",
525  prop_it.first,
526  "' is not defined on boundary ",
527  check_name);
528  }
529  }
530  }
531  }
532 }
virtual MooseMesh & mesh()=0
std::map< BoundaryID, std::multimap< std::string, std::string > > _map_boundary_material_props_check
Definition: SubProblem.h:590
std::string restrictionBoundaryCheckName(BoundaryID check_id)
Definition: SubProblem.C:588
void mooseError(Args &&... args) const
Definition: MooseObject.h:140
std::map< BoundaryID, std::set< MaterialPropertyName > > _zero_boundary_material_props
Definition: SubProblem.h:578
std::map< BoundaryID, std::set< std::string > > _map_boundary_material_props
Map for boundary material properties (boundary_id -> list of properties)
Definition: SubProblem.h:574
std::vector< libMesh::boundary_id_type > getBoundaryIDs(const libMesh::MeshBase &mesh, const std::vector< BoundaryName > &boundary_name, bool generate_unknown)
const BoundaryID ANY_BOUNDARY_ID
Definition: MooseTypes.h:321
boundary_id_type BoundaryID
Definition: MooseTypes.h:93

◆ checkNonlocalCouplingRequirement()

virtual bool SubProblem::checkNonlocalCouplingRequirement ( )
inlinevirtual

◆ clearActiveElementalMooseVariables()

void SubProblem::clearActiveElementalMooseVariables ( THREAD_ID  tid)
virtual

Clear the active elemental MooseVariableFEBase.

If there are no active variables then they will all be reinited. Call this after finishing the computation that was using a restricted set of MooseVariableFEBases

Parameters
tidThe thread id

Reimplemented in FEProblemBase.

Definition at line 248 of file SubProblem.C.

Referenced by FEProblemBase::clearActiveElementalMooseVariables().

249 {
252 }
std::vector< unsigned int > _has_active_elemental_moose_variables
Whether or not there is currently a list of active elemental moose variables.
Definition: SubProblem.h:598
std::vector< std::set< MooseVariableFEBase * > > _active_elemental_moose_variables
This is the set of MooseVariableFEBases that will actually get reinited by a call to reinit(elem) ...
Definition: SubProblem.h:594

◆ clearActiveFEVariableCoupleableMatrixTags()

void SubProblem::clearActiveFEVariableCoupleableMatrixTags ( THREAD_ID  tid)
virtual

Reimplemented in FEProblemBase.

Definition at line 171 of file SubProblem.C.

Referenced by FEProblemBase::clearActiveFEVariableCoupleableMatrixTags().

172 {
174 }
std::vector< std::set< TagID > > _active_fe_var_coupleable_matrix_tags
Definition: SubProblem.h:603

◆ clearActiveFEVariableCoupleableVectorTags()

void SubProblem::clearActiveFEVariableCoupleableVectorTags ( THREAD_ID  tid)
virtual

Reimplemented in FEProblemBase.

Definition at line 165 of file SubProblem.C.

Referenced by FEProblemBase::clearActiveFEVariableCoupleableVectorTags().

166 {
168 }
std::vector< std::set< TagID > > _active_fe_var_coupleable_vector_tags
Definition: SubProblem.h:605

◆ clearActiveMaterialProperties()

void SubProblem::clearActiveMaterialProperties ( THREAD_ID  tid)
virtual

Clear the active material properties.

Should be called at the end of every computing thread

Parameters
tidThe thread id

Reimplemented in FEProblemBase.

Definition at line 274 of file SubProblem.C.

Referenced by FEProblemBase::clearActiveMaterialProperties().

275 {
276  _active_material_property_ids[tid].clear();
277 }
std::vector< std::set< unsigned int > > _active_material_property_ids
Set of material property ids that determine whether materials get reinited.
Definition: SubProblem.h:601

◆ clearActiveScalarVariableCoupleableMatrixTags()

void SubProblem::clearActiveScalarVariableCoupleableMatrixTags ( THREAD_ID  tid)
virtual

Reimplemented in FEProblemBase.

Definition at line 207 of file SubProblem.C.

Referenced by FEProblemBase::clearActiveScalarVariableCoupleableMatrixTags().

208 {
210 }
std::vector< std::set< TagID > > _active_sc_var_coupleable_matrix_tags
Definition: SubProblem.h:607

◆ clearActiveScalarVariableCoupleableVectorTags()

void SubProblem::clearActiveScalarVariableCoupleableVectorTags ( THREAD_ID  tid)
virtual

Reimplemented in FEProblemBase.

Definition at line 201 of file SubProblem.C.

Referenced by FEProblemBase::clearActiveScalarVariableCoupleableVectorTags().

202 {
204 }
std::vector< std::set< TagID > > _active_sc_var_coupleable_vector_tags
Definition: SubProblem.h:609

◆ clearDiracInfo()

virtual void SubProblem::clearDiracInfo ( )
pure virtual

Gets called before Dirac Kernels are asked to add the points they are supposed to be evaluated in.

Implemented in FEProblemBase, and DisplacedProblem.

◆ computingInitialResidual()

virtual bool SubProblem::computingInitialResidual ( ) const
pure virtual

Returns true if the problem is in the process of computing it's initial residual.

Returns
Whether or not the problem is currently computing the initial residual.

Implemented in FEProblemBase, and DisplacedProblem.

◆ computingNonlinearResid()

bool& SubProblem::computingNonlinearResid ( )
inline

Check whether residual being evaulated is non-linear.

Definition at line 504 of file SubProblem.h.

Referenced by NonlinearSystemBase::computeResidualInternal(), ComputeFDResidualFunctor::residual(), and ComputeResidualFunctor::residual().

bool _computing_nonlinear_residual
Whether residual being evaulated is non-linear.
Definition: SubProblem.h:624

◆ converged()

virtual bool SubProblem::converged ( )
pure virtual

◆ currentlyComputingJacobian()

virtual bool SubProblem::currentlyComputingJacobian ( ) const
inlinevirtual

◆ diracKernelInfo()

DiracKernelInfo & SubProblem::diracKernelInfo ( )
virtual

Definition at line 547 of file SubProblem.C.

548 {
549  return _dirac_kernel_info;
550 }
DiracKernelInfo _dirac_kernel_info
Definition: SubProblem.h:568

◆ enabled()

virtual bool MooseObject::enabled ( ) const
inlinevirtualinherited

Return the enabled status of the object.

Reimplemented in EigenKernel.

Definition at line 91 of file MooseObject.h.

Referenced by EigenKernel::enabled().

91 { return _enabled; }
const bool & _enabled
Reference to the "enable" InputParaemters, used by Controls for toggling on/off MooseObjects.
Definition: MooseObject.h:180

◆ es()

virtual EquationSystems& SubProblem::es ( )
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

Referenced by NumDOFs::NumDOFs(), and NumVars::NumVars().

◆ finalNonlinearResidual()

Real SubProblem::finalNonlinearResidual ( ) const
virtual

Reimplemented in FEProblemBase.

Definition at line 553 of file SubProblem.C.

Referenced by Residual::getValue().

554 {
555  return 0;
556 }

◆ geomSearchData()

virtual GeometricSearchData& SubProblem::geomSearchData ( )
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ getActiveElementalMooseVariables()

const std::set< MooseVariableFEBase * > & SubProblem::getActiveElementalMooseVariables ( THREAD_ID  tid) const
virtual

Get the MOOSE variables to be reinited on each element.

Parameters
tidThe thread id

Definition at line 236 of file SubProblem.C.

Referenced by SystemBase::prepare(), SystemBase::prepareFace(), FEProblemBase::prepareMaterials(), and SystemBase::reinitElem().

237 {
239 }
std::vector< std::set< MooseVariableFEBase * > > _active_elemental_moose_variables
This is the set of MooseVariableFEBases that will actually get reinited by a call to reinit(elem) ...
Definition: SubProblem.h:594

◆ getActiveFEVariableCoupleableMatrixTags()

std::set< TagID > & SubProblem::getActiveFEVariableCoupleableMatrixTags ( THREAD_ID  tid)

Definition at line 177 of file SubProblem.C.

178 {
180 }
std::vector< std::set< TagID > > _active_fe_var_coupleable_matrix_tags
Definition: SubProblem.h:603

◆ getActiveFEVariableCoupleableVectorTags()

std::set< TagID > & SubProblem::getActiveFEVariableCoupleableVectorTags ( THREAD_ID  tid)

Definition at line 183 of file SubProblem.C.

184 {
186 }
std::vector< std::set< TagID > > _active_fe_var_coupleable_vector_tags
Definition: SubProblem.h:605

◆ getActiveMaterialProperties()

const std::set< unsigned int > & SubProblem::getActiveMaterialProperties ( THREAD_ID  tid) const
virtual

Get the material properties required by the current computing thread.

Parameters
tidThe thread id

Definition at line 262 of file SubProblem.C.

Referenced by FEProblemBase::prepareMaterials().

263 {
264  return _active_material_property_ids[tid];
265 }
std::vector< std::set< unsigned int > > _active_material_property_ids
Set of material property ids that determine whether materials get reinited.
Definition: SubProblem.h:601

◆ getActiveScalarVariableCoupleableMatrixTags()

std::set< TagID > & SubProblem::getActiveScalarVariableCoupleableMatrixTags ( THREAD_ID  tid)

Definition at line 213 of file SubProblem.C.

Referenced by MooseVariableScalar::reinit().

214 {
216 }
std::vector< std::set< TagID > > _active_sc_var_coupleable_matrix_tags
Definition: SubProblem.h:607

◆ getActiveScalarVariableCoupleableVectorTags()

std::set< TagID > & SubProblem::getActiveScalarVariableCoupleableVectorTags ( THREAD_ID  tid)

Definition at line 219 of file SubProblem.C.

Referenced by MooseVariableScalar::reinit().

220 {
222 }
std::vector< std::set< TagID > > _active_sc_var_coupleable_vector_tags
Definition: SubProblem.h:609

◆ getAxisymmetricRadialCoord()

unsigned int SubProblem::getAxisymmetricRadialCoord ( ) const

Returns the desired radial direction for RZ coordinate transformation.

Returns
The coordinate direction for the radial direction

Definition at line 594 of file SubProblem.C.

Referenced by Assembly::reinitNeighbor(), and Assembly::setCoordinateTransformation().

595 {
596  if (_rz_coord_axis == 0)
597  return 1; // if the rotation axis is x (0), then the radial direction is y (1)
598  else
599  return 0; // otherwise the radial direction is assumed to be x, i.e., the rotation axis is y
600 }
unsigned int _rz_coord_axis
Storage for RZ axis selection.
Definition: SubProblem.h:618

◆ getCheckedPointerParam()

template<typename T >
T MooseObject::getCheckedPointerParam ( const std::string &  name,
const std::string &  error_string = "" 
) const
inlineinherited

Verifies that the requested parameter exists and is not NULL and returns it to the caller.

The template parameter must be a pointer or an error will be thrown.

Definition at line 72 of file MooseObject.h.

73  {
74  return parameters().getCheckedPointerParam<T>(name, error_string);
75  }
T getCheckedPointerParam(const std::string &name, const std::string &error_string="") const
Verifies that the requested parameter exists and is not NULL and returns it to the caller...
const InputParameters & parameters() const
Get the parameters of the object.
Definition: MooseObject.h:57
const std::string & name() const
Get the name of the object.
Definition: MooseObject.h:51

◆ getCoordSystem()

virtual Moose::CoordinateSystemType SubProblem::getCoordSystem ( SubdomainID  sid)
pure virtual

◆ getDiracElements()

virtual void SubProblem::getDiracElements ( std::set< const Elem *> &  elems)
pure virtual

Fills "elems" with the elements that should be looped over for Dirac Kernels.

Implemented in FEProblemBase, and DisplacedProblem.

◆ getMaterialPropertyBlockNames()

std::vector< SubdomainName > SubProblem::getMaterialPropertyBlockNames ( const std::string &  prop_name)
virtual

Get a vector of block id equivalences that the material property is defined on.

Definition at line 296 of file SubProblem.C.

Referenced by MaterialPropertyInterface::getMaterialPropertyBlockNames().

297 {
298  std::set<SubdomainID> blocks = getMaterialPropertyBlocks(prop_name);
299  std::vector<SubdomainName> block_names;
300  block_names.reserve(blocks.size());
301  for (const auto & block_id : blocks)
302  {
303  SubdomainName name;
304  if (block_id == Moose::ANY_BLOCK_ID)
305  name = "ANY_BLOCK_ID";
306  else
307  {
308  name = mesh().getMesh().subdomain_name(block_id);
309  if (name.empty())
310  {
311  std::ostringstream oss;
312  oss << block_id;
313  name = oss.str();
314  }
315  }
316  block_names.push_back(name);
317  }
318 
319  return block_names;
320 }
virtual MooseMesh & mesh()=0
MeshBase & getMesh()
Accessor for the underlying libMesh Mesh object.
Definition: MooseMesh.C:2512
const SubdomainID ANY_BLOCK_ID
Definition: MooseTypes.h:319
virtual std::set< SubdomainID > getMaterialPropertyBlocks(const std::string &prop_name)
Get a vector containing the block ids the material property is defined on.
Definition: SubProblem.C:280
const std::string & name() const
Get the name of the object.
Definition: MooseObject.h:51

◆ getMaterialPropertyBlocks()

std::set< SubdomainID > SubProblem::getMaterialPropertyBlocks ( const std::string &  prop_name)
virtual

Get a vector containing the block ids the material property is defined on.

Definition at line 280 of file SubProblem.C.

Referenced by MaterialPropertyInterface::getBlockMaterialProperty(), getMaterialPropertyBlockNames(), and MaterialPropertyInterface::getMaterialPropertyBlocks().

281 {
282  std::set<SubdomainID> blocks;
283 
284  for (const auto & it : _map_block_material_props)
285  {
286  const std::set<std::string> & prop_names = it.second;
287  std::set<std::string>::iterator name_it = prop_names.find(prop_name);
288  if (name_it != prop_names.end())
289  blocks.insert(it.first);
290  }
291 
292  return blocks;
293 }
std::map< SubdomainID, std::set< std::string > > _map_block_material_props
Map of material properties (block_id -> list of properties)
Definition: SubProblem.h:571

◆ getMaterialPropertyBoundaryIDs()

std::set< BoundaryID > SubProblem::getMaterialPropertyBoundaryIDs ( const std::string &  prop_name)
virtual

Get a vector containing the block ids the material property is defined on.

Definition at line 337 of file SubProblem.C.

Referenced by MaterialPropertyInterface::getMaterialPropertyBoundaryIDs(), and getMaterialPropertyBoundaryNames().

338 {
339  std::set<BoundaryID> boundaries;
340 
341  for (const auto & it : _map_boundary_material_props)
342  {
343  const std::set<std::string> & prop_names = it.second;
344  std::set<std::string>::iterator name_it = prop_names.find(prop_name);
345  if (name_it != prop_names.end())
346  boundaries.insert(it.first);
347  }
348 
349  return boundaries;
350 }
std::map< BoundaryID, std::set< std::string > > _map_boundary_material_props
Map for boundary material properties (boundary_id -> list of properties)
Definition: SubProblem.h:574

◆ getMaterialPropertyBoundaryNames()

std::vector< BoundaryName > SubProblem::getMaterialPropertyBoundaryNames ( const std::string &  prop_name)
virtual

Get a vector of block id equivalences that the material property is defined on.

Definition at line 353 of file SubProblem.C.

Referenced by MaterialPropertyInterface::getMaterialPropertyBoundaryNames().

354 {
355  std::set<BoundaryID> boundaries = getMaterialPropertyBoundaryIDs(prop_name);
356  std::vector<BoundaryName> boundary_names;
357  boundary_names.reserve(boundaries.size());
358  const BoundaryInfo & boundary_info = mesh().getMesh().get_boundary_info();
359 
360  for (const auto & bnd_id : boundaries)
361  {
362  BoundaryName name;
363  if (bnd_id == Moose::ANY_BOUNDARY_ID)
364  name = "ANY_BOUNDARY_ID";
365  else
366  {
367  name = boundary_info.get_sideset_name(bnd_id);
368  if (name.empty())
369  {
370  std::ostringstream oss;
371  oss << bnd_id;
372  name = oss.str();
373  }
374  }
375  boundary_names.push_back(name);
376  }
377 
378  return boundary_names;
379 }
virtual MooseMesh & mesh()=0
virtual std::set< BoundaryID > getMaterialPropertyBoundaryIDs(const std::string &prop_name)
Get a vector containing the block ids the material property is defined on.
Definition: SubProblem.C:337
MeshBase & getMesh()
Accessor for the underlying libMesh Mesh object.
Definition: MooseMesh.C:2512
const std::string & name() const
Get the name of the object.
Definition: MooseObject.h:51
const BoundaryID ANY_BOUNDARY_ID
Definition: MooseTypes.h:321

◆ getMatrixTagID()

TagID SubProblem::getMatrixTagID ( const TagName &  tag_name)
virtual

Get a TagID from a TagName.

Reimplemented in DisplacedProblem.

Definition at line 132 of file SubProblem.C.

Referenced by ActuallyExplicitEuler::ActuallyExplicitEuler(), DisplacedProblem::getMatrixTagID(), TaggingInterface::TaggingInterface(), and TaggingInterface::useMatrixTag().

133 {
134  auto tag_name_upper = MooseUtils::toUpper(tag_name);
135 
136  if (!matrixTagExists(tag_name))
137  mooseError("Matrix tag: ",
138  tag_name,
139  " does not exist. ",
140  "If this is a TimeKernel then this may have happened because you didn't "
141  "specify a Transient Executioner.");
142 
143  return _matrix_tag_name_to_tag_id.at(tag_name_upper);
144 }
std::map< TagName, TagID > _matrix_tag_name_to_tag_id
The currently declared tags.
Definition: SubProblem.h:555
std::string toUpper(const std::string &name)
Convert supplied string to upper case.
Definition: MooseUtils.C:708
void mooseError(Args &&... args) const
Definition: MooseObject.h:140
virtual bool matrixTagExists(const TagName &tag_name)
Check to see if a particular Tag exists.
Definition: SubProblem.C:118

◆ getMatrixTags()

virtual std::map<TagName, TagID>& SubProblem::getMatrixTags ( )
inlinevirtual

Return all matrix tags in the sytem, where a tag is represented by a map from name to ID.

Definition at line 150 of file SubProblem.h.

Referenced by NonlinearSystemBase::computeJacobian(), FEProblemBase::computeJacobian(), and NonlinearSystemBase::computeJacobianBlocks().

150 { return _matrix_tag_name_to_tag_id; }
std::map< TagName, TagID > _matrix_tag_name_to_tag_id
The currently declared tags.
Definition: SubProblem.h:555

◆ getMooseApp()

MooseApp& MooseObject::getMooseApp ( ) const
inlineinherited

Get the MooseApp this object is associated with.

Definition at line 86 of file MooseObject.h.

Referenced by RestartableDataIO::createBackup(), RestartableDataIO::deserializeRestartableData(), ConsoleUtils::outputMeshInformation(), Resurrector::restartRestartableData(), and RestartableDataIO::restoreBackup().

86 { return _app; }
MooseApp & _app
The MooseApp this object is associated with.
Definition: MooseObject.h:171

◆ getParam()

template<typename T >
const T & MooseObject::getParam ( const std::string &  name) const
inherited

Retrieve a parameter for the object.

Parameters
nameThe name of the parameter
Returns
The value of the parameter

Definition at line 185 of file MooseObject.h.

Referenced by FEProblemBase::addMaterialHelper(), ConstraintWarehouse::addObject(), BicubicSplineFunction::BicubicSplineFunction(), Piecewise::buildFromXandY(), DerivativeParsedMaterial::DerivativeParsedMaterial(), EigenKernel::EigenKernel(), FEProblemBase::FEProblemBase(), FieldSplitPreconditioner::FieldSplitPreconditioner(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), SideSetsBetweenSubdomainsGenerator::generate(), ExtraNodesetGenerator::generate(), MeshExtruderGenerator::generate(), SideSetsAroundSubdomainGenerator::generate(), GenericConstantRankTwoTensor::GenericConstantRankTwoTensor(), TimeSequenceStepper::init(), AttribThread::initFrom(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), Console::initialSetup(), AdvancedOutput::initialSetup(), SideSetsBetweenSubdomains::modify(), AddExtraNodeset::modify(), MeshExtruder::modify(), SideSetsAroundSubdomain::modify(), ParsedAddSideset::ParsedAddSideset(), ParsedAux::ParsedAux(), ParsedGenerateSideset::ParsedGenerateSideset(), ParsedMaterial::ParsedMaterial(), ParsedODEKernel::ParsedODEKernel(), ParsedSubdomainMeshGenerator::ParsedSubdomainMeshGenerator(), ParsedSubdomainMeshModifier::ParsedSubdomainMeshModifier(), PhysicsBasedPreconditioner::PhysicsBasedPreconditioner(), SingleMatrixPreconditioner::SingleMatrixPreconditioner(), TimePeriod::TimePeriod(), and VectorOfPostprocessors::VectorOfPostprocessors().

186 {
187  return InputParameters::getParamHelper(name, _pars, static_cast<T *>(0));
188 }
static const T & getParamHelper(const std::string &name, const InputParameters &pars, const T *the_type)
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
Definition: MooseObject.h:168
const std::string & name() const
Get the name of the object.
Definition: MooseObject.h:51

◆ getScalarVariable()

virtual MooseVariableScalar& SubProblem::getScalarVariable ( THREAD_ID  tid,
const std::string &  var_name 
)
pure virtual

Returns the scalar variable reference from whichever system contains it.

Implemented in FEProblemBase, and DisplacedProblem.

Referenced by Coupleable::Coupleable(), and ScalarCoupleable::ScalarCoupleable().

◆ getStandardVariable()

virtual MooseVariable& SubProblem::getStandardVariable ( THREAD_ID  tid,
const std::string &  var_name 
)
pure virtual

◆ getSystem()

virtual System& SubProblem::getSystem ( const std::string &  var_name)
pure virtual

Returns the equation system containing the variable provided.

Implemented in FEProblemBase, and DisplacedProblem.

◆ getVariable()

virtual MooseVariableFEBase& SubProblem::getVariable ( THREAD_ID  tid,
const std::string &  var_name,
Moose::VarKindType  expected_var_type = Moose::VarKindType::VAR_ANY,
Moose::VarFieldType  expected_var_field_type = Moose::VarFieldType::VAR_FIELD_ANY 
)
pure virtual

Returns the variable reference for requested variable which must be of the expected_var_type (Nonlinear vs.

Auxiliary) and expected_var_field_type (standard, scalar, vector). The default values of VAR_ANY and VAR_FIELD_ANY should be used when "any" type of variable is acceptable. Throws an error if the variable in question is not in the expected System or of the expected type.

Implemented in FEProblemBase, and DisplacedProblem.

Referenced by MooseObjectWarehouseBase< Indicator >::addObject(), Coupleable::Coupleable(), DGKernel::DGKernel(), isValid(), MooseVariableInterface< Real >::MooseVariableInterface(), and ScalarCoupleable::ScalarCoupleable().

◆ getVariableHelper()

MooseVariableFEBase & SubProblem::getVariableHelper ( THREAD_ID  tid,
const std::string &  var_name,
Moose::VarKindType  expected_var_type,
Moose::VarFieldType  expected_var_field_type,
SystemBase nl,
SystemBase aux 
)
protected

Helper function called by getVariable that handles the logic for checking whether Variables of the requested type are available.

Definition at line 603 of file SubProblem.C.

Referenced by DisplacedProblem::getVariable(), and FEProblemBase::getVariable().

609 {
610  // Eventual return value
611  MooseVariableFEBase * var = nullptr;
612 
613  // First check that the variable is found on the expected system.
614  if (expected_var_type == Moose::VarKindType::VAR_ANY)
615  {
616  if (nl.hasVariable(var_name))
617  var = &(nl.getVariable(tid, var_name));
618  else if (aux.hasVariable(var_name))
619  var = &(aux.getVariable(tid, var_name));
620  else
621  mooseError("Unknown variable " + var_name);
622  }
623  else if (expected_var_type == Moose::VarKindType::VAR_NONLINEAR && nl.hasVariable(var_name))
624  var = &(nl.getVariable(tid, var_name));
625  else if (expected_var_type == Moose::VarKindType::VAR_AUXILIARY && aux.hasVariable(var_name))
626  var = &(aux.getVariable(tid, var_name));
627  else
628  {
629  std::string expected_var_type_string =
630  (expected_var_type == Moose::VarKindType::VAR_NONLINEAR ? "nonlinear" : "auxiliary");
631  mooseError("No ",
632  expected_var_type_string,
633  " variable named ",
634  var_name,
635  " found. "
636  "Did you specify an auxiliary variable when you meant to specify a nonlinear "
637  "variable (or vice-versa)?");
638  }
639 
640  // Now make sure the var found has the expected field type.
641  bool var_is_vector = var->isVector();
642  if ((expected_var_field_type == Moose::VarFieldType::VAR_FIELD_ANY) ||
643  (var_is_vector && expected_var_field_type == Moose::VarFieldType::VAR_FIELD_VECTOR) ||
644  (!var_is_vector && expected_var_field_type == Moose::VarFieldType::VAR_FIELD_STANDARD))
645  return *var;
646  else
647  {
648  std::string expected_var_field_type_string =
649  (expected_var_field_type == Moose::VarFieldType::VAR_FIELD_STANDARD ? "standard"
650  : "vector");
651 
652  mooseError("No ",
653  expected_var_field_type_string,
654  " variable named ",
655  var_name,
656  " found. "
657  "Did you specify a vector variable when you meant to specify a standard variable "
658  "(or vice-versa)?");
659  }
660 }
virtual bool isVector() const =0
void mooseError(Args &&... args) const
Definition: MooseObject.h:140
NonlinearSystemBase * nl
MooseVariableFEBase & getVariable(THREAD_ID tid, const std::string &var_name)
Gets a reference to a variable of with specified name.
Definition: SystemBase.C:101
virtual bool hasVariable(const std::string &var_name) const
Query a system for a variable.
Definition: SystemBase.C:637

◆ getVectorTagID()

TagID SubProblem::getVectorTagID ( const TagName &  tag_name)
virtual

Get a TagID from a TagName.

Reimplemented in DisplacedProblem.

Definition at line 80 of file SubProblem.C.

Referenced by DisplacedProblem::getVectorTagID(), TaggingInterface::TaggingInterface(), and TaggingInterface::useVectorTag().

81 {
82  auto tag_name_upper = MooseUtils::toUpper(tag_name);
83 
84  if (!vectorTagExists(tag_name))
85  mooseError("Vector tag: ",
86  tag_name,
87  " does not exist. ",
88  "If this is a TimeKernel then this may have happened because you didn't "
89  "specify a Transient Executioner.");
90 
91  return _vector_tag_name_to_tag_id.at(tag_name_upper);
92 }
std::map< TagName, TagID > _vector_tag_name_to_tag_id
The currently declared tags.
Definition: SubProblem.h:549
std::string toUpper(const std::string &name)
Convert supplied string to upper case.
Definition: MooseUtils.C:708
void mooseError(Args &&... args) const
Definition: MooseObject.h:140
virtual bool vectorTagExists(TagID tag)
Check to see if a particular Tag exists.
Definition: SubProblem.h:100

◆ getVectorTags()

virtual std::map<TagName, TagID>& SubProblem::getVectorTags ( )
inlinevirtual

Return all vector tags, where a tag is represented by a map from name to ID.

Reimplemented in DisplacedProblem.

Definition at line 95 of file SubProblem.h.

Referenced by FEProblemBase::addResidual(), FEProblemBase::addResidualNeighbor(), FEProblemBase::addResidualScalar(), NonlinearSystemBase::computeNodalBCs(), FEProblemBase::computeResidual(), and DisplacedProblem::getVectorTags().

std::map< TagName, TagID > _vector_tag_name_to_tag_id
The currently declared tags.
Definition: SubProblem.h:549

◆ getVectorVariable()

virtual VectorMooseVariable& SubProblem::getVectorVariable ( THREAD_ID  tid,
const std::string &  var_name 
)
pure virtual

Returns the variable reference for requested VectorMooseVariable which may be in any system.

Implemented in FEProblemBase, and DisplacedProblem.

◆ ghostedElems()

virtual std::set<dof_id_type>& SubProblem::ghostedElems ( )
inlinevirtual

Return the list of elements that should have their DoFs ghosted to this processor.

Returns
The list

Reimplemented in DisplacedProblem.

Definition at line 493 of file SubProblem.h.

Referenced by SystemBase::augmentSendList(), NearestNodeLocator::findNodes(), DisplacedProblem::ghostedElems(), and NearestNodeLocator::updatePatch().

493 { return _ghosted_elems; }
std::set< dof_id_type > _ghosted_elems
Elements that should have Dofs ghosted to the local processor.
Definition: SubProblem.h:615

◆ ghostGhostedBoundaries()

virtual void SubProblem::ghostGhostedBoundaries ( )
pure virtual

Causes the boundaries added using addGhostedBoundary to actually be ghosted.

Implemented in FEProblemBase, and DisplacedProblem.

◆ hasActiveElementalMooseVariables()

bool SubProblem::hasActiveElementalMooseVariables ( THREAD_ID  tid) const
virtual

Whether or not a list of active elemental moose variables has been set.

Returns
True if there has been a list of active elemental moose variables set, False otherwise

Definition at line 242 of file SubProblem.C.

Referenced by SystemBase::prepare(), SystemBase::prepareFace(), and SystemBase::reinitElem().

243 {
245 }
std::vector< unsigned int > _has_active_elemental_moose_variables
Whether or not there is currently a list of active elemental moose variables.
Definition: SubProblem.h:598

◆ hasActiveMaterialProperties()

bool SubProblem::hasActiveMaterialProperties ( THREAD_ID  tid) const
virtual

Method to check whether or not a list of active material roperties has been set.

This method is called by reinitMaterials to determine whether Material computeProperties methods need to be called. If the return is False, this check prevents unnecessary material property computation

Parameters
tidThe thread id
Returns
True if there has been a list of active material properties set, False otherwise

Definition at line 268 of file SubProblem.C.

Referenced by FEProblemBase::reinitMaterials(), FEProblemBase::reinitMaterialsBoundary(), FEProblemBase::reinitMaterialsFace(), and FEProblemBase::reinitMaterialsNeighbor().

269 {
270  return !_active_material_property_ids[tid].empty();
271 }
std::vector< std::set< unsigned int > > _active_material_property_ids
Set of material property ids that determine whether materials get reinited.
Definition: SubProblem.h:601

◆ hasBlockMaterialProperty()

bool SubProblem::hasBlockMaterialProperty ( SubdomainID  block_id,
const std::string &  prop_name 
)
virtual

Check if a material property is defined on a block.

Definition at line 323 of file SubProblem.C.

324 {
325  auto it = _map_block_material_props.find(bid);
326  if (it == _map_block_material_props.end())
327  return false;
328 
329  if (it->second.count(prop_name) > 0)
330  return true;
331  else
332  return false;
333 }
std::map< SubdomainID, std::set< std::string > > _map_block_material_props
Map of material properties (block_id -> list of properties)
Definition: SubProblem.h:571

◆ hasBoundaryMaterialProperty()

bool SubProblem::hasBoundaryMaterialProperty ( BoundaryID  boundary_id,
const std::string &  prop_name 
)
virtual

Check if a material property is defined on a block.

Definition at line 382 of file SubProblem.C.

383 {
384  auto it = _map_boundary_material_props.find(bid);
385  if (it == _map_boundary_material_props.end())
386  return false;
387 
388  if (it->second.count(prop_name) > 0)
389  return true;
390  else
391  return false;
392 }
std::map< BoundaryID, std::set< std::string > > _map_boundary_material_props
Map for boundary material properties (boundary_id -> list of properties)
Definition: SubProblem.h:574

◆ hasScalarVariable()

virtual bool SubProblem::hasScalarVariable ( const std::string &  var_name) const
pure virtual

Returns a Boolean indicating whether any system contains a variable with the name provided.

Implemented in FEProblemBase, and DisplacedProblem.

Referenced by Coupleable::Coupleable(), and ScalarCoupleable::ScalarCoupleable().

◆ hasVariable()

virtual bool SubProblem::hasVariable ( const std::string &  var_name) const
pure virtual

◆ init()

virtual void Problem::init ( )
pure virtualinherited

Implemented in FEProblemBase, and DisplacedProblem.

◆ isMatPropRequested()

bool SubProblem::isMatPropRequested ( const std::string &  prop_name) const
virtual

Find out if a material property has been requested by any object.

Definition at line 541 of file SubProblem.C.

Referenced by DerivativeFunctionMaterialBase::initialSetup().

542 {
543  return _material_property_requested.find(prop_name) != _material_property_requested.end();
544 }
std::set< std::string > _material_property_requested
set containing all material property names that have been requested by getMaterialProperty* ...
Definition: SubProblem.h:581

◆ isParamValid()

bool MooseObject::isParamValid ( const std::string &  name) const
inlineinherited

Test if the supplied parameter is valid.

Parameters
nameThe name of the parameter to test

Definition at line 81 of file MooseObject.h.

Referenced by AdvancedOutput::AdvancedOutput(), BicubicSplineFunction::BicubicSplineFunction(), Piecewise::buildFromFile(), Piecewise::buildFromXandY(), DistributedGeneratedMesh::buildMesh(), GeneratedMesh::buildMesh(), LibmeshPartitioner::clone(), OversampleOutput::cloneMesh(), CSVReader::CSVReader(), MultiAppNearestNodeTransfer::execute(), Exodus::Exodus(), FEProblemBase::FEProblemBase(), FileOutput::FileOutput(), MultiApp::fillPositions(), FunctionDT::FunctionDT(), RenameBoundaryGenerator::generate(), ElementSubdomainIDGenerator::generate(), BreakBoundaryOnSubdomainGenerator::generate(), ExtraNodesetGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), MeshSideSetGenerator::generate(), RenameBlockGenerator::generate(), GeneratedMeshGenerator::generate(), ParsedSubdomainMeshGenerator::generate(), MeshExtruderGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), PatternedMeshGenerator::generate(), MultiAppNearestNodeTransfer::getLocalEntities(), MeshGenerator::getMesh(), MultiAppNearestNodeTransfer::getNearestNode(), IterationAdaptiveDT::init(), EigenExecutionerBase::init(), MooseMesh::init(), AdvancedOutput::initExecutionTypes(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), SolutionAux::initialSetup(), MooseParsedVectorFunction::initialSetup(), Console::initialSetup(), Receiver::initialSetup(), SolutionFunction::initialSetup(), MooseParsedGradFunction::initialSetup(), MooseParsedFunction::initialSetup(), AdvancedOutput::initialSetup(), AdvancedOutput::initPostprocessorOrVectorPostprocessorLists(), IterationAdaptiveDT::IterationAdaptiveDT(), LeastSquaresFit::LeastSquaresFit(), LibmeshPartitioner::LibmeshPartitioner(), BreakBoundaryOnSubdomain::modify(), MeshExtruder::modify(), MeshSideSet::modify(), LowerDBlockFromSideset::modify(), AssignElementSubdomainID::modify(), ParsedSubdomainMeshModifier::modify(), RenameBlock::modify(), SubdomainBoundingBox::modify(), MooseMesh::MooseMesh(), EigenExecutionerBase::normalizeSolution(), Output::Output(), PetscOutput::PetscOutput(), Piecewise::Piecewise(), SolutionUserObject::readExodusII(), RenameBlock::RenameBlock(), RenameBlockGenerator::RenameBlockGenerator(), RenameBoundaryGenerator::RenameBoundaryGenerator(), SolutionUserObject::SolutionUserObject(), and TimePeriod::TimePeriod().

81 { return _pars.isParamValid(name); }
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
Definition: MooseObject.h:168
const std::string & name() const
Get the name of the object.
Definition: MooseObject.h:51
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ isSolveTerminationRequested()

virtual bool Problem::isSolveTerminationRequested ( )
inlinevirtualinherited

Check of termination has been requested.

This should be called by transient Executioners in the keepGoing() member.

Definition at line 47 of file Problem.h.

Referenced by Transient::keepGoing().

47 { return _termination_requested; };
bool _termination_requested
True if termination of the solve has been requested.
Definition: Problem.h:57

◆ isTransient()

virtual bool SubProblem::isTransient ( ) const
pure virtual

◆ markMatPropRequested()

void SubProblem::markMatPropRequested ( const std::string &  prop_name)
virtual

Helper method for adding a material property name to the _material_property_requested set.

Definition at line 535 of file SubProblem.C.

Referenced by Material::getZeroMaterialProperty(), and MaterialPropertyInterface::markMatPropRequested().

536 {
537  _material_property_requested.insert(prop_name);
538 }
std::set< std::string > _material_property_requested
set containing all material property names that have been requested by getMaterialProperty* ...
Definition: SubProblem.h:581

◆ matrixTagExists() [1/2]

bool SubProblem::matrixTagExists ( const TagName &  tag_name)
virtual

Check to see if a particular Tag exists.

Reimplemented in DisplacedProblem.

Definition at line 118 of file SubProblem.C.

Referenced by SystemBase::activeMatrixTag(), NonlinearSystem::addMatrix(), SystemBase::associateMatrixToTag(), SystemBase::deactiveMatrixTag(), SystemBase::disassociateMatrixFromTag(), getMatrixTagID(), SystemBase::matrixTagActive(), DisplacedProblem::matrixTagExists(), and TaggingInterface::useMatrixTag().

119 {
120  auto tag_name_upper = MooseUtils::toUpper(tag_name);
121 
122  return _matrix_tag_name_to_tag_id.find(tag_name_upper) != _matrix_tag_name_to_tag_id.end();
123 }
std::map< TagName, TagID > _matrix_tag_name_to_tag_id
The currently declared tags.
Definition: SubProblem.h:555
std::string toUpper(const std::string &name)
Convert supplied string to upper case.
Definition: MooseUtils.C:708

◆ matrixTagExists() [2/2]

bool SubProblem::matrixTagExists ( TagID  tag_id)
virtual

Check to see if a particular Tag exists.

Reimplemented in DisplacedProblem.

Definition at line 126 of file SubProblem.C.

127 {
128  return _matrix_tag_id_to_tag_name.find(tag_id) != _matrix_tag_id_to_tag_name.end();
129 }
std::map< TagID, TagName > _matrix_tag_id_to_tag_name
Reverse map.
Definition: SubProblem.h:558

◆ matrixTagName()

TagName SubProblem::matrixTagName ( TagID  tag)
virtual

Retrieve the name associated with a TagID.

Reimplemented in DisplacedProblem.

Definition at line 147 of file SubProblem.C.

Referenced by NonlinearSystem::addMatrix(), and DisplacedProblem::matrixTagName().

148 {
149  return _matrix_tag_id_to_tag_name[tag];
150 }
std::map< TagID, TagName > _matrix_tag_id_to_tag_name
Reverse map.
Definition: SubProblem.h:558

◆ mesh()

virtual MooseMesh& SubProblem::mesh ( )
pure virtual

◆ meshChanged()

void SubProblem::meshChanged ( )
virtual

Reimplemented in FEProblemBase, and DisplacedProblem.

Definition at line 571 of file SubProblem.C.

572 {
573  mooseError("This system does not support changing the mesh");
574 }
void mooseError(Args &&... args) const
Definition: MooseObject.h:140

◆ mooseDeprecated()

template<typename... Args>
void MooseObject::mooseDeprecated ( Args &&...  args) const
inlineinherited

◆ mooseError()

template<typename... Args>
void MooseObject::mooseError ( Args &&...  args) const
inlineinherited

Definition at line 140 of file MooseObject.h.

Referenced by PetscExternalPartitioner::_do_partition(), GridPartitioner::_do_partition(), FEProblemBase::addConstraint(), FEProblemBase::addInitialCondition(), FEProblem::addLineSearch(), FEProblemBase::addLineSearch(), FEProblemBase::addOutput(), DiracKernel::addPointWithValidId(), FEProblemBase::addPostprocessor(), MooseMesh::addQuadratureNode(), FEProblemBase::addVectorPostprocessor(), Output::advancedExecuteOn(), AllSideSetsByNormalsGenerator::AllSideSetsByNormalsGenerator(), AnnularMesh::AnnularMesh(), AnnularMeshGenerator::AnnularMeshGenerator(), MultiApp::appPostprocessorValue(), MultiApp::appProblem(), MultiApp::appProblemBase(), MultiApp::appUserObjectBase(), DerivativeParsedMaterialHelper::assembleDerivatives(), Function::average(), Axisymmetric2D3DSolutionFunction::Axisymmetric2D3DSolutionFunction(), BicubicSplineFunction::BicubicSplineFunction(), BoundingValueElementDamper::BoundingValueElementDamper(), BoundingValueNodalDamper::BoundingValueNodalDamper(), BoundsAux::BoundsAux(), BreakMeshByBlockGenerator::BreakMeshByBlockGenerator(), BreakMeshByBlockGeneratorBase::BreakMeshByBlockGeneratorBase(), MooseMesh::buildCoarseningMap(), Piecewise::buildFromFile(), Piecewise::buildFromXandY(), Piecewise::buildFromXY(), TiledMesh::buildMesh(), FileMesh::buildMesh(), SpiralAnnularMesh::buildMesh(), DistributedGeneratedMesh::buildMesh(), GeneratedMesh::buildMesh(), ImageMeshGenerator::buildMesh3D(), ImageMesh::buildMesh3D(), MooseMesh::buildRefinementMap(), MooseMesh::buildSideList(), ChangeOverTimePostprocessor::ChangeOverTimePostprocessor(), EigenExecutionerBase::chebyshev(), checkBlockMatProps(), checkBoundaryMatProps(), FEProblemBase::checkCoordinateSystems(), FEProblemBase::checkDependMaterialsHelper(), FEProblemBase::checkDisplacementOrders(), Material::checkExecutionStage(), BreakMeshByBlockBase::checkInputParameter(), Steady::checkIntegrity(), EigenExecutionerBase::checkIntegrity(), ActuallyExplicitEuler::checkLinearConvergence(), FEProblemBase::checkProblemIntegrity(), Material::checkStatefulSanity(), FEProblemBase::checkUserObjects(), LibmeshPartitioner::clone(), MooseMesh::clone(), ComparisonPostprocessor::comparisonIsTrue(), CompositeFunction::CompositeFunction(), ElementLpNormAux::compute(), ElementH1ErrorFunctionAux::compute(), NodalPatchRecovery::compute(), InterfaceKernel::computeElemNeighJacobian(), TimeSequenceStepperBase::computeFailedDT(), IterationAdaptiveDT::computeFailedDT(), TimeStepper::computeFailedDT(), HistogramVectorPostprocessor::computeHistogram(), EqualValueEmbeddedConstraint::computeQpJacobian(), EqualValueEmbeddedConstraint::computeQpOffDiagJacobian(), FEProblemBase::computeResidualInternal(), FEProblemBase::computeResidualTag(), FEProblemBase::computeResidualType(), StatisticsVectorPostprocessor::computeStatValue(), Material::computeSubdomainProperties(), BDF2::computeTimeDerivatives(), ExplicitEuler::computeTimeDerivatives(), ImplicitEuler::computeTimeDerivatives(), NewmarkBeta::computeTimeDerivatives(), CrankNicolson::computeTimeDerivatives(), ActuallyExplicitEuler::computeTimeDerivatives(), LStableDirk2::computeTimeDerivatives(), LStableDirk3::computeTimeDerivatives(), ImplicitMidpoint::computeTimeDerivatives(), ExplicitTVDRK2::computeTimeDerivatives(), AStableDirk4::computeTimeDerivatives(), LStableDirk4::computeTimeDerivatives(), ExplicitRK2::computeTimeDerivatives(), PenetrationAux::computeValue(), ConcentricCircleMesh::ConcentricCircleMesh(), ConcentricCircleMeshGenerator::ConcentricCircleMeshGenerator(), TimeStepper::constrainStep(), AuxKernel::coupledDot(), AuxKernel::coupledDotDu(), CoupledForce::CoupledForce(), DebugResidualAux::DebugResidualAux(), BicubicSplineFunction::derivative(), DerivativeSumMaterial::DerivativeSumMaterial(), DGKernel::DGKernel(), FEProblemBase::duplicateVariableCheck(), EigenProblem::EigenProblem(), Eigenvalues::Eigenvalues(), ElementalVariableValue::ElementalVariableValue(), ElementQualityAux::ElementQualityAux(), MooseMesh::errorIfDistributedMesh(), SolutionUserObject::evalMeshFunction(), SolutionUserObject::evalMeshFunctionGradient(), SolutionUserObject::evalMultiValuedMeshFunction(), SolutionUserObject::evalMultiValuedMeshFunctionGradient(), PerflogDumper::execute(), MultiAppPostprocessorTransfer::execute(), DiscreteElementUserObject::execute(), MultiAppPostprocessorInterpolationTransfer::execute(), MultiAppVariableValueSamplePostprocessorTransfer::execute(), ElementQualityChecker::execute(), NodalValueSampler::execute(), MultiAppNearestNodeTransfer::execute(), PointValue::execute(), MultiAppPostprocessorToAuxScalarTransfer::execute(), MultiAppScalarToAuxScalarTransfer::execute(), MultiAppVariableValueSampleTransfer::execute(), MultiAppInterpolationTransfer::execute(), MultiAppUserObjectTransfer::execute(), FindValueOnLine::execute(), TimeExtremeValue::execute(), VectorPostprocessorComparison::execute(), LeastSquaresFit::execute(), LeastSquaresFitHistory::execute(), FEProblemBase::executeControls(), MultiAppVectorPostprocessorTransfer::executeFromMultiapp(), MultiAppVectorPostprocessorTransfer::executeToMultiapp(), Exodus::Exodus(), FileOutput::FileOutput(), CentroidMultiApp::fillPositions(), MultiApp::fillPositions(), VerifyElementUniqueID::finalize(), VerifyNodalUniqueID::finalize(), DiscreteElementUserObject::finalize(), ElementQualityChecker::finalize(), MemoryUsage::finalize(), PointSamplerBase::finalize(), Transfer::find_sys(), BreakMeshByBlockBase::findFreeBoundaryId(), BreakMeshByBlockGeneratorBase::findFreeBoundaryId(), FunctionDT::FunctionDT(), FunctionMaterialBase::FunctionMaterialBase(), ParsedMaterialHelper::functionParse(), FunctionScalarAux::FunctionScalarAux(), FunctionScalarIC::FunctionScalarIC(), GapValueAux::GapValueAux(), ExtraNodesetGenerator::generate(), ElementSubdomainIDGenerator::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), StitchedMeshGenerator::generate(), GeneratedMeshGenerator::generate(), MeshExtruderGenerator::generate(), SpiralAnnularMeshGenerator::generate(), SideSetsFromBoundingBoxGenerator::generate(), BoundingBoxNodeSetGenerator::generate(), PatternedMeshGenerator::generate(), GeneratedMesh::GeneratedMesh(), GeneratedMeshGenerator::GeneratedMeshGenerator(), RandomICBase::generateRandom(), GenericConstantMaterial::GenericConstantMaterial(), GenericFunctionMaterial::GenericFunctionMaterial(), MooseMesh::getBoundaryID(), MultiApp::getBoundingBox(), MooseMesh::getCoarseningMap(), Control::getControllableParameterByName(), FEProblemBase::getCoordSystem(), PiecewiseConstant::getDirection(), FEProblemBase::getDistribution(), ElementGenerator::getElemType(), MultiApp::getExecutioner(), FEProblemBase::getFunction(), SolutionUserObject::getLocalVarIndex(), AuxKernel::getMaterialProperty(), AuxKernel::getMaterialPropertyOld(), AuxKernel::getMaterialPropertyOlder(), getMatrixTagID(), AnnularMesh::getMaxInDimension(), DistributedGeneratedMesh::getMaxInDimension(), GeneratedMesh::getMaxInDimension(), FEProblemBase::getMaxQps(), FEProblemBase::getMaxShapeFunctions(), AnnularMesh::getMinInDimension(), DistributedGeneratedMesh::getMinInDimension(), GeneratedMesh::getMinInDimension(), MooseMesh::getMortarInterface(), MooseMesh::getMortarInterfaceByName(), MooseMesh::getNodeBlockIds(), MooseMesh::getNodeList(), FEProblemBase::getNonlinearSystem(), MooseMesh::getPairedBoundaryMapping(), ImageMeshGenerator::GetPixelInfo(), ImageMesh::GetPixelInfo(), MaterialStdVectorAux::getRealValue(), MooseMesh::getRefinementMap(), FEProblemBase::getSampler(), DisplacedProblem::getScalarVariable(), FEProblemBase::getScalarVariable(), DisplacedProblem::getStandardVariable(), FEProblemBase::getStandardVariable(), MooseMesh::getSubdomainBoundaryIds(), MooseMesh::getSubdomainID(), DisplacedProblem::getSystem(), FEProblemBase::getSystem(), FEProblemBase::getUserObject(), FEProblemBase::getUserObjectBase(), PerformanceData::getValue(), Residual::getValue(), PerfGraphData::getValue(), LineValueSampler::getValue(), FindValueOnLine::getValueAtPoint(), getVariableHelper(), getVectorTagID(), DisplacedProblem::getVectorVariable(), FEProblemBase::getVectorVariable(), MultiApp::globalAppToLocal(), MooseParsedVectorFunction::gradient(), AdvancedOutput::hasOutputHelper(), CrankNicolson::init(), CSVTimeSequenceStepper::init(), IterationAdaptiveDT::init(), EigenExecutionerBase::init(), Transient::init(), MooseMesh::init(), FEProblemBase::init(), NumPicardIterations::initialize(), PiecewiseBase::initialSetup(), FullSolveMultiApp::initialSetup(), SolutionAux::initialSetup(), Axisymmetric2D3DSolutionFunction::initialSetup(), Exodus::initialSetup(), SolutionFunction::initialSetup(), SolutionUserObject::initialSetup(), FEProblemBase::initialSetup(), AdvancedOutput::initOutputList(), AdvancedOutput::initShowHideLists(), Material::initStatefulProperties(), Function::integral(), InterfaceKernel::InterfaceKernel(), InterfaceTimeKernel::InterfaceTimeKernel(), EigenExecutionerBase::inversePowerIteration(), InversePowerMethod::InversePowerMethod(), IterationAdaptiveDT::IterationAdaptiveDT(), LeastSquaresFit::LeastSquaresFit(), LibmeshPartitioner::LibmeshPartitioner(), LinearCombinationFunction::LinearCombinationFunction(), LinearCombinationPostprocessor::LinearCombinationPostprocessor(), LinearNodalConstraint::LinearNodalConstraint(), LineMaterialSamplerBase< Real >::LineMaterialSamplerBase(), LineSearch::lineSearch(), LineValueSampler::LineValueSampler(), MaterialRealTensorValueAux::MaterialRealTensorValueAux(), MaterialRealVectorValueAux::MaterialRealVectorValueAux(), MaterialStdVectorRealGradientAux::MaterialStdVectorRealGradientAux(), MaterialVectorPostprocessor::MaterialVectorPostprocessor(), Distribution::median(), meshChanged(), MeshExtruder::MeshExtruder(), MeshExtruderGenerator::MeshExtruderGenerator(), MeshSideSetGenerator::MeshSideSetGenerator(), SideSetsFromNormals::modify(), SideSetsFromPoints::modify(), BreakMeshByBlockBase::modify(), AddExtraNodeset::modify(), MeshExtruder::modify(), SmoothMesh::modify(), AssignElementSubdomainID::modify(), ElementDeleterBase::modify(), AddAllSideSetsByNormals::modify(), RenameBlock::modify(), ParsedSubdomainMeshModifier::modify(), ImageSubdomain::modify(), BoundingBoxNodeSet::modify(), OrientedSubdomainBoundingBox::modify(), AddSideSetsFromBoundingBox::modify(), SubdomainBoundingBox::modify(), MooseMesh::MooseMesh(), MultiAppMeshFunctionTransfer::MultiAppMeshFunctionTransfer(), MultiAppPostprocessorTransfer::MultiAppPostprocessorTransfer(), NearestNodeDistanceAux::NearestNodeDistanceAux(), NearestNodeValueAux::NearestNodeValueAux(), RenameBlockGenerator::newBlockID(), RenameBlock::newBlockID(), RenameBlockGenerator::newBlockName(), RenameBlock::newBlockName(), NewmarkBeta::NewmarkBeta(), NodalConstraint::NodalConstraint(), NodalScalarKernel::NodalScalarKernel(), NodalVariableValue::NodalVariableValue(), NumDOFs::NumDOFs(), NumNonlinearIterations::NumNonlinearIterations(), NumVars::NumVars(), ElementSideNeighborLayers::operator()(), ElementPointNeighbors::operator()(), RelationshipManager::operator==(), XDA::output(), SolutionHistory::output(), AdvancedOutput::outputElementalVariables(), AdvancedOutput::outputInput(), AdvancedOutput::outputNodalVariables(), AdvancedOutput::outputPostprocessors(), AdvancedOutput::outputScalarVariables(), Exodus::outputSetup(), AdvancedOutput::outputSystemInformation(), Console::outputVectorPostprocessors(), AdvancedOutput::outputVectorPostprocessors(), MooseObject::paramError(), PiecewiseBilinear::parse(), ParsedAddSideset::ParsedAddSideset(), ParsedAux::ParsedAux(), ParsedGenerateSideset::ParsedGenerateSideset(), ParsedODEKernel::ParsedODEKernel(), ParsedSubdomainMeshGenerator::ParsedSubdomainMeshGenerator(), ParsedSubdomainMeshModifier::ParsedSubdomainMeshModifier(), PatternedMesh::PatternedMesh(), PetscExternalPartitioner::PetscExternalPartitioner(), PhysicsBasedPreconditioner::PhysicsBasedPreconditioner(), Piecewise::Piecewise(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), PiecewiseMulticonstant::PiecewiseMulticonstant(), PiecewiseMultiInterpolation::PiecewiseMultiInterpolation(), SolutionUserObject::pointValueGradientWrapper(), SolutionUserObject::pointValueWrapper(), LStableDirk2::postResidual(), LStableDirk3::postResidual(), ImplicitMidpoint::postResidual(), ExplicitTVDRK2::postResidual(), AStableDirk4::postResidual(), LStableDirk4::postResidual(), ExplicitRK2::postResidual(), Predictor::Predictor(), SolutionUserObject::readExodusII(), SolutionUserObject::readXda(), EqualValueEmbeddedConstraint::reinitConstraint(), RelativeSolutionDifferenceNorm::RelativeSolutionDifferenceNorm(), RenameBlock::RenameBlock(), RenameBlockGenerator::RenameBlockGenerator(), RenameBoundaryGenerator::RenameBoundaryGenerator(), RinglebMesh::RinglebMesh(), RinglebMeshGenerator::RinglebMeshGenerator(), ScalarComponentIC::ScalarComponentIC(), BicubicSplineFunction::secondDerivative(), FEProblemBase::setCoordSystem(), PiecewiseBase::setData(), EigenProblem::setEigenproblemType(), Sampler::setNumberOfRequiedRandomSeeds(), Exodus::setOutputDimension(), Split::setup(), TransientMultiApp::setupApp(), TimeSequenceStepperBase::setupSequence(), Transient::setupTimeIntegrator(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), SideSetsFromNormals::SideSetsFromNormals(), SideSetsFromNormalsGenerator::SideSetsFromNormalsGenerator(), SideSetsFromPoints::SideSetsFromPoints(), SideSetsFromPointsGenerator::SideSetsFromPointsGenerator(), SolutionTimeAdaptiveDT::SolutionTimeAdaptiveDT(), SolutionUserObject::SolutionUserObject(), ActuallyExplicitEuler::solve(), FullSolveMultiApp::solveStep(), UserObject::spatialValue(), SphericalAverage::SphericalAverage(), SpiralAnnularMesh::SpiralAnnularMesh(), SpiralAnnularMeshGenerator::SpiralAnnularMeshGenerator(), StitchedMesh::StitchedMesh(), NodalUserObject::subdomainSetup(), GeneralUserObject::subdomainSetup(), Constraint::subdomainSetup(), Console::systemInfoFlags(), Terminator::Terminator(), TestSetupPostprocessorDataActionFunction::TestSetupPostprocessorDataActionFunction(), ThreadedGeneralUserObject::ThreadedGeneralUserObject(), ThreadedGeneralUserObject::threadJoin(), DiscreteElementUserObject::threadJoin(), GeneralUserObject::threadJoin(), TiledMeshGenerator::TiledMeshGenerator(), Function::timeDerivative(), TimeExtremeValue::TimeExtremeValue(), TimePeriod::TimePeriod(), VectorPostprocessorVisualizationAux::timestepSetup(), MultiAppCopyTransfer::transfer(), MultiAppMeshFunctionTransfer::transferVariable(), Transient::Transient(), TransientMultiApp::TransientMultiApp(), FEProblemBase::uDotDotOldRequested(), FEProblemBase::uDotOldRequested(), EqualValueBoundaryConstraint::updateConstrainedNodes(), SolutionUserObject::updateExodusBracketingTimeIndices(), Axisymmetric2D3DSolutionFunction::value(), ValueRangeMarker::ValueRangeMarker(), ValueThresholdMarker::ValueThresholdMarker(), MultiAppTransfer::variableIntegrityCheck(), VariableTimeIntegrationAux::VariableTimeIntegrationAux(), VectorNodalBC::VectorNodalBC(), VectorOfPostprocessors::VectorOfPostprocessors(), VectorPostprocessorFunction::VectorPostprocessorFunction(), MooseParsedGradFunction::vectorValue(), MooseParsedFunction::vectorValue(), VolumeHistogram::VolumeHistogram(), VTKOutput::VTKOutput(), DOFMapOutput::writeStreamToFile(), and Console::writeStreamToFile().

141  {
142  std::ostringstream oss;
143  moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
144  std::string msg = oss.str();
145  callMooseErrorRaw(msg, &_app);
146  }
void mooseStreamAll(std::ostringstream &ss)
All of the following are not meant to be called directly - they are called by the normal macros (moos...
Definition: MooseError.C:87
void callMooseErrorRaw(std::string &msg, MooseApp *app)
Definition: MooseObject.C:57
MooseApp & _app
The MooseApp this object is associated with.
Definition: MooseObject.h:171

◆ mooseInfo()

template<typename... Args>
void MooseObject::mooseInfo ( Args &&...  args) const
inlineinherited

◆ mooseWarning()

template<typename... Args>
void MooseObject::mooseWarning ( Args &&...  args) const
inlineinherited

◆ name()

const std::string& MooseObject::name ( ) const
inlineinherited

Get the name of the object.

Returns
The name of the object

Definition at line 51 of file MooseObject.h.

Referenced by GridPartitioner::_do_partition(), FEProblemBase::addADJacobianMaterial(), FEProblemBase::addADResidualMaterial(), Executioner::addAttributeReporter(), DumpObjectsProblem::addAuxKernel(), FEProblemBase::addAuxKernel(), DumpObjectsProblem::addAuxScalarKernel(), FEProblemBase::addAuxScalarKernel(), DumpObjectsProblem::addBoundaryCondition(), FEProblemBase::addBoundaryCondition(), DumpObjectsProblem::addConstraint(), FEProblemBase::addConstraint(), FEProblemBase::addDamper(), DumpObjectsProblem::addDGKernel(), FEProblemBase::addDGKernel(), DumpObjectsProblem::addDiracKernel(), FEProblemBase::addDiracKernel(), FEProblemBase::addDistribution(), DumpObjectsProblem::addFunction(), FEProblemBase::addFunction(), FEProblemBase::addIndicator(), DumpObjectsProblem::addInitialCondition(), FEProblemBase::addInitialCondition(), DumpObjectsProblem::addInterfaceKernel(), FEProblemBase::addInterfaceKernel(), DumpObjectsProblem::addKernel(), FEProblemBase::addKernel(), FEProblemBase::addMarker(), DumpObjectsProblem::addMaterial(), FEProblemBase::addMaterial(), FEProblemBase::addMaterialHelper(), MooseMesh::addMortarInterface(), FEProblemBase::addMultiApp(), DumpObjectsProblem::addNodalKernel(), FEProblemBase::addNodalKernel(), FEProblemBase::addPostprocessor(), FEProblemBase::addPredictor(), FEProblemBase::addSampler(), DumpObjectsProblem::addScalarKernel(), FEProblemBase::addScalarKernel(), FEProblemBase::addTimeIntegrator(), FEProblemBase::addTransfer(), FEProblemBase::addUserObject(), FEProblemBase::addVectorPostprocessor(), Output::advancedExecuteOn(), AllSideSetsByNormalsGenerator::AllSideSetsByNormalsGenerator(), MultiApp::appPostprocessorValue(), MultiApp::appProblem(), MultiApp::appProblemBase(), MultiApp::appUserObjectBase(), DerivativeParsedMaterialHelper::assembleDerivatives(), AStableDirk4::AStableDirk4(), Function::average(), BreakMeshByBlockGenerator::BreakMeshByBlockGenerator(), ChangeOverTimePostprocessor::ChangeOverTimePostprocessor(), FEProblemBase::checkDependMaterialsHelper(), Damper::checkMinDamping(), Material::checkStatefulSanity(), CompositeFunction::CompositeFunction(), Material::computeSubdomainProperties(), VectorPostprocessorVisualizationAux::computeValue(), AuxKernel::coupledCallback(), AuxKernel::coupledDot(), AuxKernel::coupledDotDu(), MultiApp::createApp(), FEProblemBase::declareVectorPostprocessorVector(), DOFMapOutput::demangle(), DerivativeSumMaterial::DerivativeSumMaterial(), DGKernel::DGKernel(), DumpObjectsProblem::dumpObjectHelper(), ElementValueSampler::ElementValueSampler(), MooseMesh::errorIfDistributedMesh(), AB2PredictorCorrector::estimateTimeError(), SolutionUserObject::evalMeshFunction(), SolutionUserObject::evalMeshFunctionGradient(), SolutionUserObject::evalMultiValuedMeshFunction(), SolutionUserObject::evalMultiValuedMeshFunctionGradient(), MultiAppPostprocessorTransfer::execute(), MultiAppPostprocessorInterpolationTransfer::execute(), MultiAppVariableValueSamplePostprocessorTransfer::execute(), StatisticsVectorPostprocessor::execute(), MultiAppNearestNodeTransfer::execute(), PointValue::execute(), MultiAppPostprocessorToAuxScalarTransfer::execute(), MultiAppScalarToAuxScalarTransfer::execute(), MultiAppVariableValueSampleTransfer::execute(), MultiAppMeshFunctionTransfer::execute(), MultiAppInterpolationTransfer::execute(), MultiAppUserObjectTransfer::execute(), MultiAppProjectionTransfer::execute(), MultiAppVectorPostprocessorTransfer::execute(), HistogramVectorPostprocessor::execute(), MultiAppCopyTransfer::execute(), Exodus::Exodus(), FileOutput::FileOutput(), MultiApp::fillPositions(), PointSamplerBase::finalize(), DerivativeParsedMaterialHelper::findMatPropDerivative(), FunctionDT::FunctionDT(), GeneralUserObject::GeneralUserObject(), LowerDBlockFromSidesetGenerator::generate(), StitchedMeshGenerator::generate(), Material::getADMaterialProperty(), MultiApp::getBoundingBox(), MooseObject::getCheckedPointerParam(), Control::getControllableParameterByName(), Control::getControllableValue(), Control::getControllableValueByName(), FEProblemBase::getDistribution(), MultiApp::getExecutioner(), OutputWarehouse::getFileNumbers(), FEProblemBase::getFunction(), SolutionUserObject::getLocalVarIndex(), Marker::getMarkerValue(), FEProblemBase::getMaterial(), NodalPatchRecovery::getMaterialProperty(), AuxKernel::getMaterialProperty(), Material::getMaterialProperty(), getMaterialPropertyBlockNames(), getMaterialPropertyBoundaryNames(), NodalPatchRecovery::getMaterialPropertyOld(), AuxKernel::getMaterialPropertyOld(), Material::getMaterialPropertyOld(), NodalPatchRecovery::getMaterialPropertyOlder(), AuxKernel::getMaterialPropertyOlder(), Material::getMaterialPropertyOlder(), MeshGenerator::getMesh(), MooseMesh::getMortarInterfaceByName(), OutputWarehouse::getOutput(), MooseObject::getParam(), GeneralUserObject::getPostprocessorValue(), AuxKernel::getPostprocessorValue(), FEProblemBase::getPostprocessorValue(), GeneralUserObject::getPostprocessorValueByName(), AuxKernel::getPostprocessorValueByName(), FEProblemBase::getPostprocessorValueOld(), FEProblemBase::getPostprocessorValueOlder(), FEProblemBase::getSampler(), AuxKernel::getScatterVectorPostprocessorValue(), FEProblemBase::getScatterVectorPostprocessorValue(), AuxKernel::getScatterVectorPostprocessorValueByName(), FEProblemBase::getScatterVectorPostprocessorValueOld(), Transient::getTimeStepperName(), AuxKernel::getUserObject(), InitialConditionBase::getUserObject(), FEProblemBase::getUserObject(), InitialConditionBase::getUserObjectBase(), AuxKernel::getUserObjectBase(), FEProblemBase::getUserObjectBase(), AuxKernel::getUserObjectByName(), InitialConditionBase::getUserObjectByName(), GeneralUserObject::getVectorPostprocessorValue(), AuxKernel::getVectorPostprocessorValue(), FEProblemBase::getVectorPostprocessorValue(), GeneralUserObject::getVectorPostprocessorValueByName(), AuxKernel::getVectorPostprocessorValueByName(), FEProblemBase::getVectorPostprocessorValueOld(), FEProblemBase::hasFunction(), AdvancedOutput::hasOutputHelper(), FEProblemBase::hasPostprocessor(), FEProblemBase::hasUserObject(), FEProblemBase::hasVectorPostprocessor(), FEProblemBase::init(), AdvancedOutput::initExecutionTypes(), AttribName::initFrom(), CSVReader::initialize(), StatisticsVectorPostprocessor::initialize(), HistogramVectorPostprocessor::initialize(), MultiAppProjectionTransfer::initialSetup(), DerivativeFunctionMaterialBase::initialSetup(), SolutionUserObject::initialSetup(), AdvancedOutput::initOutputList(), FEProblemBase::initPostprocessorData(), AdvancedOutput::initPostprocessorOrVectorPostprocessorLists(), Material::initStatefulProperties(), FEProblemBase::initVectorPostprocessorData(), Function::integral(), InterfaceKernel::InterfaceKernel(), MooseObject::isParamValid(), LinearCombinationFunction::LinearCombinationFunction(), Marker::Marker(), MatDiffusionBase< Real >::MatDiffusionBase(), MaterialDerivativeTestKernelBase< Real >::MaterialDerivativeTestKernelBase(), MaterialVectorPostprocessor::MaterialVectorPostprocessor(), Distribution::median(), MemoryUsageReporter::MemoryUsageReporter(), MeshSideSetGenerator::MeshSideSetGenerator(), ElementDeleterBase::modify(), MooseVariableInterface< Real >::MooseVariableInterface(), NearestPointBase< LayeredAverage >::NearestPointBase(), NodalValueSampler::NodalValueSampler(), NodalVariableValue::NodalVariableValue(), DOFMapOutput::output(), Output::Output(), AdvancedOutput::outputElementalVariables(), AdvancedOutput::outputInput(), AdvancedOutput::outputNodalVariables(), ConsoleUtils::outputOutputInformation(), Nemesis::outputPostprocessors(), Exodus::outputPostprocessors(), AdvancedOutput::outputPostprocessors(), AdvancedOutput::outputScalarVariables(), AdvancedOutput::outputSystemInformation(), AdvancedOutput::outputVectorPostprocessors(), ParsedAddSideset::ParsedAddSideset(), ParsedAux::ParsedAux(), ParsedGenerateSideset::ParsedGenerateSideset(), ParsedODEKernel::ParsedODEKernel(), ParsedSubdomainMeshGenerator::ParsedSubdomainMeshGenerator(), ParsedSubdomainMeshModifier::ParsedSubdomainMeshModifier(), PointSamplerBase::PointSamplerBase(), Registry::registerObjectsTo(), FEProblemBase::registerRandomInterface(), Material::resetQpProperties(), Sampler::Sampler(), ScalarComponentIC::ScalarComponentIC(), MooseMesh::setBoundaryName(), Control::setControllableValue(), Control::setControllableValueByName(), OutputWarehouse::setFileNumbers(), Exodus::setOutputDimension(), MooseMesh::setSubdomainName(), Split::setup(), TransientMultiApp::setupApp(), SideSetsFromNormalsGenerator::SideSetsFromNormalsGenerator(), SideSetsFromPointsGenerator::SideSetsFromPointsGenerator(), SideValueSampler::SideValueSampler(), TransientMultiApp::solveStep(), UserObject::spatialValue(), SphericalAverage::SphericalAverage(), StitchedMesh::StitchedMesh(), storeBoundaryDelayedCheckMatProp(), storeBoundaryMatPropName(), storeBoundaryZeroMatProp(), storeSubdomainDelayedCheckMatProp(), storeSubdomainMatPropName(), storeSubdomainZeroMatProp(), TaggingInterface::TaggingInterface(), ThreadedGeneralUserObject::ThreadedGeneralUserObject(), TiledMeshGenerator::TiledMeshGenerator(), Function::timeDerivative(), VectorPostprocessorVisualizationAux::timestepSetup(), TransientMultiApp::TransientMultiApp(), MultiAppTransfer::variableIntegrityCheck(), and AdvancedOutput::wantOutput().

51 { return _name; }
const std::string & _name
The name of this object, reference to value stored in InputParameters.
Definition: MooseObject.h:177

◆ nLinearIterations()

unsigned int SubProblem::nLinearIterations ( ) const
virtual

Reimplemented in FEProblemBase.

Definition at line 565 of file SubProblem.C.

Referenced by NumLinearIterations::getValue().

566 {
567  return 0;
568 }

◆ nNonlinearIterations()

unsigned int SubProblem::nNonlinearIterations ( ) const
virtual

Reimplemented in FEProblemBase.

Definition at line 559 of file SubProblem.C.

Referenced by NumNonlinearIterations::getValue().

560 {
561  return 0;
562 }

◆ nonlocalCouplingMatrix()

const CouplingMatrix& SubProblem::nonlocalCouplingMatrix ( ) const
inline

Definition at line 496 of file SubProblem.h.

496 { return _nonlocal_cm; }
CouplingMatrix _nonlocal_cm
Definition: SubProblem.h:563

◆ numMatrixTags()

virtual unsigned int SubProblem::numMatrixTags ( )
inlinevirtual

◆ numVectorTags()

virtual unsigned int SubProblem::numVectorTags ( )
inlinevirtual

◆ onTimestepBegin()

virtual void SubProblem::onTimestepBegin ( )
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ onTimestepEnd()

virtual void SubProblem::onTimestepEnd ( )
pure virtual

◆ paramError()

template<typename... Args>
void MooseObject::paramError ( const std::string &  param,
Args...  args 
)
inlineinherited

Emits an error prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message.

If this object's parameters were not created directly by the Parser, then this function falls back to the normal behavior of mooseError - only printing a message using the given args.

Definition at line 100 of file MooseObject.h.

Referenced by ADKernel< compute_stage >::ADKernel(), DGKernel::DGKernel(), ElementValueSampler::ElementValueSampler(), IntegratedBC::IntegratedBC(), Kernel::Kernel(), NodalBC::NodalBC(), NodalEqualValueConstraint::NodalEqualValueConstraint(), NodalKernel::NodalKernel(), NodalValueSampler::NodalValueSampler(), RandomIC::RandomIC(), and MultiAppCopyTransfer::transfer().

101  {
102  auto prefix = param + ": ";
103  if (!_pars.inputLocation(param).empty())
104  prefix = _pars.inputLocation(param) + ": (" + _pars.paramFullpath(param) + "):\n";
105  mooseError(prefix, args...);
106  }
void mooseError(Args &&... args) const
Definition: MooseObject.h:140
const std::string & inputLocation(const std::string &param) const
Get/set a string representing the location in the input text the parameter originated from (i...
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
Definition: MooseObject.h:168
const std::string & paramFullpath(const std::string &param) const
Get/set a string representing the full HIT parameter path from the input file (e.g.

◆ parameters()

const InputParameters& MooseObject::parameters ( ) const
inlineinherited

Get the parameters of the object.

Returns
The parameters of the object

Definition at line 57 of file MooseObject.h.

Referenced by FEProblemBase::addADJacobianMaterial(), FEProblemBase::addADResidualMaterial(), DumpObjectsProblem::addAuxKernel(), FEProblemBase::addAuxKernel(), DumpObjectsProblem::addAuxScalarKernel(), FEProblemBase::addAuxScalarKernel(), DumpObjectsProblem::addBoundaryCondition(), FEProblemBase::addBoundaryCondition(), DumpObjectsProblem::addConstraint(), FEProblemBase::addConstraint(), FEProblemBase::addDamper(), DumpObjectsProblem::addDGKernel(), FEProblemBase::addDGKernel(), DumpObjectsProblem::addDiracKernel(), FEProblemBase::addDiracKernel(), FEProblemBase::addDistribution(), DumpObjectsProblem::addFunction(), FEProblemBase::addFunction(), FEProblemBase::addIndicator(), DumpObjectsProblem::addInitialCondition(), FEProblemBase::addInitialCondition(), DumpObjectsProblem::addInterfaceKernel(), FEProblemBase::addInterfaceKernel(), DumpObjectsProblem::addKernel(), FEProblemBase::addKernel(), FEProblem::addLineSearch(), FEProblemBase::addMarker(), DumpObjectsProblem::addMaterial(), FEProblemBase::addMaterial(), FEProblemBase::addMaterialHelper(), FEProblemBase::addMultiApp(), DumpObjectsProblem::addNodalKernel(), FEProblemBase::addNodalKernel(), FEProblemBase::addOutput(), FEProblemBase::addPostprocessor(), FEProblemBase::addPredictor(), FEProblemBase::addSampler(), DumpObjectsProblem::addScalarKernel(), FEProblemBase::addScalarKernel(), FEProblemBase::addTimeIntegrator(), FEProblemBase::addTransfer(), FEProblemBase::addUserObject(), FEProblemBase::addVectorPostprocessor(), AdvancedOutput::AdvancedOutput(), assemble_l2(), Moose::assemble_matrix(), AuxKernel::AuxKernel(), AuxScalarKernel::AuxScalarKernel(), BoundsAux::BoundsAux(), LibmeshPartitioner::clone(), OversampleOutput::cloneMesh(), Moose::compute_bounds(), Moose::compute_jacobian(), Moose::compute_nearnullspace(), Moose::compute_nullspace(), Moose::compute_postcheck(), Moose::compute_transpose_nullspace(), Console::Console(), DumpObjectsProblem::deduceNecessaryParameters(), DumpObjectsProblem::dumpObjectHelper(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), Executioner::Executioner(), Exodus::Exodus(), FEProblem::FEProblem(), GapValueAux::GapValueAux(), MooseObject::getCheckedPointerParam(), MooseMesh::init(), BlockRestrictable::initializeBlockRestrictable(), FEProblemBase::initNullSpaceVectors(), InterfaceKernel::InterfaceKernel(), isValid(), MooseVariableInterface< Real >::MooseVariableInterface(), NearestPointBase< LayeredAverage >::NearestPointBase(), NodeFaceConstraint::NodeFaceConstraint(), PenetrationAux::PenetrationAux(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), MultiAppProjectionTransfer::projectSolution(), RandomIC::RandomIC(), InputParameterWarehouse::removeInputParameters(), FEProblem::setInputParametersFEProblem(), FEProblemBase::setInputParametersFEProblem(), DumpObjectsProblem::stringifyParameters(), and Transient::Transient().

57 { return _pars; }
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
Definition: MooseObject.h:168

◆ paramInfo()

template<typename... Args>
void MooseObject::paramInfo ( const std::string &  param,
Args...  args 
)
inlineinherited

Emits an informational message prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message.

If this object's parameters were not created directly by the Parser, then this function falls back to the normal behavior of mooseInfo - only printing a message using the given args.

Definition at line 131 of file MooseObject.h.

132  {
133  auto prefix = param + ": ";
134  if (!_pars.inputLocation(param).empty())
135  prefix = _pars.inputLocation(param) + ": (" + _pars.paramFullpath(param) + "):\n";
136  mooseInfo(prefix, args...);
137  }
const std::string & inputLocation(const std::string &param) const
Get/set a string representing the location in the input text the parameter originated from (i...
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
Definition: MooseObject.h:168
void mooseInfo(Args &&... args) const
Definition: MooseObject.h:161
const std::string & paramFullpath(const std::string &param) const
Get/set a string representing the full HIT parameter path from the input file (e.g.

◆ paramWarning()

template<typename... Args>
void MooseObject::paramWarning ( const std::string &  param,
Args...  args 
)
inlineinherited

Emits a warning prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message.

If this object's parameters were not created directly by the Parser, then this function falls back to the normal behavior of mooseWarning - only printing a message using the given args.

Definition at line 115 of file MooseObject.h.

116  {
117  auto prefix = param + ": ";
118  if (!_pars.inputLocation(param).empty())
119  prefix = _pars.inputLocation(param) + ": (" + _pars.paramFullpath(param) + "):\n";
120  mooseWarning(prefix, args...);
121  }
void mooseWarning(Args &&... args) const
Definition: MooseObject.h:149
const std::string & inputLocation(const std::string &param) const
Get/set a string representing the location in the input text the parameter originated from (i...
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
Definition: MooseObject.h:168
const std::string & paramFullpath(const std::string &param) const
Get/set a string representing the full HIT parameter path from the input file (e.g.

◆ prepare() [1/2]

virtual void SubProblem::prepare ( const Elem *  elem,
THREAD_ID  tid 
)
pure virtual

◆ prepare() [2/2]

virtual void SubProblem::prepare ( const Elem *  elem,
unsigned int  ivar,
unsigned int  jvar,
const std::vector< dof_id_type > &  dof_indices,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ prepareAssembly()

virtual void SubProblem::prepareAssembly ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ prepareFace()

virtual void SubProblem::prepareFace ( const Elem *  elem,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ prepareFaceShapes()

virtual void SubProblem::prepareFaceShapes ( unsigned int  var,
THREAD_ID  tid 
)
pure virtual

◆ prepareNeighborShapes()

virtual void SubProblem::prepareNeighborShapes ( unsigned int  var,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ prepareShapes()

virtual void SubProblem::prepareShapes ( unsigned int  var,
THREAD_ID  tid 
)
pure virtual

◆ registerTimedSection()

PerfID PerfGraphInterface::registerTimedSection ( const std::string &  section_name,
const unsigned int  level 
)
protectedinherited

Call to register a named section for timing.

Parameters
section_nameThe name of the code section to be timed
levelThe importance of the timer - lower is more important (0 will always come out)
Returns
The ID of the section - use when starting timing

Definition at line 50 of file PerfGraphInterface.C.

51 {
52  if (_prefix != "")
53  return _perf_graph.registerSection(_prefix + "::" + section_name, level);
54  else
55  return _perf_graph.registerSection(section_name, level);
56 }
PerfGraph & _perf_graph
The performance graph to add to.
std::string _prefix
A prefix to use for all sections.
PerfID registerSection(const std::string &section_name, unsigned int level)
Registers a named section of code.
Definition: PerfGraph.C:41

◆ reinitDirac()

virtual bool SubProblem::reinitDirac ( const Elem *  elem,
THREAD_ID  tid 
)
pure virtual

Returns true if the Problem has Dirac kernels it needs to compute on elem.

Implemented in FEProblemBase, and DisplacedProblem.

◆ reinitElem()

virtual void SubProblem::reinitElem ( const Elem *  elem,
THREAD_ID  tid 
)
pure virtual

◆ reinitElemFace()

virtual void SubProblem::reinitElemFace ( const Elem *  elem,
unsigned int  side,
BoundaryID  bnd_id,
THREAD_ID  tid 
)
pure virtual

◆ reinitElemPhys()

virtual void SubProblem::reinitElemPhys ( const Elem *  elem,
const std::vector< Point > &  phys_points_in_elem,
THREAD_ID  tid,
bool  suppress_displaced_init = false 
)
pure virtual

◆ reinitNeighbor()

virtual void SubProblem::reinitNeighbor ( const Elem *  elem,
unsigned int  side,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ reinitNeighborPhys() [1/2]

virtual void SubProblem::reinitNeighborPhys ( const Elem *  neighbor,
unsigned int  neighbor_side,
const std::vector< Point > &  physical_points,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ reinitNeighborPhys() [2/2]

virtual void SubProblem::reinitNeighborPhys ( const Elem *  neighbor,
const std::vector< Point > &  physical_points,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ reinitNode()

virtual void SubProblem::reinitNode ( const Node *  node,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ reinitNodeFace()

virtual void SubProblem::reinitNodeFace ( const Node *  node,
BoundaryID  bnd_id,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ reinitNodes()

virtual void SubProblem::reinitNodes ( const std::vector< dof_id_type > &  nodes,
THREAD_ID  tid 
)
pure virtual

◆ reinitNodesNeighbor()

virtual void SubProblem::reinitNodesNeighbor ( const std::vector< dof_id_type > &  nodes,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ reinitOffDiagScalars()

virtual void SubProblem::reinitOffDiagScalars ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ reinitScalars()

virtual void SubProblem::reinitScalars ( THREAD_ID  tid)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ restrictionBoundaryCheckName()

std::string SubProblem::restrictionBoundaryCheckName ( BoundaryID  check_id)
private

Definition at line 588 of file SubProblem.C.

Referenced by checkBoundaryMatProps().

589 {
590  return mesh().getMesh().get_boundary_info().sideset_name(check_id);
591 }
virtual MooseMesh & mesh()=0
MeshBase & getMesh()
Accessor for the underlying libMesh Mesh object.
Definition: MooseMesh.C:2512

◆ restrictionSubdomainCheckName()

std::string SubProblem::restrictionSubdomainCheckName ( SubdomainID  check_id)
private

Helper functions for checking MaterialProperties.

Definition at line 577 of file SubProblem.C.

Referenced by checkBlockMatProps().

578 {
579  // TODO: Put a better a interface in MOOSE
580  std::map<subdomain_id_type, std::string> & name_map = mesh().getMesh().set_subdomain_name_map();
581  std::map<subdomain_id_type, std::string>::const_iterator pos = name_map.find(check_id);
582  if (pos != name_map.end())
583  return pos->second;
584  return "";
585 }
virtual MooseMesh & mesh()=0
MeshBase & getMesh()
Accessor for the underlying libMesh Mesh object.
Definition: MooseMesh.C:2512

◆ safeAccessTaggedMatrices()

bool SubProblem::safeAccessTaggedMatrices ( )
inline

Is it safe to access the tagged matrices.

Definition at line 507 of file SubProblem.h.

Referenced by MooseVariableScalar::reinit().

bool _safe_access_tagged_matrices
Is it safe to retrieve data from tagged matrices.
Definition: SubProblem.h:627

◆ safeAccessTaggedVectors()

bool SubProblem::safeAccessTaggedVectors ( )
inline

Is it safe to access the tagged vectors.

Definition at line 510 of file SubProblem.h.

Referenced by MooseVariableScalar::reinit().

510 { return _safe_access_tagged_vectors; }
bool _safe_access_tagged_vectors
Is it safe to retrieve data from tagged vectors.
Definition: SubProblem.h:630

◆ setActiveElementalMooseVariables()

void SubProblem::setActiveElementalMooseVariables ( const std::set< MooseVariableFEBase *> &  moose_vars,
THREAD_ID  tid 
)
virtual

Set the MOOSE variables to be reinited on each element.

Parameters
moose_varsA set of variables that need to be reinited each time reinit() is called.
tidThe thread id

Reimplemented in FEProblemBase.

Definition at line 225 of file SubProblem.C.

Referenced by FEProblemBase::setActiveElementalMooseVariables().

227 {
228  if (!moose_vars.empty())
229  {
231  _active_elemental_moose_variables[tid] = moose_vars;
232  }
233 }
std::vector< unsigned int > _has_active_elemental_moose_variables
Whether or not there is currently a list of active elemental moose variables.
Definition: SubProblem.h:598
std::vector< std::set< MooseVariableFEBase * > > _active_elemental_moose_variables
This is the set of MooseVariableFEBases that will actually get reinited by a call to reinit(elem) ...
Definition: SubProblem.h:594

◆ setActiveFEVariableCoupleableMatrixTags()

void SubProblem::setActiveFEVariableCoupleableMatrixTags ( std::set< TagID > &  mtags,
THREAD_ID  tid 
)
virtual

Reimplemented in FEProblemBase.

Definition at line 153 of file SubProblem.C.

Referenced by FEProblemBase::setActiveFEVariableCoupleableMatrixTags().

154 {
156 }
std::vector< std::set< TagID > > _active_fe_var_coupleable_matrix_tags
Definition: SubProblem.h:603

◆ setActiveFEVariableCoupleableVectorTags()

void SubProblem::setActiveFEVariableCoupleableVectorTags ( std::set< TagID > &  vtags,
THREAD_ID  tid 
)
virtual

Reimplemented in FEProblemBase.

Definition at line 159 of file SubProblem.C.

Referenced by FEProblemBase::setActiveFEVariableCoupleableVectorTags().

160 {
162 }
std::vector< std::set< TagID > > _active_fe_var_coupleable_vector_tags
Definition: SubProblem.h:605

◆ setActiveMaterialProperties()

void SubProblem::setActiveMaterialProperties ( const std::set< unsigned int > &  mat_prop_ids,
THREAD_ID  tid 
)
virtual

Record and set the material properties required by the current computing thread.

Parameters
mat_prop_idsThe set of material properties required by the current computing thread.
tidThe thread id

Reimplemented in FEProblemBase.

Definition at line 255 of file SubProblem.C.

Referenced by FEProblemBase::setActiveMaterialProperties().

256 {
257  if (!mat_prop_ids.empty())
258  _active_material_property_ids[tid] = mat_prop_ids;
259 }
std::vector< std::set< unsigned int > > _active_material_property_ids
Set of material property ids that determine whether materials get reinited.
Definition: SubProblem.h:601

◆ setActiveScalarVariableCoupleableMatrixTags()

void SubProblem::setActiveScalarVariableCoupleableMatrixTags ( std::set< TagID > &  mtags,
THREAD_ID  tid 
)
virtual

Reimplemented in FEProblemBase.

Definition at line 189 of file SubProblem.C.

Referenced by FEProblemBase::setActiveScalarVariableCoupleableMatrixTags().

190 {
192 }
std::vector< std::set< TagID > > _active_sc_var_coupleable_matrix_tags
Definition: SubProblem.h:607

◆ setActiveScalarVariableCoupleableVectorTags()

void SubProblem::setActiveScalarVariableCoupleableVectorTags ( std::set< TagID > &  vtags,
THREAD_ID  tid 
)
virtual

Reimplemented in FEProblemBase.

Definition at line 195 of file SubProblem.C.

Referenced by FEProblemBase::setActiveScalarVariableCoupleableVectorTags().

196 {
198 }
std::vector< std::set< TagID > > _active_sc_var_coupleable_vector_tags
Definition: SubProblem.h:609

◆ setCurrentSubdomainID()

virtual void SubProblem::setCurrentSubdomainID ( const Elem *  elem,
THREAD_ID  tid 
)
pure virtual

◆ setNeighborSubdomainID()

virtual void SubProblem::setNeighborSubdomainID ( const Elem *  elem,
unsigned int  side,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ setResidual()

virtual void SubProblem::setResidual ( NumericVector< Number > &  residual,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ setResidualNeighbor()

virtual void SubProblem::setResidualNeighbor ( NumericVector< Number > &  residual,
THREAD_ID  tid 
)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ solve()

virtual void SubProblem::solve ( )
pure virtual

◆ storeBoundaryDelayedCheckMatProp()

void SubProblem::storeBoundaryDelayedCheckMatProp ( const std::string &  requestor,
BoundaryID  boundary_id,
const std::string &  name 
)
virtual

Adds to a map based on boundary ids of material properties to validate.

Parameters
requestorThe MOOSE object name requesting the material property
boundary_idThe block id for the MaterialProperty
nameThe name of the property

Definition at line 427 of file SubProblem.C.

Referenced by MaterialPropertyInterface::checkMaterialProperty().

430 {
431  _map_boundary_material_props_check[boundary_id].insert(std::make_pair(requestor, name));
432 }
std::map< BoundaryID, std::multimap< std::string, std::string > > _map_boundary_material_props_check
Definition: SubProblem.h:590
const std::string & name() const
Get the name of the object.
Definition: MooseObject.h:51

◆ storeBoundaryMatPropName()

void SubProblem::storeBoundaryMatPropName ( BoundaryID  boundary_id,
const std::string &  name 
)
virtual

Adds the given material property to a storage map based on boundary ids.

This is method is called from within the Material class when the property is first registered.

Parameters
boundary_idThe block id for the MaterialProperty
nameThe name of the property

Definition at line 401 of file SubProblem.C.

Referenced by Material::registerPropName().

402 {
403  _map_boundary_material_props[boundary_id].insert(name);
404 }
std::map< BoundaryID, std::set< std::string > > _map_boundary_material_props
Map for boundary material properties (boundary_id -> list of properties)
Definition: SubProblem.h:574
const std::string & name() const
Get the name of the object.
Definition: MooseObject.h:51

◆ storeBoundaryZeroMatProp()

void SubProblem::storeBoundaryZeroMatProp ( BoundaryID  boundary_id,
const MaterialPropertyName &  name 
)
virtual

Adds to a map based on boundary ids of material properties for which a zero value can be returned.

Thes properties are optional and will not trigger a missing material property error.

Parameters
boundary_idThe block id for the MaterialProperty
nameThe name of the property

Definition at line 413 of file SubProblem.C.

Referenced by Material::getZeroMaterialProperty().

414 {
415  _zero_boundary_material_props[boundary_id].insert(name);
416 }
std::map< BoundaryID, std::set< MaterialPropertyName > > _zero_boundary_material_props
Definition: SubProblem.h:578
const std::string & name() const
Get the name of the object.
Definition: MooseObject.h:51

◆ storeSubdomainDelayedCheckMatProp()

void SubProblem::storeSubdomainDelayedCheckMatProp ( const std::string &  requestor,
SubdomainID  block_id,
const std::string &  name 
)
virtual

Adds to a map based on block ids of material properties to validate.

Parameters
block_idThe block id for the MaterialProperty
nameThe name of the property

Definition at line 419 of file SubProblem.C.

Referenced by MaterialPropertyInterface::checkMaterialProperty().

422 {
423  _map_block_material_props_check[block_id].insert(std::make_pair(requestor, name));
424 }
const std::string & name() const
Get the name of the object.
Definition: MooseObject.h:51
std::map< SubdomainID, std::multimap< std::string, std::string > > _map_block_material_props_check
Data structures of the requested material properties.
Definition: SubProblem.h:589

◆ storeSubdomainMatPropName()

void SubProblem::storeSubdomainMatPropName ( SubdomainID  block_id,
const std::string &  name 
)
virtual

Adds the given material property to a storage map based on block ids.

This is method is called from within the Material class when the property is first registered.

Parameters
block_idThe block id for the MaterialProperty
nameThe name of the property

Definition at line 395 of file SubProblem.C.

Referenced by Material::registerPropName().

396 {
397  _map_block_material_props[block_id].insert(name);
398 }
const std::string & name() const
Get the name of the object.
Definition: MooseObject.h:51
std::map< SubdomainID, std::set< std::string > > _map_block_material_props
Map of material properties (block_id -> list of properties)
Definition: SubProblem.h:571

◆ storeSubdomainZeroMatProp()

void SubProblem::storeSubdomainZeroMatProp ( SubdomainID  block_id,
const MaterialPropertyName &  name 
)
virtual

Adds to a map based on block ids of material properties for which a zero value can be returned.

Thes properties are optional and will not trigger a missing material property error.

Parameters
block_idThe block id for the MaterialProperty
nameThe name of the property

Definition at line 407 of file SubProblem.C.

Referenced by Material::getZeroMaterialProperty().

408 {
409  _zero_block_material_props[block_id].insert(name);
410 }
std::map< SubdomainID, std::set< MaterialPropertyName > > _zero_block_material_props
Set of properties returned as zero properties.
Definition: SubProblem.h:577
const std::string & name() const
Get the name of the object.
Definition: MooseObject.h:51

◆ terminateSolve()

virtual void Problem::terminateSolve ( )
inlinevirtualinherited

Allow objects to request clean termination of the solve.

Definition at line 41 of file Problem.h.

Referenced by Terminator::execute().

41 { _termination_requested = true; };
bool _termination_requested
True if termination of the solve has been requested.
Definition: Problem.h:57

◆ type()

const std::string& MooseObject::type ( ) const
inlineinherited

Get the type of this object.

Returns
the name of the type of this object

Definition at line 45 of file MooseObject.h.

Referenced by DumpObjectsProblem::addAuxKernel(), DumpObjectsProblem::addAuxScalarKernel(), FEProblemBase::addAuxScalarVariable(), DumpObjectsProblem::addAuxVariable(), DisplacedProblem::addAuxVariable(), FEProblemBase::addAuxVariable(), DumpObjectsProblem::addBoundaryCondition(), DumpObjectsProblem::addConstraint(), DumpObjectsProblem::addDGKernel(), DumpObjectsProblem::addDiracKernel(), FEProblemBase::addDistribution(), DumpObjectsProblem::addFunction(), FEProblemBase::addFunction(), DumpObjectsProblem::addInitialCondition(), DumpObjectsProblem::addInterfaceKernel(), DumpObjectsProblem::addKernel(), DumpObjectsProblem::addMaterial(), DumpObjectsProblem::addNodalKernel(), FEProblemBase::addPredictor(), FEProblemBase::addSampler(), DumpObjectsProblem::addScalarKernel(), FEProblemBase::addScalarVariable(), PhysicsBasedPreconditioner::addSystem(), FEProblemBase::addTimeIntegrator(), DumpObjectsProblem::addVariable(), DisplacedProblem::addVariable(), FEProblemBase::addVariable(), FEProblemBase::advanceMultiApps(), FEProblemBase::backupMultiApps(), MooseMesh::buildRefinementAndCoarseningMaps(), FEProblemBase::computeAuxiliaryKernels(), ElemElemConstraint::computeElemNeighJacobian(), InterfaceKernel::computeElemNeighJacobian(), DGKernel::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighResidual(), InterfaceKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), FEProblemBase::computeMultiAppsDT(), InterfaceKernel::computeOffDiagElemNeighJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), DGConvection::computeQpJacobian(), CoupledTiedValueConstraint::computeQpJacobian(), TiedValueConstraint::computeQpJacobian(), DGDiffusion::computeQpJacobian(), LinearNodalConstraint::computeQpJacobian(), EqualValueBoundaryConstraint::computeQpJacobian(), EqualValueEmbeddedConstraint::computeQpJacobian(), CoupledTiedValueConstraint::computeQpOffDiagJacobian(), EqualValueEmbeddedConstraint::computeQpOffDiagJacobian(), DGConvection::computeQpResidual(), CoupledTiedValueConstraint::computeQpResidual(), TiedValueConstraint::computeQpResidual(), LinearNodalConstraint::computeQpResidual(), DGDiffusion::computeQpResidual(), EqualValueBoundaryConstraint::computeQpResidual(), EqualValueEmbeddedConstraint::computeQpResidual(), FEProblemBase::computeUserObjects(), DisplacedProblem::createQRules(), FEProblemBase::createQRules(), DumpObjectsProblem::deduceNecessaryParameters(), DumpObjectsProblem::dumpObjectHelper(), FEProblemBase::duplicateVariableCheck(), FEProblemBase::execMultiApps(), FEProblemBase::execMultiAppTransfers(), FEProblemBase::execTransfers(), FEProblemBase::finishMultiAppStep(), ElementSubdomainIDGenerator::generate(), ElementGenerator::getElemType(), FEProblemBase::getMaterial(), FEProblemBase::getMaterialData(), FEProblemBase::getTransfers(), AdvancedOutput::hasOutput(), FEProblemBase::incrementMultiAppTStep(), AdvancedOutput::initAvailableLists(), SolutionUserObject::initialSetup(), AdvancedOutput::initShowHideLists(), AssignElementSubdomainID::modify(), ControlOutput::output(), Gnuplot::output(), Exodus::output(), CSV::output(), Console::output(), Nemesis::output(), AdvancedOutput::output(), OversampleOutput::outputStep(), Output::outputStep(), FEProblemBase::outputStep(), FEProblemBase::restoreMultiApps(), FEProblemBase::setCoupling(), FileOutput::shouldOutput(), Output::shouldOutput(), AdvancedOutput::shouldOutput(), DisplacedProblem::updateGeomSearch(), FEProblemBase::updateGeomSearch(), and AdvancedOutput::wantOutput().

45 { return _type; }
const std::string & _type
The type of this object (the Class name)
Definition: MooseObject.h:174

◆ updateGeomSearch()

virtual void SubProblem::updateGeomSearch ( GeometricSearchData::GeometricSearchType  type = GeometricSearchData::ALL)
pure virtual

Implemented in FEProblemBase, and DisplacedProblem.

◆ vectorTagExists() [1/2]

virtual bool SubProblem::vectorTagExists ( TagID  tag)
inlinevirtual

◆ vectorTagExists() [2/2]

bool SubProblem::vectorTagExists ( const TagName &  tag_name)

Check to see if a particular Tag exists by using Tag name.

Definition at line 72 of file SubProblem.C.

73 {
74  auto tag_name_upper = MooseUtils::toUpper(tag_name);
75 
76  return _vector_tag_name_to_tag_id.find(tag_name_upper) != _vector_tag_name_to_tag_id.end();
77 }
std::map< TagName, TagID > _vector_tag_name_to_tag_id
The currently declared tags.
Definition: SubProblem.h:549
std::string toUpper(const std::string &name)
Convert supplied string to upper case.
Definition: MooseUtils.C:708

◆ vectorTagName()

TagName SubProblem::vectorTagName ( TagID  tag)
virtual

Retrieve the name associated with a TagID.

Reimplemented in DisplacedProblem.

Definition at line 95 of file SubProblem.C.

Referenced by SystemBase::addVector(), SystemBase::removeVector(), and DisplacedProblem::vectorTagName().

96 {
97  return _vector_tag_id_to_tag_name[tag];
98 }
std::map< TagID, TagName > _vector_tag_id_to_tag_name
Reverse map.
Definition: SubProblem.h:552

Friends And Related Function Documentation

◆ Restartable

friend class Restartable
friend

Definition at line 638 of file SubProblem.h.

Member Data Documentation

◆ _active_elemental_moose_variables

std::vector<std::set<MooseVariableFEBase *> > SubProblem::_active_elemental_moose_variables
protected

This is the set of MooseVariableFEBases that will actually get reinited by a call to reinit(elem)

Definition at line 594 of file SubProblem.h.

Referenced by clearActiveElementalMooseVariables(), FEProblemBase::FEProblemBase(), getActiveElementalMooseVariables(), setActiveElementalMooseVariables(), and SubProblem().

◆ _active_fe_var_coupleable_matrix_tags

std::vector<std::set<TagID> > SubProblem::_active_fe_var_coupleable_matrix_tags
protected

◆ _active_fe_var_coupleable_vector_tags

std::vector<std::set<TagID> > SubProblem::_active_fe_var_coupleable_vector_tags
protected

◆ _active_material_property_ids

std::vector<std::set<unsigned int> > SubProblem::_active_material_property_ids
protected

Set of material property ids that determine whether materials get reinited.

Definition at line 601 of file SubProblem.h.

Referenced by clearActiveMaterialProperties(), getActiveMaterialProperties(), hasActiveMaterialProperties(), setActiveMaterialProperties(), and SubProblem().

◆ _active_sc_var_coupleable_matrix_tags

std::vector<std::set<TagID> > SubProblem::_active_sc_var_coupleable_matrix_tags
protected

◆ _active_sc_var_coupleable_vector_tags

std::vector<std::set<TagID> > SubProblem::_active_sc_var_coupleable_vector_tags
protected

◆ _app

MooseApp& MooseObject::_app
protectedinherited

The MooseApp this object is associated with.

Definition at line 171 of file MooseObject.h.

Referenced by GridPartitioner::_do_partition(), AB2PredictorCorrector::AB2PredictorCorrector(), Executioner::addAttributeReporter(), FEProblemBase::addMaterialHelper(), FEProblemBase::addMultiApp(), FEProblemBase::addOutput(), FEProblemBase::allowOutput(), AStableDirk4::AStableDirk4(), AlgebraicRelationshipManager::attachAlgebraicFunctorHelper(), RelationshipManager::attachRelationshipManagers(), ElementSideNeighborLayers::attachRelationshipManagersInternal(), ElementPointNeighbors::attachRelationshipManagersInternal(), FileMesh::buildMesh(), MeshGeneratorMesh::buildMesh(), FEProblemBase::checkNonlinearConvergence(), OversampleOutput::cloneMesh(), FEProblemBase::computeJacobianTags(), FEProblemBase::computeResidualTags(), Console::Console(), TimeStepper::constrainStep(), MultiApp::createApp(), DumpObjectsProblem::dumpObjectHelper(), DumpObjectsProblem::dumpVariableHelper(), EigenExecutionerBase::EigenExecutionerBase(), EigenKernel::EigenKernel(), NonlinearEigen::execute(), InversePowerMethod::execute(), Transient::execute(), Steady::execute(), FileOutput::FileOutput(), FEProblemBase::forceOutput(), MeshGenerator::getMesh(), MeshGenerator::getMeshByName(), MooseObject::getMooseApp(), InversePowerMethod::init(), NonlinearEigen::init(), Transient::init(), Steady::init(), MooseMesh::init(), NumPicardIterations::initialize(), TimePeriod::initialSetup(), Console::initialSetup(), MultiApp::initialSetup(), FEProblemBase::initialSetup(), AdvancedOutput::initOutputList(), FEProblemBase::initPetscOutput(), AdvancedOutput::initPostprocessorOrVectorPostprocessorLists(), InversePowerMethod::InversePowerMethod(), MooseObject::mooseError(), MooseMesh::MooseMesh(), NonlinearEigen::NonlinearEigen(), EigenExecutionerBase::normalizeSolution(), PerfGraphOutput::output(), Tecplot::output(), Exodus::output(), Nemesis::output(), ControlOutput::outputActiveObjects(), ControlOutput::outputChangedControls(), ControlOutput::outputControls(), Exodus::outputEmptyTimestep(), Console::outputInput(), Exodus::outputInput(), Exodus::outputNodalVariables(), OversampleOutput::outputStep(), Output::outputStep(), FEProblemBase::outputStep(), Console::outputSystemInformation(), MultiApp::parentOutputPositionChanged(), PerformanceData::PerformanceData(), PetscOutput::petscLinearOutput(), PetscOutput::petscNonlinearOutput(), FEProblemBase::projectSolution(), FEProblemBase::setRestartFile(), TransientMultiApp::setupApp(), TimeSequenceStepperBase::setupSequence(), Transient::setupTimeIntegrator(), TransientMultiApp::solveStep(), FEProblemBase::subdomainSetup(), FEProblemBase::theWarehouse(), TimeExtremeValue::TimeExtremeValue(), TimePeriod::TimePeriod(), FEProblemBase::timestepSetup(), Transient::Transient(), and Console::write().

◆ _cli_option_found

bool Problem::_cli_option_found
protectedinherited

True if the CLI option is found.

Definition at line 47 of file Problem.h.

Referenced by Problem::_setCLIOption().

◆ _color_output

bool Problem::_color_output
protectedinherited

True if we're going to attempt to write color output.

Definition at line 54 of file Problem.h.

◆ _computing_nonlinear_residual

bool SubProblem::_computing_nonlinear_residual
protected

Whether residual being evaulated is non-linear.

Definition at line 624 of file SubProblem.h.

Referenced by computingNonlinearResid().

◆ _console

const ConsoleStream ConsoleStreamInterface::_console
inherited

An instance of helper class to write streams to the Console objects.

Definition at line 32 of file ConsoleStreamInterface.h.

Referenced by IterationAdaptiveDT::acceptStep(), SetupRecoverFileBaseAction::act(), Adaptivity::adaptMesh(), FEProblemBase::adaptMesh(), SimplePredictor::apply(), FEProblemBase::backupMultiApps(), FEProblemBase::checkProblemIntegrity(), IterationAdaptiveDT::computeAdaptiveDT(), Transient::computeConstrainedDT(), NonlinearSystemBase::computeDamping(), IterationAdaptiveDT::computeDT(), IterationAdaptiveDT::computeFailedDT(), IterationAdaptiveDT::computeInterpolationDT(), FEProblemBase::computeResidualTags(), IterationAdaptiveDT::constrainStep(), TimeStepper::constrainStep(), AB2PredictorCorrector::converged(), FEProblemBase::execMultiApps(), FEProblemBase::execMultiAppTransfers(), MultiAppPostprocessorTransfer::execute(), MultiAppPostprocessorInterpolationTransfer::execute(), MultiAppVariableValueSamplePostprocessorTransfer::execute(), MultiAppNearestNodeTransfer::execute(), MultiAppPostprocessorToAuxScalarTransfer::execute(), MultiAppScalarToAuxScalarTransfer::execute(), MultiAppVariableValueSampleTransfer::execute(), MultiAppInterpolationTransfer::execute(), MultiAppMeshFunctionTransfer::execute(), MultiAppUserObjectTransfer::execute(), MultiAppProjectionTransfer::execute(), MultiAppVectorPostprocessorTransfer::execute(), MultiAppCopyTransfer::execute(), Steady::execute(), MultiAppDTKUserObjectTransfer::execute(), ActionWarehouse::executeActionsWithAction(), ActionWarehouse::executeAllActions(), FEProblemBase::FEProblemBase(), ElementQualityChecker::finalize(), FEProblemBase::finishMultiAppStep(), MultiApp::globalAppToLocal(), InversePowerMethod::init(), NonlinearEigen::init(), Steady::init(), FEProblemBase::initialAdaptMesh(), FEProblemBase::initialSetup(), EigenExecutionerBase::inversePowerIteration(), Transient::keepGoing(), IterationAdaptiveDT::limitDTByFunction(), IterationAdaptiveDT::limitDTToPostprocessorValue(), EigenExecutionerBase::makeBXConsistent(), Console::meshChanged(), MooseObject::mooseDeprecated(), MooseObject::mooseInfo(), MooseObject::mooseWarning(), PerfGraphOutput::output(), DOFMapOutput::output(), VariableResidualNormsDebugOutput::output(), Console::output(), ControlOutput::outputActiveObjects(), ControlOutput::outputChangedControls(), ControlOutput::outputControls(), Console::outputInput(), Console::outputPostprocessors(), Console::outputScalarVariables(), Console::outputSystemInformation(), FEProblemBase::possiblyRebuildGeomSearchPatches(), EigenExecutionerBase::postExecute(), ActionWarehouse::printActionDependencySets(), EigenExecutionerBase::printEigenvalue(), MaterialPropertyDebugOutput::printMaterialMap(), SolutionTimeAdaptiveDT::rejectStep(), DT2::rejectStep(), FEProblemBase::restoreMultiApps(), SimplePredictor::shouldApply(), NonlinearSystem::solve(), LStableDirk2::solve(), LStableDirk3::solve(), ImplicitMidpoint::solve(), ExplicitTVDRK2::solve(), LStableDirk4::solve(), AStableDirk4::solve(), ExplicitRK2::solve(), TransientMultiApp::solveStep(), Transient::solveStep(), DT2::step(), AB2PredictorCorrector::step(), NonlinearEigen::takeStep(), Console::writeTimestepInformation(), Console::writeVariableNorms(), and FEProblemBase::~FEProblemBase().

◆ _coord_sys

std::map<SubdomainID, Moose::CoordinateSystemType> SubProblem::_coord_sys
protected

nonlocal coupling matrix;

Type of coordinate system per subdomain

Definition at line 566 of file SubProblem.h.

Referenced by FEProblemBase::checkCoordinateSystems(), FEProblemBase::getCoordSystem(), and FEProblemBase::setCoordSystem().

◆ _currently_computing_jacobian

bool SubProblem::_currently_computing_jacobian
protected

◆ _dirac_kernel_info

DiracKernelInfo SubProblem::_dirac_kernel_info
protected

◆ _enabled

const bool& MooseObject::_enabled
protectedinherited

Reference to the "enable" InputParaemters, used by Controls for toggling on/off MooseObjects.

Definition at line 180 of file MooseObject.h.

Referenced by MooseObject::enabled().

◆ _factory

Factory& SubProblem::_factory
protected

◆ _ghosted_elems

std::set<dof_id_type> SubProblem::_ghosted_elems
protected

◆ _has_active_elemental_moose_variables

std::vector<unsigned int> SubProblem::_has_active_elemental_moose_variables
protected

Whether or not there is currently a list of active elemental moose variables.

Definition at line 598 of file SubProblem.h.

Referenced by clearActiveElementalMooseVariables(), hasActiveElementalMooseVariables(), setActiveElementalMooseVariables(), and SubProblem().

◆ _map_block_material_props

std::map<SubdomainID, std::set<std::string> > SubProblem::_map_block_material_props
protected

Map of material properties (block_id -> list of properties)

Definition at line 571 of file SubProblem.h.

Referenced by checkBlockMatProps(), getMaterialPropertyBlocks(), hasBlockMaterialProperty(), and storeSubdomainMatPropName().

◆ _map_block_material_props_check

std::map<SubdomainID, std::multimap<std::string, std::string> > SubProblem::_map_block_material_props_check
protected

Data structures of the requested material properties.

We store them in a map from boudnary/block id to multimap. Each of the multimaps is a list of requestor object names to material property names.

Definition at line 589 of file SubProblem.h.

Referenced by checkBlockMatProps(), and storeSubdomainDelayedCheckMatProp().

◆ _map_boundary_material_props

std::map<BoundaryID, std::set<std::string> > SubProblem::_map_boundary_material_props
protected

Map for boundary material properties (boundary_id -> list of properties)

Definition at line 574 of file SubProblem.h.

Referenced by checkBoundaryMatProps(), getMaterialPropertyBoundaryIDs(), hasBoundaryMaterialProperty(), and storeBoundaryMatPropName().

◆ _map_boundary_material_props_check

std::map<BoundaryID, std::multimap<std::string, std::string> > SubProblem::_map_boundary_material_props_check
protected

Definition at line 590 of file SubProblem.h.

Referenced by checkBoundaryMatProps(), and storeBoundaryDelayedCheckMatProp().

◆ _material_property_requested

std::set<std::string> SubProblem::_material_property_requested
protected

set containing all material property names that have been requested by getMaterialProperty*

Definition at line 581 of file SubProblem.h.

Referenced by isMatPropRequested(), and markMatPropRequested().

◆ _matrix_tag_id_to_tag_name

std::map<TagID, TagName> SubProblem::_matrix_tag_id_to_tag_name
protected

Reverse map.

Definition at line 558 of file SubProblem.h.

Referenced by addMatrixTag(), matrixTagExists(), and matrixTagName().

◆ _matrix_tag_name_to_tag_id

std::map<TagName, TagID> SubProblem::_matrix_tag_name_to_tag_id
protected

The currently declared tags.

Definition at line 555 of file SubProblem.h.

Referenced by addMatrixTag(), getMatrixTagID(), getMatrixTags(), matrixTagExists(), and numMatrixTags().

◆ _name

const std::string& MooseObject::_name
protectedinherited

◆ _nonlocal_cm

CouplingMatrix SubProblem::_nonlocal_cm
protected

◆ _pars

const InputParameters& MooseObject::_pars
protectedinherited

◆ _perf_graph

PerfGraph& PerfGraphInterface::_perf_graph
protectedinherited

The performance graph to add to.

Definition at line 66 of file PerfGraphInterface.h.

Referenced by PerfGraphData::getValue(), and PerfGraphInterface::registerTimedSection().

◆ _pg_params

const InputParameters* PerfGraphInterface::_pg_params
protectedinherited

Params.

Definition at line 63 of file PerfGraphInterface.h.

◆ _prefix

std::string PerfGraphInterface::_prefix
protectedinherited

A prefix to use for all sections.

Definition at line 69 of file PerfGraphInterface.h.

Referenced by PerfGraphInterface::registerTimedSection().

◆ _requires_nonlocal_coupling

bool SubProblem::_requires_nonlocal_coupling
protected

◆ _rz_coord_axis

unsigned int SubProblem::_rz_coord_axis
protected

Storage for RZ axis selection.

Definition at line 618 of file SubProblem.h.

Referenced by getAxisymmetricRadialCoord(), and FEProblemBase::setAxisymmetricCoordAxis().

◆ _safe_access_tagged_matrices

bool SubProblem::_safe_access_tagged_matrices
protected

Is it safe to retrieve data from tagged matrices.

Definition at line 627 of file SubProblem.h.

Referenced by FEProblemBase::computeJacobianTags(), and safeAccessTaggedMatrices().

◆ _safe_access_tagged_vectors

bool SubProblem::_safe_access_tagged_vectors
protected

Is it safe to retrieve data from tagged vectors.

Definition at line 630 of file SubProblem.h.

Referenced by FEProblemBase::computeResidualTags(), and safeAccessTaggedVectors().

◆ _termination_requested

bool Problem::_termination_requested
protectedinherited

True if termination of the solve has been requested.

Definition at line 57 of file Problem.h.

Referenced by Problem::isSolveTerminationRequested(), and Problem::terminateSolve().

◆ _type

const std::string& MooseObject::_type
protectedinherited

The type of this object (the Class name)

Definition at line 174 of file MooseObject.h.

Referenced by FEProblemBase::init(), and MooseObject::type().

◆ _var_dof_map

std::map<std::string, std::vector<dof_id_type> > SubProblem::_var_dof_map

◆ _vector_tag_id_to_tag_name

std::map<TagID, TagName> SubProblem::_vector_tag_id_to_tag_name
protected

Reverse map.

Definition at line 552 of file SubProblem.h.

Referenced by addVectorTag(), and vectorTagName().

◆ _vector_tag_name_to_tag_id

std::map<TagName, TagID> SubProblem::_vector_tag_name_to_tag_id
protected

The currently declared tags.

Definition at line 549 of file SubProblem.h.

Referenced by addVectorTag(), getVectorTagID(), getVectorTags(), numVectorTags(), and vectorTagExists().

◆ _zero_block_material_props

std::map<SubdomainID, std::set<MaterialPropertyName> > SubProblem::_zero_block_material_props
protected

Set of properties returned as zero properties.

Definition at line 577 of file SubProblem.h.

Referenced by checkBlockMatProps(), FEProblemBase::checkDependMaterialsHelper(), and storeSubdomainZeroMatProp().

◆ _zero_boundary_material_props

std::map<BoundaryID, std::set<MaterialPropertyName> > SubProblem::_zero_boundary_material_props
protected

Definition at line 578 of file SubProblem.h.

Referenced by checkBoundaryMatProps(), and storeBoundaryZeroMatProp().


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