https://mooseframework.inl.gov
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
DistributedRectilinearMeshGenerator Class Reference

This class works by first creating a "distributed dual graph" of the element connectivity based on a linear partition of mesh before ever building an elements. More...

#include <DistributedRectilinearMeshGenerator.h>

Inheritance diagram for DistributedRectilinearMeshGenerator:
[legend]

Public Types

using DataFileParameterType = DataFileName
 The parameter type this interface expects for a data file name. More...
 

Public Member Functions

 DistributedRectilinearMeshGenerator (const InputParameters &parameters)
 
std::unique_ptr< MeshBase > generate () override
 Generate / modify the mesh. More...
 
template<typename T >
void buildCube (UnstructuredMesh &, const unsigned int, unsigned int, unsigned int, const Real, const Real, const Real, const Real, const Real, const Real, const ElemType)
 Build a cube mesh. More...
 
template<typename T >
dof_id_type elemId (const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type)
 Get the element ID for a given hex. More...
 
template<typename T >
dof_id_type numNeighbors (const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type)
 Get the number of neighbors this element will have. More...
 
template<typename T >
void getNeighbors (const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, std::vector< dof_id_type > &, const bool)
 Get the IDs of the neighbors of a given element. More...
 
template<typename T >
dof_id_type nodeId (const ElemType, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type)
 The ID of the i,j,k node. More...
 
template<typename T >
Node * addPoint (const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const ElemType, MeshBase &)
 Add a node to the mesh. More...
 
template<typename T >
void addElement (const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const processor_id_type, const ElemType, MeshBase &)
 Adds an element to the mesh. More...
 
template<typename T >
void paritionSquarely (const dof_id_type, const dof_id_type, const dof_id_type, const processor_id_type, std::vector< dof_id_type > &, std::vector< dof_id_type > &, std::vector< dof_id_type > &)
 Partition mesh squarely. More...
 
template<typename T >
void getIndices (const dof_id_type, const dof_id_type, const dof_id_type, dof_id_type &, dof_id_type &, dof_id_type &)
 Compute the i,j,k indices of a given element ID. More...
 
template<typename T >
void getGhostNeighbors (const dof_id_type, const dof_id_type, const dof_id_type, const MeshBase &, const std::set< dof_id_type > &, std::set< dof_id_type > &)
 Find the elements and sides that need ghost elements. More...
 
template<typename T >
void setBoundaryNames (BoundaryInfo &)
 Set the boundary names for any added boundary ideas. More...
 
template<typename T >
void scaleNodalPositions (dof_id_type, dof_id_type, dof_id_type, Real, Real, Real, Real, Real, Real, MeshBase &)
 All meshes are generated on the unit square. More...
 
template<>
dof_id_type elemId (const dof_id_type nx, const dof_id_type ny, const dof_id_type i, const dof_id_type j, const dof_id_type k)
 
template<>
dof_id_type elemId (const dof_id_type nx, const dof_id_type ny, const dof_id_type i, const dof_id_type j, const dof_id_type k)
 
template<>
dof_id_type elemId (const dof_id_type nx, const dof_id_type ny, const dof_id_type i, const dof_id_type j, const dof_id_type k)
 
template<>
dof_id_type numNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k)
 
template<>
dof_id_type numNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k)
 
template<>
dof_id_type numNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k)
 
template<>
void getNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k, std::vector< dof_id_type > &neighbors, const bool corner)
 
template<>
void getNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k, std::vector< dof_id_type > &neighbors, const bool corner)
 
template<>
void getNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k, std::vector< dof_id_type > &neighbors, const bool corner)
 
template<>
dof_id_type nodeId (const ElemType type, const dof_id_type nx, const dof_id_type ny, const dof_id_type i, const dof_id_type j, const dof_id_type k)
 
template<>
dof_id_type nodeId (const ElemType type, const dof_id_type nx, const dof_id_type ny, const dof_id_type i, const dof_id_type j, const dof_id_type k)
 
template<>
dof_id_type nodeId (const ElemType type, const dof_id_type nx, const dof_id_type ny, const dof_id_type i, const dof_id_type j, const dof_id_type k)
 
template<>
Node * addPoint (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k, const ElemType type, MeshBase &mesh)
 
template<>
Node * addPoint (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k, const ElemType type, MeshBase &mesh)
 
template<>
Node * addPoint (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k, const ElemType type, MeshBase &mesh)
 
template<>
void addElement (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k, const dof_id_type elem_id, const processor_id_type pid, const ElemType type, MeshBase &mesh)
 
template<>
void addElement (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k, const dof_id_type elem_id, const processor_id_type pid, const ElemType type, MeshBase &mesh)
 
template<>
void addElement (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k, const dof_id_type elem_id, const processor_id_type pid, const ElemType type, MeshBase &mesh)
 
template<>
void getIndices (const dof_id_type nx, const dof_id_type ny, const dof_id_type elem_id, dof_id_type &i, dof_id_type &j, dof_id_type &k)
 
template<>
void getIndices (const dof_id_type nx, const dof_id_type ny, const dof_id_type elem_id, dof_id_type &i, dof_id_type &j, dof_id_type &k)
 
template<>
void getIndices (const dof_id_type nx, const dof_id_type ny, const dof_id_type elem_id, dof_id_type &i, dof_id_type &j, dof_id_type &k)
 
template<>
void getGhostNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const MeshBase &mesh, const std::set< dof_id_type > &current_elems, std::set< dof_id_type > &ghost_elems)
 
template<>
void getGhostNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const MeshBase &mesh, const std::set< dof_id_type > &current_elems, std::set< dof_id_type > &ghost_elems)
 
template<>
void getGhostNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const MeshBase &mesh, const std::set< dof_id_type > &current_elems, std::set< dof_id_type > &ghost_elems)
 
template<>
void scaleNodalPositions (dof_id_type nx, dof_id_type ny, dof_id_type nz, Real xmin, Real xmax, Real ymin, Real ymax, Real zmin, Real zmax, MeshBase &mesh)
 
template<>
void scaleNodalPositions (dof_id_type nx, dof_id_type ny, dof_id_type nz, Real xmin, Real xmax, Real ymin, Real ymax, Real zmin, Real zmax, MeshBase &mesh)
 
template<>
void scaleNodalPositions (dof_id_type nx, dof_id_type ny, dof_id_type nz, Real xmin, Real xmax, Real ymin, Real ymax, Real zmin, Real zmax, MeshBase &mesh)
 
template<>
void setBoundaryNames (BoundaryInfo &boundary_info)
 
template<>
void setBoundaryNames (BoundaryInfo &boundary_info)
 
template<>
void setBoundaryNames (BoundaryInfo &boundary_info)
 
template<>
void paritionSquarely (const dof_id_type, const dof_id_type, const dof_id_type, const processor_id_type, std::vector< dof_id_type > &, std::vector< dof_id_type > &, std::vector< dof_id_type > &)
 
template<>
void paritionSquarely (const dof_id_type, const dof_id_type, const dof_id_type, const processor_id_type, std::vector< dof_id_type > &, std::vector< dof_id_type > &, std::vector< dof_id_type > &)
 
template<>
void paritionSquarely (const dof_id_type, const dof_id_type, const dof_id_type, const processor_id_type, std::vector< dof_id_type > &, std::vector< dof_id_type > &, std::vector< dof_id_type > &)
 
template<>
dof_id_type numNeighbors (const dof_id_type nx, const dof_id_type, const dof_id_type, const dof_id_type i, const dof_id_type, const dof_id_type)
 
template<>
void getNeighbors (const dof_id_type nx, const dof_id_type, const dof_id_type, const dof_id_type i, const dof_id_type, const dof_id_type, std::vector< dof_id_type > &neighbors, const bool corner)
 
template<>
void getIndices (const dof_id_type, const dof_id_type, const dof_id_type elem_id, dof_id_type &i, dof_id_type &, dof_id_type &)
 
template<>
void getGhostNeighbors (const dof_id_type nx, const dof_id_type, const dof_id_type, const MeshBase &mesh, const std::set< dof_id_type > &current_elems, std::set< dof_id_type > &ghost_elems)
 
template<>
dof_id_type elemId (const dof_id_type, const dof_id_type, const dof_id_type i, const dof_id_type, const dof_id_type)
 
template<>
void addElement (const dof_id_type nx, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type, const dof_id_type elem_id, const processor_id_type pid, const ElemType, MeshBase &mesh)
 
template<>
void setBoundaryNames (BoundaryInfo &boundary_info)
 
template<>
void scaleNodalPositions (dof_id_type, dof_id_type, dof_id_type, Real xmin, Real xmax, Real, Real, Real, Real, MeshBase &mesh)
 
template<>
dof_id_type numNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type, const dof_id_type i, const dof_id_type j, const dof_id_type)
 
template<>
dof_id_type elemId (const dof_id_type nx, const dof_id_type, const dof_id_type i, const dof_id_type j, const dof_id_type)
 
template<>
void getNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type, const dof_id_type i, const dof_id_type j, const dof_id_type, std::vector< dof_id_type > &neighbors, const bool corner)
 
template<>
void getIndices (const dof_id_type nx, const dof_id_type, const dof_id_type elem_id, dof_id_type &i, dof_id_type &j, dof_id_type &)
 
template<>
void getGhostNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type, const MeshBase &mesh, const std::set< dof_id_type > &current_elems, std::set< dof_id_type > &ghost_elems)
 
template<>
dof_id_type nodeId (const ElemType, const dof_id_type nx, const dof_id_type, const dof_id_type i, const dof_id_type j, const dof_id_type)
 
template<>
void addElement (const dof_id_type nx, const dof_id_type ny, const dof_id_type, const dof_id_type i, const dof_id_type j, const dof_id_type, const dof_id_type elem_id, const processor_id_type pid, const ElemType type, MeshBase &mesh)
 
template<>
void setBoundaryNames (BoundaryInfo &boundary_info)
 
template<>
void scaleNodalPositions (dof_id_type, dof_id_type, dof_id_type, Real xmin, Real xmax, Real ymin, Real ymax, Real, Real, MeshBase &mesh)
 
template<>
dof_id_type elemId (const dof_id_type nx, const dof_id_type ny, const dof_id_type i, const dof_id_type j, const dof_id_type k)
 
template<>
dof_id_type numNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k)
 
template<>
void getNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k, std::vector< dof_id_type > &neighbors, const bool corner)
 
template<>
dof_id_type nodeId (const ElemType, const dof_id_type nx, const dof_id_type ny, const dof_id_type i, const dof_id_type j, const dof_id_type k)
 
template<>
Node * addPoint (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k, const ElemType type, MeshBase &mesh)
 
template<>
void addElement (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const dof_id_type i, const dof_id_type j, const dof_id_type k, const dof_id_type elem_id, const processor_id_type pid, const ElemType type, MeshBase &mesh)
 
template<>
void getIndices (const dof_id_type nx, const dof_id_type ny, const dof_id_type elem_id, dof_id_type &i, dof_id_type &j, dof_id_type &k)
 
template<>
void getGhostNeighbors (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const MeshBase &mesh, const std::set< dof_id_type > &current_elems, std::set< dof_id_type > &ghost_elems)
 
template<>
void setBoundaryNames (BoundaryInfo &boundary_info)
 
template<>
void scaleNodalPositions (dof_id_type, dof_id_type, dof_id_type, Real xmin, Real xmax, Real ymin, Real ymax, Real zmin, Real zmax, MeshBase &mesh)
 
template<>
void paritionSquarely (const dof_id_type nx, const dof_id_type, const dof_id_type, const processor_id_type num_procs, std::vector< dof_id_type > &istarts, std::vector< dof_id_type > &jstarts, std::vector< dof_id_type > &kstarts)
 
template<>
void paritionSquarely (const dof_id_type nx, const dof_id_type ny, const dof_id_type, const processor_id_type num_procs, std::vector< dof_id_type > &istarts, std::vector< dof_id_type > &jstarts, std::vector< dof_id_type > &kstarts)
 
template<>
void paritionSquarely (const dof_id_type nx, const dof_id_type ny, const dof_id_type nz, const processor_id_type num_procs, std::vector< dof_id_type > &istarts, std::vector< dof_id_type > &jstarts, std::vector< dof_id_type > &kstarts)
 
bool hasGenerateData () const
 
std::unique_ptr< MeshBase > generateInternal ()
 Internal generation method - this is what is actually called within MooseApp to execute the MeshGenerator. More...
 
const std::set< MeshGeneratorName > & getRequestedMeshGenerators () const
 
const std::set< MeshGeneratorName > & getRequestedMeshGeneratorsForSub () const
 
void addParentMeshGenerator (const MeshGenerator &mg, const AddParentChildKey)
 Adds the MeshGenerator mg as a parent. More...
 
void addChildMeshGenerator (const MeshGenerator &mg, const AddParentChildKey)
 Adds the MeshGenerator mg as a child. More...
 
const std::set< const MeshGenerator *, Comparator > & getParentMeshGenerators () const
 Gets the MeshGenerators that are parents to this MeshGenerator. More...
 
const std::set< const MeshGenerator *, Comparator > & getChildMeshGenerators () const
 Gets the MeshGenerators that are children to this MeshGenerator. More...
 
const std::set< const MeshGenerator *, Comparator > & getSubMeshGenerators () const
 Gets the MeshGenerators that are children to this MeshGenerator. More...
 
bool isParentMeshGenerator (const MeshGeneratorName &name, const bool direct=true) const
 
bool isChildMeshGenerator (const MeshGeneratorName &name, const bool direct=true) const
 
bool isNullMeshName (const MeshGeneratorName &name) const
 
bool hasSaveMesh () const
 Return whether or not to save the current mesh. More...
 
bool hasOutput () const
 
const std::string & getSavedMeshName () const
 Return the name of the saved mesh. More...
 
bool isDataOnly () const
 
virtual bool enabled () const
 Return the enabled status of the object. More...
 
std::shared_ptr< MooseObjectgetSharedPtr ()
 Get another shared pointer to this object that has the same ownership group. More...
 
std::shared_ptr< const MooseObjectgetSharedPtr () const
 
MooseAppgetMooseApp () const
 Get the MooseApp this class is associated with. More...
 
const std::string & type () const
 Get the type of this class. More...
 
virtual const std::string & name () const
 Get the name of the class. More...
 
std::string typeAndName () const
 Get the class's combined type and name; useful in error handling. More...
 
std::string errorPrefix (const std::string &error_type) const
 
void callMooseError (std::string msg, const bool with_prefix) const
 Calls moose error with the message msg. More...
 
MooseObjectParameterName uniqueParameterName (const std::string &parameter_name) const
 The unique parameter name of a valid parameter of this object for accessing parameter controls. More...
 
const InputParametersparameters () const
 Get the parameters of the object. More...
 
MooseObjectName uniqueName () const
 The unique name for accessing input parameters of this object in the InputParameterWarehouse. More...
 
template<typename T >
const T & getParam (const std::string &name) const
 Retrieve a parameter for the object. More...
 
template<typename T1 , typename T2 >
std::vector< std::pair< T1, T2 > > getParam (const std::string &param1, const std::string &param2) const
 Retrieve two parameters and provide pair of parameters for the object. More...
 
template<typename T >
const T * queryParam (const std::string &name) const
 Query a parameter for the object. More...
 
template<typename T >
const T & getRenamedParam (const std::string &old_name, const std::string &new_name) const
 Retrieve a renamed 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...
 
bool isParamSetByUser (const std::string &nm) const
 Test if the supplied parameter is set by a user, as opposed to not set or set to default. More...
 
template<typename... Args>
void paramError (const std::string &param, Args... args) const
 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) const
 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) const
 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...
 
void connectControllableParams (const std::string &parameter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const
 Connect controllable parameter of this action with the controllable parameters of the objects added by this action. More...
 
template<typename... Args>
void mooseError (Args &&... args) const
 Emits an error prefixed with object name and type. More...
 
template<typename... Args>
void mooseErrorNonPrefixed (Args &&... args) const
 Emits an error without the prefixing included in mooseError(). More...
 
template<typename... Args>
void mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const
 Emits a documented error with object name and type. More...
 
template<typename... Args>
void mooseWarning (Args &&... args) const
 Emits a warning prefixed with object name and type. More...
 
template<typename... Args>
void mooseWarningNonPrefixed (Args &&... args) const
 Emits a warning without the prefixing included in mooseWarning(). More...
 
template<typename... Args>
void mooseDeprecated (Args &&... args) const
 
template<typename... Args>
void mooseInfo (Args &&... args) const
 
const Parallel::Communicatorcomm () const
 
processor_id_type n_processors () const
 
processor_id_type processor_id () const
 
std::string getDataFileName (const std::string &param) const
 Deprecated method. More...
 
std::string getDataFileNameByName (const std::string &relative_path) const
 Deprecated method. More...
 
std::string getDataFilePath (const std::string &relative_path) const
 Returns the path of a data file for a given relative file path. More...
 

Static Public Member Functions

static InputParameters validParams ()
 
static void setHasGenerateData (InputParameters &params)
 Sets that a mesh generator has a generateData() implementation. More...
 
static bool hasGenerateData (const InputParameters &params)
 

Public Attributes

const ConsoleStream _console
 An instance of helper class to write streams to the Console objects. More...
 

Static Public Attributes

static const std::string data_only_param = "_data_only"
 The name of the private parameter for setting data only. More...
 
static constexpr auto SYSTEM = "MeshMetaData"
 The system name used when initializing the Restartable interface. More...
 
static constexpr auto NAME = "<empty>"
 The data name used when initializing the Restartable interface for non-MeshGenerator objects. More...
 

Protected Member Functions

virtual void generateData ()
 Generate the mesh data. More...
 
template<typename T >
T & copyMeshProperty (const std::string &target_data_name, const std::string &source_data_name, const std::string &source_mesh)
 Method for copying attribute from input mesh meta-data store to current mesh meta-data store. More...
 
template<typename T >
T & copyMeshProperty (const std::string &source_data_name, const std::string &source_mesh)
 Method for copying attribute from input mesh meta-data store to current mesh meta-data store, keeping source and target data names the same. More...
 
std::unique_ptr< MeshBase > & getMesh (const std::string &param_name, const bool allow_invalid=false)
 Takes the name of a MeshGeneratorName parameter and then gets a pointer to the Mesh that MeshGenerator is going to create. More...
 
std::vector< std::unique_ptr< MeshBase > * > getMeshes (const std::string &param_name)
 Like getMesh(), but for multiple generators. More...
 
std::unique_ptr< MeshBase > & getMeshByName (const MeshGeneratorName &mesh_generator_name)
 Like getMesh(), but takes the name of another MeshGenerator directly. More...
 
std::vector< std::unique_ptr< MeshBase > * > getMeshesByName (const std::vector< MeshGeneratorName > &mesh_generator_names)
 Like getMeshByName(), but for multiple generators. More...
 
void declareMeshForSub (const std::string &param_name)
 Declares that a MeshGenerator referenced in the InputParameters is to be used as a dependency of a sub MeshGenerator created by this MeshGenerator (see addSubMeshGenerator) More...
 
void declareMeshesForSub (const std::string &param_name)
 Like declareMeshForSub(), but for multiple generators. More...
 
void declareMeshForSubByName (const MeshGeneratorName &mesh_generator_name)
 Like declareMeshForSub(), but takes the name of another MeshGenerator directly. More...
 
void declareMeshesForSubByName (const std::vector< MeshGeneratorName > &mesh_generator_names)
 Like declareMeshForSubByName(), but for multiple generators. More...
 
std::unique_ptr< MeshBase > buildMeshBaseObject (unsigned int dim=libMesh::invalid_uint)
 Build a MeshBase object whose underlying type will be determined by the Mesh input file block. More...
 
std::unique_ptr< ReplicatedMesh > buildReplicatedMesh (unsigned int dim=libMesh::invalid_uint)
 Build a replicated mesh. More...
 
std::unique_ptr< DistributedMesh > buildDistributedMesh (unsigned int dim=libMesh::invalid_uint)
 Build a distributed mesh that has correct remote element removal behavior and geometric ghosting functors based on the simulation objects. More...
 
template<typename... Ts>
void addMeshSubgenerator (const std::string &type, const std::string &name, Ts... extra_input_parameters)
 Construct a "subgenerator", a different MeshGenerator subclass that will be added to the same MooseApp on the fly. More...
 
void addMeshSubgenerator (const std::string &type, const std::string &name, InputParameters params)
 Construct a "subgenerator", as above. More...
 
void declareNullMeshName (const MeshGeneratorName &name)
 Registers the name name as a "null" mesh, which is a MeshGenerator used in InputParameters that will not represent an input mesh when requested via getMesh. More...
 
template<typename T >
const T & getMeshProperty (const std::string &data_name, const std::string &prefix)
 Method for retrieving a property with the given type and name exists in the mesh meta-data store. More...
 
template<typename T >
const T & getMeshProperty (const std::string &data_name)
 
bool hasMeshProperty (const std::string &data_name, const std::string &prefix) const
 
template<typename T >
bool hasMeshProperty (const std::string &data_name, const std::string &prefix) const
 
bool hasMeshProperty (const std::string &data_name) const
 
template<typename T >
bool hasMeshProperty (const std::string &data_name) const
 
std::string meshPropertyName (const std::string &data_name) const
 
template<typename T , typename... Args>
T & declareMeshProperty (const std::string &data_name, Args &&... args)
 Methods for writing out attributes to the mesh meta-data store, which can be retrieved from most other MOOSE systems and is recoverable. More...
 
template<typename T >
T & declareMeshProperty (const std::string &data_name, const T &data_value)
 
template<typename T , typename... Args>
T & setMeshProperty (const std::string &data_name, Args &&... args)
 Method for updating attributes to the mesh meta-data store, which can only be invoked in the MeshGenerator generate routine only if the mesh generator property has already been declared. More...
 
template<typename T >
T & setMeshProperty (const std::string &data_name, const T &data_value)
 

Static Protected Member Functions

static std::string meshPropertyName (const std::string &data_name, const std::string &prefix)
 

Protected Attributes

MooseEnum _dim
 The dimension of the mesh. More...
 
dof_id_type_nx
 Number of elements in x, y, z direction. More...
 
dof_id_type_ny
 
dof_id_type_nz
 
Real_xmin
 The min/max values for x,y,z component. More...
 
Real_xmax
 
Real_ymin
 
Real_ymax
 
Real_zmin
 
Real_zmax
 
processor_id_type _num_cores_for_partition
 Number of cores for partitioning the graph The number of cores for the graph partition can be different from that used for mesh generation and simulation. More...
 
ElemType _elem_type
 The type of element to build. More...
 
Real _bias_x
 The amount by which to bias the cells in the x,y,z directions. More...
 
Real _bias_y
 
Real _bias_z
 
std::string _part_package
 External partitioner. More...
 
processor_id_type _num_parts_per_compute_node
 Number of cores per compute node if hierarch partitioning is used. More...
 
std::string _partition_method
 Which method is used to partition the mesh that is not built yet. More...
 
unsigned _num_side_layers
 Number of element side neighbor layers While most of applications in moose require one layer of side neighbors, phase field simulation with grain tracker needs two layers. More...
 
MooseMesh *const _mesh
 Pointer to the owning mesh. More...
 
const bool & _enabled
 Reference to the "enable" InputParameters, used by Controls for toggling on/off MooseObjects. More...
 
MooseApp_app
 The MOOSE application this is associated with. More...
 
const std::string _type
 The type of this class. More...
 
const std::string _name
 The name of this class. More...
 
const InputParameters_pars
 Parameters of this object, references the InputParameters stored in the InputParametersWarehouse. More...
 
Factory_factory
 The Factory associated with the MooseApp. More...
 
ActionFactory_action_factory
 Builds Actions. More...
 
const Parallel::Communicator_communicator
 

Detailed Description

This class works by first creating a "distributed dual graph" of the element connectivity based on a linear partition of mesh before ever building an elements.

It then uses PetscExternalPartitioner to partition that graph - assigning elements to processors. Then, each processor can read the partition map and build only the elements that need to be on that processor. Final steps include adding in "ghosted" elements and making sure that boundary conditions are right.

Definition at line 26 of file DistributedRectilinearMeshGenerator.h.

Member Typedef Documentation

◆ DataFileParameterType

using DataFileInterface::DataFileParameterType = DataFileName
inherited

The parameter type this interface expects for a data file name.

Definition at line 27 of file DataFileInterface.h.

Constructor & Destructor Documentation

◆ DistributedRectilinearMeshGenerator()

DistributedRectilinearMeshGenerator::DistributedRectilinearMeshGenerator ( const InputParameters parameters)

Definition at line 114 of file DistributedRectilinearMeshGenerator.C.

117  _dim(getParam<MooseEnum>("dim")),
118  _nx(declareMeshProperty("num_elements_x", getParam<dof_id_type>("nx"))),
119  _ny(declareMeshProperty("num_elements_y", getParam<dof_id_type>("ny"))),
120  _nz(declareMeshProperty("num_elements_z", getParam<dof_id_type>("nz"))),
121  _xmin(declareMeshProperty("xmin", getParam<Real>("xmin"))),
122  _xmax(declareMeshProperty("xmax", getParam<Real>("xmax"))),
123  _ymin(declareMeshProperty("ymin", getParam<Real>("ymin"))),
124  _ymax(declareMeshProperty("ymax", getParam<Real>("ymax"))),
125  _zmin(declareMeshProperty("zmin", getParam<Real>("zmin"))),
126  _zmax(declareMeshProperty("zmax", getParam<Real>("zmax"))),
127  _num_cores_for_partition(getParam<processor_id_type>("num_cores_for_partition")),
128  _bias_x(getParam<Real>("bias_x")),
129  _bias_y(getParam<Real>("bias_y")),
130  _bias_z(getParam<Real>("bias_z")),
131  _part_package(getParam<MooseEnum>("part_package")),
132  _num_parts_per_compute_node(getParam<processor_id_type>("num_cores_per_compute_node")),
133  _partition_method(getParam<MooseEnum>("partition")),
134  _num_side_layers(getParam<unsigned>("num_side_layers"))
135 {
136  declareMeshProperty("use_distributed_mesh", true);
137 }
processor_id_type _num_parts_per_compute_node
Number of cores per compute node if hierarch partitioning is used.
dof_id_type & _nx
Number of elements in x, y, z direction.
processor_id_type _num_cores_for_partition
Number of cores for partitioning the graph The number of cores for the graph partition can be differe...
MeshGenerator(const InputParameters &parameters)
Definition: MeshGenerator.C:56
Real & _xmin
The min/max values for x,y,z component.
const InputParameters & parameters() const
Get the parameters of the object.
T & declareMeshProperty(const std::string &data_name, Args &&... args)
Methods for writing out attributes to the mesh meta-data store, which can be retrieved from most othe...
Real _bias_x
The amount by which to bias the cells in the x,y,z directions.
unsigned _num_side_layers
Number of element side neighbor layers While most of applications in moose require one layer of side ...
std::string _partition_method
Which method is used to partition the mesh that is not built yet.

Member Function Documentation

◆ addChildMeshGenerator()

void MeshGenerator::addChildMeshGenerator ( const MeshGenerator mg,
const AddParentChildKey   
)
inherited

Adds the MeshGenerator mg as a child.

Protected by the AddParentChildKey so that parents can only be added by the MooseApp.

Definition at line 365 of file MeshGenerator.C.

366 {
367  mooseAssert(_app.constructingMeshGenerators(), "Should only be called at construction");
368  _child_mesh_generators.insert(&mg);
369 }
virtual bool constructingMeshGenerators() const
Whether this app is constructing mesh generators.
Definition: MooseApp.C:3492
std::set< const MeshGenerator *, Comparator > _child_mesh_generators
The MeshGenerators that are children to this MeshGenerator.
MooseApp & _app
The MOOSE application this is associated with.
Definition: MooseBase.h:84

◆ addElement() [1/7]

template<typename T >
void DistributedRectilinearMeshGenerator::addElement ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const processor_id_type  ,
const ElemType  ,
MeshBase &   
)
inline

Adds an element to the mesh.

Parameters
nxThe number of elements in the x direction
nyThe number of elements in the y direction
nzThe number of elements in the z direction
iThe x index of this element
jThe y index of this element
kThe z index of this element
elem_idThe element ID of the element to add
pidThe processor ID to assign it to
typeThe type of element to add
meshThe mesh to add it to

Definition at line 197 of file DistributedRectilinearMeshGenerator.h.

207  {
208  mooseError(
209  "addElement not implemented for this element type in DistributedRectilinearMeshGenerator");
210  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ addElement() [2/7]

template<>
void DistributedRectilinearMeshGenerator::addElement ( const dof_id_type  nx,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  elem_id,
const processor_id_type  pid,
const ElemType  ,
MeshBase &  mesh 
)

Definition at line 236 of file DistributedRectilinearMeshGenerator.C.

246 {
247  BoundaryInfo & boundary_info = mesh.get_boundary_info();
248 
249  auto node_offset = elem_id;
250 
251  Node * node0_ptr = mesh.query_node_ptr(node_offset);
252  if (!node0_ptr)
253  {
254  std::unique_ptr<Node> new_node =
255  Node::build(Point(static_cast<Real>(node_offset) / nx, 0, 0), node_offset);
256 
257  new_node->set_unique_id(nx + node_offset);
258  new_node->processor_id() = pid;
259 
260  node0_ptr = mesh.add_node(std::move(new_node));
261  }
262 
263  Node * node1_ptr = mesh.query_node_ptr(node_offset + 1);
264  if (!node1_ptr)
265  {
266  std::unique_ptr<Node> new_node =
267  Node::build(Point(static_cast<Real>(node_offset + 1) / nx, 0, 0), node_offset + 1);
268 
269  new_node->set_unique_id(nx + node_offset + 1);
270  new_node->processor_id() = pid;
271 
272  node1_ptr = mesh.add_node(std::move(new_node));
273  }
274 
275  Elem * elem = new Edge2;
276  elem->set_id(elem_id);
277  elem->processor_id() = pid;
278  elem->set_unique_id(elem_id);
279  elem = mesh.add_elem(elem);
280  elem->set_node(0, node0_ptr);
281  elem->set_node(1, node1_ptr);
282 
283  if (elem_id == 0)
284  boundary_info.add_side(elem, 0, 0);
285 
286  if (elem_id == nx - 1)
287  boundary_info.add_side(elem, 1, 1);
288 }
MeshBase & mesh

◆ addElement() [3/7]

template<>
void DistributedRectilinearMeshGenerator::addElement ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  ,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  ,
const dof_id_type  elem_id,
const processor_id_type  pid,
const ElemType  type,
MeshBase &  mesh 
)

Definition at line 450 of file DistributedRectilinearMeshGenerator.C.

460 {
461  BoundaryInfo & boundary_info = mesh.get_boundary_info();
462 
463  // Bottom Left
464  const dof_id_type node0_id = nodeId<Quad4>(type, nx, 0, i, j, 0);
465  Node * node0_ptr = mesh.query_node_ptr(node0_id);
466  if (!node0_ptr)
467  {
468  std::unique_ptr<Node> new_node =
469  Node::build(Point(static_cast<Real>(i) / nx, static_cast<Real>(j) / ny, 0), node0_id);
470 
471  new_node->set_unique_id(nx * ny + node0_id);
472  new_node->processor_id() = pid;
473 
474  node0_ptr = mesh.add_node(std::move(new_node));
475  }
476 
477  // Bottom Right
478  const dof_id_type node1_id = nodeId<Quad4>(type, nx, 0, i + 1, j, 0);
479  Node * node1_ptr = mesh.query_node_ptr(node1_id);
480  if (!node1_ptr)
481  {
482  std::unique_ptr<Node> new_node =
483  Node::build(Point(static_cast<Real>(i + 1) / nx, static_cast<Real>(j) / ny, 0), node1_id);
484 
485  new_node->set_unique_id(nx * ny + node1_id);
486  new_node->processor_id() = pid;
487 
488  node1_ptr = mesh.add_node(std::move(new_node));
489  }
490 
491  // Top Right
492  const dof_id_type node2_id = nodeId<Quad4>(type, nx, 0, i + 1, j + 1, 0);
493  Node * node2_ptr = mesh.query_node_ptr(node2_id);
494  if (!node2_ptr)
495  {
496  std::unique_ptr<Node> new_node = Node::build(
497  Point(static_cast<Real>(i + 1) / nx, static_cast<Real>(j + 1) / ny, 0), node2_id);
498 
499  new_node->set_unique_id(nx * ny + node2_id);
500  new_node->processor_id() = pid;
501 
502  node2_ptr = mesh.add_node(std::move(new_node));
503  }
504 
505  // Top Left
506  const dof_id_type node3_id = nodeId<Quad4>(type, nx, 0, i, j + 1, 0);
507  Node * node3_ptr = mesh.query_node_ptr(node3_id);
508  if (!node3_ptr)
509  {
510  std::unique_ptr<Node> new_node =
511  Node::build(Point(static_cast<Real>(i) / nx, static_cast<Real>(j + 1) / ny, 0), node3_id);
512 
513  new_node->set_unique_id(nx * ny + node3_id);
514  new_node->processor_id() = pid;
515 
516  node3_ptr = mesh.add_node(std::move(new_node));
517  }
518 
519  Elem * elem = new Quad4;
520  elem->set_id(elem_id);
521  elem->processor_id() = pid;
522  elem->set_unique_id(elem_id);
523  elem = mesh.add_elem(elem);
524  elem->set_node(0, node0_ptr);
525  elem->set_node(1, node1_ptr);
526  elem->set_node(2, node2_ptr);
527  elem->set_node(3, node3_ptr);
528 
529  // Bottom
530  if (j == 0)
531  boundary_info.add_side(elem, 0, 0);
532 
533  // Right
534  if (i == nx - 1)
535  boundary_info.add_side(elem, 1, 1);
536 
537  // Top
538  if (j == ny - 1)
539  boundary_info.add_side(elem, 2, 2);
540 
541  // Left
542  if (i == 0)
543  boundary_info.add_side(elem, 3, 3);
544 }
MeshBase & mesh
const std::string & type() const
Get the type of this class.
Definition: MooseBase.h:51
uint8_t dof_id_type

◆ addElement() [4/7]

template<>
void DistributedRectilinearMeshGenerator::addElement ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k,
const dof_id_type  elem_id,
const processor_id_type  pid,
const ElemType  type,
MeshBase &  mesh 
)

◆ addElement() [5/7]

template<>
void DistributedRectilinearMeshGenerator::addElement ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k,
const dof_id_type  elem_id,
const processor_id_type  pid,
const ElemType  type,
MeshBase &  mesh 
)

◆ addElement() [6/7]

template<>
void DistributedRectilinearMeshGenerator::addElement ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k,
const dof_id_type  elem_id,
const processor_id_type  pid,
const ElemType  type,
MeshBase &  mesh 
)

◆ addElement() [7/7]

template<>
void DistributedRectilinearMeshGenerator::addElement ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k,
const dof_id_type  elem_id,
const processor_id_type  pid,
const ElemType  type,
MeshBase &  mesh 
)

Definition at line 714 of file DistributedRectilinearMeshGenerator.C.

724 {
725  BoundaryInfo & boundary_info = mesh.get_boundary_info();
726 
727  // This ordering was picked to match the ordering in mesh_generation.C
728  auto node0_ptr = addPoint<Hex8>(nx, ny, nz, i, j, k, type, mesh);
729  node0_ptr->processor_id() = pid;
730  auto node1_ptr = addPoint<Hex8>(nx, ny, nz, i + 1, j, k, type, mesh);
731  node1_ptr->processor_id() = pid;
732  auto node2_ptr = addPoint<Hex8>(nx, ny, nz, i + 1, j + 1, k, type, mesh);
733  node2_ptr->processor_id() = pid;
734  auto node3_ptr = addPoint<Hex8>(nx, ny, nz, i, j + 1, k, type, mesh);
735  node3_ptr->processor_id() = pid;
736  auto node4_ptr = addPoint<Hex8>(nx, ny, nz, i, j, k + 1, type, mesh);
737  node4_ptr->processor_id() = pid;
738  auto node5_ptr = addPoint<Hex8>(nx, ny, nz, i + 1, j, k + 1, type, mesh);
739  node5_ptr->processor_id() = pid;
740  auto node6_ptr = addPoint<Hex8>(nx, ny, nz, i + 1, j + 1, k + 1, type, mesh);
741  node6_ptr->processor_id() = pid;
742  auto node7_ptr = addPoint<Hex8>(nx, ny, nz, i, j + 1, k + 1, type, mesh);
743  node7_ptr->processor_id() = pid;
744 
745  Elem * elem = new Hex8;
746  elem->set_id(elem_id);
747  elem->processor_id() = pid;
748  elem->set_unique_id(elem_id);
749  elem = mesh.add_elem(elem);
750  elem->set_node(0, node0_ptr);
751  elem->set_node(1, node1_ptr);
752  elem->set_node(2, node2_ptr);
753  elem->set_node(3, node3_ptr);
754  elem->set_node(4, node4_ptr);
755  elem->set_node(5, node5_ptr);
756  elem->set_node(6, node6_ptr);
757  elem->set_node(7, node7_ptr);
758 
759  if (k == 0)
760  boundary_info.add_side(elem, 0, 0);
761 
762  if (k == (nz - 1))
763  boundary_info.add_side(elem, 5, 5);
764 
765  if (j == 0)
766  boundary_info.add_side(elem, 1, 1);
767 
768  if (j == (ny - 1))
769  boundary_info.add_side(elem, 3, 3);
770 
771  if (i == 0)
772  boundary_info.add_side(elem, 4, 4);
773 
774  if (i == (nx - 1))
775  boundary_info.add_side(elem, 2, 2);
776 }
MeshBase & mesh
const std::string & type() const
Get the type of this class.
Definition: MooseBase.h:51

