59 Variable(
const std::vector<const MooseVariableFieldBase *> & variables,
const TagID tag)
75 Variable(
const std::vector<const MooseVariableFieldBase *> & variables,
80 Variable(
const std::vector<MooseVariableFieldBase *> & variables,
105 void init(
const std::vector<const MooseVariableFieldBase *> & variables,
const TagID tag);
106 void init(
const std::vector<MooseVariableFieldBase *> & variables,
const TagID tag);
114 void init(
const std::vector<const MooseVariableFieldBase *> & variables,
116 void init(
const std::vector<MooseVariableFieldBase *> & variables,
std::array< Real, 2 > values
Interface for objects that needs coupling capabilities.
This class provides an interface for common operations on field variables of both FE and FV types wit...
KOKKOS_FUNCTION index_type size() const
Get the total array size.
The Kokkos variable object that carries the coupled variable and tag information.
bool _vector
Whether the variable is vector variable.
KOKKOS_FUNCTION unsigned int components() const
Get the number of components.
void init(const MooseVariableFieldBase &variable, const TagID tag)
Initialize the variable with a MOOSE variable and vector tag ID.
void init(const std::vector< Real3 > &values, CoupleableKey)
Initialize the variable with default coupled vector values.
KOKKOS_FUNCTION bool vector() const
Get whether the variable is vector variable.
KOKKOS_FUNCTION bool old() const
Get whether the tag is old/older value.
KOKKOS_FUNCTION Real value(unsigned int comp=0) const
Get the default value of a component.
bool _initialized
Whether the variable is initialized.
KOKKOS_FUNCTION unsigned int var(unsigned int comp=0) const
Get the variable number of a component.
void init(const MooseVariableFieldBase &variable, const TagName &tag_name=Moose::SOLUTION_TAG)
Initialize the variable with a MOOSE variable and vector tag name.
KOKKOS_FUNCTION bool coupled() const
Get whether the variable is coupled.
bool _dot
Whether the tag is time derivative.
void init(const std::vector< const MooseVariableFieldBase * > &variables, const TagName &tag_name=Moose::SOLUTION_TAG)
Initialize the variable with multiple MOOSE variables and vector tag name.
void init(const std::vector< MooseVariableFieldBase * > &variables, const TagID tag)
bool _old
Whether the tag is old/older value.
KOKKOS_FUNCTION bool nodal() const
Get whether the variable is nodal.
KOKKOS_FUNCTION TagID tag() const
Get the vector tag ID.
Array< unsigned int > _sys
System number of each component.
KOKKOS_FUNCTION Real3 vectorValue(unsigned int comp=0) const
Get the default vector value of a component.
bool _nodal
Whether the variable is nodal.
Array< unsigned int > _var
Variable number of each component.
KOKKOS_FUNCTION bool dot() const
Get whether the tag is time derivative.
Array< Real3 > _default_vector_value
Default vector value of each component when the variable is not coupled.
Array< const MooseVariableFieldBase * > _moose_var
MOOSE variable of each component.
const MooseVariableFieldBase * mooseVar(unsigned int comp=0)
Get the MOOSE variable of a component.
unsigned int _components
Number of components.
Array< Real > _default_value
Default value of each component when the variable is not coupled.
Variable(const std::vector< const MooseVariableFieldBase * > &variables, const TagID tag)
Constructor Initialize the variable with multiple MOOSE variables and vector tag ID.
Variable()=default
Default constructor.
bool _coupled
Whether the variable is coupled.
KOKKOS_FUNCTION bool initialized() const
Get whether the variable is initialized.
Variable(const MooseVariableFieldBase &variable, const TagName &tag_name=Moose::SOLUTION_TAG)
Constructor Initialize the variable with a MOOSE variable and vector tag name.
KOKKOS_FUNCTION unsigned int sys(unsigned int comp=0) const
Get the system number of a component.
void init(const std::vector< MooseVariableFieldBase * > &variables, const TagName &tag_name=Moose::SOLUTION_TAG)
void init(const std::vector< Real > &values, CoupleableKey)
Initialize the variable with default coupled values.
void init(const std::vector< const MooseVariableFieldBase * > &variables, const TagID tag)
Initialize the variable with multiple MOOSE variables and vector tag ID.
Variable(const std::vector< const MooseVariableFieldBase * > &variables, const TagName &tag_name=Moose::SOLUTION_TAG)
Constructor Initialize the variable with multiple MOOSE variables and vector tag name.
Variable(const std::vector< MooseVariableFieldBase * > &variables, const TagName &tag_name=Moose::SOLUTION_TAG)
Variable(const MooseVariableFieldBase &variable, const TagID tag)
Constructor Initialize the variable with a MOOSE variable and vector tag ID.
Variable(const std::vector< MooseVariableFieldBase * > &variables, const TagID tag)
const TagID INVALID_TAG_ID
const TagName SOLUTION_TAG