- blockBlocks (subdomains) that this Physics is active on.
C++ Type:std::vector<SubdomainName>
Controllable:No
Description:Blocks (subdomains) that this Physics is active on.
- diffusivity_functorFunctor specifying the diffusivity. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
C++ Type:MooseFunctorName
Controllable:No
Description:Functor specifying the diffusivity. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
- preconditioningdefaultWhich preconditioning to use for this Physics
Default:default
C++ Type:MooseEnum
Controllable:No
Description:Which preconditioning to use for this Physics
- source_coef1Coefficient multiplying the source
Default:1
C++ Type:double
Controllable:No
Description:Coefficient multiplying the source
- source_functorSource term in the diffusion problem. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
C++ Type:MooseFunctorName
Controllable:No
Description:Source term in the diffusion problem. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
- transientsame_as_problemWhether the physics is to be solved as a transient
Default:same_as_problem
C++ Type:MooseEnum
Controllable:No
Description:Whether the physics is to be solved as a transient
- variable_nameuVariable name for the equation
Default:u
C++ Type:VariableName
Controllable:No
Description:Variable name for the equation
- verboseFalseFlag to facilitate debugging a Physics
Default:False
C++ Type:bool
Controllable:No
Description:Flag to facilitate debugging a Physics
DiffusionFV
Add diffusion physics discretized with cell-centered finite volume
See the DiffusionPhysicsBase documentation for the diffusion equation solved.
Finite Volume Discretization
The volumetric discretization of the time derivative uses the FVTimeKernel kernel. The diffusion term is integrated by parts and represented using a FVDiffusion kernel. The source term is added using:
a FVBodyForce if the source is a constant, a Postprocessor or a Function
a FVCoupledForce if the source is another type of functor
The Dirichlet boundary conditions are created using:
a FVDirichletBC if the boundary value is set to a number
a FVFunctionDirichletBC if set to a Function
a FVFunctorDirichletBC for any other kind of functor for the boundary value
The Neumann boundary conditions are created using:
a FVNeumannBC if the flux is set to a number
a FVFunctionNeumannBC if set to a Function
a FVFunctorNeumannBC for any other kind of functor for the flux value
We could use a Functor object to cover every need, but the specialized objects are a few percent faster, depending on the case.
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
- control_tagsAdds user-defined labels for accessing object parameters via control logic.
C++ Type:std::vector<std::string>
Controllable:No
Description:Adds user-defined labels for accessing object parameters via control logic.
- ghost_layers2Number of ghosting layers for distributed memory parallel calculations
Default:2
C++ Type:unsigned short
Controllable:No
Description:Number of ghosting layers for distributed memory parallel calculations
- 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.
Advanced Parameters
- boundary_fluxesFunctors to compute the diffusive flux on each Neumann boundary'
C++ Type:std::vector<MooseFunctorName>
Controllable:No
Description:Functors to compute the diffusive flux on each Neumann boundary'
- boundary_valuesFunctors to compute the diffusive flux on each Dirichlet boundary'
C++ Type:std::vector<MooseFunctorName>
Controllable:No
Description:Functors to compute the diffusive flux on each Dirichlet boundary'
- dirichlet_boundariesBoundaries on which to apply a fixed value
C++ Type:std::vector<BoundaryName>
Controllable:No
Description:Boundaries on which to apply a fixed value
- neumann_boundariesBoundaries on which to apply a diffusive flux
C++ Type:std::vector<BoundaryName>
Controllable:No
Description:Boundaries on which to apply a diffusive flux
Boundary Conditions Parameters
- initial_from_file_timestepLATESTGives the time step number (or "LATEST") for which to read the Exodus solution
Default:LATEST
C++ Type:std::string
Controllable:No
Description:Gives the time step number (or "LATEST") for which to read the Exodus solution
- initialize_variables_from_mesh_fileFalseDetermines if the variables that are added by the action are initializedfrom the mesh file (only for Exodus format)
Default:False
C++ Type:bool
Controllable:No
Description:Determines if the variables that are added by the action are initializedfrom the mesh file (only for Exodus format)