◆ addMeshSubgenerator() [1/2]

template<typename... Ts>
void MeshGenerator::addMeshSubgenerator ( const std::string &  type,
const std::string &  name,
Ts...  extra_input_parameters 
)
protectedinherited

Construct a "subgenerator", a different MeshGenerator subclass that will be added to the same MooseApp on the fly.

Parameters
typeThe type of MeshGenerator
nameThe name of the MeshGenerator
extra_input_parameters... Additional InputParameters to pass

Sub generators must be added in the order that they are executed.

Any input dependencies for a sub generator that come from inputs for this generator must first be declared with the declareMesh(es)ForSub() method.

You can use the output of a sub generator as a mesh in this generator by calling getMesh() with the sub generator's name after adding said sub generator.

Definition at line 513 of file MeshGenerator.h.

Referenced by OverlayMeshGenerator::OverlayMeshGenerator(), and SideSetExtruderGenerator::SideSetExtruderGenerator().

516 {
517  InputParameters subgenerator_params = _app.getFactory().getValidParams(type);
518 
519  subgenerator_params.setParameters(extra_input_parameters...);
520 
521  addMeshSubgenerator(type, name, subgenerator_params);
522 }
InputParameters getValidParams(const std::string &name) const
Get valid parameters for the object.
Definition: Factory.C:68
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
Factory & getFactory()
Retrieve a writable reference to the Factory associated with this App.
Definition: MooseApp.h:424
void addMeshSubgenerator(const std::string &type, const std::string &name, Ts... extra_input_parameters)
Construct a "subgenerator", a different MeshGenerator subclass that will be added to the same MooseAp...
const std::string & type() const
Get the type of this class.
Definition: MooseBase.h:51
MooseApp & _app
The MOOSE application this is associated with.
Definition: MooseBase.h:84
void setParameters(const std::string &name, const T &value, Ts... extra_input_parameters)
Given a series of parameters names and values, sets each name to the corresponding value...

◆ addMeshSubgenerator() [2/2]

void MeshGenerator::addMeshSubgenerator ( const std::string &  type,
const std::string &  name,
InputParameters  params 
)
protectedinherited

Construct a "subgenerator", as above.

User code is responsible for constructing valid InputParameters.

Parameters
typeThe type of MeshGenerator
nameThe name of the MeshGenerator
paramsThe parameters to use to construct the MeshGenerator

Definition at line 334 of file MeshGenerator.C.

337 {
339  mooseError("Can only call addMeshSubgenerator() during MeshGenerator construction");
340 
341  // In case the user forgot it
342  params.set<MooseApp *>("_moose_app") = &_app;
343 
344  // Set this to be data-only if this generator is data only
345  params.set<bool>(data_only_param) = isDataOnly();
346 
347  _app.addMeshGenerator(type, name, params);
348  _sub_mesh_generators.insert(&std::as_const(_app).getMeshGenerator(name));
349 }
virtual bool constructingMeshGenerators() const
Whether this app is constructing mesh generators.
Definition: MooseApp.C:3492
static const std::string data_only_param
The name of the private parameter for setting data only.
Definition: MeshGenerator.h:62
T & set(const std::string &name, bool quiet_mode=false)
Returns a writable reference to the named parameters.
Base class for MOOSE-based applications.
Definition: MooseApp.h:96
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const std::string & type() const
Get the type of this class.
Definition: MooseBase.h:51
MooseApp & _app
The MOOSE application this is associated with.
Definition: MooseBase.h:84
std::set< const MeshGenerator *, Comparator > _sub_mesh_generators
The sub MeshGenerators constructed by this MeshGenerator.
void addMeshGenerator(const std::string &type, const std::string &name, const InputParameters &params)
Add a mesh generator that will act on the meshes in the system.
Definition: MooseApp.h:873
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
bool isDataOnly() const

◆ addParentMeshGenerator()

void MeshGenerator::addParentMeshGenerator ( const MeshGenerator mg,
const AddParentChildKey   
)
inherited

Adds the MeshGenerator mg as a parent.

Protected by the AddParentChildKey so that parents can only be added by the MooseApp.

Definition at line 358 of file MeshGenerator.C.

359 {
360  mooseAssert(_app.constructingMeshGenerators(), "Should only be called at construction");
361  _parent_mesh_generators.insert(&mg);
362 }
virtual bool constructingMeshGenerators() const
Whether this app is constructing mesh generators.
Definition: MooseApp.C:3492
MooseApp & _app
The MOOSE application this is associated with.
Definition: MooseBase.h:84
std::set< const MeshGenerator *, Comparator > _parent_mesh_generators
The MeshGenerators that are parents to this MeshGenerator.

◆ addPoint() [1/5]

template<typename T >
Node* DistributedRectilinearMeshGenerator::addPoint ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const ElemType  ,
MeshBase &   
)
inline

Add a node to the mesh.

Parameters
nxThe number of elements in the x direction
nxThe number of elements in the y direction
nzThe number of elements in the z direction
iThe x index of this node
jThe y index of this node
kThe z index of this node
typeThe element type
meshThe mesh to add it to

Definition at line 169 of file DistributedRectilinearMeshGenerator.h.

177  {
178  mooseError(
179  "addPoint not implemented for this element type in DistributedRectilinearMeshGenerator");
180  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ addPoint() [2/5]

template<>
Node* DistributedRectilinearMeshGenerator::addPoint ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k,
const ElemType  type,
MeshBase &  mesh 
)

◆ addPoint() [3/5]

template<>
Node* DistributedRectilinearMeshGenerator::addPoint ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k,
const ElemType  type,
MeshBase &  mesh 
)

◆ addPoint() [4/5]

template<>
Node* DistributedRectilinearMeshGenerator::addPoint ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k,
const ElemType  type,
MeshBase &  mesh 
)

◆ addPoint() [5/5]

template<>
Node* DistributedRectilinearMeshGenerator::addPoint ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k,
const ElemType  type,
MeshBase &  mesh 
)

Definition at line 688 of file DistributedRectilinearMeshGenerator.C.

696 {
697  auto id = nodeId<Hex8>(type, nx, ny, i, j, k);
698  Node * node_ptr = mesh.query_node_ptr(id);
699  if (!node_ptr)
700  {
701  std::unique_ptr<Node> new_node = Node::build(
702  Point(static_cast<Real>(i) / nx, static_cast<Real>(j) / ny, static_cast<Real>(k) / nz), id);
703 
704  new_node->set_unique_id(nx * ny * nz + id);
705 
706  node_ptr = mesh.add_node(std::move(new_node));
707  }
708 
709  return node_ptr;
710 }
MeshBase & mesh
const std::string & type() const
Get the type of this class.
Definition: MooseBase.h:51

◆ buildCube()

template<typename T >
void DistributedRectilinearMeshGenerator::buildCube ( UnstructuredMesh &  mesh,
const unsigned int  nx,
unsigned int  ny,
unsigned int  nz,
const Real  xmin,
const Real  xmax,
const Real  ymin,
const Real  ymax,
const Real  zmin,
const Real  zmax,
const ElemType  type 
)

Build a cube mesh.

Parameters
meshDistributed UnstructuredMesh
nxThe number of elements in the x direction
nyThe number of elements in the y direction
nzThe number of elements in the z direction
xminLower X Coordinate of the generated mesh
xmaxUpper X Coordinate of the generated mesh
yminLower Y Coordinate of the generated mesh
ymaxUpper Y Coordinate of the generated mesh
zminLower Z Coordinate of the generated mesh
zmaxUpper Z Coordinate of the generated mesh
typeThe element type
  1. "Partition" the element linearly (i.e. break them up into n_procs contiguous chunks
  2. Create a (dual) graph of the local elements
  3. Partition the graph using PetscExternalPartitioner
  4. Push elements to new owners
  5. Each processor creates only the elements it owns
  6. Find the ghosts we need (all the elements that connect to at least one local mesh vertex)
  7. Pull the PIDs of the ghosts
  8. Add ghosts with the right PIDs to the mesh

Definition at line 1005 of file DistributedRectilinearMeshGenerator.C.

1016 {
1025 
1026  auto & comm = mesh.comm();
1027 
1028  dof_id_type num_elems = nx * ny * nz;
1029 
1030  const auto num_procs = comm.size();
1031  // Current processor ID
1032  const auto pid = comm.rank();
1033 
1034  if (_num_cores_for_partition > num_procs)
1035  mooseError("Number of cores for the graph partitioner is too large ", _num_cores_for_partition);
1036 
1038  _num_cores_for_partition = num_procs;
1039 
1040  auto & boundary_info = mesh.get_boundary_info();
1041 
1042  std::unique_ptr<Elem> canonical_elem = std::make_unique<T>();
1043 
1044  // Will get used to find the neighbors of an element
1045  std::vector<dof_id_type> neighbors(canonical_elem->n_neighbors());
1046  // Number of neighbors
1047  dof_id_type n_neighbors = canonical_elem->n_neighbors();
1048 
1049  // "Partition" the elements linearly across the processors
1050  dof_id_type num_local_elems;
1051  dof_id_type local_elems_begin;
1052  dof_id_type local_elems_end;
1053  if (pid < _num_cores_for_partition)
1056  pid,
1057  num_local_elems,
1058  local_elems_begin,
1059  local_elems_end);
1060  else
1061  {
1062  num_local_elems = 0;
1063  local_elems_begin = 0;
1064  local_elems_end = 0;
1065  }
1066 
1067  std::vector<std::vector<dof_id_type>> graph;
1068 
1069  // Fill in xadj and adjncy
1070  // xadj is the offset into adjncy
1071  // adjncy are the face neighbors of each element on this processor
1072  graph.resize(num_local_elems);
1073  // Build a distributed graph
1074  num_local_elems = 0;
1075  for (dof_id_type e_id = local_elems_begin; e_id < local_elems_end; e_id++)
1076  {
1077  dof_id_type i, j, k = 0;
1078 
1079  getIndices<T>(nx, ny, e_id, i, j, k);
1080 
1081  getNeighbors<T>(nx, ny, nz, i, j, k, neighbors, false);
1082 
1083  std::vector<dof_id_type> & row = graph[num_local_elems++];
1084  row.reserve(n_neighbors);
1085 
1086  for (auto neighbor : neighbors)
1087  if (neighbor != Elem::invalid_id)
1088  row.push_back(neighbor);
1089  }
1090 
1091  // Partition the distributed graph
1092  std::vector<dof_id_type> partition_vec;
1093  if (_partition_method == "linear")
1094  {
1095  mooseWarning(" LinearPartitioner is mainly used for setting up regression tests. For the "
1096  "production run, please do not use it.");
1097  // The graph is already partitioned linearly via calling MooseUtils::linearPartitionItems
1098  partition_vec.resize(num_local_elems);
1099  // We use it as is
1100  std::fill(partition_vec.begin(), partition_vec.end(), pid);
1101  }
1102  else if (_partition_method == "square")
1103  {
1104  // Starting partition indices along x direction
1105  std::vector<dof_id_type> istarts;
1106  // Starting partition indices along y direction
1107  std::vector<dof_id_type> jstarts;
1108  // Starting partition indices along z direction
1109  std::vector<dof_id_type> kstarts;
1110  partition_vec.resize(num_local_elems);
1111 
1112  // Partition mesh evenly along each direction
1113  paritionSquarely<T>(nx, ny, nz, num_procs, istarts, jstarts, kstarts);
1114  // At least one processor
1115  mooseAssert(istarts.size() > 1, "At least there is one processor along x direction");
1116  processor_id_type px = istarts.size() - 1;
1117  // At least one processor
1118  mooseAssert(jstarts.size() > 1, "At least there is one processor along y direction");
1119  processor_id_type py = jstarts.size() - 1;
1120  // At least one processor
1121  mooseAssert(kstarts.size() > 1, "At least there is one processor along z direction");
1122  // processor_id_type pz = kstarts.size() -1;
1123  for (dof_id_type e_id = local_elems_begin; e_id < local_elems_end; e_id++)
1124  {
1125  dof_id_type i = 0, j = 0, k = 0;
1126  getIndices<T>(nx, ny, e_id, i, j, k);
1127  processor_id_type pi = 0, pj = 0, pk = 0;
1128 
1129  pi = (std::upper_bound(istarts.begin(), istarts.end(), i) - istarts.begin()) - 1;
1130  pj = (std::upper_bound(jstarts.begin(), jstarts.end(), j) - jstarts.begin()) - 1;
1131  pk = (std::upper_bound(kstarts.begin(), kstarts.end(), k) - kstarts.begin()) - 1;
1132 
1133  partition_vec[e_id - local_elems_begin] = pk * px * py + pj * px + pi;
1134 
1135  mooseAssert((pk * px * py + pj * px + pi) < num_procs, "processor id is too large");
1136  }
1137  }
1138  else if (_partition_method == "graph")
1140  comm, graph, {}, {}, num_procs, _num_parts_per_compute_node, _part_package, partition_vec);
1141  else
1142  mooseError("Unsupported partition method " + _partition_method);
1143 
1144  mooseAssert(partition_vec.size() == num_local_elems, " Invalid partition was generateed ");
1145 
1146  // Use current elements to remote processors according to partition
1147  std::map<processor_id_type, std::vector<dof_id_type>> pushed_elements_vecs;
1148 
1149  for (dof_id_type e_id = local_elems_begin; e_id < local_elems_end; e_id++)
1150  pushed_elements_vecs[partition_vec[e_id - local_elems_begin]].push_back(e_id);
1151 
1152  // Collect new elements I should own
1153  std::vector<dof_id_type> my_new_elems;
1154 
1155  auto elements_action_functor =
1156  [&my_new_elems](processor_id_type /*pid*/, const std::vector<dof_id_type> & data)
1157  { std::copy(data.begin(), data.end(), std::back_inserter(my_new_elems)); };
1158 
1159  Parallel::push_parallel_vector_data(comm, pushed_elements_vecs, elements_action_functor);
1160 
1161  // Add the elements this processor owns
1162  for (auto e_id : my_new_elems)
1163  {
1164  dof_id_type i = 0, j = 0, k = 0;
1165 
1166  getIndices<T>(nx, ny, e_id, i, j, k);
1167 
1168  addElement<T>(nx, ny, nz, i, j, k, e_id, pid, type, mesh);
1169  }
1170 
1171  // Need to link up the local elements before we can know what's missing
1172  mesh.find_neighbors();
1173 
1174  // Get the ghosts (missing face neighbors)
1175  std::set<dof_id_type> ghost_elems;
1176  // Current local elements
1177  std::set<dof_id_type> current_elems;
1178 
1179  // Fill current elems
1180  // We will grow domain from current elements
1181  for (auto & elem_ptr : mesh.element_ptr_range())
1182  current_elems.insert(elem_ptr->id());
1183 
1184  // Grow domain layer by layer
1185  for (unsigned layer = 0; layer < _num_side_layers; layer++)
1186  {
1187  // getGhostNeighbors produces one layer of side neighbors
1188  getGhostNeighbors<T>(nx, ny, nz, mesh, current_elems, ghost_elems);
1189  // Merge ghost elements into current element list
1190  current_elems.insert(ghost_elems.begin(), ghost_elems.end());
1191  }
1192  // We do not need it anymore
1193  current_elems.clear();
1194 
1195  // Elements we're going to request from others
1196  std::map<processor_id_type, std::vector<dof_id_type>> ghost_elems_to_request;
1197 
1198  for (auto & ghost_id : ghost_elems)
1199  {
1200  // This is the processor ID the ghost_elem was originally assigned to
1201  auto proc_id = MooseUtils::linearPartitionChunk(num_elems, _num_cores_for_partition, ghost_id);
1202 
1203  // Using side-effect insertion on purpose
1204  ghost_elems_to_request[proc_id].push_back(ghost_id);
1205  }
1206 
1207  // Next set ghost object ids from other processors
1208  auto gather_functor =
1209  [local_elems_begin, partition_vec](processor_id_type /*pid*/,
1210  const std::vector<dof_id_type> & coming_ghost_elems,
1211  std::vector<dof_id_type> & pid_for_ghost_elems)
1212  {
1213  auto num_ghost_elems = coming_ghost_elems.size();
1214  pid_for_ghost_elems.resize(num_ghost_elems);
1215 
1216  dof_id_type num_local_elems = 0;
1217 
1218  for (auto elem : coming_ghost_elems)
1219  pid_for_ghost_elems[num_local_elems++] = partition_vec[elem - local_elems_begin];
1220  };
1221 
1222  std::unordered_map<dof_id_type, processor_id_type> ghost_elem_to_pid;
1223 
1224  auto action_functor =
1225  [&ghost_elem_to_pid](processor_id_type /*pid*/,
1226  const std::vector<dof_id_type> & my_ghost_elems,
1227  const std::vector<dof_id_type> & pid_for_my_ghost_elems)
1228  {
1229  dof_id_type num_local_elems = 0;
1230 
1231  for (auto elem : my_ghost_elems)
1232  ghost_elem_to_pid[elem] = pid_for_my_ghost_elems[num_local_elems++];
1233  };
1234 
1235  const dof_id_type * ex = nullptr;
1236  libMesh::Parallel::pull_parallel_vector_data(
1237  comm, ghost_elems_to_request, gather_functor, action_functor, ex);
1238 
1239  // Add the ghost elements to the mesh
1240  for (auto gtop : ghost_elem_to_pid)
1241  {
1242  auto ghost_id = gtop.first;
1243  auto proc_id = gtop.second;
1244 
1245  dof_id_type i = 0, j = 0, k = 0;
1246 
1247  getIndices<T>(nx, ny, ghost_id, i, j, k);
1248 
1249  addElement<T>(nx, ny, nz, i, j, k, ghost_id, proc_id, type, mesh);
1250  }
1251 
1252  mesh.find_neighbors(true);
1253 
1254  // Set RemoteElem neighbors
1255  for (auto & elem_ptr : mesh.element_ptr_range())
1256  for (unsigned int s = 0; s < elem_ptr->n_sides(); s++)
1257  if (!elem_ptr->neighbor_ptr(s) && !boundary_info.n_boundary_ids(elem_ptr, s))
1258  elem_ptr->set_neighbor(s, const_cast<RemoteElem *>(remote_elem));
1259 
1260  setBoundaryNames<T>(boundary_info);
1261 
1262  Partitioner::set_node_processor_ids(mesh);
1263 
1264  // Already partitioned!
1265  mesh.skip_partitioning(true);
1266 
1267  // Scale the nodal positions
1268  scaleNodalPositions<T>(nx, ny, nz, xmin, xmax, ymin, ymax, zmin, zmax, mesh);
1269 }
processor_id_type _num_parts_per_compute_node
Number of cores per compute node if hierarch partitioning is used.
processor_id_type _num_cores_for_partition
Number of cores for partitioning the graph The number of cores for the graph partition can be differe...
MeshBase & mesh
processor_id_type rank() const
static void partitionGraph(const Parallel::Communicator &comm, const std::vector< std::vector< dof_id_type >> &graph, const std::vector< dof_id_type > &elem_weights, const std::vector< dof_id_type > &side_weights, const dof_id_type num_parts, const dof_id_type num_parts_per_compute_node, const std::string &part_package, std::vector< dof_id_type > &partition)
const Parallel::Communicator & comm() const
void linearPartitionItems(dof_id_type num_items, dof_id_type num_chunks, dof_id_type chunk_id, dof_id_type &num_local_items, dof_id_type &local_items_begin, dof_id_type &local_items_end)
Linearly partition a number of items.
Definition: MooseUtils.C:1079
void mooseWarning(Args &&... args) const
Emits a warning prefixed with object name and type.
processor_id_type size() const
uint8_t processor_id_type
const std::string & type() const
Get the type of this class.
Definition: MooseBase.h:51
processor_id_type linearPartitionChunk(dof_id_type num_items, dof_id_type num_chunks, dof_id_type item_id)
Return the chunk_id that is assigned to handle item_id.
Definition: MooseUtils.C:1105
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
unsigned _num_side_layers
Number of element side neighbor layers While most of applications in moose require one layer of side ...
uint8_t dof_id_type
const Real pi
std::string _partition_method
Which method is used to partition the mesh that is not built yet.

◆ buildDistributedMesh()

std::unique_ptr< DistributedMesh > MeshGenerator::buildDistributedMesh ( unsigned int  dim = libMesh::invalid_uint)
protectedinherited

Build a distributed mesh that has correct remote element removal behavior and geometric ghosting functors based on the simulation objects.

Parameters
dimThe logical dimension of the mesh, e.g. 3 for hexes/tets, 2 for quads/tris. If the caller doesn't specify a value for dim, then the value in the Mesh input file block will be used

Definition at line 253 of file MeshGenerator.C.

Referenced by generate().

254 {
255  mooseAssert(_mesh, "Need a MooseMesh object");
256  return _mesh->buildTypedMesh<DistributedMesh>(dim);
257 }
static constexpr std::size_t dim
This is the dimension of all vector and tensor datastructures used in MOOSE.
Definition: Moose.h:153
MooseMesh *const _mesh
Pointer to the owning mesh.
std::unique_ptr< T > buildTypedMesh(unsigned int dim=libMesh::invalid_uint)
Shortcut method to construct a unique pointer to a libMesh mesh instance.
Definition: MooseMesh.h:2090

◆ buildMeshBaseObject()

std::unique_ptr< MeshBase > MeshGenerator::buildMeshBaseObject ( unsigned int  dim = libMesh::invalid_uint)
protectedinherited

Build a MeshBase object whose underlying type will be determined by the Mesh input file block.

Parameters
dimThe logical dimension of the mesh, e.g. 3 for hexes/tets, 2 for quads/tris. If the caller doesn't specify a value for dim, then the value in the Mesh input file block will be used

Definition at line 239 of file MeshGenerator.C.

Referenced by BlockToMeshConverterGenerator::generate(), ElementGenerator::generate(), FileMeshGenerator::generate(), SphereMeshGenerator::generate(), PolyLineMeshGenerator::generate(), ExamplePatchMeshGenerator::generate(), AnnularMeshGenerator::generate(), CartesianMeshGenerator::generate(), GeneratedMeshGenerator::generate(), AdvancedExtruderGenerator::generate(), MeshExtruderGenerator::generate(), and TransfiniteMeshGenerator::generate().

240 {
241  mooseAssert(_mesh, "Need a MooseMesh object");
242  return _mesh->buildMeshBaseObject(dim);
243 }
static constexpr std::size_t dim
This is the dimension of all vector and tensor datastructures used in MOOSE.
Definition: Moose.h:153
MooseMesh *const _mesh
Pointer to the owning mesh.
std::unique_ptr< MeshBase > buildMeshBaseObject(unsigned int dim=libMesh::invalid_uint)
Method to construct a libMesh::MeshBase object that is normally set and used by the MooseMesh object ...
Definition: MooseMesh.C:2851

◆ buildReplicatedMesh()

std::unique_ptr< ReplicatedMesh > MeshGenerator::buildReplicatedMesh ( unsigned int  dim = libMesh::invalid_uint)
protectedinherited

Build a replicated mesh.

Parameters
dimThe logical dimension of the mesh, e.g. 3 for hexes/tets, 2 for quads/tris. If the caller doesn't specify a value for dim, then the value in the Mesh input file block will be used

Definition at line 246 of file MeshGenerator.C.

Referenced by FillBetweenCurvesGenerator::generate(), FillBetweenSidesetsGenerator::generate(), FillBetweenPointVectorsGenerator::generate(), ConcentricCircleMeshGenerator::generate(), ImageMeshGenerator::generate(), ParsedCurveGenerator::generate(), RinglebMeshGenerator::generate(), and SpiralAnnularMeshGenerator::generate().

247 {
248  mooseAssert(_mesh, "Need a MooseMesh object");
249  return _mesh->buildTypedMesh<ReplicatedMesh>(dim);
250 }
static constexpr std::size_t dim
This is the dimension of all vector and tensor datastructures used in MOOSE.
Definition: Moose.h:153
MooseMesh *const _mesh
Pointer to the owning mesh.
std::unique_ptr< T > buildTypedMesh(unsigned int dim=libMesh::invalid_uint)
Shortcut method to construct a unique pointer to a libMesh mesh instance.
Definition: MooseMesh.h:2090

◆ callMooseError()

void MooseBase::callMooseError ( std::string  msg,
const bool  with_prefix 
) const
inherited

Calls moose error with the message msg.

Will prefix the message with the subapp name if one exists.

If with_prefix, then add the prefix from errorPrefix() to the error.

Definition at line 33 of file MooseBase.C.

Referenced by InputParameters::callMooseErrorHelper(), MooseBaseErrorInterface::mooseDocumentedError(), MooseBaseErrorInterface::mooseError(), MooseBaseErrorInterface::mooseErrorNonPrefixed(), and MooseBaseParameterInterface::paramError().

34 {
36  const std::string prefix = _app.isUltimateMaster() ? "" : _app.name();
37  if (with_prefix)
38  msg = errorPrefix("error") + msg;
39  moose::internal::mooseErrorRaw(msg, prefix);
40 }
bool isUltimateMaster() const
Whether or not this app is the ultimate master app.
Definition: MooseApp.h:837
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
std::string errorPrefix(const std::string &error_type) const
Definition: MooseBase.C:43
MooseApp & _app
The MOOSE application this is associated with.
Definition: MooseBase.h:84
void mooseErrorRaw(std::string msg, const std::string prefix="")
Definition: MooseError.C:53
void mooseConsole()
Send current output buffer to Console output objects.
OutputWarehouse & getOutputWarehouse()
Get the OutputWarehouse objects.
Definition: MooseApp.C:2407

◆ connectControllableParams()

void MooseBaseParameterInterface::connectControllableParams ( const std::string &  parameter,
const std::string &  object_type,
const std::string &  object_name,
const std::string &  object_parameter 
) const
inherited

Connect controllable parameter of this action with the controllable parameters of the objects added by this action.

Parameters
parameterName of the controllable parameter of this action
object_typeType of the object added by this action.
object_nameName of the object added by this action.
object_parameterName of the parameter of the object.

Definition at line 33 of file MooseBaseParameterInterface.C.

37 {
38  MooseObjectParameterName primary_name(uniqueName(), parameter);
39  const auto base_type = _factory.getValidParams(object_type).get<std::string>("_moose_base");
40  MooseObjectParameterName secondary_name(base_type, object_name, object_parameter);
42  primary_name, secondary_name);
43 
44  const auto & tags = _pars.get<std::vector<std::string>>("control_tags");
45  for (const auto & tag : tags)
46  {
47  if (!tag.empty())
48  {
49  // Only adds the parameter with the different control tags if the derived class
50  // properly registers the parameter to its own syntax
51  MooseObjectParameterName tagged_name(tag, _moose_base.name(), parameter);
53  tagged_name, secondary_name, /*error_on_empty=*/false);
54  }
55  }
56 }
void addControllableParameterConnection(const MooseObjectParameterName &primary, const MooseObjectParameterName &secondary, bool error_on_empty=true)
Method for linking control parameters of different names.
const MooseBase & _moose_base
The MooseBase object that inherits this class.
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
InputParameterWarehouse & getInputParameterWarehouse()
Get the InputParameterWarehouse for MooseObjects.
Definition: MooseApp.C:2865
InputParameters getValidParams(const std::string &name) const
Get valid parameters for the object.
Definition: Factory.C:68
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
MooseApp & getMooseApp() const
Get the MooseApp this class is associated with.
Definition: MooseBase.h:45
Factory & _factory
The Factory associated with the MooseApp.
MooseObjectName uniqueName() const
The unique name for accessing input parameters of this object in the InputParameterWarehouse.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
A class for storing an input parameter name.

◆ copyMeshProperty() [1/2]

template<typename T >
T& MeshGenerator::copyMeshProperty ( const std::string &  target_data_name,
const std::string &  source_data_name,
const std::string &  source_mesh 
)
inlineprotectedinherited

Method for copying attribute from input mesh meta-data store to current mesh meta-data store.

This may often be avoided as getMeshProperty calls can traverse the tree of mesh generators to find a metadata instance

Definition at line 233 of file MeshGenerator.h.

236  {
237  return declareMeshProperty(target_data_name, getMeshProperty<T>(source_data_name, source_mesh));
238  }
T & declareMeshProperty(const std::string &data_name, Args &&... args)
Methods for writing out attributes to the mesh meta-data store, which can be retrieved from most othe...

◆ copyMeshProperty() [2/2]

template<typename T >
T& MeshGenerator::copyMeshProperty ( const std::string &  source_data_name,
const std::string &  source_mesh 
)
inlineprotectedinherited

Method for copying attribute from input mesh meta-data store to current mesh meta-data store, keeping source and target data names the same.

This may often be avoided as getMeshProperty calls can traverse the tree of mesh generators to find a metadata instance

Definition at line 246 of file MeshGenerator.h.

247  {
248  return copyMeshProperty<T>(source_data_name, source_data_name, source_mesh);
249  }

◆ declareMeshesForSub()

void MeshGenerator::declareMeshesForSub ( const std::string &  param_name)
protectedinherited

Like declareMeshForSub(), but for multiple generators.

Definition at line 215 of file MeshGenerator.C.

216 {
218 }
void declareMeshesForSubByName(const std::vector< MeshGeneratorName > &mesh_generator_names)
Like declareMeshForSubByName(), but for multiple generators.
const std::vector< MeshGeneratorName > & getMeshGeneratorNamesFromParam(const std::string &param_name) const
Helper for getting a std::vector<MeshGeneratorName> parameter.

◆ declareMeshesForSubByName()

void MeshGenerator::declareMeshesForSubByName ( const std::vector< MeshGeneratorName > &  mesh_generator_names)
protectedinherited

Like declareMeshForSubByName(), but for multiple generators.

Definition at line 231 of file MeshGenerator.C.

Referenced by MeshGenerator::declareMeshesForSub().

233 {
234  for (const auto & name : mesh_generator_names)
236 }
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
void declareMeshForSubByName(const MeshGeneratorName &mesh_generator_name)
Like declareMeshForSub(), but takes the name of another MeshGenerator directly.

◆ declareMeshForSub()

void MeshGenerator::declareMeshForSub ( const std::string &  param_name)
protectedinherited

Declares that a MeshGenerator referenced in the InputParameters is to be used as a dependency of a sub MeshGenerator created by this MeshGenerator (see addSubMeshGenerator)

You must declare all such MeshGenerators that are passed by parameter to this MeshGenerator but instead used in a sub MeshGenerator. This is in order to declare the intention to use an input mesh as a dependency for a sub generator instead of this one.

Definition at line 209 of file MeshGenerator.C.

Referenced by OverlayMeshGenerator::OverlayMeshGenerator(), and SideSetExtruderGenerator::SideSetExtruderGenerator().

210 {
212 }
void declareMeshForSubByName(const MeshGeneratorName &mesh_generator_name)
Like declareMeshForSub(), but takes the name of another MeshGenerator directly.
const MeshGeneratorName * getMeshGeneratorNameFromParam(const std::string &param_name, const bool allow_invalid) const
Helper for getting a MeshGeneratorName parameter.
Definition: MeshGenerator.C:92

◆ declareMeshForSubByName()

void MeshGenerator::declareMeshForSubByName ( const MeshGeneratorName &  mesh_generator_name)
protectedinherited

Like declareMeshForSub(), but takes the name of another MeshGenerator directly.

Definition at line 221 of file MeshGenerator.C.

Referenced by MeshGenerator::declareMeshesForSubByName(), and MeshGenerator::declareMeshForSub().

222 {
223  checkGetMesh(mesh_generator_name, "");
224  if (isNullMeshName(mesh_generator_name))
225  return;
226 
227  _requested_mesh_generators_for_sub.insert(mesh_generator_name);
228 }
bool isNullMeshName(const MeshGeneratorName &name) const
std::set< MeshGeneratorName > _requested_mesh_generators_for_sub
The names of the MeshGenerators that were requested in the declareMeshForSub methods.
void checkGetMesh(const MeshGeneratorName &mesh_generator_name, const std::string &param_name) const
Helper for performing error checking in the getMesh methods.

◆ declareMeshProperty() [1/2]

template<typename T , typename... Args>
T & MeshGenerator::declareMeshProperty ( const std::string &  data_name,
Args &&...  args 
)
protectedinherited

Methods for writing out attributes to the mesh meta-data store, which can be retrieved from most other MOOSE systems and is recoverable.

Definition at line 455 of file MeshGenerator.h.

Referenced by AddMetaDataGenerator::AddMetaDataGenerator(), ConcentricCircleMeshGenerator::ConcentricCircleMeshGenerator(), MeshGenerator::copyMeshProperty(), DistributedRectilinearMeshGenerator(), ImageMeshGenerator::ImageMeshGenerator(), RinglebMeshGenerator::RinglebMeshGenerator(), and SpiralAnnularMeshGenerator::SpiralAnnularMeshGenerator().

456 {
458  mooseError("Can only call declareMeshProperty() during MeshGenerator construction");
459 
460  // We sort construction ordering so that we _must_ declare before retrieving
461  if (hasMeshProperty(data_name))
462  mooseError("While declaring mesh property '",
463  data_name,
464  "' with type '",
465  MooseUtils::prettyCppType<T>(),
466  "',\nsaid property has already been declared with type '",
467  setMeshPropertyHelper(data_name).type(),
468  "'");
469 
470  const auto full_name = meshPropertyName(data_name);
471  auto new_T_value =
472  std::make_unique<RestartableData<T>>(full_name, nullptr, std::forward<Args>(args)...);
473  auto value =
474  &_app.registerRestartableData(std::move(new_T_value), 0, false, MooseApp::MESH_META_DATA);
475  mooseAssert(value->declared(), "Should be declared");
476 
477  RestartableData<T> * T_value = dynamic_cast<RestartableData<T> *>(value);
478  mooseAssert(T_value, "Bad cast");
479 
480  return T_value->set();
481 }
virtual bool constructingMeshGenerators() const
Whether this app is constructing mesh generators.
Definition: MooseApp.C:3492
RestartableDataValue & setMeshPropertyHelper(const std::string &data_name)
Helper for getting a writable reference to a mesh property, used in declareMeshProperty and setMeshPr...
static const RestartableDataMapName MESH_META_DATA
Definition: MooseApp.h:123
static std::string meshPropertyName(const std::string &data_name, const std::string &prefix)
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
RestartableDataValue & registerRestartableData(std::unique_ptr< RestartableDataValue > data, THREAD_ID tid, bool read_only, const RestartableDataMapName &metaname="")
Definition: MooseApp.C:2447
MooseApp & _app
The MOOSE application this is associated with.
Definition: MooseBase.h:84
virtual std::string type() const =0
String identifying the type of parameter stored.
Concrete definition of a parameter value for a specified type.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
bool hasMeshProperty(const std::string &data_name, const std::string &prefix) const

◆ declareMeshProperty() [2/2]

template<typename T >
T& MeshGenerator::declareMeshProperty ( const std::string &  data_name,
const T &  data_value 
)
inlineprotectedinherited

Definition at line 206 of file MeshGenerator.h.

207  {
208  return declareMeshProperty<T, const T &>(data_name, data_value);
209  }

◆ declareNullMeshName()

void MeshGenerator::declareNullMeshName ( const MeshGeneratorName &  name)
protectedinherited

Registers the name name as a "null" mesh, which is a MeshGenerator used in InputParameters that will not represent an input mesh when requested via getMesh.

An example use case for this is when you as a developer want users to represent a hole in a mesh pattern that is defined in input.

Definition at line 398 of file MeshGenerator.C.

399 {
400  mooseAssert(_app.constructingMeshGenerators(), "Should only be called at construction");
401  mooseAssert(!_null_mesh_names.count(name), "Already declared");
402  _null_mesh_names.insert(name);
403 }
virtual bool constructingMeshGenerators() const
Whether this app is constructing mesh generators.
Definition: MooseApp.C:3492
std::set< std::string > _null_mesh_names
The declared "null" mesh names that will not represent a mesh in input; see declareNullMeshName() ...
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
MooseApp & _app
The MOOSE application this is associated with.
Definition: MooseBase.h:84

◆ elemId() [1/7]

template<typename T >
dof_id_type DistributedRectilinearMeshGenerator::elemId ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type   
)
inline

Get the element ID for a given hex.

Parameters
nxThe number of elements in the x direction
nyThe number of elements in the y direction
iThe x index of this element
jThe y index of this element
kThe z index of this element
Returns
The ID of the i,j element

Definition at line 74 of file DistributedRectilinearMeshGenerator.h.

79  {
80  mooseError(
81  "elemId not implemented for this element type in DistributedRectilinearMeshGenerator");
82  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ elemId() [2/7]

template<>
dof_id_type DistributedRectilinearMeshGenerator::elemId ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  i,
const dof_id_type  ,
const dof_id_type   
)

