Variables System
Description
The Variables
block within an input file is utilized to define the unknowns within a system of partial differential equations. These unknowns are often referred to as nonlinear variables within documentation. The nonlinear variables defined within this block are used by Kernel objects to define the equations for a simulation.
TODO: mention FV variables and how they are similar+different
Example
The following input file snippet demonstrates the creation of a single nonlinear variable that is used by two Kernel objects, refer to Example 2 for more details.
[Variables]
[convected]
order = FIRST
family = LAGRANGE
[]
[]
[Kernels]
[diff]
type = Diffusion
variable = convected
[]
[conv]
type = ExampleConvection
variable = convected
velocity = '0.0 0.0 1.0'
[]
[]
(../../../SoftwareDownloads/moose/examples/ex02_kernel/ex02.i)Input Parameters
- active__all__ If specified only the blocks named will be visited and made active
Default:__all__
C++ Type:std::vector<std::string>
Controllable:No
Description:If specified only the blocks named will be visited and made active
- familyLAGRANGESpecifies the family of FE shape functions to use for this variable
Default:LAGRANGE
C++ Type:MooseEnum
Controllable:No
Description:Specifies the family of FE shape functions to use for this variable
- inactiveIf specified blocks matching these identifiers will be skipped.
C++ Type:std::vector<std::string>
Controllable:No
Description:If specified blocks matching these identifiers will be skipped.
- initial_conditionSpecifies the initial condition for this variable
C++ Type:std::vector<double>
Controllable:No
Description:Specifies the initial condition for this variable
- isObjectActionTrueIndicates that this is a MooseObjectAction.
Default:True
C++ Type:bool
Controllable:No
Description:Indicates that this is a MooseObjectAction.
- orderFIRSTSpecifies the order of the FE shape function to use for this variable (additional orders not listed are allowed)
Default:FIRST
C++ Type:MooseEnum
Controllable:No
Description:Specifies the order of the FE shape function to use for this variable (additional orders not listed are allowed)
- scalingSpecifies a scaling factor to apply to this variable
C++ Type:std::vector<double>
Controllable:No
Description:Specifies a scaling factor to apply to this variable
Available Objects
- Moose App
- ArrayMooseVariableUsed for grouping standard field variables with the same finite element family and order
- MooseVariableRepresents standard field variables, e.g. Lagrange, Hermite, or non-constant Monomials
- MooseVariableBaseBase class for Moose variables. This should never be the terminal object type
- MooseVariableConstMonomialSpecialization for constant monomials that avoids unnecessary loops
- MooseVariableFVRealBase class for Moose variables. This should never be the terminal object type
- MooseVariableScalarMoose wrapper class around scalar variables
- VectorMooseVariableRepresents vector field variables, e.g. Vector Lagrange or Nedelec
Available Actions
- Moose App
- AddVariableActionAdd a non-linear variable to the simulation.
- CopyNodalVarsActionCopies variable information from a file.