Go to the documentation of this file.
48 void add(
const std::string & var_name, std::shared_ptr<MooseVariableBase> var);
71 const std::unordered_map<std::string, std::vector<MooseVariableFEBase *>> & vars);
102 template <
typename T>
109 const std::vector<VariableName> &
names()
const;
115 const std::vector<MooseVariableFEBase *> &
fieldVariables()
const;
128 const std::vector<MooseVariableScalar *> &
scalars()
const;
135 std::vector<MooseVariableFEBase *>
_vars;
165 std::map<unsigned int, std::shared_ptr<MooseVariableBase>>
_all_objects;
170 VariableWarehouse::getFieldVariable<RealVectorValue>(
const std::string & var_name);
174 VariableWarehouse::getFieldVariable<RealVectorValue>(
unsigned int var_number);
178 VariableWarehouse::getFieldVariable<RealEigenVector>(
const std::string & var_name);
182 VariableWarehouse::getFieldVariable<RealEigenVector>(
unsigned int var_number);
std::map< BoundaryID, std::set< MooseVariableFEBase * > > _boundary_vars
Map to variables that need to be evaluated on a boundary.
HashMap is an abstraction for dictionary data type, we make it thread-safe by locking inserts.
HashMap< unsigned, VectorMooseVariable * > _vector_vars_by_number
map of vector finite element variables with unsigned keys
const std::vector< VariableName > & names() const
Get the list of all variable names.
std::vector< MooseVariableFEBase * > _vars
list of finite element variables
Class for scalar variables (they are different).
const std::set< MooseVariableFEBase * > & boundaryVars(BoundaryID bnd) const
Get the list of variables that needs to be reinitialized on a given boundary.
std::vector< MooseVariableScalar * > _scalar_vars
list of all scalar, non-finite element variables
const std::vector< MooseVariableScalar * > & scalars() const
Get the list of scalar variables.
The following methods are specializations for using the libMesh::Parallel::packed_range_* routines fo...
MooseVariableBase * getVariable(const std::string &var_name)
Get a variable from the warehouse.
void add(const std::string &var_name, std::shared_ptr< MooseVariableBase > var)
Add a variable.
VectorValue< Real > RealVectorValue
MooseVariableFE< Real > MooseVariable
std::map< std::string, MooseVariableBase * > _var_name
Name to variable mapping.
void addBoundaryVar(BoundaryID bnd, MooseVariableFEBase *var)
Add a boundary variable.
HashMap< unsigned, ArrayMooseVariable * > _array_vars_by_number
map of vector finite element variables with unsigned keys
std::map< unsigned int, std::shared_ptr< MooseVariableBase > > _all_objects
All instances of objects (raw pointers)
HashMap< std::string, VectorMooseVariable * > _vector_vars_by_name
map of vector finite element variables with name keys
boundary_id_type BoundaryID
std::vector< VariableName > _names
list of variable names
HashMap< unsigned, MooseVariable * > _regular_vars_by_number
map of non-vector finite element variables with unsigned keys
void addBoundaryVars(const std::set< BoundaryID > &boundary_ids, const std::unordered_map< std::string, std::vector< MooseVariableFEBase * >> &vars)
Add a map of variables to a set of boundaries.
HashMap< std::string, ArrayMooseVariable * > _array_vars_by_name
map of vector finite element variables with name keys
MooseVariableFE< RealEigenVector > ArrayMooseVariable
Holds variables and provides some services.
MooseVariableFE< RealVectorValue > VectorMooseVariable
const std::vector< MooseVariableFEBase * > & fieldVariables() const
Get the list of variables.
Class for stuff related to variables.
MooseVariableFE< T > * getFieldVariable(const std::string &var_name)
Get a finite element variable from the warehouse of either Real or RealVectorValue type.
HashMap< std::string, MooseVariable * > _regular_vars_by_name
map of non-vector finite element variables with name keys