Definition at line 225 of file DistributedRectilinearMeshGenerator.C.

230 {
231  return i;
232 }

◆ elemId() [3/7]

template<>
dof_id_type DistributedRectilinearMeshGenerator::elemId ( const dof_id_type  nx,
const dof_id_type  ,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type   
)

Definition at line 343 of file DistributedRectilinearMeshGenerator.C.

348 {
349  return (j * nx) + i;
350 }

◆ elemId() [4/7]

template<>
dof_id_type DistributedRectilinearMeshGenerator::elemId ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k 
)

◆ elemId() [5/7]

template<>
dof_id_type DistributedRectilinearMeshGenerator::elemId ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k 
)

◆ elemId() [6/7]

template<>
dof_id_type DistributedRectilinearMeshGenerator::elemId ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k 
)

◆ elemId() [7/7]

template<>
dof_id_type DistributedRectilinearMeshGenerator::elemId ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k 
)

Definition at line 578 of file DistributedRectilinearMeshGenerator.C.

583 {
584  return i + (j * nx) + (k * nx * ny);
585 }

◆ enabled()

virtual bool MooseObject::enabled ( ) const
inlinevirtualinherited

Return the enabled status of the object.

Reimplemented in EigenKernel.

Definition at line 40 of file MooseObject.h.

Referenced by EigenKernel::enabled().

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

◆ errorPrefix()

std::string MooseBase::errorPrefix ( const std::string &  error_type) const
inherited
Returns
A prefix to be used in errors that contains the input file location associated with this object (if any) and the name and type of the object.

Definition at line 43 of file MooseBase.C.

Referenced by MooseBase::callMooseError(), MooseBaseErrorInterface::mooseDeprecated(), MooseBaseErrorInterface::mooseInfo(), MooseBaseErrorInterface::mooseWarning(), and MooseBaseParameterInterface::paramErrorMsg().

44 {
45  std::stringstream oss;
46  if (const auto node = _params.getHitNode())
47  if (!node->isRoot())
48  oss << node->fileLocation() << ":\n";
49  oss << "The following " << error_type << " occurred in the ";
50  if (const auto base_ptr = _params.getBase())
51  oss << *base_ptr;
52  else
53  oss << "object";
54  oss << " '" << name() << "' of type " << type() << ".\n\n";
55  return oss.str();
56 }
const hit::Node * getHitNode(const std::string &param) const
std::optional< std::string > getBase() const
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const InputParameters & _params
The object&#39;s parameteres.
Definition: MooseBase.h:94
const std::string & type() const
Get the type of this class.
Definition: MooseBase.h:51

◆ generate()

std::unique_ptr< MeshBase > DistributedRectilinearMeshGenerator::generate ( )
overridevirtual

Generate / modify the mesh.

Implements MeshGenerator.

Definition at line 1272 of file DistributedRectilinearMeshGenerator.C.

1273 {
1274  // We will set up boundaries accordingly. We do not want to call
1275  // ghostGhostedBoundaries in which allgather_packed_range is unscalable.
1276  // ghostGhostedBoundaries will gather all boundaries to every single processor
1278 
1279  // DistributedRectilinearMeshGenerator always generates a distributed mesh
1280  auto mesh = buildDistributedMesh();
1281 
1282  MooseEnum elem_type_enum = getParam<MooseEnum>("elem_type");
1283 
1284  if (!isParamValid("elem_type"))
1285  {
1286  // Switching on MooseEnum
1287  switch (_dim)
1288  {
1289  case 1:
1290  elem_type_enum = "EDGE2";
1291  break;
1292  case 2:
1293  elem_type_enum = "QUAD4";
1294  break;
1295  case 3:
1296  elem_type_enum = "HEX8";
1297  break;
1298  }
1299  }
1300 
1301  _elem_type = Utility::string_to_enum<ElemType>(elem_type_enum);
1302 
1303  mesh->set_mesh_dimension(_dim);
1304  mesh->set_spatial_dimension(_dim);
1305  // Let the mesh know that it's not serialized
1306  mesh->set_distributed();
1307 
1308  // Switching on MooseEnum
1309  switch (_dim)
1310  {
1311  // The build_XYZ mesh generation functions take an
1312  // UnstructuredMesh& as the first argument, hence the dynamic_cast.
1313  case 1:
1314  buildCube<Edge2>(
1315  dynamic_cast<UnstructuredMesh &>(*mesh), _nx, 1, 1, _xmin, _xmax, 0, 0, 0, 0, _elem_type);
1316  break;
1317  case 2:
1318  buildCube<Quad4>(dynamic_cast<UnstructuredMesh &>(*mesh),
1319  _nx,
1320  _ny,
1321  1,
1322  _xmin,
1323  _xmax,
1324  _ymin,
1325  _ymax,
1326  0,
1327  0,
1328  _elem_type);
1329  break;
1330  case 3:
1331  buildCube<Hex8>(dynamic_cast<UnstructuredMesh &>(*mesh),
1332  _nx,
1333  _ny,
1334  _nz,
1335  _xmin,
1336  _xmax,
1337  _ymin,
1338  _ymax,
1339  _zmin,
1340  _zmax,
1341  _elem_type);
1342  break;
1343  default:
1344  mooseError(
1345  getParam<MooseEnum>("elem_type"),
1346  " is not a currently supported element type for DistributedRectilinearMeshGenerator");
1347  }
1348 
1349  // Apply the bias if any exists
1350  if (_bias_x != 1.0 || _bias_y != 1.0 || _bias_z != 1.0)
1351  {
1352  // Biases
1353  Real bias[3] = {_bias_x, _bias_y, _bias_z};
1354 
1355  // "width" of the mesh in each direction
1356  Real width[3] = {_xmax - _xmin, _ymax - _ymin, _zmax - _zmin};
1357 
1358  // Min mesh extent in each direction.
1359  Real mins[3] = {_xmin, _ymin, _zmin};
1360 
1361  // Number of elements in each direction.
1362  dof_id_type nelem[3] = {_nx, _ny, _nz};
1363 
1364  // We will need the biases raised to integer powers in each
1365  // direction, so let's pre-compute those...
1366  std::vector<std::vector<Real>> pows(LIBMESH_DIM);
1367  for (dof_id_type dir = 0; dir < LIBMESH_DIM; ++dir)
1368  {
1369  pows[dir].resize(nelem[dir] + 1);
1370  for (dof_id_type i = 0; i < pows[dir].size(); ++i)
1371  pows[dir][i] = std::pow(bias[dir], static_cast<int>(i));
1372  }
1373 
1374  // Loop over the nodes and move them to the desired location
1375  for (auto & node_ptr : mesh->node_ptr_range())
1376  {
1377  Node & node = *node_ptr;
1378 
1379  for (dof_id_type dir = 0; dir < LIBMESH_DIM; ++dir)
1380  {
1381  if (width[dir] != 0. && bias[dir] != 1.)
1382  {
1383  // Compute the scaled "index" of the current point. This
1384  // will either be close to a whole integer or a whole
1385  // integer+0.5 for quadratic nodes.
1386  Real float_index = (node(dir) - mins[dir]) * nelem[dir] / width[dir];
1387 
1388  Real integer_part = 0;
1389  Real fractional_part = std::modf(float_index, &integer_part);
1390 
1391  // Figure out where to move the node...
1392  if (std::abs(fractional_part) < TOLERANCE || std::abs(fractional_part - 1.0) < TOLERANCE)
1393  {
1394  // If the fractional_part ~ 0.0 or 1.0, this is a vertex node, so
1395  // we don't need an average.
1396  //
1397  // Compute the "index" we are at in the current direction. We
1398  // round to the nearest integral value to get this instead
1399  // of using "integer_part", since that could be off by a
1400  // lot (e.g. we want 3.9999 to map to 4.0 instead of 3.0).
1401  int index = round(float_index);
1402 
1403  // Move node to biased location.
1404  node(dir) =
1405  mins[dir] + width[dir] * (1. - pows[dir][index]) / (1. - pows[dir][nelem[dir]]);
1406  }
1407  else if (std::abs(fractional_part - 0.5) < TOLERANCE)
1408  {
1409  // If the fractional_part ~ 0.5, this is a midedge/face
1410  // (i.e. quadratic) node. We don't move those with the same
1411  // bias as the vertices, instead we put them midway between
1412  // their respective vertices.
1413  //
1414  // Also, since the fractional part is nearly 0.5, we know that
1415  // the integer_part will be the index of the vertex to the
1416  // left, and integer_part+1 will be the index of the
1417  // vertex to the right.
1418  node(dir) = mins[dir] +
1419  width[dir] *
1420  (1. - 0.5 * (pows[dir][integer_part] + pows[dir][integer_part + 1])) /
1421  (1. - pows[dir][nelem[dir]]);
1422  }
1423  else
1424  {
1425  // We don't yet handle anything higher order than quadratic...
1426  mooseError("Unable to bias node at node(", dir, ")=", node(dir));
1427  }
1428  }
1429  }
1430  }
1431  }
1432 
1433  // MeshOutput<MT>::write_equation_systems will automatically renumber node and element IDs.
1434  // So we have to make that consistent at the first place. Otherwise, the moose cached data such as
1435  // _block_node_list will be inconsistent when we doing MooseMesh::getNodeBlockIds. That being
1436  // said, moose will pass new ids to getNodeBlockIds while the cached _block_node_list still use
1437  // the old node IDs. Yes, you could say: go ahead to do a mesh update, but I would say no. I do
1438  // not change mesh and there is no point to update anything.
1439  mesh->allow_renumbering(true);
1440  mesh->prepare_for_use();
1441 
1442  return dynamic_pointer_cast<MeshBase>(mesh);
1443 }
std::unique_ptr< DistributedMesh > buildDistributedMesh(unsigned int dim=libMesh::invalid_uint)
Build a distributed mesh that has correct remote element removal behavior and geometric ghosting func...
MetaPhysicL::DualNumber< V, D, asd > abs(const MetaPhysicL::DualNumber< V, D, asd > &a)
Definition: EigenADReal.h:42
dof_id_type & _nx
Number of elements in x, y, z direction.
MeshBase & mesh
std::unique_ptr< T_DEST, T_DELETER > dynamic_pointer_cast(std::unique_ptr< T_SRC, T_DELETER > &src)
These are reworked from https://stackoverflow.com/a/11003103.
ElemType _elem_type
The type of element to build.
MooseMesh *const _mesh
Pointer to the owning mesh.
bool isParamValid(const std::string &name) const
Test if the supplied parameter is valid.
T round(T x)
Definition: MathUtils.h:77
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
Definition: MooseEnum.h:33
Real & _xmin
The min/max values for x,y,z component.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
void needGhostGhostedBoundaries(bool needghost)
Whether or not we want to ghost ghosted boundaries.
Definition: MooseMesh.h:616
Real _bias_x
The amount by which to bias the cells in the x,y,z directions.
MooseUnits pow(const MooseUnits &, int)
Definition: Units.C:537
uint8_t dof_id_type

◆ generateData()

void MeshGenerator::generateData ( )
protectedvirtualinherited

Generate the mesh data.

Reimplemented in AddMetaDataGenerator.

Definition at line 424 of file MeshGenerator.C.

Referenced by MeshGenerator::generateInternal().

425 {
426  mooseAssert(!hasGenerateData(), "Inconsistent flag");
427  mooseError("This MeshGenerator does not have a generateData() implementation.");
428 }
bool hasGenerateData() const
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ generateInternal()

std::unique_ptr< MeshBase > MeshGenerator::generateInternal ( )
inherited

Internal generation method - this is what is actually called within MooseApp to execute the MeshGenerator.

Definition at line 260 of file MeshGenerator.C.

261 {
262  libmesh_parallel_only(comm());
263  mooseAssert(comm().verify(type() + name()), "Inconsistent execution ordering");
264 
265  if (hasGenerateData())
266  generateData();
267 
268  if (isDataOnly())
269  return nullptr;
270 
271  auto mesh = generate();
272  if (!mesh)
273  mooseError("A mesh was not generated by this generator (it was nullptr).");
274 
275  for (const auto & [requested_name, requested_mesh] : _requested_meshes)
276  if (*requested_mesh)
277  mooseError(
278  "The mesh from input ",
279  _app.getMeshGenerator(requested_name).type(),
280  " '",
281  _app.getMeshGenerator(requested_name).name(),
282  "' was not moved.\n\nThe MeshGenerator system requires that the memory from all input "
283  "meshes\nare managed by the requesting MeshGenerator during the generate phase.\n\nThis "
284  "is achieved with a std::move() operation within the generate() method.");
285 
286  if (getParam<bool>("show_info"))
287  {
288  const auto mesh_info = mesh->get_info(/* verbosity = */ 2);
289 
290  // We will prefix all information with "type() 'name()':" because this could potentially
291  // output a ton of information and looks a bit better with a prefix
292  std::stringstream oss;
293  const auto split = MooseUtils::split(mesh_info, "\n");
294  if (split.size())
295  for (std::size_t i = 0; i < split.size() - 1; ++i) // ignore the last line break
296  oss << COLOR_CYAN << "" << type() << " '" << name() << "': " << COLOR_DEFAULT << split[i]
297  << std::endl;
298  _console << oss.str() << std::flush;
299  }
300 
301  // output the current mesh block to file
302  if (hasOutput())
303  {
304  if (!mesh->is_prepared())
305  mesh->prepare_for_use();
306 
307  if (!getParam<bool>("nemesis"))
308  {
309  libMesh::ExodusII_IO exio(*mesh);
310 
311  if (mesh->mesh_dimension() == 1)
312  exio.write_as_dimension(3);
313 
314  // Default to non-HDF5 output for wider compatibility
315  exio.set_hdf5_writing(false);
316 
317  exio.write(name() + "_in.e");
318  }
319  else
320  {
321  libMesh::Nemesis_IO nemesis_io(*mesh);
322 
323  // Default to non-HDF5 output for wider compatibility
324  nemesis_io.set_hdf5_writing(false);
325 
326  nemesis_io.write(name() + "_in.e");
327  }
328  }
329 
330  return mesh;
331 }
const MeshGenerator & getMeshGenerator(const std::string &name) const
Definition: MooseApp.h:891
virtual void generateData()
Generate the mesh data.
MeshBase & mesh
bool hasOutput() const
const Parallel::Communicator & comm() const
bool hasGenerateData() const
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
std::vector< std::string > split(const std::string &str, const std::string &delimiter, std::size_t max_count=std::numeric_limits< std::size_t >::max())
Python like split functions for strings.
Definition: MooseUtils.C:1126
std::vector< std::pair< std::string, std::unique_ptr< MeshBase > * > > _requested_meshes
The meshes that were requested by this MeshGenerator; used to verify that any input meshes that are r...
virtual std::unique_ptr< MeshBase > generate()=0
Generate / modify the mesh.
const std::string & type() const
Get the type of this class.
Definition: MooseBase.h:51
MooseApp & _app
The MOOSE application this is associated with.
Definition: MooseBase.h:84
tbb::split split
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.
bool isDataOnly() const

◆ getCheckedPointerParam()

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

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 286 of file MooseBaseParameterInterface.h.

288 {
289  return parameters().getCheckedPointerParam<T>(name, error_string);
290 }
std::string name(const ElemQuality q)
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.

◆ getChildMeshGenerators()

const std::set<const MeshGenerator *, Comparator>& MeshGenerator::getChildMeshGenerators ( ) const
inlineinherited

Gets the MeshGenerators that are children to this MeshGenerator.

Definition at line 129 of file MeshGenerator.h.

Referenced by MeshGenerator::isChildMeshGenerator().

130  {
131  return _child_mesh_generators;
132  }
std::set< const MeshGenerator *, Comparator > _child_mesh_generators
The MeshGenerators that are children to this MeshGenerator.

◆ getDataFileName()

std::string DataFileInterface::getDataFileName ( const std::string &  param) const
inherited

Deprecated method.

The data file paths are now automatically set within the InputParameters object, so using getParam<DataFileName>("param_name") is now sufficient.

Definition at line 21 of file DataFileInterface.C.

22 {
23  _parent.mooseDeprecated("getDataFileName() is deprecated. The file path is now directly set "
24  "within the InputParameters.\nUse getParam<DataFileName>(\"",
25  param,
26  "\") instead.");
27  return _parent.getParam<DataFileName>(param);
28 }
void mooseDeprecated(Args &&... args) const
const T & getParam(const std::string &name) const
Retrieve a parameter for the object.
const ParallelParamObject & _parent

◆ getDataFileNameByName()

std::string DataFileInterface::getDataFileNameByName ( const std::string &  relative_path) const
inherited

Deprecated method.

Use getDataFilePath() instead.

Definition at line 31 of file DataFileInterface.C.

32 {
33  _parent.mooseDeprecated("getDataFileNameByName() is deprecated. Use getDataFilePath(\"",
34  relative_path,
35  "\") instead.");
36  return getDataFilePath(relative_path);
37 }
std::string getDataFilePath(const std::string &relative_path) const
Returns the path of a data file for a given relative file path.
void mooseDeprecated(Args &&... args) const
const ParallelParamObject & _parent

◆ getDataFilePath()

std::string DataFileInterface::getDataFilePath ( const std::string &  relative_path) const
inherited

Returns the path of a data file for a given relative file path.

This can be used for hardcoded datafile names and will search the same locations as getDataFileName

Definition at line 40 of file DataFileInterface.C.

Referenced by DataFileInterface::getDataFileNameByName().

41 {
42  // This should only ever be used with relative paths. There is no point to
43  // use this search path with an absolute path.
44  if (std::filesystem::path(relative_path).is_absolute())
45  _parent.mooseWarning("While using getDataFilePath(\"",
46  relative_path,
47  "\"): This API should not be used for absolute paths.");
48 
49  // Throw on error so that if getPath() fails, we can throw an error
50  // with the context of _parent.mooseError()
51  const auto throw_on_error_before = Moose::_throw_on_error;
53  std::optional<std::string> error;
54 
55  // This will search the data paths for this relative path
56  Moose::DataFileUtils::Path found_path;
57  try
58  {
59  found_path = Moose::DataFileUtils::getPath(relative_path);
60  }
61  catch (std::exception & e)
62  {
63  error = e.what();
64  }
65 
66  Moose::_throw_on_error = throw_on_error_before;
67  if (error)
68  _parent.mooseError(*error);
69 
70  mooseAssert(found_path.context == Moose::DataFileUtils::Context::DATA,
71  "Should only ever obtain data");
72  mooseAssert(found_path.data_name, "Should be set");
73 
74  const std::string msg =
75  "Using data file '" + found_path.path + "' from " + *found_path.data_name + " data";
76  _parent.mooseInfo(msg);
77 
78  return found_path.path;
79 }
Context context
Context for the file (where it came from)
Definition: DataFileUtils.h:48
void mooseInfo(Args &&... args) const
void mooseWarning(Args &&... args) const
Emits a warning prefixed with object name and type.
Representation of a data file path.
Definition: DataFileUtils.h:36
Path getPath(std::string path, const std::optional< std::string > &base=std::optional< std::string >())
Get the data path for a given path, searching the registered data.
Definition: DataFileUtils.C:22
std::optional< std::string > data_name
The name of the data registry the file came from (with context == DATA)
Definition: DataFileUtils.h:50
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
bool _throw_on_error
Variable to turn on exceptions during mooseError(), should only be used within MOOSE unit tests or wh...
Definition: Moose.C:760
const ParallelParamObject & _parent

◆ getGhostNeighbors() [1/7]

template<>
void DistributedRectilinearMeshGenerator::getGhostNeighbors ( const dof_id_type  nx,
const dof_id_type  ,
const dof_id_type  ,
const MeshBase &  mesh,
const std::set< dof_id_type > &  current_elems,
std::set< dof_id_type > &  ghost_elems 
)

Definition at line 203 of file DistributedRectilinearMeshGenerator.C.

210 {
211  std::vector<dof_id_type> neighbors(2);
212 
213  for (auto elem_id : current_elems)
214  {
215  getNeighbors<Edge2>(nx, 0, 0, elem_id, 0, 0, neighbors, true);
216 
217  for (auto neighbor : neighbors)
218  if (neighbor != Elem::invalid_id && !mesh.query_elem_ptr(neighbor))
219  ghost_elems.insert(neighbor);
220  }
221 }
MeshBase & mesh

◆ getGhostNeighbors() [2/7]

template<typename T >
void DistributedRectilinearMeshGenerator::getGhostNeighbors ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const MeshBase &  ,
const std::set< dof_id_type > &  ,
std::set< dof_id_type > &   
)
inline

Find the elements and sides that need ghost elements.

Parameters
nxThe number of elements in the x direction
nyThe number of elements in the y direction
meshThe mesh - without any ghost elements
ghost_elemsThe ghost elems that need to be added

Definition at line 271 of file DistributedRectilinearMeshGenerator.h.

277  {
278  mooseError("getGhostNeighbors not implemented for this element type in "
279  "DistributedRectilinearMeshGenerator");
280  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ getGhostNeighbors() [3/7]

template<>
void DistributedRectilinearMeshGenerator::getGhostNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  ,
const MeshBase &  mesh,
const std::set< dof_id_type > &  current_elems,
std::set< dof_id_type > &  ghost_elems 
)

Definition at line 411 of file DistributedRectilinearMeshGenerator.C.

418 {
419  dof_id_type i, j, k;
420 
421  std::vector<dof_id_type> neighbors(9);
422 
423  for (auto elem_id : current_elems)
424  {
425  getIndices<Quad4>(nx, 0, elem_id, i, j, k);
426 
427  getNeighbors<Quad4>(nx, ny, 0, i, j, 0, neighbors, true);
428 
429  for (auto neighbor : neighbors)
430  if (neighbor != Elem::invalid_id && !mesh.query_elem_ptr(neighbor))
431  ghost_elems.insert(neighbor);
432  }
433 }
MeshBase & mesh
uint8_t dof_id_type

◆ getGhostNeighbors() [4/7]

template<>
void DistributedRectilinearMeshGenerator::getGhostNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const MeshBase &  mesh,
const std::set< dof_id_type > &  current_elems,
std::set< dof_id_type > &  ghost_elems 
)

◆ getGhostNeighbors() [5/7]

template<>
void DistributedRectilinearMeshGenerator::getGhostNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const MeshBase &  mesh,
const std::set< dof_id_type > &  current_elems,
std::set< dof_id_type > &  ghost_elems 
)

◆ getGhostNeighbors() [6/7]

template<>
void DistributedRectilinearMeshGenerator::getGhostNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const MeshBase &  mesh,
const std::set< dof_id_type > &  current_elems,
std::set< dof_id_type > &  ghost_elems 
)

◆ getGhostNeighbors() [7/7]

template<>
void DistributedRectilinearMeshGenerator::getGhostNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const MeshBase &  mesh,
const std::set< dof_id_type > &  current_elems,
std::set< dof_id_type > &  ghost_elems 
)

Definition at line 794 of file DistributedRectilinearMeshGenerator.C.

801 {
802  dof_id_type i, j, k;
803 
804  std::vector<dof_id_type> neighbors(27);
805 
806  for (auto elem_id : current_elems)
807  {
808  getIndices<Hex8>(nx, ny, elem_id, i, j, k);
809 
810  getNeighbors<Hex8>(nx, ny, nz, i, j, k, neighbors, true);
811 
812  for (auto neighbor : neighbors)
813  if (neighbor != Elem::invalid_id && !mesh.query_elem_ptr(neighbor))
814  ghost_elems.insert(neighbor);
815  }
816 }
MeshBase & mesh
uint8_t dof_id_type

◆ getIndices() [1/7]

template<>
void DistributedRectilinearMeshGenerator::getIndices ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  elem_id,
dof_id_type i,
dof_id_type ,
dof_id_type  
)

Definition at line 191 of file DistributedRectilinearMeshGenerator.C.

197 {
198  i = elem_id;
199 }

◆ getIndices() [2/7]

template<typename T >
void DistributedRectilinearMeshGenerator::getIndices ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
dof_id_type ,
dof_id_type ,
dof_id_type  
)
inline

Compute the i,j,k indices of a given element ID.

Parameters
nxThe number of elements in the x direction
nyThe number of elements in the y direction
elem_idThe ID of the element
iOutput: The index in the x direction
jOutput: The index in the y direction
kOutput: The index in the z direction

Definition at line 251 of file DistributedRectilinearMeshGenerator.h.

257  {
258  mooseError(
259  "getIndices not implemented for this element type in DistributedRectilinearMeshGenerator");
260  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ getIndices() [3/7]

template<>
void DistributedRectilinearMeshGenerator::getIndices ( const dof_id_type  nx,
const dof_id_type  ,
const dof_id_type  elem_id,
dof_id_type i,
dof_id_type j,
dof_id_type  
)

Definition at line 398 of file DistributedRectilinearMeshGenerator.C.

404 {
405  i = elem_id % nx;
406  j = (elem_id - i) / nx;
407 }

◆ getIndices() [4/7]

template<>
void DistributedRectilinearMeshGenerator::getIndices ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  elem_id,
dof_id_type i,
dof_id_type j,
dof_id_type k 
)

◆ getIndices() [5/7]

template<>
void DistributedRectilinearMeshGenerator::getIndices ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  elem_id,
dof_id_type i,
dof_id_type j,
dof_id_type k 
)

◆ getIndices() [6/7]

template<>
void DistributedRectilinearMeshGenerator::getIndices ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  elem_id,
dof_id_type i,
dof_id_type j,
dof_id_type k 
)

◆ getIndices() [7/7]

template<>
void DistributedRectilinearMeshGenerator::getIndices ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  elem_id,
dof_id_type i,
dof_id_type j,
dof_id_type k 
)

Definition at line 780 of file DistributedRectilinearMeshGenerator.C.

786 {
787  i = elem_id % nx;
788  j = (((elem_id - i) / nx) % ny);
789  k = ((elem_id - i) - (j * nx)) / (nx * ny);
790 }

◆ getMesh()

std::unique_ptr< MeshBase > & MeshGenerator::getMesh ( const std::string &  param_name,
const bool  allow_invalid = false 
)
protectedinherited

Takes the name of a MeshGeneratorName parameter and then gets a pointer to the Mesh that MeshGenerator is going to create.

That MeshGenerator is made to be a dependency of this one, so will generate() its mesh first.

Parameters
param_nameThe name of the parameter that contains the name of the MeshGenerator
allow_invalidIf true, will allow for invalid parameters and will return a nullptr mesh if said parameter does not exist
Returns
The Mesh generated by that MeshGenerator

NOTE: You MUST catch this by reference!

Definition at line 172 of file MeshGenerator.C.

173 {
174  const MeshGeneratorName * name = getMeshGeneratorNameFromParam(param_name, allow_invalid);
175  if (!name)
176  return _null_mesh;
177  return getMeshByName(*name);
178 }
std::unique_ptr< MeshBase > & getMeshByName(const MeshGeneratorName &mesh_generator_name)
Like getMesh(), but takes the name of another MeshGenerator directly.
std::unique_ptr< MeshBase > _null_mesh
A nullptr to use for when inputs aren&#39;t specified.
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const MeshGeneratorName * getMeshGeneratorNameFromParam(const std::string &param_name, const bool allow_invalid) const
Helper for getting a MeshGeneratorName parameter.
Definition: MeshGenerator.C:92

◆ getMeshByName()

std::unique_ptr< MeshBase > & MeshGenerator::getMeshByName ( const MeshGeneratorName &  mesh_generator_name)
protectedinherited

Like getMesh(), but takes the name of another MeshGenerator directly.

NOTE: You MUST catch this by reference!

Returns
The Mesh generated by that MeshGenerator

Definition at line 187 of file MeshGenerator.C.

Referenced by MeshGenerator::getMesh(), MeshGenerator::getMeshesByName(), OverlayMeshGenerator::OverlayMeshGenerator(), and SideSetExtruderGenerator::SideSetExtruderGenerator().

188 {
189  checkGetMesh(mesh_generator_name, "");
190  if (isNullMeshName(mesh_generator_name))
191  return _null_mesh;
192 
193  _requested_mesh_generators.insert(mesh_generator_name);
194  auto & mesh = _app.getMeshGeneratorSystem().getMeshGeneratorOutput(mesh_generator_name);
195  _requested_meshes.emplace_back(mesh_generator_name, &mesh);
196  return mesh;
197 }
std::unique_ptr< libMesh::MeshBase > & getMeshGeneratorOutput(const MeshGeneratorName &name)
Get a reference to a pointer that will be the output of the MeshGenerator named name.
MeshBase & mesh
std::unique_ptr< MeshBase > _null_mesh
A nullptr to use for when inputs aren&#39;t specified.
bool isNullMeshName(const MeshGeneratorName &name) const
std::vector< std::pair< std::string, std::unique_ptr< MeshBase > * > > _requested_meshes
The meshes that were requested by this MeshGenerator; used to verify that any input meshes that are r...
std::set< MeshGeneratorName > _requested_mesh_generators
The names of the MeshGenerators that were requested in the getMesh methods.
MooseApp & _app
The MOOSE application this is associated with.
Definition: MooseBase.h:84
void checkGetMesh(const MeshGeneratorName &mesh_generator_name, const std::string &param_name) const
Helper for performing error checking in the getMesh methods.
MeshGeneratorSystem & getMeshGeneratorSystem()
Gets the system that manages the MeshGenerators.
Definition: MooseApp.h:857

◆ getMeshes()

std::vector< std::unique_ptr< MeshBase > * > MeshGenerator::getMeshes ( const std::string &  param_name)
protectedinherited

Like getMesh(), but for multiple generators.

Returns
The generated meshes

Definition at line 181 of file MeshGenerator.C.

182 {
184 }
std::vector< std::unique_ptr< MeshBase > * > getMeshesByName(const std::vector< MeshGeneratorName > &mesh_generator_names)
Like getMeshByName(), but for multiple generators.
const std::vector< MeshGeneratorName > & getMeshGeneratorNamesFromParam(const std::string &param_name) const
Helper for getting a std::vector<MeshGeneratorName> parameter.

◆ getMeshesByName()

std::vector< std::unique_ptr< MeshBase > * > MeshGenerator::getMeshesByName ( const std::vector< MeshGeneratorName > &  mesh_generator_names)
protectedinherited

Like getMeshByName(), but for multiple generators.

Returns
The generated meshes

Definition at line 200 of file MeshGenerator.C.

Referenced by MeshGenerator::getMeshes().

201 {
202  std::vector<std::unique_ptr<MeshBase> *> meshes;
203  for (const auto & name : mesh_generator_names)
204  meshes.push_back(&getMeshByName(name));
205  return meshes;
206 }
std::unique_ptr< MeshBase > & getMeshByName(const MeshGeneratorName &mesh_generator_name)
Like getMesh(), but takes the name of another MeshGenerator directly.
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57

◆ getMeshProperty() [1/2]

template<typename T >
const T & MeshMetaDataInterface::getMeshProperty ( const std::string &  data_name,
const std::string &  prefix 
)
protectedinherited

Method for retrieving a property with the given type and name exists in the mesh meta-data store.

This method will throw an error if the property does not exist.

Definition at line 134 of file MeshMetaDataInterface.h.

136 {
137  if (!hasMeshProperty(data_name, prefix))
138  mooseErrorInternal("Failed to get mesh property '", prefix, "/", data_name, "'");
139 
140  auto value = &getMeshPropertyInternal(data_name, prefix);
141  mooseAssert(value->declared(), "Value has not been declared");
142  const RestartableData<T> * T_value = dynamic_cast<const RestartableData<T> *>(value);
143  if (!T_value)
144  mooseErrorInternal("While retrieving mesh property '",
145  prefix,
146  "/",
147  data_name,
148  "' with type '",
149  MooseUtils::prettyCppType<T>(),
150  "',\nthe property exists with different type '",
151  value->type(),
152  "'");
153  return T_value->get();
154 }
void mooseErrorInternal(Args &&... args) const
Helper for forwarding a mooseError to an object&#39;s mooseError if it is available (said error will prov...
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
Concrete definition of a parameter value for a specified type.
bool hasMeshProperty(const std::string &data_name, const std::string &prefix) const
const RestartableDataValue & getMeshPropertyInternal(const std::string &data_name, const std::string &prefix) const
Helper for getting a mesh property.

◆ getMeshProperty() [2/2]

template<typename T >
const T& MeshMetaDataInterface::getMeshProperty ( const std::string &  data_name)
inlineprotectedinherited

Definition at line 56 of file MeshMetaDataInterface.h.

57  {
58  return getMeshProperty<T>(data_name, meshPropertyPrefix(data_name));
59  }
virtual std::string meshPropertyPrefix(const std::string &data_name) const
The default prefix to use for getting/seeing if mesh properties exist.

◆ getMooseApp()

MooseApp& MooseBase::getMooseApp ( ) const
inlineinherited

Get the MooseApp this class is associated with.

Definition at line 45 of file MooseBase.h.

Referenced by ChainControlSetupAction::act(), AddDefaultConvergenceAction::addDefaultMultiAppFixedPointConvergence(), AddDefaultConvergenceAction::addDefaultNonlinearConvergence(), AddDefaultConvergenceAction::addDefaultSteadyStateConvergence(), FEProblemBase::advanceState(), ParsedChainControl::buildFunction(), ReporterTransferInterface::checkHasReporterValue(), AddDefaultConvergenceAction::checkUnusedMultiAppFixedPointConvergenceParameters(), AddDefaultConvergenceAction::checkUnusedNonlinearConvergenceParameters(), AddDefaultConvergenceAction::checkUnusedSteadyStateConvergenceParameters(), Coupleable::checkWritableVar(), ComponentPhysicsInterface::ComponentPhysicsInterface(), MooseBaseParameterInterface::connectControllableParams(), Coupleable::Coupleable(), MortarData::createMortarInterface(), EigenProblem::doFreeNonlinearPowerIterations(), Terminator::execute(), FEProblemSolve::FEProblemSolve(), SolutionInvalidInterface::flagInvalidSolutionInternal(), ChainControl::getChainControlDataSystem(), DefaultConvergenceBase::getSharedExecutionerParam(), ChainControlDataPostprocessor::initialSetup(), MaterialPropertyInterface::MaterialPropertyInterface(), MooseVariableDataFV< OutputType >::MooseVariableDataFV(), ProgressOutput::output(), PetscOutputInterface::petscLinearOutput(), PetscOutputInterface::petscNonlinearOutput(), PetscOutputInterface::PetscOutputInterface(), PostprocessorInterface::postprocessorsAdded(), MultiApp::preTransfer(), Reporter::Reporter(), ReporterInterface::reportersAdded(), and VectorPostprocessorInterface::vectorPostprocessorsAdded().

45 { return _app; }
MooseApp & _app
The MOOSE application this is associated with.
Definition: MooseBase.h:84

◆ getNeighbors() [1/7]

template<typename T >
void DistributedRectilinearMeshGenerator::getNeighbors ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
std::vector< dof_id_type > &  ,
const bool   
)
inline

Get the IDs of the neighbors of a given element.

Parameters
nxThe number of elements in the x direction
nxThe number of elements in the y direction
nzThe number of elements in the z direction
iThe x index of this element
jThe y index of this element
kThe z index of this element
neighborsThis will be filled with the IDs of the two neighbors or invalid_dof_id if there is no neighbor. THIS MUST be of size 6 BEFORE calling this function

Definition at line 120 of file DistributedRectilinearMeshGenerator.h.

128  {
129  mooseError("getNeighbors not implemented for this element type in "
130  "DistributedRectilinearMeshGenerator");
131  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ getNeighbors() [2/7]

template<>
void DistributedRectilinearMeshGenerator::getNeighbors ( const dof_id_type  nx,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  i,
const dof_id_type  ,
const dof_id_type  ,
std::vector< dof_id_type > &  neighbors,
const bool  corner 
)

Definition at line 157 of file DistributedRectilinearMeshGenerator.C.

166 {
167  if (corner)
168  {
169  // The elements on the opposite of the current boundary are required
170  // for periodic boundary conditions
171  neighbors[0] = (i - 1 + nx) % nx;
172  neighbors[1] = (i + 1 + nx) % nx;
173 
174  return;
175  }
176 
177  neighbors[0] = i - 1;
178  neighbors[1] = i + 1;
179 
180  // First element doesn't have a left neighbor
181  if (i == 0)
182  neighbors[0] = Elem::invalid_id;
183 
184  // Last element doesn't have a right neighbor
185  if (i == nx - 1)
186  neighbors[1] = Elem::invalid_id;
187 }

◆ getNeighbors() [3/7]

template<>
void DistributedRectilinearMeshGenerator::getNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  ,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  ,
std::vector< dof_id_type > &  neighbors,
const bool  corner 
)

Definition at line 354 of file DistributedRectilinearMeshGenerator.C.

362 {
363  std::fill(neighbors.begin(), neighbors.end(), Elem::invalid_id);
364 
365  if (corner)
366  {
367  // libMesh dof_id_type looks like unsigned int
368  // We add one layer of point neighbors by default. Besides,
369  // The elements on the opposite side of the current boundary are included
370  // for, in case, periodic boundary conditions. The overhead is negligible
371  // since you could consider every element has the same number of neighbors
372  unsigned int nnb = 0;
373  for (unsigned int ii = 0; ii <= 2; ii++)
374  for (unsigned int jj = 0; jj <= 2; jj++)
375  neighbors[nnb++] = elemId<Quad4>(nx, 0, (i + ii - 1 + nx) % nx, (j + jj - 1 + ny) % ny, 0);
376 
377  return;
378  }
379  // Bottom
380  if (j != 0)
381  neighbors[0] = elemId<Quad4>(nx, 0, i, j - 1, 0);
382 
383  // Right
384  if (i != nx - 1)
385  neighbors[1] = elemId<Quad4>(nx, 0, i + 1, j, 0);
386 
387  // Top
388  if (j != ny - 1)
389  neighbors[2] = elemId<Quad4>(nx, 0, i, j + 1, 0);
390 
391  // Left
392  if (i != 0)
393  neighbors[3] = elemId<Quad4>(nx, 0, i - 1, j, 0);
394 }

◆ getNeighbors() [4/7]

template<>
void DistributedRectilinearMeshGenerator::getNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k,
std::vector< dof_id_type > &  neighbors,
const bool  corner 
)

◆ getNeighbors() [5/7]

template<>
void DistributedRectilinearMeshGenerator::getNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k,
std::vector< dof_id_type > &  neighbors,
const bool  corner 
)

◆ getNeighbors() [6/7]

template<>
void DistributedRectilinearMeshGenerator::getNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k,
std::vector< dof_id_type > &  neighbors,
const bool  corner 
)

◆ getNeighbors() [7/7]

template<>
void DistributedRectilinearMeshGenerator::getNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k,
std::vector< dof_id_type > &  neighbors,
const bool  corner 
)

Definition at line 621 of file DistributedRectilinearMeshGenerator.C.

629 {
630  std::fill(neighbors.begin(), neighbors.end(), Elem::invalid_id);
631 
632  if (corner)
633  {
634  // We collect one layer of point neighbors
635  // We add one layer of point neighbors by default. Besides,
636  // The elements on the opposite side of the current boundary are included
637  // for, in case, periodic boundary conditions. The overhead is negligible
638  // since you could consider every element has the same number of neighbors
639  unsigned int nnb = 0;
640  for (unsigned int ii = 0; ii <= 2; ii++)
641  for (unsigned int jj = 0; jj <= 2; jj++)
642  for (unsigned int kk = 0; kk <= 2; kk++)
643  neighbors[nnb++] = elemId<Hex8>(
644  nx, ny, (i + ii - 1 + nx) % nx, (j + jj - 1 + ny) % ny, (k + kk - 1 + nz) % nz);
645 
646  return;
647  }
648 
649  // Back
650  if (k != 0)
651  neighbors[0] = elemId<Hex8>(nx, ny, i, j, k - 1);
652 
653  // Bottom
654  if (j != 0)
655  neighbors[1] = elemId<Hex8>(nx, ny, i, j - 1, k);
656 
657  // Right
658  if (i != nx - 1)
659  neighbors[2] = elemId<Hex8>(nx, ny, i + 1, j, k);
660 
661  // Top
662  if (j != ny - 1)
663  neighbors[3] = elemId<Hex8>(nx, ny, i, j + 1, k);
664 
665  // Left
666  if (i != 0)
667  neighbors[4] = elemId<Hex8>(nx, ny, i - 1, j, k);
668 
669  // Front
670  if (k != nz - 1)
671  neighbors[5] = elemId<Hex8>(nx, ny, i, j, k + 1);
672 }

◆ getParam() [1/2]

template<typename T >
const T & MooseBaseParameterInterface::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 215 of file MooseBaseParameterInterface.h.

Referenced by CreateDisplacedProblemAction::act(), AddPeriodicBCAction::act(), DiffusionPhysicsBase::addPostprocessors(), ADNodalKernel::ADNodalKernel(), ArrayParsedAux::ArrayParsedAux(), AddPeriodicBCAction::autoTranslationBoundaries(), BicubicSplineFunction::BicubicSplineFunction(), ComponentPhysicsInterface::ComponentPhysicsInterface(), FunctorAux::computeValue(), FEProblemBase::createTagSolutions(), CutMeshByLevelSetGenerator::CutMeshByLevelSetGenerator(), DebugResidualAux::DebugResidualAux(), AccumulateReporter::declareLateValues(), DerivativeParsedMaterialTempl< is_ad >::DerivativeParsedMaterialTempl(), DynamicObjectRegistrationAction::DynamicObjectRegistrationAction(), EigenKernel::EigenKernel(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), FEProblemBase::FEProblemBase(), FEProblemSolve::FEProblemSolve(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), ParsedSubdomainGeneratorBase::functionInitialize(), FVInterfaceKernel::FVInterfaceKernel(), BoundaryLayerSubdomainGenerator::generate(), ExtraNodesetGenerator::generate(), FileMeshGenerator::generate(), BlockDeletionGenerator::generate(), BreakMeshByBlockGenerator::generate(), CoarsenBlockGenerator::generate(), GeneratedMeshGenerator::generate(), RefineBlockGenerator::generate(), RefineSidesetGenerator::generate(), MeshExtruderGenerator::generate(), GenericConstantRankTwoTensorTempl< is_ad >::GenericConstantRankTwoTensorTempl(), GenericConstantSymmetricRankTwoTensorTempl< is_ad >::GenericConstantSymmetricRankTwoTensorTempl(), MooseApp::getCheckpointDirectories(), DataFileInterface::getDataFileName(), ExecutorInterface::getExecutor(), GhostingUserObject::GhostingUserObject(), FixedPointIterationAdaptiveDT::init(), TimeSequenceStepper::init(), IterationAdaptiveDT::init(), AdvancedOutput::init(), AttribThread::initFrom(), AttribSysNum::initFrom(), AttribResidualObject::initFrom(), AttribDisplaced::initFrom(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), Console::initialSetup(), IterationAdaptiveDT::limitDTToPostprocessorValue(), MooseMesh::MooseMesh(), MooseStaticCondensationPreconditioner::MooseStaticCondensationPreconditioner(), MooseVariableBase::MooseVariableBase(), MultiSystemSolveObject::MultiSystemSolveObject(), NEML2ModelExecutor::NEML2ModelExecutor(), NestedDivision::NestedDivision(), ConsoleUtils::outputExecutionInformation(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedElementDeletionGenerator::ParsedElementDeletionGenerator(), ParsedGenerateNodeset::ParsedGenerateNodeset(), ParsedGenerateSideset::ParsedGenerateSideset(), ParsedMaterialTempl< is_ad >::ParsedMaterialTempl(), ParsedNodeTransformGenerator::ParsedNodeTransformGenerator(), ParsedODEKernel::ParsedODEKernel(), ParsedPostprocessor::ParsedPostprocessor(), PiecewiseByBlockFunctorMaterialTempl< T >::PiecewiseByBlockFunctorMaterialTempl(), PiecewiseConstantByBlockMaterialTempl< is_ad >::PiecewiseConstantByBlockMaterialTempl(), ReferenceResidualInterface::ReferenceResidualInterface(), RenameBlockGenerator::RenameBlockGenerator(), Moose::FV::setInterpolationMethod(), SetupMeshAction::setupMesh(), SingleMatrixPreconditioner::SingleMatrixPreconditioner(), TimePeriod::TimePeriod(), UniqueExtraIDMeshGenerator::UniqueExtraIDMeshGenerator(), FunctorIC::value(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), and VectorOfPostprocessors::VectorOfPostprocessors().

216 {
217  return InputParameters::getParamHelper(name, _pars, static_cast<T *>(0), &_moose_base);
218 }
const MooseBase & _moose_base
The MooseBase object that inherits this class.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
static const T & getParamHelper(const std::string &name, const InputParameters &pars, const T *the_type, const MooseBase *moose_base=nullptr)

◆ getParam() [2/2]

template<typename T1 , typename T2 >
std::vector< std::pair< T1, T2 > > MooseBaseParameterInterface::getParam ( const std::string &  param1,
const std::string &  param2 
) const
inherited

Retrieve two parameters and provide pair of parameters for the object.

Parameters
param1The name of first parameter
param2The name of second parameter
Returns
Vector of pairs of first and second parameters

Definition at line 279 of file MooseBaseParameterInterface.h.

280 {
281  return _pars.get<T1, T2>(param1, param2);
282 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.

◆ getParentMeshGenerators()

const std::set<const MeshGenerator *, Comparator>& MeshGenerator::getParentMeshGenerators ( ) const
inlineinherited

Gets the MeshGenerators that are parents to this MeshGenerator.

Definition at line 122 of file MeshGenerator.h.

Referenced by MeshGeneratorSystem::createMeshGeneratorOrder(), and MeshGenerator::isParentMeshGenerator().

123  {
125  }
std::set< const MeshGenerator *, Comparator > _parent_mesh_generators
The MeshGenerators that are parents to this MeshGenerator.

◆ getRenamedParam()

template<typename T >
const T & MooseBaseParameterInterface::getRenamedParam ( const std::string &  old_name,
const std::string &  new_name 
) const
inherited

Retrieve a renamed parameter for the object.

This helper makes sure we check both names before erroring, and that only one parameter is passed to avoid silent errors

Parameters
old_namethe old name for the parameter
new_namethe new name for the parameter

Definition at line 229 of file MooseBaseParameterInterface.h.

231 {
232  // this enables having a default on the new parameter but bypassing it with the old one
233  // Most important: accept new parameter
234  if (isParamSetByUser(new_name) && !isParamValid(old_name))
235  return InputParameters::getParamHelper(new_name, _pars, static_cast<T *>(0), &_moose_base);
236  // Second most: accept old parameter
237  else if (isParamValid(old_name) && !isParamSetByUser(new_name))
238  return InputParameters::getParamHelper(old_name, _pars, static_cast<T *>(0), &_moose_base);
239  // Third most: accept default for new parameter
240  else if (isParamValid(new_name) && !isParamValid(old_name))
241  return InputParameters::getParamHelper(new_name, _pars, static_cast<T *>(0), &_moose_base);
242  // Refuse: no default, no value passed
243  else if (!isParamValid(old_name) && !isParamValid(new_name))
244  mooseError(_pars.blockFullpath() + ": parameter '" + new_name +
245  "' is being retrieved without being set.\n"
246  "Did you misspell it?");
247  // Refuse: both old and new parameters set by user
248  else
249  mooseError(_pars.blockFullpath() + ": parameter '" + new_name +
250  "' may not be provided alongside former parameter '" + old_name + "'");
251 }
const MooseBase & _moose_base
The MooseBase object that inherits this class.
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool isParamValid(const std::string &name) const
Test if the supplied parameter is valid.
bool isParamSetByUser(const std::string &nm) const
Test if the supplied parameter is set by a user, as opposed to not set or set to default.
std::string blockFullpath() const
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
static const T & getParamHelper(const std::string &name, const InputParameters &pars, const T *the_type, const MooseBase *moose_base=nullptr)

◆ getRequestedMeshGenerators()

const std::set<MeshGeneratorName>& MeshGenerator::getRequestedMeshGenerators ( ) const
inlineinherited
Returns
The names of the MeshGenerators that were requested in the getMesh methods

Definition at line 80 of file MeshGenerator.h.

81  {
83  }
std::set< MeshGeneratorName > _requested_mesh_generators
The names of the MeshGenerators that were requested in the getMesh methods.

◆ getRequestedMeshGeneratorsForSub()

const std::set<MeshGeneratorName>& MeshGenerator::getRequestedMeshGeneratorsForSub ( ) const
inlineinherited
Returns
The names of the MeshGenerators that were requested in the declareMeshForSub methods

Definition at line 88 of file MeshGenerator.h.

89  {
91  }
std::set< MeshGeneratorName > _requested_mesh_generators_for_sub
The names of the MeshGenerators that were requested in the declareMeshForSub methods.

◆ getSavedMeshName()

const std::string & MeshGenerator::getSavedMeshName ( ) const
inherited

Return the name of the saved mesh.

Definition at line 418 of file MeshGenerator.C.

419 {
420  return _save_with_name;
421 }
const std::string & _save_with_name
A user-defined name to save the mesh.

◆ getSharedPtr() [1/2]

std::shared_ptr< MooseObject > MooseObject::getSharedPtr ( )
inherited

Get another shared pointer to this object that has the same ownership group.

Wrapper around shared_from_this().

Definition at line 68 of file MooseObject.C.

Referenced by MFEMProblem::addBoundaryCondition(), MFEMProblem::addKernel(), and MFEMProblem::addMFEMSolver().

69 {
70  try
71  {
72  return shared_from_this();
73  }
74  catch (std::bad_weak_ptr &)
75  {
76  mooseError(not_shared_error);
77  }
78 }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ getSharedPtr() [2/2]

std::shared_ptr< const MooseObject > MooseObject::getSharedPtr ( ) const
inherited

Definition at line 81 of file MooseObject.C.

82 {
83  try
84  {
85  return shared_from_this();
86  }
87  catch (std::bad_weak_ptr &)
88  {
89  mooseError(not_shared_error);
90  }
91 }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ getSubMeshGenerators()

const std::set<const MeshGenerator *, Comparator>& MeshGenerator::getSubMeshGenerators ( ) const
inlineinherited

Gets the MeshGenerators that are children to this MeshGenerator.

Definition at line 136 of file MeshGenerator.h.

137  {
138  return _sub_mesh_generators;
139  }
std::set< const MeshGenerator *, Comparator > _sub_mesh_generators
The sub MeshGenerators constructed by this MeshGenerator.

◆ hasGenerateData() [1/2]

bool MeshGenerator::hasGenerateData ( const InputParameters params)
staticinherited
Returns
Whether or not the mesh generator noted by the given parameters has a generateData() implementation

Definition at line 86 of file MeshGenerator.C.

87 {
88  return params.get<bool>("_has_generate_data");
89 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.

◆ hasGenerateData() [2/2]

bool MeshGenerator::hasGenerateData ( ) const
inlineinherited
Returns
Whether or not this generator has a generateData() implementation

Definition at line 185 of file MeshGenerator.h.

Referenced by MeshGenerator::generateData(), MeshGenerator::generateInternal(), MeshGenerator::hasGenerateData(), and MeshGenerator::MeshGenerator().

185 { return hasGenerateData(_pars); }
bool hasGenerateData() const
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.

◆ hasMeshProperty() [1/4]

bool MeshMetaDataInterface::hasMeshProperty ( const std::string &  data_name,
const std::string &  prefix 
) const
protectedinherited
Returns
Whether or not a mesh meta-data exists.

Definition at line 25 of file MeshMetaDataInterface.C.

Referenced by MeshGenerator::declareMeshProperty(), MeshMetaDataInterface::getMeshProperty(), MeshMetaDataInterface::hasMeshProperty(), and MeshGenerator::setMeshProperty().

27 {
28  return _meta_data_app.hasRestartableMetaData(meshPropertyName(data_name, prefix),
30 }
bool hasRestartableMetaData(const std::string &name, const RestartableDataMapName &metaname) const
Definition: MooseApp.C:2499
static const RestartableDataMapName MESH_META_DATA
Definition: MooseApp.h:123
static std::string meshPropertyName(const std::string &data_name, const std::string &prefix)
MooseApp & _meta_data_app
Reference to the application.

◆ hasMeshProperty() [2/4]

template<typename T >
bool MeshMetaDataInterface::hasMeshProperty ( const std::string &  data_name,
const std::string &  prefix 
) const
protectedinherited
Returns
Whether or not a mesh meta-data exists with the given type.

Definition at line 158 of file MeshMetaDataInterface.h.

160 {
161  if (!hasMeshProperty(data_name, prefix))
162  return false;
163  const auto & value = getMeshPropertyInternal(data_name, prefix);
164  return dynamic_cast<const RestartableData<T> *>(&value) != nullptr;
165 }
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
Concrete definition of a parameter value for a specified type.
bool hasMeshProperty(const std::string &data_name, const std::string &prefix) const
const RestartableDataValue & getMeshPropertyInternal(const std::string &data_name, const std::string &prefix) const
Helper for getting a mesh property.

◆ hasMeshProperty() [3/4]

bool MeshMetaDataInterface::hasMeshProperty ( const std::string &  data_name) const
inlineprotectedinherited
Returns
Whether or not a mesh meta-data exists with the default prefix.

Definition at line 74 of file MeshMetaDataInterface.h.

75  {
76  return hasMeshProperty(data_name, meshPropertyPrefix(data_name));
77  }
virtual std::string meshPropertyPrefix(const std::string &data_name) const
The default prefix to use for getting/seeing if mesh properties exist.
bool hasMeshProperty(const std::string &data_name, const std::string &prefix) const

◆ hasMeshProperty() [4/4]

template<typename T >
bool MeshMetaDataInterface::hasMeshProperty ( const std::string &  data_name) const
inlineprotectedinherited
Returns
Whether or not a mesh meta-data exists with the default prefix and the given type.

Definition at line 82 of file MeshMetaDataInterface.h.

83  {
84  return hasMeshProperty<T>(data_name, meshPropertyPrefix(data_name));
85  }
virtual std::string meshPropertyPrefix(const std::string &data_name) const
The default prefix to use for getting/seeing if mesh properties exist.

◆ hasOutput()

bool MeshGenerator::hasOutput ( ) const
inherited
Returns
Whether or not to output this mesh generator separately (output parameter is set)

Definition at line 412 of file MeshGenerator.C.

Referenced by MeshGeneratorSystem::createMeshGeneratorOrder(), and MeshGenerator::generateInternal().

413 {
414  return getParam<bool>("output");
415 }

◆ hasSaveMesh()

bool MeshGenerator::hasSaveMesh ( ) const
inherited

Return whether or not to save the current mesh.

Definition at line 406 of file MeshGenerator.C.

Referenced by MeshGeneratorSystem::createMeshGeneratorOrder(), and MeshGenerator::MeshGenerator().

407 {
408  return _save_with_name.size();
409 }
const std::string & _save_with_name
A user-defined name to save the mesh.

◆ isChildMeshGenerator()

bool MeshGenerator::isChildMeshGenerator ( const MeshGeneratorName &  name,
const bool  direct = true 
) const
inherited
Returns
Whether or not the MeshGenerator with the name name is a child of this MeshGenerator.

If direct = true, check only immediate children of this generator. Otherwise, check all children.

Definition at line 385 of file MeshGenerator.C.

Referenced by MeshGeneratorSystem::createMeshGeneratorOrder().

387 {
388  return std::find_if(getChildMeshGenerators().begin(),
389  getChildMeshGenerators().end(),
390  [&name, &direct](const auto & mg)
391  {
392  return mg->name() == name ||
393  (!direct && mg->isChildMeshGenerator(name, /* direct = */ false));
394  }) != getChildMeshGenerators().end();
395 }
const std::set< const MeshGenerator *, Comparator > & getChildMeshGenerators() const
Gets the MeshGenerators that are children to this MeshGenerator.
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57

◆ isDataOnly()

bool MeshGenerator::isDataOnly ( ) const
inlineinherited
Returns
Whether or not this generator is to be generated in data-only mode

Definition at line 190 of file MeshGenerator.h.

Referenced by MeshGenerator::addMeshSubgenerator(), MeshGenerator::generateInternal(), and MeshGenerator::MeshGenerator().

190 { return _data_only; }
const bool _data_only
Whether or not this mesh generator will run in data only mode.

◆ isNullMeshName()

bool MeshGenerator::isNullMeshName ( const MeshGeneratorName &  name) const
inlineinherited
Returns
Whether or not the name name is registered as a "null" mesh, that is, a MeshGenerator that will not represent an input mesh when requested via getMesh.

See declareNullMeshName().

Definition at line 165 of file MeshGenerator.h.

Referenced by MeshGenerator::checkGetMesh(), MeshGenerator::declareMeshForSubByName(), and MeshGenerator::getMeshByName().

165 { return _null_mesh_names.count(name); }
std::set< std::string > _null_mesh_names
The declared "null" mesh names that will not represent a mesh in input; see declareNullMeshName() ...
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57

◆ isParamSetByUser()

bool MooseBaseParameterInterface::isParamSetByUser ( const std::string &  nm) const
inlineinherited

Test if the supplied parameter is set by a user, as opposed to not set or set to default.

Parameters
nmThe name of the parameter to test

Definition at line 128 of file MooseBaseParameterInterface.h.

Referenced by SetupDebugAction::act(), ADConservativeAdvectionBC::ADConservativeAdvectionBC(), DiffusionCG::addFEBCs(), DiffusionPhysicsBase::addInitialConditions(), MFEMMesh::buildMesh(), LibtorchNeuralNetControl::conditionalParameterError(), DiffusionPhysicsBase::DiffusionPhysicsBase(), ElementSubdomainModifierBase::ElementSubdomainModifierBase(), MooseBaseParameterInterface::getRenamedParam(), DefaultConvergenceBase::getSharedExecutionerParam(), AddVariableAction::init(), PhysicsBase::initializePhysics(), ElementSubdomainModifierBase::initialSetup(), MatrixSymmetryCheck::MatrixSymmetryCheck(), MeshDiagnosticsGenerator::MeshDiagnosticsGenerator(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), SolutionInvalidityOutput::output(), Output::Output(), MultiAppGeneralFieldTransfer::outputValueConflicts(), PetscExternalPartitioner::partition(), PiecewiseTabularBase::PiecewiseTabularBase(), MooseMesh::prepare(), SolutionUserObjectBase::readXda(), PhysicsBase::reportPotentiallyMissedParameters(), MFEMSolverBase::setPreconditioner(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), TimedSubdomainModifier::TimedSubdomainModifier(), and XYDelaunayGenerator::XYDelaunayGenerator().

128 { return _pars.isParamSetByUser(nm); }
bool isParamSetByUser(const std::string &name) const
Method returns true if the parameter was set by the user.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.

◆ isParamValid()

bool MooseBaseParameterInterface::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 122 of file MooseBaseParameterInterface.h.

Referenced by HierarchicalGridPartitioner::_do_partition(), GridPartitioner::_do_partition(), CopyNodalVarsAction::act(), SetupMeshAction::act(), SetupDebugAction::act(), ComposeTimeStepperAction::act(), SetAdaptivityOptionsAction::act(), AddVariableAction::act(), CreateDisplacedProblemAction::act(), CommonOutputAction::act(), ADConservativeAdvectionBC::ADConservativeAdvectionBC(), DiffusionCG::addFEKernels(), DiffusionFV::addFVBCs(), DiffusionFV::addFVKernels(), DiffusionPhysicsBase::addInitialConditions(), CylinderComponent::addMeshGenerators(), AddPeriodicBCAction::AddPeriodicBCAction(), DiffusionPhysicsBase::addPostprocessors(), AdvectiveFluxAux::AdvectiveFluxAux(), ArrayHFEMDirichletBC::ArrayHFEMDirichletBC(), ArrayVarReductionAux::ArrayVarReductionAux(), AddPeriodicBCAction::autoTranslationBoundaries(), BicubicSplineFunction::BicubicSplineFunction(), BlockDeletionGenerator::BlockDeletionGenerator(), TimedSubdomainModifier::buildFromFile(), PiecewiseTabularBase::buildFromFile(), PiecewiseTabularBase::buildFromJSON(), ParsedChainControl::buildFunction(), GeneratedMesh::buildMesh(), MooseMesh::buildTypedMesh(), CartesianGridDivision::CartesianGridDivision(), CartesianMeshGenerator::CartesianMeshGenerator(), LibmeshPartitioner::clone(), SampledOutput::cloneMesh(), CombinerGenerator::CombinerGenerator(), FunctorAux::computeValue(), ConservativeAdvectionTempl< is_ad >::ConservativeAdvectionTempl(), FEProblemSolve::convergenceSetup(), CopyMeshPartitioner::CopyMeshPartitioner(), CSVReaderVectorPostprocessor::CSVReaderVectorPostprocessor(), CutMeshByLevelSetGeneratorBase::CutMeshByLevelSetGeneratorBase(), ConstantReporter::declareConstantReporterValues(), DGKernelBase::DGKernelBase(), DiffusionFluxAux::DiffusionFluxAux(), DomainUserObject::DomainUserObject(), DynamicObjectRegistrationAction::DynamicObjectRegistrationAction(), Eigenvalue::Eigenvalue(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), PIDTransientControl::execute(), MultiAppNearestNodeTransfer::execute(), MultiAppUserObjectTransfer::execute(), Exodus::Exodus(), ExtraIDIntegralReporter::ExtraIDIntegralReporter(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), FEProblemBase::FEProblemBase(), FEProblemSolve::FEProblemSolve(), FieldSplitPreconditioner::FieldSplitPreconditioner(), FileOutput::FileOutput(), SpatialUserObjectVectorPostprocessor::fillPoints(), CombinerGenerator::fillPositions(), MultiApp::fillPositions(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), FixedPointSolve::FixedPointSolve(), FunctionDT::FunctionDT(), FunctionValuePostprocessor::FunctionValuePostprocessor(), FVInterfaceKernel::FVInterfaceKernel(), FVMassMatrix::FVMassMatrix(), AddMetaDataGenerator::generate(), BreakBoundaryOnSubdomainGenerator::generate(), ElementGenerator::generate(), ExtraNodesetGenerator::generate(), FileMeshGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), SubdomainPerElementGenerator::generate(), BlockDeletionGenerator::generate(), GeneratedMeshGenerator::generate(), ParsedSubdomainGeneratorBase::generate(), MeshExtruderGenerator::generate(), ParsedExtraElementIDGenerator::generate(), XYZDelaunayGenerator::generate(), XYDelaunayGenerator::generate(), XYMeshLineCutter::generate(), SubdomainBoundingBoxGenerator::generate(), generate(), PropertyReadFile::getFileNames(), MultiAppNearestNodeTransfer::getLocalEntitiesAndComponents(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), MooseBaseParameterInterface::getRenamedParam(), MultiAppNearestNodeTransfer::getTargetLocalNodes(), Terminator::handleMessage(), HFEMDirichletBC::HFEMDirichletBC(), EigenExecutionerBase::init(), IterationAdaptiveDT::init(), Eigenvalue::init(), AdvancedOutput::initExecutionTypes(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), MultiAppCloneReporterTransfer::initialSetup(), SolutionIC::initialSetup(), MultiAppVariableValueSampleTransfer::initialSetup(), PiecewiseTabularBase::initialSetup(), SolutionScalarAux::initialSetup(), ParsedConvergence::initialSetup(), SolutionAux::initialSetup(), Console::initialSetup(), MooseParsedVectorFunction::initialSetup(), MultiAppGeneralFieldTransfer::initialSetup(), MooseParsedGradFunction::initialSetup(), MooseParsedFunction::initialSetup(), SampledOutput::initSample(), IterationAdaptiveDT::IterationAdaptiveDT(), LeastSquaresFit::LeastSquaresFit(), LibmeshPartitioner::LibmeshPartitioner(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), MassMatrix::MassMatrix(), MatCoupledForce::MatCoupledForce(), MatDiffusionBase< Real >::MatDiffusionBase(), MeshGeneratorComponent::MeshGeneratorComponent(), MooseMesh::MooseMesh(), MoosePreconditioner::MoosePreconditioner(), MooseStaticCondensationPreconditioner::MooseStaticCondensationPreconditioner(), MooseVariableBase::MooseVariableBase(), MooseVariableFV< Real >::MooseVariableFV(), MortarConstraintBase::MortarConstraintBase(), MoveNodeGenerator::MoveNodeGenerator(), MultiApp::MultiApp(), MultiAppCloneReporterTransfer::MultiAppCloneReporterTransfer(), MultiAppGeneralFieldNearestLocationTransfer::MultiAppGeneralFieldNearestLocationTransfer(), MultiAppGeneralFieldShapeEvaluationTransfer::MultiAppGeneralFieldShapeEvaluationTransfer(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppPostprocessorInterpolationTransfer::MultiAppPostprocessorInterpolationTransfer(), MultiAppPostprocessorTransfer::MultiAppPostprocessorTransfer(), MultiAppReporterTransfer::MultiAppReporterTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), MultiAppVariableValueSampleTransfer::MultiAppVariableValueSampleTransfer(), MultiSystemSolveObject::MultiSystemSolveObject(), NodeSetsGeneratorBase::NodeSetsGeneratorBase(), EigenExecutionerBase::normalizeSolution(), Output::Output(), MultiAppGeneralFieldTransfer::outputValueConflicts(), ParsedCurveGenerator::ParsedCurveGenerator(), PetscOutput::PetscOutput(), PhysicsBasedPreconditioner::PhysicsBasedPreconditioner(), PIDTransientControl::PIDTransientControl(), PiecewiseTabularBase::PiecewiseTabularBase(), PlaneIDMeshGenerator::PlaneIDMeshGenerator(), MooseMesh::prepare(), MooseBaseParameterInterface::queryParam(), MultiApp::readCommandLineArguments(), SolutionUserObjectBase::readExodusII(), ReferenceResidualInterface::ReferenceResidualInterface(), RenameBlockGenerator::RenameBlockGenerator(), ReporterPointSource::ReporterPointSource(), PhysicsBase::reportPotentiallyMissedParameters(), ParsedSubdomainMeshGenerator::setBlockName(), MooseMesh::setCoordSystem(), FileOutput::setFileBase(), FileOutput::setFileBaseInternal(), Split::setup(), SideSetsGeneratorBase::setup(), SetupMeshAction::setupMesh(), SideDiffusiveFluxIntegralTempl< is_ad, Real >::SideDiffusiveFluxIntegralTempl(), SideSetsGeneratorBase::SideSetsGeneratorBase(), SolutionUserObjectBase::SolutionUserObjectBase(), WebServerControl::startServer(), Terminator::Terminator(), TimeIntervalTimes::TimeIntervalTimes(), TimePeriod::TimePeriod(), MultiAppDofCopyTransfer::transfer(), TransformGenerator::TransformGenerator(), TransientBase::TransientBase(), FunctorIC::value(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl(), WebServerControl::WebServerControl(), XYDelaunayGenerator::XYDelaunayGenerator(), and XYZDelaunayGenerator::XYZDelaunayGenerator().

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

◆ isParentMeshGenerator()

bool MeshGenerator::isParentMeshGenerator ( const MeshGeneratorName &  name,
const bool  direct = true 
) const
inherited
Returns
Whether or not the MeshGenerator with the name name is a parent of this MeshGenerator.

If direct = true, check only immediate parents of this generator. Otherwise, check all parents.

Definition at line 372 of file MeshGenerator.C.

374 {
375  return std::find_if(getParentMeshGenerators().begin(),
376  getParentMeshGenerators().end(),
377  [&name, &direct](const auto & mg)
378  {
379  return mg->name() == name ||
380  (!direct && mg->isParentMeshGenerator(name, /* direct = */ false));
381  }) != getParentMeshGenerators().end();
382 }
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const std::set< const MeshGenerator *, Comparator > & getParentMeshGenerators() const
Gets the MeshGenerators that are parents to this MeshGenerator.

◆ meshPropertyName() [1/2]

std::string MeshMetaDataInterface::meshPropertyName ( const std::string &  data_name,
const std::string &  prefix 
)
staticprotectedinherited
Returns
The full name for mesh property data.

Definition at line 33 of file MeshMetaDataInterface.C.

Referenced by MeshGenerator::declareMeshProperty(), MeshMetaDataInterface::getMeshPropertyInternal(), MeshMetaDataInterface::hasMeshProperty(), MeshMetaDataInterface::meshPropertyName(), and MeshGenerator::setMeshPropertyHelper().

34 {
35  return std::string(SYSTEM) + "/" + prefix + "/" + data_name;
36 }
static constexpr auto SYSTEM
The system name used when initializing the Restartable interface.

◆ meshPropertyName() [2/2]

std::string MeshMetaDataInterface::meshPropertyName ( const std::string &  data_name) const
inlineprotectedinherited
Returns
The default mesh property name for mesh property data

Definition at line 95 of file MeshMetaDataInterface.h.

96  {
97  return meshPropertyName(data_name, meshPropertyPrefix(data_name));
98  }
static std::string meshPropertyName(const std::string &data_name, const std::string &prefix)
virtual std::string meshPropertyPrefix(const std::string &data_name) const
The default prefix to use for getting/seeing if mesh properties exist.

◆ mooseDeprecated()

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

Definition at line 91 of file MooseBaseErrorInterface.h.

Referenced by FEProblemBase::addAuxArrayVariable(), FEProblemBase::addAuxScalarVariable(), FEProblemBase::addAuxVariable(), FEProblemBase::advanceMultiApps(), MultiApp::appProblem(), MooseMesh::buildSideList(), ChangeOverTimestepPostprocessor::ChangeOverTimestepPostprocessor(), AddVariableAction::determineType(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), MooseMesh::elem(), UserForcingFunction::f(), FaceFaceConstraint::FaceFaceConstraint(), FunctionDT::FunctionDT(), RandomICBase::generateRandom(), MooseMesh::getBoundariesToElems(), DataFileInterface::getDataFileName(), DataFileInterface::getDataFileNameByName(), Control::getExecuteOptions(), FEProblemBase::getNonlinearSystem(), FEProblemBase::getUserObjects(), FEProblemBase::hasPostprocessor(), MatDiffusionBase< Real >::MatDiffusionBase(), MultiAppNearestNodeTransfer::MultiAppNearestNodeTransfer(), MultiAppShapeEvaluationTransfer::MultiAppShapeEvaluationTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), NodalScalarKernel::NodalScalarKernel(), MooseMesh::node(), FixedPointSolve::numPicardIts(), RelationshipManager::operator>=(), PercentChangePostprocessor::PercentChangePostprocessor(), ReferenceResidualConvergence::ReferenceResidualConvergence(), Residual::Residual(), MooseMesh::setBoundaryToNormalMap(), Exodus::setOutputDimension(), and UserForcingFunction::UserForcingFunction().

92  {
94  _console, false, true, _moose_base.errorPrefix("deprecation"), std::forward<Args>(args)...);
95  }
std::string errorPrefix(const std::string &error_type) const
Definition: MooseBase.C:43
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
void mooseDeprecatedStream(S &oss, const bool expired, const bool print_title, Args &&... args)
Definition: MooseError.h:239
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.

◆ mooseDocumentedError()

template<typename... Args>
void MooseBaseErrorInterface::mooseDocumentedError ( const std::string &  repo_name,
const unsigned int  issue_num,
Args &&...  args 
) const
inlineinherited

Emits a documented error with object name and type.

Documented errors are errors that have an issue associated with them.

The repository name repo_name links a named repository to a URL and should be registered at the application level with registerRepository(). See Moose.C for an example of the "moose" repository registration.

Parameters
repo_nameThe repository name where the issue resides
issue_numThe number of the issue
argsThe error message to be combined

Definition at line 61 of file MooseBaseErrorInterface.h.

Referenced by ArrayDGLowerDKernel::ArrayDGLowerDKernel(), ArrayHFEMDirichletBC::ArrayHFEMDirichletBC(), ArrayLowerDIntegratedBC::ArrayLowerDIntegratedBC(), DGLowerDKernel::DGLowerDKernel(), HFEMDirichletBC::HFEMDirichletBC(), and LowerDIntegratedBC::LowerDIntegratedBC().

64  {
65  std::ostringstream oss;
66  moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
67  const auto msg = moose::internal::formatMooseDocumentedError(repo_name, issue_num, oss.str());
68  _moose_base.callMooseError(msg, /* with_prefix = */ true);
69  }
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:94
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
void callMooseError(std::string msg, const bool with_prefix) const
Calls moose error with the message msg.
Definition: MooseBase.C:33
std::string formatMooseDocumentedError(const std::string &repo_name, const unsigned int issue_num, const std::string &msg)
Formats a documented error.
Definition: MooseError.C:99

◆ mooseError()

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

Emits an error prefixed with object name and type.

Definition at line 29 of file MooseBaseErrorInterface.h.

Referenced by CopyMeshPartitioner::_do_partition(), HierarchicalGridPartitioner::_do_partition(), GridPartitioner::_do_partition(), PetscExternalPartitioner::_do_partition(), MultiAppGeneralFieldTransfer::acceptPointInOriginMesh(), CreateExecutionerAction::act(), AddMeshGeneratorAction::act(), AddBoundsVectorsAction::act(), AddVectorPostprocessorAction::act(), InitProblemAction::act(), CheckFVBCAction::act(), AutoCheckpointAction::act(), SetupMeshCompleteAction::act(), CheckIntegrityAction::act(), AddFVICAction::act(), AddICAction::act(), CreateProblemAction::act(), CreateProblemDefaultAction::act(), CombineComponentsMeshes::act(), SetupMeshAction::act(), SplitMeshAction::act(), AdaptivityAction::act(), ChainControlSetupAction::act(), DeprecatedBlockAction::act(), SetupPredictorAction::act(), SetupTimeStepperAction::act(), AddTimeStepperAction::act(), CreateDisplacedProblemAction::act(), MaterialDerivativeTestAction::act(), SetAdaptivityOptionsAction::act(), MaterialOutputAction::act(), AddMFEMSubMeshAction::act(), CommonOutputAction::act(), AddPeriodicBCAction::act(), Action::Action(), FEProblemBase::adaptMesh(), ADConservativeAdvectionBC::ADConservativeAdvectionBC(), MooseVariableFV< Real >::adCurlSln(), MooseVariableFV< Real >::adCurlSlnNeighbor(), AddActionComponentAction::AddActionComponentAction(), MFEMProblem::addBoundaryCondition(), FEProblemBase::addBoundaryCondition(), DiffusionCG::addBoundaryConditionsFromComponents(), PhysicsComponentInterface::addBoundaryConditionsFromComponents(), FEProblemBase::addConstraint(), FEProblemBase::addDamper(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), addElement(), FEProblemBase::addFunction(), SubProblem::addFunctor(), FEProblemBase::addFVInitialCondition(), ADDGKernel::ADDGKernel(), FEProblemBase::addHDGKernel(), FEProblemBase::addInitialCondition(), PhysicsComponentInterface::addInitialConditionsFromComponents(), FEProblemBase::addInterfaceKernel(), MFEMProblem::addKernel(), FEProblemBase::addKernel(), FEProblem::addLineSearch(), FEProblemBase::addLineSearch(), MFEMProblem::addMaterial(), MeshGenerator::addMeshSubgenerator(), MFEMProblem::addMFEMFESpaceFromMOOSEVariable(), FEProblemBase::addOutput(), SubProblem::addPiecewiseByBlockLambdaFunctor(), DiracKernelBase::addPoint(), addPoint(), DiracKernelBase::addPointWithValidId(), FEProblemBase::addPostprocessor(), FEProblemBase::addPredictor(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), MooseMesh::addQuadratureNode(), Action::addRelationshipManager(), FEProblemBase::addReporter(), FEProblemBase::addScalarKernel(), AddVariableAction::addVariable(), FEProblemBase::addVectorPostprocessor(), SubProblem::addVectorTag(), MooseLinearVariableFV< Real >::adError(), ADInterfaceKernelTempl< T >::ADInterfaceKernelTempl(), ADPiecewiseLinearInterpolationMaterial::ADPiecewiseLinearInterpolationMaterial(), MooseVariableScalar::adUDot(), Output::advancedExecuteOn(), AdvectiveFluxAux::AdvectiveFluxAux(), MooseVariableBase::allDofIndices(), NEML2ModelExecutor::applyPredictor(), MultiApp::appPostprocessorValue(), MultiApp::appProblem(), MultiApp::appProblemBase(), MultiApp::appUserObjectBase(), ArrayConstantIC::ArrayConstantIC(), ArrayDGKernel::ArrayDGKernel(), ArrayDiffusion::ArrayDiffusion(), ArrayFunctionIC::ArrayFunctionIC(), ArrayReaction::ArrayReaction(), ArrayTimeDerivative::ArrayTimeDerivative(), AddPeriodicBCAction::autoTranslationBoundaries(), AuxKernelTempl< Real >::AuxKernelTempl(), Function::average(), Axisymmetric2D3DSolutionFunction::Axisymmetric2D3DSolutionFunction(), BatchMeshGeneratorAction::BatchMeshGeneratorAction(), BicubicSplineFunction::BicubicSplineFunction(), BlockDeletionGenerator::BlockDeletionGenerator(), BoundingValueElementDamper::BoundingValueElementDamper(), BoundingValueNodalDamper::BoundingValueNodalDamper(), BreakMeshByBlockGeneratorBase::BreakMeshByBlockGeneratorBase(), MooseMesh::buildCoarseningMap(), MultiApp::buildComm(), buildCube(), TimedSubdomainModifier::buildFromFile(), PiecewiseTabularBase::buildFromFile(), PiecewiseTabularBase::buildFromJSON(), TimedSubdomainModifier::buildFromParameters(), PiecewiseTabularBase::buildFromXY(), PiecewiseLinearBase::buildInterpolation(), MooseMesh::buildLowerDMesh(), TiledMesh::buildMesh(), GeneratedMesh::buildMesh(), SpiralAnnularMesh::buildMesh(), MeshGeneratorMesh::buildMesh(), ImageMeshGenerator::buildMesh3D(), ImageMesh::buildMesh3D(), MooseMesh::buildRefinementMap(), MaterialBase::buildRequiredMaterials(), MooseMesh::buildSideList(), MooseMesh::buildTypedMesh(), MooseMesh::cacheFaceInfoVariableOwnership(), CartesianGridDivision::CartesianGridDivision(), CartesianMeshGenerator::CartesianMeshGenerator(), ChangeOverFixedPointPostprocessor::ChangeOverFixedPointPostprocessor(), ChangeOverTimePostprocessor::ChangeOverTimePostprocessor(), EigenExecutionerBase::chebyshev(), SubProblem::checkBlockMatProps(), PhysicsBase::checkBlockRestrictionIdentical(), ComponentBoundaryConditionInterface::checkBoundaryConditionsAllRequested(), SubProblem::checkBoundaryMatProps(), PhysicsBase::checkComponentType(), IterationCountConvergence::checkConvergence(), MooseMesh::checkCoordinateSystems(), DiffusionLHDGAssemblyHelper::checkCoupling(), FEProblemBase::checkDependMaterialsHelper(), FEProblemBase::checkDisplacementOrders(), FEProblemBase::checkDuplicatePostprocessorVariableNames(), DefaultConvergenceBase::checkDuplicateSetSharedExecutionerParams(), MooseMesh::checkDuplicateSubdomainNames(), FEProblemBase::checkExceptionAndStopSolve(), NEML2ModelExecutor::checkExecutionStage(), MaterialBase::checkExecutionStage(), MeshGenerator::checkGetMesh(), ReporterTransferInterface::checkHasReporterValue(), FEProblemBase::checkICRestartError(), Steady::checkIntegrity(), EigenExecutionerBase::checkIntegrity(), Eigenvalue::checkIntegrity(), DefaultNonlinearConvergence::checkIterationType(), DefaultMultiAppFixedPointConvergence::checkIterationType(), DefaultSteadyStateConvergence::checkIterationType(), ExplicitTimeIntegrator::checkLinearConvergence(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), MeshDiagnosticsGenerator::checkNonMatchingEdges(), PostprocessorInterface::checkParam(), FEProblemBase::checkProblemIntegrity(), Sampler::checkReinitStatus(), MultiAppGeneralFieldNearestLocationTransfer::checkRestrictionsForSource(), MultiAppPostprocessorToAuxScalarTransfer::checkSiblingsTransferSupported(), MultiAppScalarToAuxScalarTransfer::checkSiblingsTransferSupported(), MultiAppPostprocessorTransfer::checkSiblingsTransferSupported(), MultiAppReporterTransfer::checkSiblingsTransferSupported(), MultiAppMFEMCopyTransfer::checkSiblingsTransferSupported(), MultiAppCopyTransfer::checkSiblingsTransferSupported(), MultiAppTransfer::checkSiblingsTransferSupported(), MaterialBase::checkStatefulSanity(), AddDefaultConvergenceAction::checkUnusedMultiAppFixedPointConvergenceParameters(), AddDefaultConvergenceAction::checkUnusedNonlinearConvergenceParameters(), AddDefaultConvergenceAction::checkUnusedSteadyStateConvergenceParameters(), FEProblemBase::checkUserObjects(), Moose::PetscSupport::checkUserProvidedPetscOption(), DomainUserObject::checkVariable(), MultiAppTransfer::checkVariable(), MeshDiagnosticsGenerator::checkWatertightNodesets(), MeshDiagnosticsGenerator::checkWatertightSidesets(), LibmeshPartitioner::clone(), MooseMesh::clone(), CombinerGenerator::CombinerGenerator(), ComparisonPostprocessor::comparisonIsTrue(), MooseVariableFieldBase::componentName(), CompositeFunction::CompositeFunction(), ElementH1ErrorFunctionAux::compute(), NodalPatchRecovery::compute(), FEProblemBase::computeBounds(), VariableCondensationPreconditioner::computeDInverseDiag(), CompositionDT::computeDT(), ArrayDGKernel::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighResidual(), InternalSideIntegralPostprocessor::computeFaceInfoIntegral(), SideIntegralPostprocessor::computeFaceInfoIntegral(), MooseVariableFieldBase::computeFaceValues(), TimeSequenceStepperBase::computeFailedDT(), IterationAdaptiveDT::computeFailedDT(), TimeStepper::computeFailedDT(), MooseMesh::computeFiniteVolumeCoords(), HistogramVectorPostprocessor::computeHistogram(), ArrayKernel::computeJacobian(), ArrayIntegratedBC::computeJacobian(), FVFluxKernel::computeJacobian(), NodalConstraint::computeJacobian(), FEProblemBase::computeJacobianTags(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), EigenProblem::computeMatricesTags(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), ArrayKernel::computeOffDiagJacobian(), ArrayIntegratedBC::computeOffDiagJacobian(), FVElementalKernel::computeOffDiagJacobian(), MortarScalarBase::computeOffDiagJacobianScalar(), DGLowerDKernel::computeOffDiagLowerDJacobian(), ArrayDGLowerDKernel::computeOffDiagLowerDJacobian(), MaterialBase::computeProperties(), SideFVFluxBCIntegral::computeQpIntegral(), ScalarKernel::computeQpJacobian(), CoupledTiedValueConstraint::computeQpJacobian(), TiedValueConstraint::computeQpJacobian(), NodalEqualValueConstraint::computeQpJacobian(), LinearNodalConstraint::computeQpJacobian(), EqualValueBoundaryConstraint::computeQpJacobian(), NodeElemConstraint::computeQpJacobian(), CoupledTiedValueConstraint::computeQpOffDiagJacobian(), ScalarKernel::computeQpResidual(), MassMatrix::computeQpResidual(), HDGKernel::computeQpResidual(), DiffusionLHDGDirichletBC::computeQpResidual(), NodalEqualValueConstraint::computeQpResidual(), DiffusionLHDGPrescribedGradientBC::computeQpResidual(), IPHDGBC::computeQpResidual(), KernelValue::computeQpResidual(), TorchScriptMaterial::computeQpValues(), InterfaceQpValueUserObject::computeRealValue(), ArrayKernel::computeResidual(), ArrayIntegratedBC::computeResidual(), FVFluxBC::computeResidual(), FVFluxKernel::computeResidual(), NodalConstraint::computeResidual(), FVFluxKernel::computeResidualAndJacobian(), ResidualObject::computeResidualAndJacobian(), FEProblemBase::computeResidualAndJacobian(), HDGKernel::computeResidualAndJacobianOnSide(), FEProblemBase::computeResidualInternal(), FEProblemBase::computeResidualTag(), FEProblemBase::computeResidualTags(), FEProblemBase::computeResidualType(), KernelScalarBase::computeScalarOffDiagJacobian(), ADKernelScalarBase::computeScalarQpResidual(), ADMortarScalarBase::computeScalarQpResidual(), MortarScalarBase::computeScalarQpResidual(), KernelScalarBase::computeScalarQpResidual(), TimeStepper::computeStep(), ActuallyExplicitEuler::computeTimeDerivatives(), ExplicitEuler::computeTimeDerivatives(), ImplicitEuler::computeTimeDerivatives(), BDF2::computeTimeDerivatives(), NewmarkBeta::computeTimeDerivatives(), CentralDifference::computeTimeDerivatives(), CrankNicolson::computeTimeDerivatives(), LStableDirk2::computeTimeDerivatives(), LStableDirk3::computeTimeDerivatives(), ImplicitMidpoint::computeTimeDerivatives(), ExplicitTVDRK2::computeTimeDerivatives(), AStableDirk4::computeTimeDerivatives(), LStableDirk4::computeTimeDerivatives(), ExplicitRK2::computeTimeDerivatives(), MultiAppGeometricInterpolationTransfer::computeTransformation(), BuildArrayVariableAux::computeValue(), TagVectorArrayVariableAux::computeValue(), NearestNodeValueAux::computeValue(), ProjectionAux::computeValue(), PenetrationAux::computeValue(), ConcentricCircleMesh::ConcentricCircleMesh(), ConditionalEnableControl::ConditionalEnableControl(), TimeStepper::constrainStep(), LibtorchNeuralNetControl::controlNeuralNet(), TransientBase::convergedToSteadyState(), ParsedConvergence::convertRealToBool(), CopyMeshPartitioner::CopyMeshPartitioner(), CoupledForceNodalKernel::CoupledForceNodalKernel(), MultiApp::createApp(), AddVariableAction::createInitialConditionAction(), Function::curl(), MooseVariableFV< Real >::curlPhi(), CutMeshByPlaneGenerator::CutMeshByPlaneGenerator(), SidesetInfoVectorPostprocessor::dataHelper(), DebugResidualAux::DebugResidualAux(), ReporterTransferInterface::declareClone(), MeshGenerator::declareMeshProperty(), ReporterTransferInterface::declareVectorClone(), DefaultSteadyStateConvergence::DefaultSteadyStateConvergence(), FunctorRelationshipManager::delete_remote_elements(), MooseMesh::deleteRemoteElements(), BicubicSplineFunction::derivative(), DerivativeSumMaterialTempl< is_ad >::DerivativeSumMaterialTempl(), MooseMesh::detectPairedSidesets(), FEProblemBase::determineSolverSystem(), DGKernel::DGKernel(), MeshDiagnosticsGenerator::diagnosticsLog(), DistributedPositions::DistributedPositions(), Function::div(), FunctorBinnedValuesDivision::divisionIndex(), MooseVariableFV< Real >::divPhi(), FunctorRelationshipManager::dofmap_reinit(), EigenProblem::doFreeNonlinearPowerIterations(), FEProblemBase::duplicateVariableCheck(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), Eigenvalues::Eigenvalues(), ElementalVariableValue::ElementalVariableValue(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), ElementIntegerAux::ElementIntegerAux(), ElementMaterialSampler::ElementMaterialSampler(), ElementQualityAux::ElementQualityAux(), ElementSubdomainModifierBase::ElementSubdomainModifierBase(), ElementUOAux::ElementUOAux(), ExtraIDIntegralVectorPostprocessor::elementValue(), elemId(), ProjectionAux::elemOnNodeVariableIsDefinedOn(), EigenKernel::enabled(), MooseMesh::errorIfDistributedMesh(), MultiAppTransfer::errorIfObjectExecutesOnTransferInSourceApp(), SideIntegralPostprocessor::errorNoFaceInfo(), SideIntegralFunctorPostprocessorTempl< false >::errorNoFaceInfo(), SolutionUserObjectBase::evalMeshFunction(), SolutionUserObjectBase::evalMeshFunctionGradient(), SolutionUserObjectBase::evalMultiValuedMeshFunction(), SolutionUserObjectBase::evalMultiValuedMeshFunctionGradient(), FixedPointSolve::examineFixedPointConvergence(), MultiAppGeneralFieldTransfer::examineReceivedValueConflicts(), RealToBoolChainControl::execute(), RestartableDataReporter::execute(), DiscreteElementUserObject::execute(), MultiAppPostprocessorToAuxScalarTransfer::execute(), MultiAppScalarToAuxScalarTransfer::execute(), NodalValueSampler::execute(), MultiAppPostprocessorTransfer::execute(), PositionsFunctorValueSampler::execute(), ElementQualityChecker::execute(), MultiAppPostprocessorInterpolationTransfer::execute(), GreaterThanLessThanPostprocessor::execute(), PointValue::execute(), MultiAppVariableValueSampleTransfer::execute(), MultiAppVariableValueSamplePostprocessorTransfer::execute(), FindValueOnLine::execute(), MultiAppNearestNodeTransfer::execute(), MultiAppMFEMCopyTransfer::execute(), MultiAppCopyTransfer::execute(), WebServerControl::execute(), MultiAppGeometricInterpolationTransfer::execute(), MultiAppUserObjectTransfer::execute(), InterfaceQpUserObjectBase::execute(), LeastSquaresFit::execute(), VectorPostprocessorComparison::execute(), LeastSquaresFitHistory::execute(), TimeExtremeValue::execute(), Eigenvalue::execute(), DomainUserObject::execute(), FEProblemBase::execute(), FEProblemBase::executeControls(), MultiAppVectorPostprocessorTransfer::executeFromMultiapp(), MultiAppVectorPostprocessorTransfer::executeToMultiapp(), Exodus::Exodus(), ExplicitSSPRungeKutta::ExplicitSSPRungeKutta(), MultiAppGeneralFieldTransfer::extractOutgoingPoints(), NEML2ModelExecutor::extractOutputs(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), FEProblemSolve::FEProblemSolve(), FileOutput::FileOutput(), NEML2ModelExecutor::fillInputs(), QuadraturePointMultiApp::fillPositions(), CentroidMultiApp::fillPositions(), MultiApp::fillPositions(), MultiAppGeometricInterpolationTransfer::fillSourceInterpolationPoints(), VerifyElementUniqueID::finalize(), VerifyNodalUniqueID::finalize(), DiscreteElementUserObject::finalize(), ElementQualityChecker::finalize(), MemoryUsage::finalize(), PointSamplerBase::finalize(), NearestPointAverage::finalize(), NearestPointIntegralVariablePostprocessor::finalize(), Transfer::find_sys(), BreakMeshByBlockGeneratorBase::findFreeBoundaryId(), FunctionDT::FunctionDT(), FunctionMaterialBase< is_ad >::FunctionMaterialBase(), FunctionScalarAux::FunctionScalarAux(), FunctionScalarIC::FunctionScalarIC(), FunctorSmootherTempl< T >::FunctorSmootherTempl(), FVInitialConditionTempl< T >::FVInitialConditionTempl(), FVMassMatrix::FVMassMatrix(), FVMatAdvection::FVMatAdvection(), FVScalarLagrangeMultiplierInterface::FVScalarLagrangeMultiplierInterface(), GapValueAux::GapValueAux(), WorkBalance::gather(), ElementOrderConversionGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), BlockToMeshConverterGenerator::generate(), ExtraNodesetGenerator::generate(), FileMeshGenerator::generate(), MoveNodeGenerator::generate(), PlaneIDMeshGenerator::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), SideSetsFromNormalsGenerator::generate(), SmoothMeshGenerator::generate(), SubdomainPerElementGenerator::generate(), TiledMeshGenerator::generate(), MeshRepairGenerator::generate(), BreakMeshByBlockGenerator::generate(), FlipSidesetGenerator::generate(), GeneratedMeshGenerator::generate(), MeshDiagnosticsGenerator::generate(), CoarsenBlockGenerator::generate(), SideSetsFromPointsGenerator::generate(), AllSideSetsByNormalsGenerator::generate(), ParsedGenerateNodeset::generate(), MeshCollectionGenerator::generate(), CombinerGenerator::generate(), AdvancedExtruderGenerator::generate(), MeshExtruderGenerator::generate(), SideSetsFromBoundingBoxGenerator::generate(), StackGenerator::generate(), StitchedMeshGenerator::generate(), XYZDelaunayGenerator::generate(), CutMeshByLevelSetGeneratorBase::generate(), SpiralAnnularMeshGenerator::generate(), XYDelaunayGenerator::generate(), XYMeshLineCutter::generate(), PatternedMeshGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), generate(), BoundingBoxNodeSetGenerator::generate(), MeshGenerator::generateData(), GeneratedMesh::GeneratedMesh(), GeneratedMeshGenerator::GeneratedMeshGenerator(), MeshGenerator::generateInternal(), CircularBoundaryCorrectionGenerator::generateRadialCorrectionFactor(), RandomICBase::generateRandom(), GenericConstantMaterialTempl< is_ad >::GenericConstantMaterialTempl(), GenericConstantVectorMaterialTempl< is_ad >::GenericConstantVectorMaterialTempl(), GenericFunctionMaterialTempl< is_ad >::GenericFunctionMaterialTempl(), GenericFunctionVectorMaterialTempl< is_ad >::GenericFunctionVectorMaterialTempl(), GenericFunctorGradientMaterialTempl< is_ad >::GenericFunctorGradientMaterialTempl(), GenericFunctorMaterialTempl< is_ad >::GenericFunctorMaterialTempl(), GenericFunctorTimeDerivativeMaterialTempl< is_ad >::GenericFunctorTimeDerivativeMaterialTempl(), GenericVectorFunctorMaterialTempl< is_ad >::GenericVectorFunctorMaterialTempl(), DisplacedProblem::getActualFieldVariable(), FEProblemBase::getActualFieldVariable(), DisplacedProblem::getArrayVariable(), FEProblemBase::getArrayVariable(), MooseMesh::getAxisymmetricRadialCoord(), MFEMFESpace::getBasis(), NEML2BatchIndexGenerator::getBatchIndex(), MooseMesh::getBlockConnectedBlocks(), VariableOldValueBounds::getBound(), MooseMesh::getBoundaryID(), MultiApp::getBoundingBox(), ChainControl::getChainControlDataByName(), MooseMesh::getCoarseningMap(), MultiApp::getCommandLineArgs(), MooseVariableBase::getContinuity(), Control::getControllableParameterByName(), FEProblemBase::getConvergence(), MooseMesh::getCoordSystem(), PhysicsBase::getCoupledPhysics(), PropertyReadFile::getData(), DataFileInterface::getDataFilePath(), TransfiniteMeshGenerator::getDiscreteEdge(), FEProblemBase::getDistribution(), MooseVariableBase::getDofIndices(), VariableCondensationPreconditioner::getDofToCondense(), TransfiniteMeshGenerator::getEdge(), GhostingUserObject::getElementalValue(), ElementUOProvider::getElementalValueLong(), ElementUOProvider::getElementalValueReal(), PropertyReadFile::getElementData(), MooseMesh::getElementIDIndex(), Material::getElementIDNeighbor(), Material::getElementIDNeighborByName(), MooseMesh::getElemIDMapping(), MooseMesh::getElemIDsOnBlocks(), MultiAppFieldTransfer::getEquationSystem(), MultiApp::getExecutioner(), MFEMVectorFESpace::getFECName(), MultiAppTransfer::getFromMultiApp(), MultiAppTransfer::getFromMultiAppInfo(), FEProblemBase::getFunction(), SubProblem::getFunctor(), FEProblemBase::getFVMatsAndDependencies(), MooseMesh::getGeneralAxisymmetricCoordAxis(), getGhostNeighbors(), getIndices(), FEProblemBase::getLinearConvergenceNames(), SolutionUserObjectBase::getLocalVarIndex(), Material::getMaterialByName(), FEProblemBase::getMaterialData(), SubProblem::getMatrixTagID(), AnnularMesh::getMaxInDimension(), GeneratedMesh::getMaxInDimension(), FEProblemBase::getMaxQps(), FEProblemBase::getMeshDivision(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), GeneratedMesh::getMinInDimension(), AnnularMesh::getMinInDimension(), MultiAppTransfer::getMultiApp(), FEProblemBase::getMultiAppFixedPointConvergenceName(), getNeighbors(), Times::getNextTime(), MooseMesh::getNodeBlockIds(), PropertyReadFile::getNodeData(), MooseMesh::getNodeList(), FEProblemBase::getNonlinearConvergenceNames(), EigenProblem::getNonlinearEigenSystem(), FEProblemBase::getNonlinearSystem(), NEML2ModelExecutor::getOutput(), NEML2ModelExecutor::getOutputDerivative(), NEML2ModelExecutor::getOutputParameterDerivative(), MooseMesh::getPairedBoundaryMapping(), MaterialOutputAction::getParams(), ImageMeshGenerator::GetPixelInfo(), ImageMesh::GetPixelInfo(), PlaneIDMeshGenerator::getPlaneID(), Positions::getPosition(), Positions::getPositions(), FEProblemBase::getPositionsObject(), Positions::getPositionsVector2D(), Positions::getPositionsVector3D(), Positions::getPositionsVector4D(), PostprocessorInterface::getPostprocessorValueByNameInternal(), Times::getPreviousTime(), ComponentMaterialPropertyInterface::getPropertyValue(), InterfaceQpUserObjectBase::getQpValue(), MooseMesh::getRefinementMap(), ReporterInterface::getReporterName(), Reporter::getReporterValueName(), FEProblemBase::getSampler(), WebServerControl::getScalarJSONValue(), DisplacedProblem::getScalarVariable(), FEProblemBase::getScalarVariable(), MooseObject::getSharedPtr(), InterfaceQpUserObjectBase::getSideAverageValue(), PhysicsBase::getSolverSystem(), DisplacedProblem::getStandardVariable(), FEProblemBase::getStandardVariable(), FEProblemBase::getSteadyStateConvergenceName(), MooseMesh::getSubdomainBoundaryIds(), TimedSubdomainModifier::getSubdomainIDAndCheck(), DisplacedProblem::getSystem(), FEProblemBase::getSystem(), Times::getTimeAtIndex(), FEProblemBase::getTimeFromStateArg(), TransientBase::getTimeIntegratorNames(), Times::getTimes(), MultiAppTransfer::getToMultiApp(), MultiAppTransfer::getToMultiAppInfo(), MooseMesh::getUniqueCoordSystem(), FEProblemBase::getUserObject(), FEProblemBase::getUserObjectBase(), UserObjectInterface::getUserObjectBaseByName(), UserObjectInterface::getUserObjectName(), VectorPostprocessorComponent::getValue(), NumRelationshipManagers::getValue(), Residual::getValue(), SideAverageValue::getValue(), JSONFileReader::getValue(), LineValueSampler::getValue(), FindValueOnLine::getValueAtPoint(), SubProblem::getVariableHelper(), JSONFileReader::getVector(), VectorPostprocessorInterface::getVectorPostprocessorName(), SubProblem::getVectorTag(), SubProblem::getVectorTagID(), DisplacedProblem::getVectorVariable(), FEProblemBase::getVectorVariable(), GhostingFromUOAux::GhostingFromUOAux(), MultiApp::globalAppToLocal(), MooseParsedVectorFunction::gradient(), Function::gradient(), FEProblemBase::handleException(), Terminator::handleMessage(), MooseVariableBase::hasDoFsOnNodes(), PostprocessorInterface::hasPostprocessor(), PostprocessorInterface::hasPostprocessorByName(), ReporterInterface::hasReporterValue(), ReporterInterface::hasReporterValueByName(), VectorPostprocessorInterface::hasVectorPostprocessor(), VectorPostprocessorInterface::hasVectorPostprocessorByName(), HDGKernel::HDGKernel(), TransientBase::incrementStepOrReject(), FixedPointIterationAdaptiveDT::init(), CrankNicolson::init(), CSVTimeSequenceStepper::init(), ExplicitTimeIntegrator::init(), EigenExecutionerBase::init(), TransientBase::init(), FEProblem::init(), AddAuxVariableAction::init(), IterationAdaptiveDT::init(), Eigenvalue::init(), AddVariableAction::init(), MooseMesh::init(), Sampler::init(), FEProblemBase::init(), MultiApp::init(), FEProblemBase::initialAdaptMesh(), NestedDivision::initialize(), DistributedPositions::initialize(), ReporterPositions::initialize(), TransformedPositions::initialize(), ElementGroupCentroidPositions::initialize(), FunctorPositions::initialize(), ReporterTimes::initialize(), FunctorTimes::initialize(), ParsedDownSelectionPositions::initialize(), ParsedConvergence::initializeConstantSymbol(), PhysicsBase::initializePhysics(), SteffensenSolve::initialSetup(), MultiAppCloneReporterTransfer::initialSetup(), SolutionIC::initialSetup(), PiecewiseLinearBase::initialSetup(), ChainControlDataPostprocessor::initialSetup(), MultiAppConservativeTransfer::initialSetup(), IntegralPreservingFunctionIC::initialSetup(), PiecewiseLinear::initialSetup(), FullSolveMultiApp::initialSetup(), CoarsenedPiecewiseLinear::initialSetup(), MultiAppDofCopyTransfer::initialSetup(), LinearFVAnisotropicDiffusion::initialSetup(), LinearFVDiffusion::initialSetup(), SolutionScalarAux::initialSetup(), LinearFVAdvection::initialSetup(), MultiAppGeneralFieldNearestLocationTransfer::initialSetup(), ExplicitTimeIntegrator::initialSetup(), SolutionAux::initialSetup(), ReferenceResidualConvergence::initialSetup(), NodalVariableValue::initialSetup(), Axisymmetric2D3DSolutionFunction::initialSetup(), Exodus::initialSetup(), CSV::initialSetup(), MooseParsedFunction::initialSetup(), SolutionUserObjectBase::initialSetup(), FEProblemBase::initialSetup(), SubProblem::initialSetup(), AdvancedOutput::initOutputList(), MFEMProblem::initProblemOperator(), AdvancedOutput::initShowHideLists(), Function::integral(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::InterfaceDiffusiveFluxIntegralTempl(), InterfaceIntegralVariableValuePostprocessor::InterfaceIntegralVariableValuePostprocessor(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), InterfaceTimeKernel::InterfaceTimeKernel(), InternalSideIndicatorBase::InternalSideIndicatorBase(), MultiAppGeometricInterpolationTransfer::interpolateTargetPoints(), EigenExecutionerBase::inversePowerIteration(), InversePowerMethod::InversePowerMethod(), Sampler::isAdaptiveSamplingCompleted(), MooseMesh::isBoundaryFullyExternalToSubdomains(), MooseVariableBase::isNodal(), IterationAdaptiveDT::IterationAdaptiveDT(), IterationCountConvergence::IterationCountConvergence(), LeastSquaresFit::LeastSquaresFit(), LibmeshPartitioner::LibmeshPartitioner(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), LinearCombinationPostprocessor::LinearCombinationPostprocessor(), LinearNodalConstraint::LinearNodalConstraint(), LineMaterialSamplerBase< Real >::LineMaterialSamplerBase(), LineSearch::lineSearch(), LineValueSampler::LineValueSampler(), MultiAppGeneralFieldTransfer::locatePointReceivers(), LowerBoundNodalKernel::LowerBoundNodalKernel(), MooseLinearVariableFV< Real >::lowerDError(), PNGOutput::makePNG(), ReporterPointMarker::markerSetup(), SubProblem::markFamilyPRefinement(), MassMatrix::MassMatrix(), Material::Material(), MaterialRealTensorValueAuxTempl< is_ad >::MaterialRealTensorValueAuxTempl(), MaterialRealVectorValueAuxTempl< T, is_ad, is_functor >::MaterialRealVectorValueAuxTempl(), MaterialStdVectorRealGradientAux::MaterialStdVectorRealGradientAux(), Distribution::median(), FunctorRelationshipManager::mesh_reinit(), MeshDiagnosticsGenerator::MeshDiagnosticsGenerator(), MeshExtruderGenerator::MeshExtruderGenerator(), MeshRepairGenerator::MeshRepairGenerator(), SetupMeshAction::modifyParamsForUseSplit(), MeshMetaDataInterface::mooseErrorInternal(), MooseLinearVariableFV< Real >::MooseLinearVariableFV(), MooseMesh::MooseMesh(), MooseObject::MooseObject(), UserObjectInterface::mooseObjectError(), MooseStaticCondensationPreconditioner::MooseStaticCondensationPreconditioner(), MooseVariableBase::MooseVariableBase(), MooseVariableConstMonomial::MooseVariableConstMonomial(), MoveNodeGenerator::MoveNodeGenerator(), MultiApp::MultiApp(), MultiAppMFEMCopyTransfer::MultiAppMFEMCopyTransfer(), MultiAppPostprocessorTransfer::MultiAppPostprocessorTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), MultiAppVariableValueSamplePostprocessorTransfer::MultiAppVariableValueSamplePostprocessorTransfer(), NearestNodeDistanceAux::NearestNodeDistanceAux(), NearestNodeValueAux::NearestNodeValueAux(), FEProblemBase::needsPreviousNewtonIteration(), NewmarkBeta::NewmarkBeta(), NodalConstraint::NodalConstraint(), MooseVariableFV< Real >::nodalDofIndex(), MooseVariableFV< Real >::nodalDofIndexNeighbor(), MooseLinearVariableFV< Real >::nodalError(), MooseVariableFV< Real >::nodalMatrixTagValue(), NodalPatchRecoveryBase::nodalPatchRecovery(), NodalPatchRecoveryAuxBase::NodalPatchRecoveryAuxBase(), NodalScalarKernel::NodalScalarKernel(), MooseVariableFV< Real >::nodalValueArray(), MooseVariableFV< Real >::nodalValueOldArray(), MooseVariableFV< Real >::nodalValueOlderArray(), NodalVariableValue::NodalVariableValue(), MooseVariableFV< Real >::nodalVectorTagValue(), nodeId(), MooseVariableFV< Real >::numberOfDofsNeighbor(), NumDOFs::NumDOFs(), NumFailedTimeSteps::NumFailedTimeSteps(), numNeighbors(), NumNonlinearIterations::NumNonlinearIterations(), NumVars::NumVars(), Output::onInterval(), FunctorRelationshipManager::operator()(), RelationshipManager::operator==(), ActionComponent::outerSurfaceArea(), ActionComponent::outerSurfaceBoundaries(), XDA::output(), SolutionHistory::output(), Exodus::output(), Output::Output(), AdvancedOutput::outputElementalVariables(), AdvancedOutput::outputInput(), AdvancedOutput::outputNodalVariables(), AdvancedOutput::outputPostprocessors(), AdvancedOutput::outputReporters(), AdvancedOutput::outputScalarVariables(), Exodus::outputSetup(), AdvancedOutput::outputSystemInformation(), Console::outputVectorPostprocessors(), AdvancedOutput::outputVectorPostprocessors(), paritionSquarely(), PiecewiseBilinear::parse(), ParsedConvergence::ParsedConvergence(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedODEKernel::ParsedODEKernel(), MultiAppConservativeTransfer::performAdjustment(), ExplicitTimeIntegrator::performExplicitSolve(), PetscExternalPartitioner::PetscExternalPartitioner(), MooseVariableFV< Real >::phiLowerSize(), PhysicsBasedPreconditioner::PhysicsBasedPreconditioner(), PIDTransientControl::PIDTransientControl(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), PiecewiseMulticonstant::PiecewiseMulticonstant(), PiecewiseMultiInterpolation::PiecewiseMultiInterpolation(), PiecewiseTabularBase::PiecewiseTabularBase(), CutMeshByLevelSetGeneratorBase::pointPairLevelSetInterception(), SolutionUserObjectBase::pointValueGradientWrapper(), SolutionUserObjectBase::pointValueWrapper(), ReporterInterface::possiblyCheckHasReporter(), VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessorByName(), LStableDirk2::postResidual(), LStableDirk3::postResidual(), ImplicitMidpoint::postResidual(), ExplicitTVDRK2::postResidual(), AStableDirk4::postResidual(), LStableDirk4::postResidual(), ExplicitRK2::postResidual(), EigenProblem::postScaleEigenVector(), VariableCondensationPreconditioner::preallocateCondensedJacobian(), ADKernelValueTempl< T >::precomputeQpJacobian(), Predictor::Predictor(), TransientBase::preExecute(), MooseMesh::prepare(), MooseMesh::prepared(), FixedPointSolve::printFixedPointConvergenceReason(), PseudoTimestep::PseudoTimestep(), MultiApp::readCommandLineArguments(), PropertyReadFile::readData(), SolutionUserObjectBase::readExodusII(), SolutionUserObjectBase::readXda(), CoarsenBlockGenerator::recursiveCoarsen(), FunctorRelationshipManager::redistribute(), ReferenceResidualConvergence::ReferenceResidualConvergence(), Sampler::reinit(), RelativeSolutionDifferenceNorm::RelativeSolutionDifferenceNorm(), PhysicsBase::reportPotentiallyMissedParameters(), RinglebMesh::RinglebMesh(), RinglebMeshGenerator::RinglebMeshGenerator(), PiecewiseMultiInterpolation::sample(), ScalarComponentIC::ScalarComponentIC(), MortarScalarBase::scalarVariable(), scaleNodalPositions(), BicubicSplineFunction::secondDerivative(), MooseVariableFV< Real >::secondPhi(), MooseVariableFV< Real >::secondPhiFace(), MooseVariableFV< Real >::secondPhiFaceNeighbor(), MooseVariableFV< Real >::secondPhiNeighbor(), FunctorRelationshipManager::set_mesh(), MooseVariableBase::setActiveTags(), setBoundaryNames(), MooseMesh::setCoordSystem(), FEProblemBase::setCoupling(), PiecewiseBase::setData(), FileOutput::setFileBaseInternal(), MooseMesh::setGeneralAxisymmetricCoordAxes(), FEProblemSolve::setInnerSolve(), MeshGenerator::setMeshProperty(), FVPointValueConstraint::setMyElem(), FEProblemBase::setNonlocalCouplingMatrix(), Sampler::setNumberOfCols(), Sampler::setNumberOfRandomSeeds(), Sampler::setNumberOfRows(), Exodus::setOutputDimensionInExodusWriter(), AddPeriodicBCAction::setPeriodicVars(), MFEMSolverBase::setPreconditioner(), MultiAppGeneralFieldTransfer::setSolutionVectorValues(), Split::setup(), TransientMultiApp::setupApp(), SetupMeshAction::setupMesh(), TimeSequenceStepperBase::setupSequence(), TransientBase::setupTimeIntegrator(), TimePeriodBase::setupTimes(), IntegratedBCBase::shouldApply(), PhysicsBase::shouldCreateIC(), PhysicsBase::shouldCreateTimeDerivative(), PhysicsBase::shouldCreateVariable(), SideAdvectiveFluxIntegralTempl< is_ad >::SideAdvectiveFluxIntegralTempl(), SideDiffusiveFluxIntegralTempl< is_ad, Real >::SideDiffusiveFluxIntegralTempl(), SideSetsFromNormalsGenerator::SideSetsFromNormalsGenerator(), SideSetsFromPointsGenerator::SideSetsFromPointsGenerator(), SingleMatrixPreconditioner::SingleMatrixPreconditioner(), SolutionTimeAdaptiveDT::SolutionTimeAdaptiveDT(), SolutionUserObjectBase::SolutionUserObjectBase(), TimeIntegrator::solve(), FEProblemBase::solverSysNum(), FullSolveMultiApp::solveStep(), SpatialAverageBase::SpatialAverageBase(), UserObject::spatialPoints(), NearestPointAverage::spatialValue(), NearestPointIntegralVariablePostprocessor::spatialValue(), MeshDivisionFunctorReductionVectorPostprocessor::spatialValue(), UserObject::spatialValue(), SpiralAnnularMesh::SpiralAnnularMesh(), SpiralAnnularMeshGenerator::SpiralAnnularMeshGenerator(), WebServerControl::startServer(), StitchedMesh::StitchedMesh(), WebServerControl::stringifyJSONType(), MultiAppGeometricInterpolationTransfer::subdomainIDsNode(), Constraint::subdomainSetup(), NodalUserObject::subdomainSetup(), GeneralUserObject::subdomainSetup(), MaterialBase::subdomainSetup(), FEProblemBase::swapBackMaterialsNeighbor(), DisplacedProblem::systemBaseLinear(), Console::systemInfoFlags(), FEProblemBase::systemNumForVariable(), TerminateChainControl::terminate(), Terminator::Terminator(), CutMeshByLevelSetGeneratorBase::tet4ElemCutter(), ThreadedGeneralUserObject::threadJoin(), DiscreteElementUserObject::threadJoin(), GeneralUserObject::threadJoin(), Function::timeDerivative(), TimedSubdomainModifier::TimedSubdomainModifier(), TimeExtremeValue::TimeExtremeValue(), Function::timeIntegral(), MooseLinearVariableFV< Real >::timeIntegratorError(), TimeIntervalTimes::TimeIntervalTimes(), TimePeriodBase::TimePeriodBase(), VectorPostprocessorVisualizationAux::timestepSetup(), MultiAppDofCopyTransfer::transfer(), MultiAppMFEMCopyTransfer::transfer(), MultiAppShapeEvaluationTransfer::transferVariable(), TransformedPositions::TransformedPositions(), FEProblemBase::trustUserCouplingMatrix(), MooseVariableScalar::uDot(), MooseVariableScalar::uDotDot(), MooseVariableScalar::uDotDotOld(), FEProblemBase::uDotDotOldRequested(), MooseVariableScalar::uDotOld(), FEProblemBase::uDotOldRequested(), Positions::unrollMultiDPositions(), ScalarKernelBase::uOld(), AuxScalarKernel::uOld(), Checkpoint::updateCheckpointFiles(), EqualValueBoundaryConstraint::updateConstrainedNodes(), SolutionUserObjectBase::updateExodusBracketingTimeIndices(), FEProblemBase::updateMaxQps(), MFEMHypreADS::updateSolver(), MFEMHypreAMS::updateSolver(), MFEMOperatorJacobiSmoother::updateSolver(), MFEMCGSolver::updateSolver(), MFEMGMRESSolver::updateSolver(), MFEMHyprePCG::updateSolver(), MFEMHypreFGMRES::updateSolver(), MFEMHypreBoomerAMG::updateSolver(), MFEMHypreGMRES::updateSolver(), MFEMSuperLU::updateSolver(), UpperBoundNodalKernel::UpperBoundNodalKernel(), NearestPointIntegralVariablePostprocessor::userObjectValue(), NearestPointAverage::userObjectValue(), BoundingBoxIC::value(), PiecewiseConstantFromCSV::value(), IntegralPreservingFunctionIC::value(), Axisymmetric2D3DSolutionFunction::value(), Function::value(), ValueRangeMarker::ValueRangeMarker(), ValueThresholdMarker::ValueThresholdMarker(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), PhysicsBase::variableExists(), MultiAppTransfer::variableIntegrityCheck(), VariableTimeIntegrationAux::VariableTimeIntegrationAux(), AddVariableAction::variableType(), VariableValueVolumeHistogram::VariableValueVolumeHistogram(), VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl(), VectorNodalBC::VectorNodalBC(), SubProblem::vectorTagName(), SubProblem::vectorTagType(), MooseParsedGradFunction::vectorValue(), MooseParsedFunction::vectorValue(), Function::vectorValue(), SubProblem::verifyVectorTags(), ActionComponent::volume(), VTKOutput::VTKOutput(), WebServerControl::WebServerControl(), DOFMapOutput::writeStreamToFile(), and Console::writeStreamToFile().

30  {
31  std::ostringstream oss;
32  moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
33  _moose_base.callMooseError(oss.str(), /* with_prefix = */ true);
34  }
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:94
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
void callMooseError(std::string msg, const bool with_prefix) const
Calls moose error with the message msg.
Definition: MooseBase.C:33

◆ mooseErrorNonPrefixed()

template<typename... Args>
void MooseBaseErrorInterface::mooseErrorNonPrefixed ( Args &&...  args) const
inlineinherited

Emits an error without the prefixing included in mooseError().

Definition at line 40 of file MooseBaseErrorInterface.h.

41  {
42  std::ostringstream oss;
43  moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
44  _moose_base.callMooseError(oss.str(), /* with_prefix = */ false);
45  }
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:94
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
void callMooseError(std::string msg, const bool with_prefix) const
Calls moose error with the message msg.
Definition: MooseBase.C:33

◆ mooseInfo()

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

Definition at line 98 of file MooseBaseErrorInterface.h.

Referenced by SetupRecoverFileBaseAction::act(), AStableDirk4::AStableDirk4(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), MultiAppGeneralFieldNearestLocationTransfer::evaluateInterpValuesNearestNode(), PIDTransientControl::execute(), ExplicitRK2::ExplicitRK2(), ExplicitTVDRK2::ExplicitTVDRK2(), DataFileInterface::getDataFilePath(), MFEMScalarFESpace::getFECName(), MultiAppTransfer::getPointInTargetAppFrame(), ImplicitMidpoint::ImplicitMidpoint(), ParsedDownSelectionPositions::initialize(), PropertyReadFile::initialize(), MultiAppGeneralFieldTransfer::initialSetup(), InversePowerMethod::InversePowerMethod(), LStableDirk2::LStableDirk2(), LStableDirk3::LStableDirk3(), LStableDirk4::LStableDirk4(), PNGOutput::makeMeshFunc(), NonlinearEigen::NonlinearEigen(), SolutionInvalidityOutput::output(), MultiAppGeneralFieldTransfer::outputValueConflicts(), ProjectionAux::ProjectionAux(), ReferenceResidualConvergence::ReferenceResidualConvergence(), MFEMDataCollection::registerFields(), FEProblemBase::setRestartFile(), SolutionUserObjectBase::SolutionUserObjectBase(), and SymmetryTransformGenerator::SymmetryTransformGenerator().

99  {
101  _console, _moose_base.errorPrefix("information"), std::forward<Args>(args)...);
102  }
void mooseInfoStream(S &oss, Args &&... args)
Definition: MooseError.h:232
std::string errorPrefix(const std::string &error_type) const
Definition: MooseBase.C:43
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.

◆ mooseWarning()

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

Emits a warning prefixed with object name and type.

Definition at line 75 of file MooseBaseErrorInterface.h.

Referenced by CopyMeshPartitioner::_do_partition(), AddKernelAction::act(), MeshOnlyAction::act(), AddFunctionAction::act(), MaterialOutputAction::act(), CommonOutputAction::act(), MFEMProblem::addFunction(), MooseMesh::addPeriodicVariable(), DiracKernelBase::addPoint(), BoundaryMarker::BoundaryMarker(), buildCube(), MultiAppVariableValueSamplePostprocessorTransfer::cacheElemToPostprocessorData(), CartesianMeshGenerator::CartesianMeshGenerator(), CheckOutputAction::checkConsoleOutput(), MultiAppTransfer::checkMultiAppExecuteOn(), MeshDiagnosticsGenerator::checkNonMatchingEdges(), ActionComponent::checkRequiredTasks(), PhysicsBase::checkRequiredTasks(), SampledOutput::cloneMesh(), MultiAppGeneralFieldTransfer::closestToPosition(), VariableValueElementSubdomainModifier::computeSubdomainID(), GapValueAux::computeValue(), MultiApp::createApp(), DebugResidualAux::DebugResidualAux(), MeshDiagnosticsGenerator::diagnosticsLog(), CylindricalGridDivision::divisionIndex(), SphericalGridDivision::divisionIndex(), CartesianGridDivision::divisionIndex(), ElementMaterialSampler::ElementMaterialSampler(), Postprocessor::evaluateDotWarning(), MeshDivisionFunctorReductionVectorPostprocessor::execute(), ElementQualityChecker::finalize(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), FixedPointSolve::FixedPointSolve(), SubdomainPerElementGenerator::generate(), StitchedMeshGenerator::generate(), ParsedGenerateSideset::generate(), MultiAppTransfer::getAppInfo(), FunctorBinnedValuesDivision::getBinIndex(), DataFileInterface::getDataFilePath(), PointSamplerBase::getLocalElemContainingPoint(), FEProblemBase::getMaterial(), LineValueSampler::getValue(), Terminator::handleMessage(), IndicatorMarker::IndicatorMarker(), SphericalGridDivision::initialize(), CylindricalGridDivision::initialize(), ElementGroupCentroidPositions::initialize(), CartesianGridDivision::initialize(), MultiAppGeneralFieldNearestLocationTransfer::initialSetup(), BoundsBase::initialSetup(), ReferenceResidualConvergence::initialSetup(), MultiAppGeneralFieldTransfer::initialSetup(), FEProblemBase::initialSetup(), AdvancedOutput::initPostprocessorOrVectorPostprocessorLists(), MaterialBase::initStatefulProperties(), LeastSquaresFit::LeastSquaresFit(), IterationAdaptiveDT::limitDTToPostprocessorValue(), FEProblemBase::mesh(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), NewmarkBeta::NewmarkBeta(), NodalPatchRecovery::NodalPatchRecovery(), NonlocalIntegratedBC::NonlocalIntegratedBC(), NonlocalKernel::NonlocalKernel(), Output::Output(), MultiAppGeneralFieldTransfer::outputValueConflicts(), PiecewiseConstantFromCSV::PiecewiseConstantFromCSV(), Executioner::problem(), PropertyReadFile::readData(), TestSourceStepper::rejectStep(), PhysicsBase::reportPotentiallyMissedParameters(), MaterialBase::resetQpProperties(), SecondTimeDerivativeAux::SecondTimeDerivativeAux(), MooseMesh::setCoordSystem(), SidesetAroundSubdomainUpdater::SidesetAroundSubdomainUpdater(), FEProblemBase::sizeZeroes(), TransientMultiApp::solveStep(), Tecplot::Tecplot(), TimeDerivativeAux::TimeDerivativeAux(), Checkpoint::updateCheckpointFiles(), SampledOutput::updateSample(), PiecewiseConstantFromCSV::value(), and VariableCondensationPreconditioner::VariableCondensationPreconditioner().

76  {
78  _console, _moose_base.errorPrefix("warning"), std::forward<Args>(args)...);
79  }
std::string errorPrefix(const std::string &error_type) const
Definition: MooseBase.C:43
void mooseWarningStream(S &oss, Args &&... args)
Definition: MooseError.h:184
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.

◆ mooseWarningNonPrefixed()

template<typename... Args>
void MooseBaseErrorInterface::mooseWarningNonPrefixed ( Args &&...  args) const
inlineinherited

Emits a warning without the prefixing included in mooseWarning().

Definition at line 85 of file MooseBaseErrorInterface.h.

86  {
87  moose::internal::mooseWarningStream(_console, std::forward<Args>(args)...);
88  }
void mooseWarningStream(S &oss, Args &&... args)
Definition: MooseError.h:184
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.

◆ name()

virtual const std::string& MooseBase::name ( ) const
inlinevirtualinherited

Get the name of the class.

Returns
The name of the class

Reimplemented in MooseVariableBase.

Definition at line 57 of file MooseBase.h.

Referenced by AddElementalFieldAction::act(), CopyNodalVarsAction::act(), AdaptivityAction::act(), AddTimeStepperAction::act(), DeprecatedBlockAction::act(), SetupTimeIntegratorAction::act(), AddActionComponentAction::act(), DisplayGhostingAction::act(), MaterialOutputAction::act(), AddPeriodicBCAction::act(), FEProblemBase::addAnyRedistributers(), Executioner::addAttributeReporter(), MFEMProblem::addAuxKernel(), FEProblemBase::addAuxKernel(), FEProblemBase::addAuxScalarKernel(), DisplacedProblem::addAuxVariable(), MFEMProblem::addBoundaryCondition(), FEProblemBase::addBoundaryCondition(), PhysicsComponentInterface::addComponent(), FEProblemBase::addConstraint(), FEProblemBase::addConvergence(), FEProblemBase::addDamper(), Registry::addDataFilePath(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), FEProblemBase::addDistribution(), MooseApp::addExecutor(), MooseApp::addExecutorParams(), MFEMProblem::addFESpace(), MFEMProblem::addFunction(), FEProblemBase::addFunction(), SubProblem::addFunctor(), MFEMProblem::addFunctorMaterial(), FEProblemBase::addFunctorMaterial(), FunctorMaterial::addFunctorProperty(), FunctorMaterial::addFunctorPropertyByBlocks(), FEProblemBase::addFVBC(), FEProblemBase::addFVInitialCondition(), FEProblemBase::addFVInterfaceKernel(), FEProblemBase::addFVKernel(), ADDGKernel::ADDGKernel(), FEProblemBase::addHDGKernel(), FEProblemBase::addIndicator(), MFEMProblem::addInitialCondition(), FEProblemBase::addInitialCondition(), FEProblemBase::addInterfaceKernel(), FEProblemBase::addInterfaceMaterial(), MFEMProblem::addKernel(), FEProblemBase::addKernel(), FEProblemBase::addLinearFVBC(), FEProblemBase::addLinearFVKernel(), FEProblemBase::addMarker(), FEProblemBase::addMaterial(), FEProblemBase::addMaterialHelper(), ComponentMaterialPropertyInterface::addMaterials(), FEProblemBase::addMeshDivision(), MooseApp::addMeshGenerator(), ComponentMeshTransformHelper::addMeshGenerators(), CylinderComponent::addMeshGenerators(), MeshGenerator::addMeshSubgenerator(), MFEMProblem::addMFEMPreconditioner(), MFEMProblem::addMFEMSolver(), FEProblemBase::addMultiApp(), FEProblemBase::addNodalKernel(), FEProblemBase::addObject(), ComponentPhysicsInterface::addPhysics(), SubProblem::addPiecewiseByBlockLambdaFunctor(), MFEMProblem::addPostprocessor(), FEProblemBase::addPostprocessor(), InitialConditionBase::addPostprocessorDependencyHelper(), UserObject::addPostprocessorDependencyHelper(), FEProblemBase::addPredictor(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), Action::addRelationshipManager(), FEProblemBase::addReporter(), FEProblemBase::addSampler(), FEProblemBase::addScalarKernel(), FEProblemBase::addTimeIntegrator(), MFEMProblem::addTransfer(), FEProblemBase::addTransfer(), FEProblemBase::addUserObject(), InitialConditionBase::addUserObjectDependencyHelper(), UserObject::addUserObjectDependencyHelper(), AuxKernelTempl< Real >::addUserObjectDependencyHelper(), DisplacedProblem::addVariable(), FEProblemBase::addVectorPostprocessor(), UserObject::addVectorPostprocessorDependencyHelper(), Output::advancedExecuteOn(), AdvancedExtruderGenerator::AdvancedExtruderGenerator(), MooseApp::appBinaryName(), MooseApp::appendMeshGenerator(), Registry::appNameFromAppPath(), MultiApp::appPostprocessorValue(), MultiApp::appProblem(), MultiApp::appProblemBase(), MultiApp::appUserObjectBase(), ArrayDGKernel::ArrayDGKernel(), PhysicsBase::assignBlocks(), AStableDirk4::AStableDirk4(), AuxKernelTempl< Real >::AuxKernelTempl(), Function::average(), MultiApp::backup(), CoarsenedPiecewiseLinear::buildCoarsenedGrid(), MFEMFESpace::buildFEC(), PiecewiseTabularBase::buildFromFile(), MultiAppVariableValueSamplePostprocessorTransfer::cacheElemToPostprocessorData(), MooseBase::callMooseError(), ChangeOverFixedPointPostprocessor::ChangeOverFixedPointPostprocessor(), ChangeOverTimePostprocessor::ChangeOverTimePostprocessor(), PhysicsBase::checkBlockRestrictionIdentical(), PhysicsBase::checkComponentType(), ParsedConvergence::checkConvergence(), DefaultNonlinearConvergence::checkConvergence(), FEProblemBase::checkDependMaterialsHelper(), ReporterTransferInterface::checkHasReporterValue(), FEProblemBase::checkICRestartError(), Material::checkMaterialProperty(), MooseApp::checkMetaDataIntegrity(), Damper::checkMinDamping(), Checkpoint::checkpointInfo(), Coupleable::checkWritableVar(), CompositeFunction::CompositeFunction(), MaterialBase::computeProperties(), FEProblemBase::computeUserObjectByName(), VectorPostprocessorVisualizationAux::computeValue(), MooseBaseParameterInterface::connectControllableParams(), ConstantPostprocessor::ConstantPostprocessor(), CommonOutputAction::create(), MultiApp::createApp(), MooseApp::createExecutors(), MeshGeneratorSystem::createMeshGeneratorOrder(), MooseApp::createRecoverablePerfGraph(), CutMeshByPlaneGenerator::CutMeshByPlaneGenerator(), MaterialBase::declareADProperty(), MeshGenerator::declareMeshesForSubByName(), MeshGenerator::declareNullMeshName(), MaterialBase::declareProperty(), DOFMapOutput::demangle(), DerivativeSumMaterialTempl< is_ad >::DerivativeSumMaterialTempl(), Registry::determineDataFilePath(), DGKernel::DGKernel(), DGKernelBase::DGKernelBase(), DomainUserObject::DomainUserObject(), DumpObjectsProblem::dumpObjectHelper(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), ElementMaterialSampler::ElementMaterialSampler(), ElementValueSampler::ElementValueSampler(), EigenKernel::enabled(), MooseMesh::errorIfDistributedMesh(), MooseBase::errorPrefix(), SolutionUserObjectBase::evalMeshFunction(), SolutionUserObjectBase::evalMeshFunctionGradient(), SolutionUserObjectBase::evalMultiValuedMeshFunction(), SolutionUserObjectBase::evalMultiValuedMeshFunctionGradient(), SideValueSampler::execute(), RestartableDataReporter::execute(), PointValue::execute(), MultiAppNearestNodeTransfer::execute(), WebServerControl::execute(), MultiAppGeneralFieldTransfer::execute(), ActionWarehouse::executeActionsWithAction(), Exodus::Exodus(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), FEProblemBase::FEProblemBase(), MultiApp::fillPositions(), PointSamplerBase::finalize(), ChainControl::fullControlDataName(), FunctionDT::FunctionDT(), FunctionIC::functionName(), FVFunctionIC::functionName(), FunctorPositions::FunctorPositions(), FunctorSmootherTempl< T >::FunctorSmootherTempl(), FVOneVarDiffusionInterface::FVOneVarDiffusionInterface(), MooseServer::gatherDocumentSymbols(), BoundaryDeletionGenerator::generate(), UniqueExtraIDMeshGenerator::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), GeneratedMeshGenerator::generate(), BreakMeshByBlockGenerator::generate(), ParsedSubdomainGeneratorBase::generate(), ParsedExtraElementIDGenerator::generate(), StitchedMeshGenerator::generate(), XYDelaunayGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), MeshGenerator::generateInternal(), InterfaceMaterial::getADMaterialProperty(), Material::getADMaterialProperty(), MultiAppTransfer::getAppInfo(), MultiApp::getBoundingBox(), MooseApp::getCheckpointDirectories(), Control::getControllableParameterByName(), Control::getControllableValue(), Control::getControllableValueByName(), FEProblemBase::getConvergence(), Registry::getDataFilePath(), UserObject::getDependObjects(), DistributionInterface::getDistribution(), FEProblemBase::getDistribution(), DistributionInterface::getDistributionByName(), ElementUOProvider::getElementalValueLong(), ElementUOProvider::getElementalValueReal(), MultiApp::getExecutioner(), MooseApp::getExecutor(), FEProblemBase::getExecutor(), OutputWarehouse::getFileNumbers(), FEProblemBase::getFunction(), SubProblem::getFunctor(), NodalPatchRecovery::getGenericMaterialProperty(), InterfaceMaterial::getGenericMaterialProperty(), Material::getGenericMaterialProperty(), AuxKernelTempl< Real >::getGenericMaterialProperty(), InterfaceMaterial::getGenericNeighborMaterialProperty(), InterfaceMaterial::getGenericNeighborMaterialPropertyByName(), Material::getGenericOptionalMaterialProperty(), MaterialBase::getGenericZeroMaterialProperty(), MFEMProblem::getGridFunction(), SolutionUserObjectBase::getLocalVarIndex(), Marker::getMarkerValue(), Material::getMaterial(), FEProblemBase::getMaterial(), Material::getMaterialByName(), NodalPatchRecovery::getMaterialProperty(), InterfaceMaterial::getMaterialProperty(), Material::getMaterialProperty(), AuxKernelTempl< Real >::getMaterialProperty(), SubProblem::getMaterialPropertyBlockNames(), SubProblem::getMaterialPropertyBoundaryNames(), NodalPatchRecovery::getMaterialPropertyOld(), InterfaceMaterial::getMaterialPropertyOld(), Material::getMaterialPropertyOld(), AuxKernelTempl< Real >::getMaterialPropertyOld(), NodalPatchRecovery::getMaterialPropertyOlder(), InterfaceMaterial::getMaterialPropertyOlder(), Material::getMaterialPropertyOlder(), AuxKernelTempl< Real >::getMaterialPropertyOlder(), MFEMGeneralUserObject::getMatrixCoefficient(), MFEMGeneralUserObject::getMatrixCoefficientByName(), MeshGenerator::getMesh(), FEProblemBase::getMeshDivision(), MeshGenerator::getMeshesByName(), MooseApp::getMeshGenerator(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), ActionWarehouse::getMooseAppName(), MultiAppTransfer::getMultiApp(), InterfaceMaterial::getNeighborADMaterialProperty(), InterfaceMaterial::getNeighborMaterialProperty(), InterfaceMaterial::getNeighborMaterialPropertyOld(), InterfaceMaterial::getNeighborMaterialPropertyOlder(), MooseServer::getObjectParameters(), Material::getOptionalADMaterialProperty(), Material::getOptionalMaterialProperty(), Material::getOptionalMaterialPropertyOld(), Material::getOptionalMaterialPropertyOlder(), OutputWarehouse::getOutput(), MooseApp::getParam(), FEProblemBase::getPositionsObject(), FEProblemBase::getPostprocessorValueByName(), ComponentMaterialPropertyInterface::getPropertyValue(), ReporterData::getReporterInfo(), MooseApp::getRestartableDataMap(), MooseApp::getRestartableDataMapName(), MooseApp::getRestartableMetaData(), FEProblemBase::getSampler(), MFEMGeneralUserObject::getScalarCoefficient(), MFEMGeneralUserObject::getScalarCoefficientByName(), TransientBase::getTimeStepperName(), ProjectedStatefulMaterialStorageAction::getTypeEnum(), FEProblemBase::getUserObject(), FEProblemBase::getUserObjectBase(), MFEMGeneralUserObject::getVectorCoefficient(), MFEMGeneralUserObject::getVectorCoefficientByName(), Terminator::handleMessage(), Control::hasControllableParameterByName(), FEProblemBase::hasConvergence(), FEProblemBase::hasFunction(), SubProblem::hasFunctor(), SubProblem::hasFunctorWithType(), MooseApp::hasMeshGenerator(), AdvancedOutput::hasOutputHelper(), FEProblemBase::hasPostprocessor(), FEProblemBase::hasPostprocessorValueByName(), MooseApp::hasRelationshipManager(), MooseApp::hasRestartableDataMap(), MooseApp::hasRestartableMetaData(), FEProblemBase::hasUserObject(), IterationAdaptiveDT::init(), AddVariableAction::init(), AdvancedOutput::init(), AdvancedOutput::initExecutionTypes(), AttribName::initFrom(), NestedDivision::initialize(), TransformedPositions::initialize(), JSONOutput::initialSetup(), SideFVFluxBCIntegral::initialSetup(), SolutionScalarAux::initialSetup(), MultiAppProjectionTransfer::initialSetup(), NodalVariableValue::initialSetup(), Console::initialSetup(), SolutionUserObjectBase::initialSetup(), AdvancedOutput::initOutputList(), AdvancedOutput::initPostprocessorOrVectorPostprocessorLists(), MaterialBase::initStatefulProperties(), Function::integral(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), MeshGenerator::isChildMeshGenerator(), MeshGenerator::isNullMeshName(), MooseApp::isParamValid(), MeshGenerator::isParentMeshGenerator(), LinearCombinationFunction::LinearCombinationFunction(), FEProblemBase::logAdd(), Marker::Marker(), MaterialBase::markMatPropRequested(), MatDiffusionBase< Real >::MatDiffusionBase(), Material::Material(), MaterialDerivativeTestKernelBase< Real >::MaterialDerivativeTestKernelBase(), Distribution::median(), MemoryUsageReporter::MemoryUsageReporter(), MeshGenerator::meshPropertyPrefix(), OutputWarehouse::mooseConsole(), MooseVariableInterface< Real >::MooseVariableInterface(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), NodalPatchRecoveryAuxBase::NodalPatchRecoveryAuxBase(), NodalValueSampler::NodalValueSampler(), Registry::objData(), MeshGenerator::Comparator::operator()(), ProgressOutput::output(), DOFMapOutput::output(), Output::Output(), AdvancedOutput::outputElementalVariables(), ConsoleUtils::outputExecutionInformation(), MaterialOutputAction::outputHelper(), AdvancedOutput::outputInput(), AdvancedOutput::outputNodalVariables(), Exodus::outputPostprocessors(), AdvancedOutput::outputPostprocessors(), TableOutput::outputReporter(), AdvancedOutput::outputReporters(), AdvancedOutput::outputScalarVariables(), AdvancedOutput::outputSystemInformation(), AdvancedOutput::outputVectorPostprocessors(), ParsedCurveGenerator::ParsedCurveGenerator(), MooseServer::parseDocumentForDiagnostics(), ParsedODEKernel::ParsedODEKernel(), ComponentPhysicsInterface::physicsExists(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseByBlockFunctorMaterialTempl< T >::PiecewiseByBlockFunctorMaterialTempl(), MooseApp::possiblyLoadRestartableMetaData(), PhysicsBase::prefix(), MooseMesh::prepare(), BlockRestrictionDebugOutput::printBlockRestrictionMap(), PerfGraphLivePrint::printStats(), MultiApp::readCommandLineArguments(), Receiver::Receiver(), Executor::Result::record(), AppFactory::reg(), Registry::registerObjectsTo(), FEProblemBase::registerRandomInterface(), MooseApp::registerRestartableDataMapName(), MooseApp::registerRestartableNameWithFilter(), GlobalParamsAction::remove(), MaterialBase::resetQpProperties(), MultiApp::restore(), ScalarComponentIC::ScalarComponentIC(), MultiApp::setAppOutputFileBase(), MooseMesh::setBoundaryName(), Control::setControllableValue(), Control::setControllableValueByName(), GlobalParamsAction::setDoubleIndexParam(), OutputWarehouse::setFileNumbers(), GlobalParamsAction::setParam(), FEProblemBase::setPostprocessorValueByName(), FEProblemBase::setResidualObjectParamsAndLog(), GlobalParamsAction::setScalarParam(), MooseMesh::setSubdomainName(), GlobalParamsAction::setTripleIndexParam(), NodeSetsGeneratorBase::setup(), Split::setup(), SideSetsGeneratorBase::setup(), TransientMultiApp::setupApp(), GlobalParamsAction::setVectorParam(), FullSolveMultiApp::showStatusMessage(), SideSetExtruderGenerator::SideSetExtruderGenerator(), TransientMultiApp::solveStep(), UserObject::spatialValue(), WebServerControl::startServer(), StitchedMesh::StitchedMesh(), SubProblem::storeBoundaryDelayedCheckMatProp(), SubProblem::storeBoundaryMatPropName(), MaterialBase::storeBoundaryZeroMatProp(), SubProblem::storeBoundaryZeroMatProp(), SubProblem::storeSubdomainDelayedCheckMatProp(), SubProblem::storeSubdomainMatPropName(), MaterialBase::storeSubdomainZeroMatProp(), SubProblem::storeSubdomainZeroMatProp(), MaterialBase::subdomainSetup(), TaggingInterface::TaggingInterface(), VectorPostprocessorVisualizationAux::timestepSetup(), to_json(), MultiAppDofCopyTransfer::transfer(), TransientMultiApp::TransientMultiApp(), MooseServer::traverseParseTreeAndFillSymbols(), MooseBase::typeAndName(), MooseBaseParameterInterface::uniqueParameterName(), FVFluxBC::uOnGhost(), FVFluxBC::uOnUSub(), UserObject::UserObject(), UserObjectInterface::userObjectName(), ParsedAux::validateGenericVectorNames(), PhysicsBase::variableExists(), MultiAppTransfer::variableIntegrityCheck(), VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl(), Convergence::verboseOutput(), AdvancedOutput::wantOutput(), Coupleable::writableCoupledValue(), Coupleable::writableVariable(), Console::write(), and MooseApp::writeRestartableMetaData().

57 { return _name; }
const std::string _name
The name of this class.
Definition: MooseBase.h:90

◆ nodeId() [1/6]

template<typename T >
dof_id_type DistributedRectilinearMeshGenerator::nodeId ( const ElemType  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type   
)
inline

The ID of the i,j,k node.

Parameters
typeThe element type
nxThe number of elements in the x direction
nxThe number of elements in the y direction
nzThe number of elements in the z direction
iThe x index of this node
jThe y index of this node
kThe z index of this node

Definition at line 145 of file DistributedRectilinearMeshGenerator.h.

151  {
152  mooseError(
153  "nodeId not implemented for this element type in DistributedRectilinearMeshGenerator");
154  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ nodeId() [2/6]

template<>
dof_id_type DistributedRectilinearMeshGenerator::nodeId ( const ElemType  ,
const dof_id_type  nx,
const dof_id_type  ,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type   
)

Definition at line 437 of file DistributedRectilinearMeshGenerator.C.

444 {
445  return i + j * (nx + 1);
446 }

◆ nodeId() [3/6]

template<>
dof_id_type DistributedRectilinearMeshGenerator::nodeId ( const ElemType  type,
const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k 
)

◆ nodeId() [4/6]

template<>
dof_id_type DistributedRectilinearMeshGenerator::nodeId ( const ElemType  type,
const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k 
)

◆ nodeId() [5/6]

template<>
dof_id_type DistributedRectilinearMeshGenerator::nodeId ( const ElemType  type,
const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k 
)

◆ nodeId() [6/6]

template<>
dof_id_type DistributedRectilinearMeshGenerator::nodeId ( const ElemType  ,
const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k 
)

Definition at line 676 of file DistributedRectilinearMeshGenerator.C.

682 {
683  return i + (nx + 1) * (j + k * (ny + 1));
684 }

◆ numNeighbors() [1/7]

template<typename T >
dof_id_type DistributedRectilinearMeshGenerator::numNeighbors ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type   
)
inline

Get the number of neighbors this element will have.

Parameters
nxThe number of elements in the x direction
nyThe number of elements in the y direction
nzThe number of elements in the z direction
iThe x index of this element
jThe y index of this element
kThe z index of this element
Returns
The number of neighboring elements

Definition at line 96 of file DistributedRectilinearMeshGenerator.h.

102  {
103  mooseError("numNeighbors not implemented for this element type in "
104  "DistributedRectilinearMeshGenerator");
105  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ numNeighbors() [2/7]

template<>
dof_id_type DistributedRectilinearMeshGenerator::numNeighbors ( const dof_id_type  nx,
const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  i,
const dof_id_type  ,
const dof_id_type   
)

Definition at line 141 of file DistributedRectilinearMeshGenerator.C.

147 {
148  // The ends only have one neighbor
149  if (i == 0 || i == nx - 1)
150  return 1;
151 
152  return 2;
153 }

◆ numNeighbors() [3/7]

template<>
dof_id_type DistributedRectilinearMeshGenerator::numNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  ,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type   
)

Definition at line 317 of file DistributedRectilinearMeshGenerator.C.

323 {
324  dof_id_type n = 4;
325 
326  if (i == 0)
327  n--;
328 
329  if (i == nx - 1)
330  n--;
331 
332  if (j == 0)
333  n--;
334 
335  if (j == ny - 1)
336  n--;
337 
338  return n;
339 }
uint8_t dof_id_type

◆ numNeighbors() [4/7]

template<>
dof_id_type DistributedRectilinearMeshGenerator::numNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k 
)

◆ numNeighbors() [5/7]

template<>
dof_id_type DistributedRectilinearMeshGenerator::numNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k 
)

◆ numNeighbors() [6/7]

template<>
dof_id_type DistributedRectilinearMeshGenerator::numNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k 
)

◆ numNeighbors() [7/7]

template<>
dof_id_type DistributedRectilinearMeshGenerator::numNeighbors ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const dof_id_type  i,
const dof_id_type  j,
const dof_id_type  k 
)

Definition at line 589 of file DistributedRectilinearMeshGenerator.C.

595 {
596  dof_id_type n = 6;
597 
598  if (i == 0)
599  n--;
600 
601  if (i == nx - 1)
602  n--;
603 
604  if (j == 0)
605  n--;
606 
607  if (j == ny - 1)
608  n--;
609 
610  if (k == 0)
611  n--;
612 
613  if (k == nz - 1)
614  n--;
615 
616  return n;
617 }
uint8_t dof_id_type

◆ paramError()

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

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 255 of file MooseBaseParameterInterface.h.

Referenced by HierarchicalGridPartitioner::_do_partition(), AutoCheckpointAction::act(), SetupDebugAction::act(), CommonOutputAction::act(), AddPeriodicBCAction::act(), ADConservativeAdvectionBC::ADConservativeAdvectionBC(), DiffusionCG::addFEKernels(), DiffusionFV::addFVKernels(), NEML2ModelExecutor::addGatheredParameter(), NEML2ModelExecutor::addGatheredVariable(), ADDGKernel::ADDGKernel(), CylinderComponent::addMeshGenerators(), AddPeriodicBCAction::AddPeriodicBCAction(), ReporterPointSource::addPoints(), ADIntegratedBCTempl< T >::ADIntegratedBCTempl(), ADKernelTempl< T >::ADKernelTempl(), ADNodalKernel::ADNodalKernel(), ADPenaltyPeriodicSegmentalConstraint::ADPenaltyPeriodicSegmentalConstraint(), ADPeriodicSegmentalConstraint::ADPeriodicSegmentalConstraint(), AdvancedExtruderGenerator::AdvancedExtruderGenerator(), AdvectiveFluxAux::AdvectiveFluxAux(), ADVectorFunctionDirichletBC::ADVectorFunctionDirichletBC(), AnnularMesh::AnnularMesh(), AnnularMeshGenerator::AnnularMeshGenerator(), ArrayBodyForce::ArrayBodyForce(), ArrayDGKernel::ArrayDGKernel(), ArrayDGLowerDKernel::ArrayDGLowerDKernel(), ArrayDirichletBC::ArrayDirichletBC(), ArrayHFEMDirichletBC::ArrayHFEMDirichletBC(), ArrayIntegratedBC::ArrayIntegratedBC(), ArrayKernel::ArrayKernel(), ArrayLowerDIntegratedBC::ArrayLowerDIntegratedBC(), ArrayParsedAux::ArrayParsedAux(), ArrayPenaltyDirichletBC::ArrayPenaltyDirichletBC(), ArrayVacuumBC::ArrayVacuumBC(), ArrayVarReductionAux::ArrayVarReductionAux(), ParsedSubdomainIDsGenerator::assignElemSubdomainID(), AuxKernelTempl< Real >::AuxKernelTempl(), BatchMeshGeneratorAction::BatchMeshGeneratorAction(), BlockDeletionGenerator::BlockDeletionGenerator(), BlockWeightedPartitioner::BlockWeightedPartitioner(), BoundsBase::BoundsBase(), BreakMeshByBlockGenerator::BreakMeshByBlockGenerator(), BuildArrayVariableAux::BuildArrayVariableAux(), PiecewiseTabularBase::buildFromFile(), MFEMMesh::buildMesh(), CartesianGridDivision::CartesianGridDivision(), checkComponent(), MeshGenerator::checkGetMesh(), ComponentInitialConditionInterface::checkInitialConditionsAllRequested(), BatchMeshGeneratorAction::checkInputParameterType(), PhysicsBase::checkIntegrityEarly(), PostprocessorInterface::checkParam(), FEProblemBase::checkProblemIntegrity(), MultiAppReporterTransfer::checkSiblingsTransferSupported(), Coupleable::checkVar(), MultiAppTransfer::checkVariable(), CircularBoundaryCorrectionGenerator::CircularBoundaryCorrectionGenerator(), CircularBoundaryCorrectionGenerator::circularCenterCalculator(), MultiAppGeneralFieldTransfer::closestToPosition(), CoarsenBlockGenerator::CoarsenBlockGenerator(), CombinerGenerator::CombinerGenerator(), ComponentInitialConditionInterface::ComponentInitialConditionInterface(), ComponentMaterialPropertyInterface::ComponentMaterialPropertyInterface(), CompositionDT::CompositionDT(), FunctorAux::computeValue(), ConcentricCircleMeshGenerator::ConcentricCircleMeshGenerator(), LibtorchNeuralNetControl::conditionalParameterError(), ConservativeAdvectionTempl< is_ad >::ConservativeAdvectionTempl(), ConstantVectorPostprocessor::ConstantVectorPostprocessor(), ContainsPointAux::ContainsPointAux(), CopyValueAux::CopyValueAux(), Coupleable::Coupleable(), CoupledForceTempl< is_ad >::CoupledForceTempl(), CoupledValueFunctionMaterialTempl< is_ad >::CoupledValueFunctionMaterialTempl(), MultiApp::createApp(), MeshGeneratorSystem::createMeshGenerator(), CylindricalGridDivision::CylindricalGridDivision(), ConstantReporter::declareConstantReporterValues(), AccumulateReporter::declareLateValues(), DefaultMultiAppFixedPointConvergence::DefaultMultiAppFixedPointConvergence(), DGKernel::DGKernel(), DGKernelBase::DGKernelBase(), DGLowerDKernel::DGLowerDKernel(), DiffusionFluxAux::DiffusionFluxAux(), DomainUserObject::DomainUserObject(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), ElementLengthAux::ElementLengthAux(), ElementLpNormAux::ElementLpNormAux(), ExtraIDIntegralVectorPostprocessor::elementValue(), ElementValueSampler::ElementValueSampler(), ElementVectorL2Error::ElementVectorL2Error(), EqualValueEmbeddedConstraintTempl< is_ad >::EqualValueEmbeddedConstraintTempl(), ReporterPointSource::errorCheck(), ExamplePatchMeshGenerator::ExamplePatchMeshGenerator(), MultiAppNearestNodeTransfer::execute(), MultiAppUserObjectTransfer::execute(), ExtraElementIDAux::ExtraElementIDAux(), ExtraElementIntegerDivision::ExtraElementIntegerDivision(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), FEProblemSolve::FEProblemSolve(), FileMeshGenerator::FileMeshGenerator(), FillBetweenCurvesGenerator::FillBetweenCurvesGenerator(), FillBetweenSidesetsGenerator::FillBetweenSidesetsGenerator(), ReporterPointSource::fillPoint(), SpatialUserObjectVectorPostprocessor::fillPoints(), CombinerGenerator::fillPositions(), MultiApp::fillPositions(), InternalSideIndicatorBase::finalize(), ForcingFunctionAux::ForcingFunctionAux(), FullSolveMultiApp::FullSolveMultiApp(), FunctionArrayAux::FunctionArrayAux(), FunctionValuePostprocessor::FunctionValuePostprocessor(), FunctorADConverterTempl< T >::FunctorADConverterTempl(), FunctorAux::FunctorAux(), FunctorBinnedValuesDivision::FunctorBinnedValuesDivision(), FunctorCoordinatesFunctionAux::FunctorCoordinatesFunctionAux(), FunctorElementalGradientAuxTempl< is_ad >::FunctorElementalGradientAuxTempl(), FunctorExtremaPositions::FunctorExtremaPositions(), FunctorIC::FunctorIC(), FunctorPositions::FunctorPositions(), FunctorVectorElementalAuxTempl< is_ad >::FunctorVectorElementalAuxTempl(), FVAdvection::FVAdvection(), FVFluxBC::FVFluxBC(), FVInterfaceKernel::FVInterfaceKernel(), FVOneVarDiffusionInterface::FVOneVarDiffusionInterface(), FVTwoVarContinuityConstraint::FVTwoVarContinuityConstraint(), BoundaryDeletionGenerator::generate(), UniqueExtraIDMeshGenerator::generate(), ExtraNodesetGenerator::generate(), AddMetaDataGenerator::generate(), BreakBoundaryOnSubdomainGenerator::generate(), ElementsToTetrahedronsConverter::generate(), FillBetweenCurvesGenerator::generate(), FillBetweenSidesetsGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), BlockToMeshConverterGenerator::generate(), PlaneIDMeshGenerator::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), BlockDeletionGenerator::generate(), BreakMeshByBlockGenerator::generate(), CoarsenBlockGenerator::generate(), FlipSidesetGenerator::generate(), GeneratedMeshGenerator::generate(), ParsedSubdomainGeneratorBase::generate(), RefineBlockGenerator::generate(), RefineSidesetGenerator::generate(), AdvancedExtruderGenerator::generate(), CircularBoundaryCorrectionGenerator::generate(), BreakMeshByElementGenerator::generate(), CombinerGenerator::generate(), MeshCollectionGenerator::generate(), MeshExtruderGenerator::generate(), ParsedCurveGenerator::generate(), ParsedExtraElementIDGenerator::generate(), StackGenerator::generate(), StitchedMeshGenerator::generate(), XYZDelaunayGenerator::generate(), XYDelaunayGenerator::generate(), XYMeshLineCutter::generate(), CutMeshByLevelSetGeneratorBase::generate(), PatternedMeshGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), GeneratedMeshGenerator::GeneratedMeshGenerator(), GenericFunctorGradientMaterialTempl< is_ad >::GenericFunctorGradientMaterialTempl(), GenericFunctorMaterialTempl< is_ad >::GenericFunctorMaterialTempl(), GenericFunctorTimeDerivativeMaterialTempl< is_ad >::GenericFunctorTimeDerivativeMaterialTempl(), GenericVectorFunctorMaterialTempl< is_ad >::GenericVectorFunctorMaterialTempl(), PropertyReadFile::getBlockData(), ComponentBoundaryConditionInterface::getBoundaryCondition(), MultiApp::getCommandLineArgs(), PropertyReadFile::getData(), PropertyReadFile::getFileNames(), Sampler::getGlobalSamples(), ComponentInitialConditionInterface::getInitialCondition(), NEML2Action::getInputParameterMapping(), MultiAppNearestNodeTransfer::getLocalEntitiesAndComponents(), Sampler::getLocalSamples(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), Sampler::getNextLocalRow(), FEProblemSolve::getParamFromNonlinearSystemVectorParam(), PostprocessorInterface::getPostprocessorNameInternal(), PostprocessorInterface::getPostprocessorValueInternal(), MultiAppNearestNodeTransfer::getTargetLocalNodes(), UserObjectInterface::getUserObjectBase(), UserObjectInterface::getUserObjectName(), HFEMDirichletBC::HFEMDirichletBC(), AddVariableAction::init(), MultiApp::init(), DistributedPositions::initialize(), BlockWeightedPartitioner::initialize(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), PhysicsBase::initializePhysics(), JSONOutput::initialSetup(), MultiAppCloneReporterTransfer::initialSetup(), SolutionIC::initialSetup(), SideFVFluxBCIntegral::initialSetup(), ElementSubdomainModifierBase::initialSetup(), MultiAppVariableValueSamplePostprocessorTransfer::initialSetup(), MultiAppDofCopyTransfer::initialSetup(), MultiAppGeneralFieldNearestLocationTransfer::initialSetup(), HistogramVectorPostprocessor::initialSetup(), ReferenceResidualConvergence::initialSetup(), PiecewiseConstantFromCSV::initialSetup(), LibtorchControlValuePostprocessor::initialSetup(), MultiAppGeneralFieldTransfer::initialSetup(), SampledOutput::initSample(), AddMetaDataGenerator::inputChecker(), IntegratedBC::IntegratedBC(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::InterfaceDiffusiveFluxIntegralTempl(), InterfaceValueUserObjectAux::InterfaceValueUserObjectAux(), InternalSideIndicatorBase::InternalSideIndicatorBase(), InterpolatedStatefulMaterialTempl< T >::InterpolatedStatefulMaterialTempl(), InversePowerMethod::InversePowerMethod(), IterationAdaptiveDT::IterationAdaptiveDT(), MultiApp::keepSolutionDuringRestore(), Kernel::Kernel(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), LinearCombinationFunction::LinearCombinationFunction(), LinearFVAdvectionDiffusionFunctorRobinBC::LinearFVAdvectionDiffusionFunctorRobinBC(), LowerDIntegratedBC::LowerDIntegratedBC(), PNGOutput::makeMeshFunc(), MatCoupledForce::MatCoupledForce(), MaterialADConverterTempl< T >::MaterialADConverterTempl(), MaterialFunctorConverterTempl< T >::MaterialFunctorConverterTempl(), MatrixSymmetryCheck::MatrixSymmetryCheck(), PatternedMeshGenerator::mergeSubdomainNameMaps(), MeshCollectionGenerator::MeshCollectionGenerator(), MeshDiagnosticsGenerator::MeshDiagnosticsGenerator(), MeshDivisionAux::MeshDivisionAux(), MeshGenerator::MeshGenerator(), MeshGeneratorComponent::MeshGeneratorComponent(), MFEMGenericFunctorMaterial::MFEMGenericFunctorMaterial(), MFEMGenericFunctorVectorMaterial::MFEMGenericFunctorVectorMaterial(), MooseLinearVariableFV< Real >::MooseLinearVariableFV(), UserObjectInterface::mooseObjectError(), MoosePreconditioner::MoosePreconditioner(), MooseStaticCondensationPreconditioner::MooseStaticCondensationPreconditioner(), MooseVariableBase::MooseVariableBase(), MortarConstraintBase::MortarConstraintBase(), MortarNodalAuxKernelTempl< ComputeValueType >::MortarNodalAuxKernelTempl(), MultiApp::moveApp(), MoveNodeGenerator::MoveNodeGenerator(), MultiApp::MultiApp(), MultiAppCloneReporterTransfer::MultiAppCloneReporterTransfer(), MultiAppGeneralFieldNearestLocationTransfer::MultiAppGeneralFieldNearestLocationTransfer(), MultiAppGeneralFieldShapeEvaluationTransfer::MultiAppGeneralFieldShapeEvaluationTransfer(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppGeometricInterpolationTransfer::MultiAppGeometricInterpolationTransfer(), MultiAppNearestNodeTransfer::MultiAppNearestNodeTransfer(), MultiAppPostprocessorInterpolationTransfer::MultiAppPostprocessorInterpolationTransfer(), MultiAppPostprocessorToAuxScalarTransfer::MultiAppPostprocessorToAuxScalarTransfer(), MultiAppPostprocessorTransfer::MultiAppPostprocessorTransfer(), MultiAppProjectionTransfer::MultiAppProjectionTransfer(), MultiAppReporterTransfer::MultiAppReporterTransfer(), MultiAppScalarToAuxScalarTransfer::MultiAppScalarToAuxScalarTransfer(), MultiAppShapeEvaluationTransfer::MultiAppShapeEvaluationTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), MultiAppVariableValueSamplePostprocessorTransfer::MultiAppVariableValueSamplePostprocessorTransfer(), MultiAppVariableValueSampleTransfer::MultiAppVariableValueSampleTransfer(), MultiAppVectorPostprocessorTransfer::MultiAppVectorPostprocessorTransfer(), MultiSystemSolveObject::MultiSystemSolveObject(), NearestNodeValueAux::NearestNodeValueAux(), NEML2Action::NEML2Action(), NestedDivision::NestedDivision(), NodalBC::NodalBC(), NodalEqualValueConstraint::NodalEqualValueConstraint(), NodalKernel::NodalKernel(), NodalPatchRecoveryAux::NodalPatchRecoveryAux(), NodalValueSampler::NodalValueSampler(), Output::Output(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedFunctorMaterialTempl< is_ad >::ParsedFunctorMaterialTempl(), ParsedPostprocessor::ParsedPostprocessor(), PatternedMeshGenerator::PatternedMeshGenerator(), PenaltyPeriodicSegmentalConstraint::PenaltyPeriodicSegmentalConstraint(), PeriodicSegmentalConstraint::PeriodicSegmentalConstraint(), PIDTransientControl::PIDTransientControl(), PlaneDeletionGenerator::PlaneDeletionGenerator(), PlaneIDMeshGenerator::PlaneIDMeshGenerator(), PointwiseRenormalizeVector::PointwiseRenormalizeVector(), PolyLineMeshGenerator::PolyLineMeshGenerator(), ReporterInterface::possiblyCheckHasReporter(), VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessor(), LibmeshPartitioner::prepareBlocksForSubdomainPartitioner(), ProjectedMaterialPropertyNodalPatchRecoveryAux::ProjectedMaterialPropertyNodalPatchRecoveryAux(), ProjectionAux::ProjectionAux(), PropertyReadFile::PropertyReadFile(), RandomIC::RandomIC(), MultiApp::readCommandLineArguments(), PropertyReadFile::readData(), SolutionUserObjectBase::readXda(), ReferenceResidualConvergence::ReferenceResidualConvergence(), RefineBlockGenerator::RefineBlockGenerator(), RefineSidesetGenerator::RefineSidesetGenerator(), RenameBlockGenerator::RenameBlockGenerator(), RenameBoundaryGenerator::RenameBoundaryGenerator(), ReporterPointSource::ReporterPointSource(), SecondTimeDerivativeAux::SecondTimeDerivativeAux(), FEProblemBase::setLinearConvergenceNames(), FEProblemBase::setNonlinearConvergenceNames(), MooseMesh::setPartitioner(), NodeSetsGeneratorBase::setup(), SideSetsGeneratorBase::setup(), NEML2Action::setupDerivativeMappings(), NEML2Action::setupParameterDerivativeMappings(), TimeSequenceStepperBase::setupSequence(), SidesetAroundSubdomainUpdater::SidesetAroundSubdomainUpdater(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), SideValueSampler::SideValueSampler(), SingleRankPartitioner::SingleRankPartitioner(), SphericalGridDivision::SphericalGridDivision(), SymmetryTransformGenerator::SymmetryTransformGenerator(), Terminator::Terminator(), TimeDerivativeAux::TimeDerivativeAux(), Transfer::Transfer(), TransformGenerator::TransformGenerator(), TransientMultiApp::TransientMultiApp(), ParsedCurveGenerator::tSectionSpaceDefiner(), UniqueExtraIDMeshGenerator::UniqueExtraIDMeshGenerator(), UserObject::UserObject(), Checkpoint::validateExecuteOn(), ParsedAux::validateGenericVectorNames(), ParsedMaterialBase::validateVectorNames(), FunctorIC::value(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), VectorBodyForce::VectorBodyForce(), VectorFunctionDirichletBC::VectorFunctionDirichletBC(), VectorFunctionIC::VectorFunctionIC(), VolumeAux::VolumeAux(), WebServerControl::WebServerControl(), XYDelaunayGenerator::XYDelaunayGenerator(), XYMeshLineCutter::XYMeshLineCutter(), and XYZDelaunayGenerator::XYZDelaunayGenerator().

256 {
257  Moose::show_trace = false;
258  _moose_base.callMooseError(paramErrorMsg(param, std::forward<Args>(args)...),
259  /* with_prefix = */ false);
260  Moose::show_trace = true;
261 }
bool show_trace
Set to true (the default) to print the stack trace with error and warning messages - false to omit it...
Definition: Moose.C:763
const MooseBase & _moose_base
The MooseBase object that inherits this class.
std::string paramErrorMsg(const std::string &param, Args... args) const
void callMooseError(std::string msg, const bool with_prefix) const
Calls moose error with the message msg.
Definition: MooseBase.C:33

◆ parameters()

const InputParameters& MooseBaseParameterInterface::parameters ( ) const
inlineinherited

Get the parameters of the object.

Returns
The parameters of the object

Definition at line 62 of file MooseBaseParameterInterface.h.

Referenced by SetupDebugAction::act(), AddActionComponentAction::act(), CommonOutputAction::act(), Action::Action(), FEProblemBase::addAnyRedistributers(), MFEMProblem::addAuxKernel(), FEProblemBase::addAuxKernel(), FEProblemBase::addAuxScalarKernel(), MFEMProblem::addAuxVariable(), DisplacedProblem::addAuxVariable(), MFEMProblem::addBoundaryCondition(), FEProblemBase::addBoundaryCondition(), FEProblemBase::addConstraint(), FEProblemBase::addConvergence(), FEProblemBase::addDamper(), AddDefaultConvergenceAction::addDefaultMultiAppFixedPointConvergence(), FEProblemBase::addDefaultMultiAppFixedPointConvergence(), ReferenceResidualProblem::addDefaultNonlinearConvergence(), AddDefaultConvergenceAction::addDefaultNonlinearConvergence(), FEProblemBase::addDefaultNonlinearConvergence(), AddDefaultConvergenceAction::addDefaultSteadyStateConvergence(), FEProblemBase::addDefaultSteadyStateConvergence(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), FEProblemBase::addDistribution(), MFEMProblem::addFESpace(), MFEMProblem::addFunction(), FEProblemBase::addFunction(), MFEMProblem::addFunctorMaterial(), FEProblemBase::addFunctorMaterial(), FEProblemBase::addFVBC(), FEProblemBase::addFVInitialCondition(), FEProblemBase::addFVInterfaceKernel(), FEProblemBase::addFVKernel(), MFEMProblem::addGridFunction(), FEProblemBase::addHDGKernel(), FEProblemBase::addIndicator(), MFEMProblem::addInitialCondition(), FEProblemBase::addInitialCondition(), DiffusionPhysicsBase::addInitialConditions(), FEProblemBase::addInterfaceKernel(), FEProblemBase::addInterfaceMaterial(), MFEMProblem::addKernel(), FEProblemBase::addKernel(), FEProblemBase::addLinearFVBC(), FEProblemBase::addLinearFVKernel(), FEProblem::addLineSearch(), FEProblemBase::addMarker(), FEProblemBase::addMaterial(), FEProblemBase::addMaterialHelper(), FEProblemBase::addMeshDivision(), MFEMProblem::addMFEMFESpaceFromMOOSEVariable(), MFEMProblem::addMFEMPreconditioner(), MFEMProblem::addMFEMSolver(), FEProblemBase::addMultiApp(), FEProblemBase::addNodalKernel(), FEProblemBase::addObject(), FEProblemBase::addObjectParamsHelper(), FEProblemBase::addOutput(), MFEMProblem::addPostprocessor(), FEProblemBase::addPostprocessor(), FEProblemBase::addPredictor(), FEProblemBase::addReporter(), FEProblemBase::addSampler(), FEProblemBase::addScalarKernel(), MFEMProblem::addSubMesh(), FEProblemBase::addTimeIntegrator(), MFEMProblem::addTransfer(), FEProblemBase::addTransfer(), FEProblemBase::addUserObject(), MFEMProblem::addVariable(), DisplacedProblem::addVariable(), FEProblemBase::addVectorPostprocessor(), ADPiecewiseLinearInterpolationMaterial::ADPiecewiseLinearInterpolationMaterial(), AdvancedOutput::AdvancedOutput(), ADVectorFunctionDirichletBC::ADVectorFunctionDirichletBC(), AnnularMesh::AnnularMesh(), AnnularMeshGenerator::AnnularMeshGenerator(), Action::associateWithParameter(), AuxKernelTempl< Real >::AuxKernelTempl(), AuxScalarKernel::AuxScalarKernel(), BoundsBase::BoundsBase(), MooseMesh::buildTypedMesh(), PostprocessorInterface::checkParam(), AddDefaultConvergenceAction::checkUnusedMultiAppFixedPointConvergenceParameters(), AddDefaultConvergenceAction::checkUnusedNonlinearConvergenceParameters(), AddDefaultConvergenceAction::checkUnusedSteadyStateConvergenceParameters(), SampledOutput::cloneMesh(), LibtorchNeuralNetControl::conditionalParameterError(), Console::Console(), CommonOutputAction::create(), MultiApp::createApp(), Postprocessor::declareValue(), DumpObjectsProblem::deduceNecessaryParameters(), DefaultMultiAppFixedPointConvergence::DefaultMultiAppFixedPointConvergence(), DumpObjectsProblem::dumpObjectHelper(), DumpObjectsProblem::DumpObjectsProblem(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), ElementMaterialSampler::ElementMaterialSampler(), ExamplePatchMeshGenerator::ExamplePatchMeshGenerator(), Executor::Executor(), Exodus::Exodus(), FEProblem::FEProblem(), FEProblemBase::FEProblemBase(), FixedPointSolve::FixedPointSolve(), FunctorSmootherTempl< T >::FunctorSmootherTempl(), GapValueAux::GapValueAux(), ParsedSubdomainGeneratorBase::generate(), MooseBaseParameterInterface::getCheckedPointerParam(), ActionWarehouse::getCurrentActionName(), ExecutorInterface::getExecutor(), Material::getMaterial(), ReporterInterface::getReporterName(), Reporter::getReporterValueName(), UserObjectInterface::getUserObjectName(), VectorPostprocessorInterface::getVectorPostprocessorName(), GhostingUserObject::GhostingUserObject(), AttribSystem::initFrom(), AttribDisplaced::initFrom(), BlockRestrictable::initializeBlockRestrictable(), FullSolveMultiApp::initialSetup(), FEProblemBase::initNullSpaceVectors(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::InterfaceDiffusiveFluxIntegralTempl(), InterfaceIntegralVariableValuePostprocessor::InterfaceIntegralVariableValuePostprocessor(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), isValid(), IterationAdaptiveDT::IterationAdaptiveDT(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), MFEMCGSolver::MFEMCGSolver(), MFEMGMRESSolver::MFEMGMRESSolver(), MFEMHypreADS::MFEMHypreADS(), MFEMHypreAMS::MFEMHypreAMS(), MFEMHypreBoomerAMG::MFEMHypreBoomerAMG(), MFEMHypreFGMRES::MFEMHypreFGMRES(), MFEMHypreGMRES::MFEMHypreGMRES(), MFEMHyprePCG::MFEMHyprePCG(), MFEMOperatorJacobiSmoother::MFEMOperatorJacobiSmoother(), MFEMSuperLU::MFEMSuperLU(), MooseObject::MooseObject(), UserObjectInterface::mooseObjectError(), MooseVariableInterface< Real >::MooseVariableInterface(), MultiApp::MultiApp(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppVariableValueSamplePostprocessorTransfer::MultiAppVariableValueSamplePostprocessorTransfer(), NodeFaceConstraint::NodeFaceConstraint(), OverlayMeshGenerator::OverlayMeshGenerator(), PenetrationAux::PenetrationAux(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), NEML2Action::printSummary(), ProjectedStatefulMaterialStorageAction::processProperty(), PropertyReadFile::PropertyReadFile(), PseudoTimestep::PseudoTimestep(), RandomIC::RandomIC(), ReferenceResidualConvergence::ReferenceResidualConvergence(), InputParameterWarehouse::removeInputParameters(), FEProblem::setInputParametersFEProblem(), FEProblemBase::setInputParametersFEProblem(), FEProblemBase::setResidualObjectParamsAndLog(), SideSetsGeneratorBase::setup(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), Moose::PetscSupport::storePetscOptions(), DumpObjectsProblem::stringifyParameters(), TaggingInterface::TaggingInterface(), Transfer::Transfer(), TransientBase::TransientBase(), VectorBodyForce::VectorBodyForce(), VectorFunctionDirichletBC::VectorFunctionDirichletBC(), VectorFunctionIC::VectorFunctionIC(), and VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl().

62 { return _pars; }
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.

◆ paramInfo()

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

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 272 of file MooseBaseParameterInterface.h.

Referenced by GridPartitioner::_do_partition(), ComboMarker::ComboMarker(), FunctorIC::FunctorIC(), and TransientMultiApp::TransientMultiApp().

273 {
274  mooseInfo(paramErrorMsg(param, std::forward<Args>(args)...));
275 }
void mooseInfo(Args &&... args)
Emit an informational message with the given stringified, concatenated args.
Definition: MooseError.h:369
std::string paramErrorMsg(const std::string &param, Args... args) const

◆ paramWarning()

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

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 265 of file MooseBaseParameterInterface.h.

Referenced by GridPartitioner::_do_partition(), EigenProblem::checkProblemIntegrity(), CombinerGenerator::copyIntoMesh(), DefaultMultiAppFixedPointConvergence::DefaultMultiAppFixedPointConvergence(), MultiAppNearestNodeTransfer::execute(), FEProblemSolve::FEProblemSolve(), UniqueExtraIDMeshGenerator::generate(), PlaneIDMeshGenerator::generate(), Terminator::initialSetup(), SampledOutput::initSample(), MooseMesh::MooseMesh(), FEProblemBase::setPreserveMatrixSparsityPattern(), and Terminator::Terminator().

266 {
267  mooseWarning(paramErrorMsg(param, std::forward<Args>(args)...));
268 }
void mooseWarning(Args &&... args)
Emit a warning message with the given stringified, concatenated args.
Definition: MooseError.h:336
std::string paramErrorMsg(const std::string &param, Args... args) const

◆ paritionSquarely() [1/7]

template<typename T >
void DistributedRectilinearMeshGenerator::paritionSquarely ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const processor_id_type  ,
std::vector< dof_id_type > &  ,
std::vector< dof_id_type > &  ,
std::vector< dof_id_type > &   
)
inline

Partition mesh squarely.

This minic DMDA partition in PETSc. The motivation is that partition a rec mesh using the same way in which DMDA is partitioned so that the partitions between MOOSE and PETSc DMDA are consistent to minimize the communication const in multiapp transfers

Parameters
nxThe number of elements in the x direction
nyThe number of elements in the y direction
nzThe number of elements in the z direction
num_procsThe number of processors
istartsThe starting x indices of elements for each processor
jstartsThe starting y indices of elements for each processor
kstartsThe starting z indices of elements for each processor

Definition at line 228 of file DistributedRectilinearMeshGenerator.h.

235  {
236  mooseError("paritionSquarely not implemented for this element type in "
237  "DistributedRectilinearMeshGenerator");
238  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ paritionSquarely() [2/7]

template<>
void DistributedRectilinearMeshGenerator::paritionSquarely ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const processor_id_type  ,
std::vector< dof_id_type > &  ,
std::vector< dof_id_type > &  ,
std::vector< dof_id_type > &   
)

◆ paritionSquarely() [3/7]

template<>
void DistributedRectilinearMeshGenerator::paritionSquarely ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const processor_id_type  ,
std::vector< dof_id_type > &  ,
std::vector< dof_id_type > &  ,
std::vector< dof_id_type > &   
)

◆ paritionSquarely() [4/7]

template<>
void DistributedRectilinearMeshGenerator::paritionSquarely ( const dof_id_type  ,
const dof_id_type  ,
const dof_id_type  ,
const processor_id_type  ,
std::vector< dof_id_type > &  ,
std::vector< dof_id_type > &  ,
std::vector< dof_id_type > &   
)

◆ paritionSquarely() [5/7]

template<>
void DistributedRectilinearMeshGenerator::paritionSquarely ( const dof_id_type  nx,
const dof_id_type  ,
const dof_id_type  ,
const processor_id_type  num_procs,
std::vector< dof_id_type > &  istarts,
std::vector< dof_id_type > &  jstarts,
std::vector< dof_id_type > &  kstarts 
)

Definition at line 853 of file DistributedRectilinearMeshGenerator.C.

860 {
861  // Starting indices along x direction
862  istarts.resize(num_procs + 1);
863  // Starting indices along y direction
864  // There is only one processor along y direction since it is a 1D mesh
865  jstarts.resize(2);
866  jstarts[0] = 0;
867  jstarts[1] = 1;
868  // Starting indices along z direction
869  // There is only one processor along z direction since it is a 1D mesh
870  kstarts.resize(2);
871  kstarts[0] = 0;
872  kstarts[1] = 1;
873 
874  istarts[0] = 0;
875  for (processor_id_type pid = 0; pid < num_procs; pid++)
876  // Partition mesh evenly. The extra elements are assigned to the front processors
877  istarts[pid + 1] = istarts[pid] + (nx / num_procs + ((nx % num_procs) > pid));
878 }
uint8_t processor_id_type

◆ paritionSquarely() [6/7]

template<>
void DistributedRectilinearMeshGenerator::paritionSquarely ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  ,
const processor_id_type  num_procs,
std::vector< dof_id_type > &  istarts,
std::vector< dof_id_type > &  jstarts,
std::vector< dof_id_type > &  kstarts 
)

Definition at line 882 of file DistributedRectilinearMeshGenerator.C.

889 {
890  // Try for squarish distribution
891  // The number of processors along x direction
892  processor_id_type px =
893  (processor_id_type)(0.5 + std::sqrt(((Real)nx) * ((Real)num_procs) / ((Real)ny)));
894 
895  if (!px)
896  px = 1;
897 
898  // The number of processors along y direction
899  processor_id_type py = 1;
900  // Fact num_procs into px times py
901  while (px > 0)
902  {
903  py = num_procs / px;
904  if (py * px == num_procs)
905  break;
906  px--;
907  }
908  // More processors are needed for denser side
909  if (nx > ny && py < px)
910  std::swap(px, py);
911 
912  // Starting indices along x direction
913  istarts.resize(px + 1);
914  // Starting indices along y direction
915  jstarts.resize(py + 1);
916  // Starting indices along z direction
917  kstarts.resize(2);
918  // There is no elements along z direction
919  kstarts[0] = 0;
920  kstarts[1] = 1;
921 
922  istarts[0] = 0;
923  for (processor_id_type pxid = 0; pxid < px; pxid++)
924  // Partition elements evenly along x direction
925  istarts[pxid + 1] = istarts[pxid] + nx / px + ((nx % px) > pxid);
926 
927  jstarts[0] = 0;
928  for (processor_id_type pyid = 0; pyid < py; pyid++)
929  // Partition elements evenly along y direction
930  jstarts[pyid + 1] = jstarts[pyid] + (ny / py + ((ny % py) > pyid));
931 }
void swap(std::vector< T > &data, const std::size_t idx0, const std::size_t idx1, const libMesh::Parallel::Communicator &comm)
Swap function for serial or distributed vector of data.
Definition: Shuffle.h:494
uint8_t processor_id_type
CTSub CT_OPERATOR_BINARY CTMul CTCompareLess CTCompareGreater CTCompareEqual _arg template * sqrt(_arg)) *_arg.template D< dtag >()) CT_SIMPLE_UNARY_FUNCTION(tanh

◆ paritionSquarely() [7/7]

template<>
void DistributedRectilinearMeshGenerator::paritionSquarely ( const dof_id_type  nx,
const dof_id_type  ny,
const dof_id_type  nz,
const processor_id_type  num_procs,
std::vector< dof_id_type > &  istarts,
std::vector< dof_id_type > &  jstarts,
std::vector< dof_id_type > &  kstarts 
)

Definition at line 935 of file DistributedRectilinearMeshGenerator.C.

942 {
943  /* Try for squarish distribution */
944  // The number of processors along y direction
945  processor_id_type py =
946  (processor_id_type)(0.5 + std::pow(((Real)ny * ny) * ((Real)num_procs) / ((Real)nz * nx),
947  (Real)(1. / 3.)));
948  if (!py)
949  py = 1;
950  // The number of processors for pxpz plane
951  processor_id_type pxpz = 1;
952  // Factorize num_procs into py times pxpz
953  while (py > 0)
954  {
955  pxpz = num_procs / py;
956  if (py * pxpz == num_procs)
957  break;
958  py--;
959  }
960 
961  if (!py)
962  py = 1;
963 
964  // There number of processors along x direction
965  processor_id_type px =
966  (processor_id_type)(0.5 + std::sqrt(((Real)nx) * ((Real)num_procs) / ((Real)nz * py)));
967  if (!px)
968  px = 1;
969  // The number of processors along z direction
970  processor_id_type pz = 1;
971  // Factorize num_procs into px times py times pz
972  while (px > 0)
973  {
974  pz = num_procs / (px * py);
975  if (px * py * pz == num_procs)
976  break;
977  px--;
978  }
979  // denser mesh takes more processors
980  if (nx > nz && px < pz)
981  std::swap(px, pz);
982 
983  istarts.resize(px + 1);
984  jstarts.resize(py + 1);
985  kstarts.resize(pz + 1);
986 
987  istarts[0] = 0;
988  for (processor_id_type pxid = 0; pxid < px; pxid++)
989  // Partition mesh evenly along x direction
990  istarts[pxid + 1] = istarts[pxid] + nx / px + ((nx % px) > pxid);
991 
992  jstarts[0] = 0;
993  for (processor_id_type pyid = 0; pyid < py; pyid++)
994  // Partition mesh evenly along y direction
995  jstarts[pyid + 1] = jstarts[pyid] + (ny / py + ((ny % py) > pyid));
996 
997  kstarts[0] = 0;
998  for (processor_id_type pzid = 0; pzid < pz; pzid++)
999  // Partition mesh evenly along z direction
1000  kstarts[pzid + 1] = kstarts[pzid] + (nz / pz + ((nz % pz) > pzid));
1001 }
void swap(std::vector< T > &data, const std::size_t idx0, const std::size_t idx1, const libMesh::Parallel::Communicator &comm)
Swap function for serial or distributed vector of data.
Definition: Shuffle.h:494
uint8_t processor_id_type
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
CTSub CT_OPERATOR_BINARY CTMul CTCompareLess CTCompareGreater CTCompareEqual _arg template * sqrt(_arg)) *_arg.template D< dtag >()) CT_SIMPLE_UNARY_FUNCTION(tanh
MooseUnits pow(const MooseUnits &, int)
Definition: Units.C:537

◆ queryParam()

template<typename T >
const T * MooseBaseParameterInterface::queryParam ( const std::string &  name) const
inherited

Query a parameter for the object.

If the parameter is not valid, nullptr will be returned

Parameters
nameThe name of the parameter
Returns
A pointer to the parameter value, if it exists

Definition at line 222 of file MooseBaseParameterInterface.h.

223 {
224  return isParamValid(name) ? &getParam<T>(name) : nullptr;
225 }
std::string name(const ElemQuality q)
bool isParamValid(const std::string &name) const
Test if the supplied parameter is valid.

◆ scaleNodalPositions() [1/7]

template<>
void DistributedRectilinearMeshGenerator::scaleNodalPositions ( dof_id_type  ,
dof_id_type  ,
dof_id_type  ,
Real  xmin,
Real  xmax,
Real  ,
Real  ,
Real  ,
Real  ,
MeshBase &  mesh 
)

Definition at line 300 of file DistributedRectilinearMeshGenerator.C.

310 {
311  for (auto & node_ptr : mesh.node_ptr_range())
312  (*node_ptr)(0) = (*node_ptr)(0) * (xmax - xmin) + xmin;
313 }
MeshBase & mesh

◆ scaleNodalPositions() [2/7]

template<typename T >
void DistributedRectilinearMeshGenerator::scaleNodalPositions ( dof_id_type  ,
dof_id_type  ,
dof_id_type  ,
Real  ,
Real  ,
Real  ,
Real  ,
Real  ,
Real  ,
MeshBase &   
)
inline

All meshes are generated on the unit square.

This function stretches the mesh out to fill the correct area.

Parameters
nxThe number of elements in the x direction
nyThe number of elements in the y direction
nzThe number of elements in the z direction
xminLower X Coordinate of the generated mesh
xmaxUpper X Coordinate of the generated mesh
yminLower Y Coordinate of the generated mesh
ymaxUpper Y Coordinate of the generated mesh
zminLower Z Coordinate of the generated mesh
zmaxUpper Z Coordinate of the generated mesh
meshDistributed UnstructuredMesh

Definition at line 310 of file DistributedRectilinearMeshGenerator.h.

320  {
321  mooseError("scaleNodalPositions not implemented for this element type in "
322  "DistributedRectilinearMeshGenerator");
323  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ scaleNodalPositions() [3/7]

template<>
void DistributedRectilinearMeshGenerator::scaleNodalPositions ( dof_id_type  ,
dof_id_type  ,
dof_id_type  ,
Real  xmin,
Real  xmax,
Real  ymin,
Real  ymax,
Real  ,
Real  ,
MeshBase &  mesh 
)

Definition at line 558 of file DistributedRectilinearMeshGenerator.C.

568 {
569  for (auto & node_ptr : mesh.node_ptr_range())
570  {
571  (*node_ptr)(0) = (*node_ptr)(0) * (xmax - xmin) + xmin;
572  (*node_ptr)(1) = (*node_ptr)(1) * (ymax - ymin) + ymin;
573  }
574 }
MeshBase & mesh

◆ scaleNodalPositions() [4/7]

template<>
void DistributedRectilinearMeshGenerator::scaleNodalPositions ( dof_id_type  nx,
dof_id_type  ny,
dof_id_type  nz,
Real  xmin,
Real  xmax,
Real  ymin,
Real  ymax,
Real  zmin,
Real  zmax,
MeshBase &  mesh 
)

◆ scaleNodalPositions() [5/7]

template<>
void DistributedRectilinearMeshGenerator::scaleNodalPositions ( dof_id_type  nx,
dof_id_type  ny,
dof_id_type  nz,
Real  xmin,
Real  xmax,
Real  ymin,
Real  ymax,
Real  zmin,
Real  zmax,
MeshBase &  mesh 
)

◆ scaleNodalPositions() [6/7]

template<>
void DistributedRectilinearMeshGenerator::scaleNodalPositions ( dof_id_type  nx,
dof_id_type  ny,
dof_id_type  nz,
Real  xmin,
Real  xmax,
Real  ymin,
Real  ymax,
Real  zmin,
Real  zmax,
MeshBase &  mesh 
)

◆ scaleNodalPositions() [7/7]

template<>
void DistributedRectilinearMeshGenerator::scaleNodalPositions ( dof_id_type  ,
dof_id_type  ,
dof_id_type  ,
Real  xmin,
Real  xmax,
Real  ymin,
Real  ymax,
Real  zmin,
Real  zmax,
MeshBase &  mesh 
)

Definition at line 832 of file DistributedRectilinearMeshGenerator.C.

842 {
843  for (auto & node_ptr : mesh.node_ptr_range())
844  {
845  (*node_ptr)(0) = (*node_ptr)(0) * (xmax - xmin) + xmin;
846  (*node_ptr)(1) = (*node_ptr)(1) * (ymax - ymin) + ymin;
847  (*node_ptr)(2) = (*node_ptr)(2) * (zmax - zmin) + zmin;
848  }
849 }
MeshBase & mesh

◆ setBoundaryNames() [1/7]

template<typename T >
void DistributedRectilinearMeshGenerator::setBoundaryNames ( BoundaryInfo &  )
inline

Set the boundary names for any added boundary ideas.

The BoundaryInfo object to set the boundary names on

Definition at line 288 of file DistributedRectilinearMeshGenerator.h.

289  {
290  mooseError("setBoundaryNames not implemented for this element type in "
291  "DistributedRectilinearMeshGenerator");
292  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ setBoundaryNames() [2/7]

template<>
void DistributedRectilinearMeshGenerator::setBoundaryNames ( BoundaryInfo &  boundary_info)

Definition at line 292 of file DistributedRectilinearMeshGenerator.C.

293 {
294  boundary_info.sideset_name(0) = "left";
295  boundary_info.sideset_name(1) = "right";
296 }

◆ setBoundaryNames() [3/7]

template<>
void DistributedRectilinearMeshGenerator::setBoundaryNames ( BoundaryInfo &  boundary_info)

Definition at line 548 of file DistributedRectilinearMeshGenerator.C.

549 {
550  boundary_info.sideset_name(0) = "bottom";
551  boundary_info.sideset_name(1) = "right";
552  boundary_info.sideset_name(2) = "top";
553  boundary_info.sideset_name(3) = "left";
554 }

◆ setBoundaryNames() [4/7]

template<>
void DistributedRectilinearMeshGenerator::setBoundaryNames ( BoundaryInfo &  boundary_info)

◆ setBoundaryNames() [5/7]

template<>
void DistributedRectilinearMeshGenerator::setBoundaryNames ( BoundaryInfo &  boundary_info)

◆ setBoundaryNames() [6/7]

template<>
void DistributedRectilinearMeshGenerator::setBoundaryNames ( BoundaryInfo &  boundary_info)

◆ setBoundaryNames() [7/7]

template<>
void DistributedRectilinearMeshGenerator::setBoundaryNames ( BoundaryInfo &  boundary_info)

Definition at line 820 of file DistributedRectilinearMeshGenerator.C.

821 {
822  boundary_info.sideset_name(0) = "back";
823  boundary_info.sideset_name(1) = "bottom";
824  boundary_info.sideset_name(2) = "right";
825  boundary_info.sideset_name(3) = "top";
826  boundary_info.sideset_name(4) = "left";
827  boundary_info.sideset_name(5) = "front";
828 }

◆ setHasGenerateData()

void MeshGenerator::setHasGenerateData ( InputParameters params)
staticinherited

Sets that a mesh generator has a generateData() implementation.

This must be called in the validParams() implementation for all mesh generators that implement generateData().

Definition at line 80 of file MeshGenerator.C.

Referenced by AddMetaDataGenerator::validParams().

81 {
82  params.set<bool>("_has_generate_data") = true;
83 }
T & set(const std::string &name, bool quiet_mode=false)
Returns a writable reference to the named parameters.

◆ setMeshProperty() [1/2]

template<typename T , typename... Args>
T & MeshGenerator::setMeshProperty ( const std::string &  data_name,
Args &&...  args 
)
protectedinherited

Method for updating attributes to the mesh meta-data store, which can only be invoked in the MeshGenerator generate routine only if the mesh generator property has already been declared.

Definition at line 485 of file MeshGenerator.h.

486 {
487  if (_app.actionWarehouse().getCurrentTaskName() != "execute_mesh_generators")
488  mooseError("Updating mesh meta data with setMeshProperty() can only be called during "
489  "MeshGenerator::generate()");
490 
491  if (!hasMeshProperty(data_name))
492  mooseError("Failed to get the mesh property '", data_name, "'");
494  RestartableData<T> * T_value = dynamic_cast<RestartableData<T> *>(value);
495  if (!T_value)
496  mooseError("While retrieving mesh property '",
497  data_name,
498  "' with type '",
499  MooseUtils::prettyCppType<T>(),
500  "',\nthe property was found with type '",
501  value->type(),
502  "'");
503 
504  // Set the value if someone provided arguments to set it to
505  if constexpr (sizeof...(args) > 0)
506  T_value->set() = T(std::forward<Args>(args)...);
507 
508  return T_value->set();
509 }
RestartableDataValue & setMeshPropertyHelper(const std::string &data_name)
Helper for getting a writable reference to a mesh property, used in declareMeshProperty and setMeshPr...
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
ActionWarehouse & actionWarehouse()
Return a writable reference to the ActionWarehouse associated with this app.
Definition: MooseApp.h:237
MooseApp & _app
The MOOSE application this is associated with.
Definition: MooseBase.h:84
const std::string & getCurrentTaskName() const
Concrete definition of a parameter value for a specified type.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
bool hasMeshProperty(const std::string &data_name, const std::string &prefix) const
Abstract definition of a RestartableData value.

◆ setMeshProperty() [2/2]

template<typename T >
T& MeshGenerator::setMeshProperty ( const std::string &  data_name,
const T &  data_value 
)
inlineprotectedinherited

Definition at line 221 of file MeshGenerator.h.

222  {
223  return setMeshProperty<T, const T &>(data_name, data_value);
224  }

◆ type()

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

Get the type of this class.

Returns
the name of the type of this class

Definition at line 51 of file MooseBase.h.

Referenced by CreateProblemDefaultAction::act(), SetupDebugAction::act(), MaterialDerivativeTestAction::act(), MaterialOutputAction::act(), FEProblemBase::addAuxArrayVariable(), FEProblemBase::addAuxScalarVariable(), FEProblemBase::addAuxVariable(), FEProblemBase::addConvergence(), FEProblemBase::addDistribution(), MooseApp::addExecutor(), MooseApp::addExecutorParams(), MFEMProblem::addFunction(), FEProblemBase::addFunction(), FEProblemBase::addMeshDivision(), MooseApp::addMeshGenerator(), MeshGenerator::addMeshSubgenerator(), FEProblemBase::addObject(), MFEMProblem::addPostprocessor(), FEProblemBase::addPredictor(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), FEProblemBase::addReporter(), FEProblemBase::addSampler(), FEProblemBase::addTimeIntegrator(), MooseServer::addValuesToList(), DisplacedProblem::addVectorTag(), SubProblem::addVectorTag(), FEProblemBase::advanceMultiApps(), MooseApp::appendMeshGenerator(), AuxKernelTempl< Real >::AuxKernelTempl(), FEProblemBase::backupMultiApps(), BatchMeshGeneratorAction::BatchMeshGeneratorAction(), BoundaryPreservedMarker::BoundaryPreservedMarker(), buildCube(), MooseMesh::buildHRefinementAndCoarseningMaps(), MooseMesh::buildLowerDMesh(), MooseMesh::buildPRefinementAndCoarseningMaps(), PhysicsBase::checkComponentType(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), ActionComponent::checkRequiredTasks(), PhysicsBase::checkRequiredTasks(), ADDGKernel::computeElemNeighJacobian(), DGKernel::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), ADDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), LowerDIntegratedBC::computeLowerDJacobian(), ArrayLowerDIntegratedBC::computeLowerDJacobian(), DGLowerDKernel::computeLowerDJacobian(), ArrayDGLowerDKernel::computeLowerDJacobian(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayHFEMDirichletBC::computeLowerDQpJacobian(), ArrayHFEMDiffusion::computeLowerDQpJacobian(), HFEMDirichletBC::computeLowerDQpJacobian(), HFEMDiffusion::computeLowerDQpJacobian(), ArrayHFEMDirichletBC::computeLowerDQpOffDiagJacobian(), HFEMDirichletBC::computeLowerDQpOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDQpOffDiagJacobian(), ArrayDGLowerDKernel::computeLowerDQpOffDiagJacobian(), FEProblemBase::computeMultiAppsDT(), ADDGKernel::computeOffDiagElemNeighJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), DGLowerDKernel::computeOffDiagLowerDJacobian(), ArrayDGLowerDKernel::computeOffDiagLowerDJacobian(), DGConvection::computeQpJacobian(), ScalarKernel::computeQpJacobian(), InterfaceDiffusion::computeQpJacobian(), ArrayDGDiffusion::computeQpJacobian(), InterfaceReaction::computeQpJacobian(), CoupledTiedValueConstraint::computeQpJacobian(), TiedValueConstraint::computeQpJacobian(), DGDiffusion::computeQpJacobian(), LinearNodalConstraint::computeQpJacobian(), EqualValueBoundaryConstraint::computeQpJacobian(), CoupledTiedValueConstraint::computeQpOffDiagJacobian(), HFEMTestJump::computeQpOffDiagJacobian(), HFEMTrialJump::computeQpOffDiagJacobian(), ArrayDGKernel::computeQpOffDiagJacobian(), HFEMDiffusion::computeQpResidual(), ArrayHFEMDiffusion::computeQpResidual(), DGConvection::computeQpResidual(), ScalarKernel::computeQpResidual(), InterfaceDiffusion::computeQpResidual(), ADMatInterfaceReaction::computeQpResidual(), InterfaceReaction::computeQpResidual(), ADDGAdvection::computeQpResidual(), ArrayDGDiffusion::computeQpResidual(), CoupledTiedValueConstraint::computeQpResidual(), TiedValueConstraint::computeQpResidual(), LinearNodalConstraint::computeQpResidual(), DGDiffusion::computeQpResidual(), ADDGDiffusion::computeQpResidual(), HFEMTrialJump::computeQpResidual(), EqualValueBoundaryConstraint::computeQpResidual(), HFEMTestJump::computeQpResidual(), FEProblemBase::computeSystems(), FEProblemBase::computeUserObjectByName(), FEProblemBase::computeUserObjects(), FEProblemBase::computeUserObjectsInternal(), DisplacedProblem::createQRules(), FEProblemBase::createQRules(), MooseApp::createRecoverablePerfGraph(), DumpObjectsProblem::deduceNecessaryParameters(), DumpObjectsProblem::dumpObjectHelper(), FEProblemBase::duplicateVariableCheck(), MooseBase::errorPrefix(), FEProblemBase::execMultiApps(), FEProblemBase::execMultiAppTransfers(), FEProblemBase::execTransfers(), WebServerControl::execute(), SteadyBase::execute(), ActionWarehouse::executeActionsWithAction(), FEProblemBase::finishMultiAppStep(), FVScalarLagrangeMultiplierInterface::FVScalarLagrangeMultiplierInterface(), MooseServer::gatherDocumentReferencesLocations(), LowerDBlockFromSidesetGenerator::generate(), SubdomainPerElementGenerator::generate(), PatternedMeshGenerator::generate(), MeshGenerator::generateInternal(), MultiAppTransfer::getAppInfo(), TransfiniteMeshGenerator::getEdge(), ElementGenerator::getElemType(), MooseServer::getInputLookupDefinitionNodes(), FEProblemBase::getMaterial(), FEProblemBase::getMaterialData(), MaterialOutputAction::getParams(), ReporterData::getReporterInfo(), FEProblemBase::getTransfers(), DisplacedProblem::getVectorTags(), SubProblem::getVectorTags(), CommonOutputAction::hasConsole(), FEProblemBase::hasMultiApps(), AdvancedOutput::hasOutput(), FEProblemBase::incrementMultiAppTStep(), AdvancedOutput::initAvailableLists(), FunctorPositions::initialize(), FunctorTimes::initialize(), MultiAppConservativeTransfer::initialSetup(), LinearFVDiffusion::initialSetup(), LinearFVAnisotropicDiffusion::initialSetup(), LinearFVAdvection::initialSetup(), ArrayDGDiffusion::initQpResidual(), AdvancedOutput::initShowHideLists(), RelationshipManager::isType(), FEProblemBase::logAdd(), MaterialFunctorConverterTempl< T >::MaterialFunctorConverterTempl(), MFEMProblem::mesh(), MooseObject::MooseObject(), MultiAppMFEMCopyTransfer::MultiAppMFEMCopyTransfer(), DisplacedProblem::numVectorTags(), SubProblem::numVectorTags(), Console::output(), AdvancedOutput::output(), ConsoleUtils::outputExecutionInformation(), SampledOutput::outputStep(), Output::outputStep(), FEProblemBase::outputStep(), MooseServer::parseDocumentForDiagnostics(), MooseMesh::prepare(), ProjectedStatefulMaterialStorageAction::processProperty(), MooseApp::recursivelyCreateExecutors(), SolutionInvalidInterface::registerInvalidSolutionInternal(), FEProblemBase::restoreMultiApps(), MeshRepairGenerator::separateSubdomainsByElementType(), FEProblemBase::setCoupling(), MooseApp::setupOptions(), WebServerControl::startServer(), MooseBase::typeAndName(), ScalarKernelBase::uOld(), AuxScalarKernel::uOld(), DisplacedProblem::updateGeomSearch(), FEProblemBase::updateGeomSearch(), UserObjectInterface::userObjectType(), and AdvancedOutput::wantOutput().

51 { return _type; }
const std::string _type
The type of this class.
Definition: MooseBase.h:87

◆ typeAndName()

std::string MooseBase::typeAndName ( ) const
inherited

Get the class's combined type and name; useful in error handling.

Returns
The type and name of this class in the form '<type()> "<name()>"'.

Definition at line 27 of file MooseBase.C.

Referenced by MaterialPropertyStorage::addProperty(), MeshGeneratorSystem::dataDrivenError(), ReporterContext< std::vector< T > >::finalize(), and ReporterData::getReporterInfo().

28 {
29  return type() + std::string(" \"") + name() + std::string("\"");
30 }
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const std::string & type() const
Get the type of this class.
Definition: MooseBase.h:51

◆ uniqueName()

MooseObjectName MooseBaseParameterInterface::uniqueName ( ) const
inlineinherited

The unique name for accessing input parameters of this object in the InputParameterWarehouse.

Definition at line 67 of file MooseBaseParameterInterface.h.

Referenced by MooseBaseParameterInterface::connectControllableParams(), and Action::uniqueActionName().

68  {
69  return MooseObjectName(_pars.get<std::string>("_unique_name"));
70  }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
A class for storing the names of MooseObject by tag and object name.

◆ uniqueParameterName()

MooseObjectParameterName MooseBaseParameterInterface::uniqueParameterName ( const std::string &  parameter_name) const
inlineinherited

The unique parameter name of a valid parameter of this object for accessing parameter controls.

Definition at line 52 of file MooseBaseParameterInterface.h.

53  {
55  _pars.get<std::string>("_moose_base"), _moose_base.name(), parameter_name);
56  }
const MooseBase & _moose_base
The MooseBase object that inherits this class.
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
A class for storing an input parameter name.

◆ validParams()

InputParameters DistributedRectilinearMeshGenerator::validParams ( )
static

Definition at line 35 of file DistributedRectilinearMeshGenerator.C.

Referenced by OverlayMeshGenerator::validParams().

36 {
38  params += MeshGenerator::validParams();
39 
40  MooseEnum dims("1=1 2 3");
42  "dim", dims, "The dimension of the mesh to be generated"); // Make this parameter required
43 
44  params.addParam<dof_id_type>("nx", 1, "Number of elements in the X direction");
45  params.addParam<dof_id_type>("ny", 1, "Number of elements in the Y direction");
46  params.addParam<dof_id_type>("nz", 1, "Number of elements in the Z direction");
47  params.addParam<Real>("xmin", 0.0, "Lower X Coordinate of the generated mesh");
48  params.addParam<Real>("ymin", 0.0, "Lower Y Coordinate of the generated mesh");
49  params.addParam<Real>("zmin", 0.0, "Lower Z Coordinate of the generated mesh");
50  params.addParam<Real>("xmax", 1.0, "Upper X Coordinate of the generated mesh");
51  params.addParam<Real>("ymax", 1.0, "Upper Y Coordinate of the generated mesh");
52  params.addParam<Real>("zmax", 1.0, "Upper Z Coordinate of the generated mesh");
53 
55  "num_cores_for_partition", 0, "Number of cores for partitioning the graph");
56 
57  params.addRangeCheckedParam<unsigned>(
58  "num_side_layers",
59  2,
60  "num_side_layers>=1 & num_side_layers<5",
61  "Number of layers of off-processor side neighbors is reserved during mesh generation");
62 
63  params.addRelationshipManager("ElementSideNeighborLayers",
65  [](const InputParameters & obj_params, InputParameters & rm_params)
66  {
67  // Let this RM safeguard users specified ghosted layers
68  rm_params.set<unsigned short>("layers") =
69  obj_params.get<unsigned>("num_side_layers");
70  // We can not attach geometric early here because some simulation
71  // related info, such as, periodic BCs is not available yet during
72  // an early stage. Periodic BCs will be passed into ghosting
73  // functor during initFunctor of ElementSideNeighborLayers. There
74  // is no hurt to attach geometric late for general simulations
75  // that do not have extra requirements on ghosting elements. That
76  // is especially true distributed generated meshes since there is
77  // not much redundant info.
78  rm_params.set<bool>("attach_geometric_early") = false;
79  });
80 
81  MooseEnum partition("graph linear square", "graph", false);
82  params.addParam<MooseEnum>(
83  "partition", partition, "Which method (graph linear square) use to partition mesh");
84 
85  MooseEnum elem_types(LIST_GEOM_ELEM); // no default
86  params.addParam<MooseEnum>("elem_type",
87  elem_types,
88  "The type of element from libMesh to "
89  "generate (default: linear element for "
90  "requested dimension)");
91 
92  params.addRangeCheckedParam<Real>(
93  "bias_x",
94  1.,
95  "bias_x>=0.5 & bias_x<=2",
96  "The amount by which to grow (or shrink) the cells in the x-direction.");
97  params.addRangeCheckedParam<Real>(
98  "bias_y",
99  1.,
100  "bias_y>=0.5 & bias_y<=2",
101  "The amount by which to grow (or shrink) the cells in the y-direction.");
102  params.addRangeCheckedParam<Real>(
103  "bias_z",
104  1.,
105  "bias_z>=0.5 & bias_z<=2",
106  "The amount by which to grow (or shrink) the cells in the z-direction.");
107 
108  params.addClassDescription(
109  "Create a line, square, or cube mesh with uniformly spaced or biased elements.");
110 
111  return params;
112 }
void elem_types(const MeshBase &mesh, std::vector< ElemType > &et)
const std::string LIST_GEOM_ELEM
Definition: MooseMesh.h:58
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
T & set(const std::string &name, bool quiet_mode=false)
Returns a writable reference to the named parameters.
static InputParameters validParams()
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
void addRelationshipManager(const std::string &name, Moose::RelationshipManagerType rm_type, Moose::RelationshipManagerInputParameterCallback input_parameter_callback=nullptr)
Tells MOOSE about a RelationshipManager that this object needs.
void addRequiredParam(const std::string &name, const std::string &doc_string)
This method adds a parameter and documentation string to the InputParameters object that will be extr...
uint8_t processor_id_type
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
Definition: MooseEnum.h:33
static InputParameters validParams()
Definition: MeshGenerator.C:23
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void addClassDescription(const std::string &doc_string)
This method adds a description of the class that will be displayed in the input file syntax dump...
void addParam(const std::string &name, const S &value, const std::string &doc_string)
These methods add an optional parameter and a documentation string to the InputParameters object...
void addRangeCheckedParam(const std::string &name, const T &value, const std::string &parsed_function, const std::string &doc_string)
uint8_t dof_id_type

Member Data Documentation

◆ _action_factory

ActionFactory& MooseBaseParameterInterface::_action_factory
protectedinherited

◆ _app

MooseApp& MooseBase::_app
protectedinherited

The MOOSE application this is associated with.

Definition at line 84 of file MooseBase.h.

◆ _bias_x

Real DistributedRectilinearMeshGenerator::_bias_x
protected

The amount by which to bias the cells in the x,y,z directions.

Must be in the range 0.5 <= _bias_x <= 2.0. _bias_x < 1 implies cells are shrinking in the x-direction. _bias_x==1 implies no bias (original mesh unchanged). _bias_x > 1 implies cells are growing in the x-direction.

Definition at line 351 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _bias_y

Real DistributedRectilinearMeshGenerator::_bias_y
protected

Definition at line 351 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _bias_z

Real DistributedRectilinearMeshGenerator::_bias_z
protected

Definition at line 351 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _console

const ConsoleStream ConsoleStreamInterface::_console
inherited

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

Definition at line 31 of file ConsoleStreamInterface.h.

Referenced by IterationAdaptiveDT::acceptStep(), MeshOnlyAction::act(), SetupDebugAction::act(), MaterialOutputAction::act(), Adaptivity::adaptMesh(), FEProblemBase::adaptMesh(), PerfGraph::addToExecutionList(), SimplePredictor::apply(), SystemBase::applyScalingFactors(), MultiApp::backup(), FEProblemBase::backupMultiApps(), CoarsenedPiecewiseLinear::buildCoarsenedGrid(), DefaultSteadyStateConvergence::checkConvergence(), MeshDiagnosticsGenerator::checkElementOverlap(), MeshDiagnosticsGenerator::checkElementTypes(), MeshDiagnosticsGenerator::checkElementVolumes(), FEProblemBase::checkExceptionAndStopSolve(), SolverSystem::checkInvalidSolution(), MeshDiagnosticsGenerator::checkLocalJacobians(), MeshDiagnosticsGenerator::checkNonConformalMesh(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), MeshDiagnosticsGenerator::checkNonMatchingEdges(), MeshDiagnosticsGenerator::checkNonPlanarSides(), FEProblemBase::checkProblemIntegrity(), ReferenceResidualConvergence::checkRelativeConvergence(), MeshDiagnosticsGenerator::checkSidesetsOrientation(), MeshDiagnosticsGenerator::checkWatertightNodesets(), MeshDiagnosticsGenerator::checkWatertightSidesets(), IterationAdaptiveDT::computeAdaptiveDT(), TransientBase::computeConstrainedDT(), DefaultMultiAppFixedPointConvergence::computeCustomConvergencePostprocessor(), NonlinearSystemBase::computeDamping(), FixedPointIterationAdaptiveDT::computeDT(), IterationAdaptiveDT::computeDT(), IterationAdaptiveDT::computeFailedDT(), IterationAdaptiveDT::computeInitialDT(), IterationAdaptiveDT::computeInterpolationDT(), LinearSystem::computeLinearSystemTags(), FEProblemBase::computeLinearSystemTags(), NonlinearSystemBase::computeScaling(), Problem::console(), IterationAdaptiveDT::constrainStep(), TimeStepper::constrainStep(), MultiApp::createApp(), FEProblemBase::execMultiApps(), FEProblemBase::execMultiAppTransfers(), MFEMSteady::execute(), MessageFromInput::execute(), SteadyBase::execute(), Eigenvalue::execute(), ActionWarehouse::executeActionsWithAction(), ActionWarehouse::executeAllActions(), MeshGeneratorSystem::executeMeshGenerators(), ElementQualityChecker::finalize(), FEProblemBase::finishMultiAppStep(), MeshRepairGenerator::fixOverlappingNodes(), CoarsenBlockGenerator::generate(), MeshGenerator::generateInternal(), VariableCondensationPreconditioner::getDofToCondense(), InversePowerMethod::init(), NonlinearEigen::init(), FEProblemBase::initialAdaptMesh(), DefaultMultiAppFixedPointConvergence::initialize(), EigenExecutionerBase::inversePowerIteration(), FEProblemBase::joinAndFinalize(), TransientBase::keepGoing(), IterationAdaptiveDT::limitDTByFunction(), IterationAdaptiveDT::limitDTToPostprocessorValue(), FEProblemBase::logAdd(), EigenExecutionerBase::makeBXConsistent(), Console::meshChanged(), MooseBaseErrorInterface::mooseDeprecated(), MooseBaseErrorInterface::mooseInfo(), MooseBaseErrorInterface::mooseWarning(), MooseBaseErrorInterface::mooseWarningNonPrefixed(), ReferenceResidualConvergence::nonlinearConvergenceSetup(), ReporterDebugOutput::output(), PerfGraphOutput::output(), SolutionInvalidityOutput::output(), MaterialPropertyDebugOutput::output(), DOFMapOutput::output(), VariableResidualNormsDebugOutput::output(), Console::output(), ControlOutput::outputActiveObjects(), ControlOutput::outputChangedControls(), ControlOutput::outputControls(), Console::outputInput(), Console::outputPostprocessors(), PseudoTimestep::outputPseudoTimestep(), Console::outputReporters(), DefaultMultiAppFixedPointConvergence::outputResidualNorm(), Console::outputScalarVariables(), Console::outputSystemInformation(), FEProblemBase::possiblyRebuildGeomSearchPatches(), EigenExecutionerBase::postExecute(), AB2PredictorCorrector::postSolve(), ActionWarehouse::printActionDependencySets(), BlockRestrictionDebugOutput::printBlockRestrictionMap(), SolutionInvalidity::printDebug(), EigenExecutionerBase::printEigenvalue(), SecantSolve::printFixedPointConvergenceHistory(), SteffensenSolve::printFixedPointConvergenceHistory(), PicardSolve::printFixedPointConvergenceHistory(), FixedPointSolve::printFixedPointConvergenceReason(), PerfGraphLivePrint::printLiveMessage(), MaterialPropertyDebugOutput::printMaterialMap(), PerfGraphLivePrint::printStats(), NEML2Action::printSummary(), AutomaticMortarGeneration::projectPrimaryNodesSinglePair(), AutomaticMortarGeneration::projectSecondaryNodesSinglePair(), CoarsenBlockGenerator::recursiveCoarsen(), SolutionTimeAdaptiveDT::rejectStep(), MultiApp::restore(), FEProblemBase::restoreMultiApps(), FEProblemBase::restoreSolutions(), NonlinearSystemBase::setInitialSolution(), MooseApp::setupOptions(), Checkpoint::shouldOutput(), SubProblem::showFunctorRequestors(), SubProblem::showFunctors(), FullSolveMultiApp::showStatusMessage(), EigenProblem::solve(), FEProblemSolve::solve(), FixedPointSolve::solve(), NonlinearSystem::solve(), LinearSystem::solve(), LStableDirk2::solve(), LStableDirk3::solve(), ImplicitMidpoint::solve(), ExplicitTVDRK2::solve(), LStableDirk4::solve(), AStableDirk4::solve(), ExplicitRK2::solve(), TransientMultiApp::solveStep(), FixedPointSolve::solveStep(), PerfGraphLivePrint::start(), AB2PredictorCorrector::step(), NonlinearEigen::takeStep(), TransientBase::takeStep(), TerminateChainControl::terminate(), Convergence::verboseOutput(), Console::writeTimestepInformation(), Console::writeVariableNorms(), and FEProblemBase::~FEProblemBase().

◆ _dim

MooseEnum DistributedRectilinearMeshGenerator::_dim
protected

The dimension of the mesh.

Definition at line 327 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _elem_type

ElemType DistributedRectilinearMeshGenerator::_elem_type
protected

The type of element to build.

Definition at line 344 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _enabled

const bool& MooseObject::_enabled
protectedinherited

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

Definition at line 51 of file MooseObject.h.

Referenced by MooseObject::enabled().

◆ _factory

Factory& MooseBaseParameterInterface::_factory
protectedinherited

◆ _mesh

MooseMesh* const MeshGenerator::_mesh
protectedinherited

◆ _name

const std::string MooseBase::_name
protectedinherited

The name of this class.

Definition at line 90 of file MooseBase.h.

Referenced by AddBCAction::act(), AddConstraintAction::act(), PartitionerAction::act(), AddFVInterfaceKernelAction::act(), AddUserObjectAction::act(), AddFVInitialConditionAction::act(), AddScalarKernelAction::act(), AddKernelAction::act(), ReadExecutorParamsAction::act(), AddMeshGeneratorAction::act(), AddVectorPostprocessorAction::act(), AddFunctorMaterialAction::act(), AddMarkerAction::act(), AddNodalKernelAction::act(), AddMaterialAction::act(), AddIndicatorAction::act(), AddPostprocessorAction::act(), AddDamperAction::act(), AddInitialConditionAction::act(), AddMultiAppAction::act(), AddTransferAction::act(), AddDGKernelAction::act(), AddDiracKernelAction::act(), AddInterfaceKernelAction::act(), AddPositionsAction::act(), AddReporterAction::act(), AddTimesAction::act(), AddFieldSplitAction::act(), AddFVKernelAction::act(), AddFVBCAction::act(), AddTimeStepperAction::act(), AddDistributionAction::act(), SetupPreconditionerAction::act(), SetupTimeIntegratorAction::act(), AddFunctionAction::act(), AddConvergenceAction::act(), AddMeshDivisionAction::act(), AddHDGKernelAction::act(), AddOutputAction::act(), AddLinearFVBCAction::act(), AddLinearFVKernelAction::act(), AddCorrectorAction::act(), AddMeshModifiersAction::act(), AddSamplerAction::act(), AddControlAction::act(), AddMFEMSolverAction::act(), AddMFEMPreconditionerAction::act(), AddMFEMSubMeshAction::act(), AddMFEMFESpaceAction::act(), AddPeriodicBCAction::act(), ADPiecewiseLinearInterpolationMaterial::ADPiecewiseLinearInterpolationMaterial(), BatchMeshGeneratorAction::BatchMeshGeneratorAction(), PiecewiseTabularBase::buildFromFile(), PiecewiseTabularBase::buildFromXY(), PiecewiseLinearBase::buildInterpolation(), CombinerGenerator::CombinerGenerator(), Executor::Executor(), ExtraIDIntegralReporter::ExtraIDIntegralReporter(), QuadraturePointMultiApp::fillPositions(), CentroidMultiApp::fillPositions(), MultiApp::fillPositions(), FunctionDT::FunctionDT(), FillBetweenCurvesGenerator::generate(), FillBetweenPointVectorsGenerator::generate(), FillBetweenSidesetsGenerator::generate(), NearestPointBase< LayeredSideDiffusiveFluxAverage, SideIntegralVariableUserObject >::name(), ParsedFunctorMaterialTempl< is_ad >::ParsedFunctorMaterialTempl(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), PiecewiseBase::setData(), and AddVariableAction::varName().

◆ _num_cores_for_partition

processor_id_type DistributedRectilinearMeshGenerator::_num_cores_for_partition
protected

Number of cores for partitioning the graph The number of cores for the graph partition can be different from that used for mesh generation and simulation.

Partitioners often become inefficient in compute time when the number of cores is large (around 10,0000). A possible "fix" is to partition the graph using a small number of cores when the mesh generation and the numerical simulation use a large number of processor cores.

Definition at line 341 of file DistributedRectilinearMeshGenerator.h.

Referenced by buildCube().

◆ _num_parts_per_compute_node

processor_id_type DistributedRectilinearMeshGenerator::_num_parts_per_compute_node
protected

Number of cores per compute node if hierarch partitioning is used.

Definition at line 357 of file DistributedRectilinearMeshGenerator.h.

Referenced by buildCube().

◆ _num_side_layers

unsigned DistributedRectilinearMeshGenerator::_num_side_layers
protected

Number of element side neighbor layers While most of applications in moose require one layer of side neighbors, phase field simulation with grain tracker needs two layers.

This parameter allow us to reserve an arbitrary number of side neighbors

Definition at line 366 of file DistributedRectilinearMeshGenerator.h.

Referenced by buildCube().

◆ _nx

dof_id_type& DistributedRectilinearMeshGenerator::_nx
protected

Number of elements in x, y, z direction.

Definition at line 330 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _ny

dof_id_type & DistributedRectilinearMeshGenerator::_ny
protected

Definition at line 330 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _nz

dof_id_type & DistributedRectilinearMeshGenerator::_nz
protected

Definition at line 330 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _pars

const InputParameters& MooseBaseParameterInterface::_pars
protectedinherited

Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.

Definition at line 173 of file MooseBaseParameterInterface.h.

Referenced by AddFVICAction::act(), AddICAction::act(), CreateProblemDefaultAction::act(), CreateProblemAction::act(), SetupMeshAction::act(), ComposeTimeStepperAction::act(), SetupDebugAction::act(), AddAuxKernelAction::act(), AddPeriodicBCAction::act(), CommonOutputAction::act(), FunctorMaterial::addFunctorPropertyByBlocks(), BreakMeshByBlockGeneratorBase::BreakMeshByBlockGeneratorBase(), PiecewiseTabularBase::buildFromFile(), PNGOutput::calculateRescalingValues(), MooseBaseParameterInterface::connectControllableParams(), Console::Console(), MaterialBase::declareADProperty(), MaterialBase::declareProperty(), FEProblemSolve::FEProblemSolve(), FunctionMaterialBase< is_ad >::FunctionMaterialBase(), FileMeshGenerator::generate(), MaterialBase::getGenericZeroMaterialProperty(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), MooseBaseParameterInterface::getParam(), MooseBaseParameterInterface::getRenamedParam(), MeshGenerator::hasGenerateData(), AddVariableAction::init(), AdvancedOutput::initExecutionTypes(), Console::initialSetup(), MooseBaseParameterInterface::isParamSetByUser(), MooseBaseParameterInterface::isParamValid(), MultiApp::keepSolutionDuringRestore(), MooseBaseParameterInterface::MooseBaseParameterInterface(), MooseBaseParameterInterface::paramErrorMsg(), GlobalParamsAction::parameters(), MooseBaseParameterInterface::parameters(), MooseMesh::prepare(), Eigenvalue::prepareSolverOptions(), MooseMesh::setCoordSystem(), MooseMesh::setPartitionerHelper(), SetupMeshAction::setupMesh(), TransientBase::setupTimeIntegrator(), MooseBaseParameterInterface::uniqueName(), and MooseBaseParameterInterface::uniqueParameterName().

◆ _part_package

std::string DistributedRectilinearMeshGenerator::_part_package
protected

External partitioner.

Definition at line 354 of file DistributedRectilinearMeshGenerator.h.

Referenced by buildCube().

◆ _partition_method

std::string DistributedRectilinearMeshGenerator::_partition_method
protected

Which method is used to partition the mesh that is not built yet.

Definition at line 360 of file DistributedRectilinearMeshGenerator.h.

Referenced by buildCube().

◆ _type

const std::string MooseBase::_type
protectedinherited

◆ _xmax

Real & DistributedRectilinearMeshGenerator::_xmax
protected

Definition at line 333 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _xmin

Real& DistributedRectilinearMeshGenerator::_xmin
protected

The min/max values for x,y,z component.

Definition at line 333 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _ymax

Real & DistributedRectilinearMeshGenerator::_ymax
protected

Definition at line 333 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _ymin

Real & DistributedRectilinearMeshGenerator::_ymin
protected

Definition at line 333 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _zmax

Real & DistributedRectilinearMeshGenerator::_zmax
protected

Definition at line 333 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ _zmin

Real & DistributedRectilinearMeshGenerator::_zmin
protected

Definition at line 333 of file DistributedRectilinearMeshGenerator.h.

Referenced by generate().

◆ data_only_param

const std::string MeshGenerator::data_only_param = "_data_only"
staticinherited

The name of the private parameter for setting data only.

Definition at line 62 of file MeshGenerator.h.

Referenced by MeshGenerator::addMeshSubgenerator(), MeshGeneratorSystem::createAddedMeshGenerators(), and MeshGenerator::validParams().

◆ NAME

constexpr auto MeshMetaDataInterface::NAME = "<empty>"
staticinherited

The data name used when initializing the Restartable interface for non-MeshGenerator objects.

Definition at line 33 of file MeshMetaDataInterface.h.

◆ SYSTEM

constexpr auto MeshMetaDataInterface::SYSTEM = "MeshMetaData"
staticinherited

The system name used when initializing the Restartable interface.

Definition at line 30 of file MeshMetaDataInterface.h.

Referenced by MeshMetaDataInterface::meshPropertyName().


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