- blockBlocks (subdomains) that this Physics is active on.
C++ Type:std::vector<SubdomainName>
Unit:(no unit assumed)
Controllable:No
Description:Blocks (subdomains) that this Physics is active on.
- fluid_temperature_variableT_fluidName of the fluid temperature variable
Default:T_fluid
C++ Type:NonlinearVariableName
Unit:(no unit assumed)
Controllable:No
Description:Name of the fluid temperature variable
- heat_source_functorFunctor providing the heat source. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
C++ Type:MooseFunctorName
Unit:(no unit assumed)
Controllable:No
Description:Functor providing the heat source. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
- initial_temperature300Initial value of the temperature variable
Default:300
C++ Type:FunctionName
Unit:(no unit assumed)
Controllable:No
Description:Initial value of the temperature variable
- porosityporosityThe name of the auxiliary variable for the porosity field. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
Default:porosity
C++ Type:MooseFunctorName
Unit:(no unit assumed)
Controllable:No
Description:The name of the auxiliary variable for the porosity field. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
- solid_temperature_variableT_solidName of the solid phase temperature variable
Default:T_solid
C++ Type:VariableName
Unit:(no unit assumed)
Controllable:No
Description:Name of the solid phase temperature variable
- temperature_scaling1Scaling factor for the heat conduction equation
Default:1
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Scaling factor for the heat conduction equation
- transientsame_as_problemWhether the physics is to be solved as a transient
Default:same_as_problem
C++ Type:MooseEnum
Unit:(no unit assumed)
Controllable:No
Description:Whether the physics is to be solved as a transient
- verboseFalseFlag to facilitate debugging a Physics
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Flag to facilitate debugging a Physics
Navier Stokes Solid Heat Transfer / PNSFVSolidHeatTransfer
Define the Navier Stokes porous media solid energy equation
Equation
This Physics object creates the kernels and boundary conditions to solve the heat transfer equation for the solid phase in a porous media flow problem.
where:
is the solid specific enthalpy, computed from the specific heat and the solid temperature
is the solid density
is the porosity
is the solid temperature
is the fluid temperature
the solid thermal conductivity
is the source term, corresponding to energy deposited directly in the solid phase
is the ambient convection volumetric heat transfer coefficient
The enthalpy is used in lieu of to be able to model solids with temperature dependent specific heat.
The kernels potentially created for this equation are:
INSFVEnergyTimeDerivative for the time derivative of the energy
PINSFVEnergyDiffusion for energy diffusion with an isotropic thermal diffusivity
PINSFVEnergyAnisotropicDiffusion for energy diffusion with an anisotropic thermal diffusivity
FVCoupledForce for the energy source term
PINSFVEnergyAmbientConvection for the volumetric ambient convection term, if present
Additional details on porous media flow equations can be found on this page.
Automatically created variables
The PNSFVSolidHeatTransferPhysics
by default will automatically create a nonlinear variable for the solid phase temperature. It should be named as follows:
Coupling with other Physics
In the presence of fluid flow, a Navier Stokes Fluid Heat Transfer / WCNSFVFluidHeatTransferPhysics should be created using the [Physics/NavierStokes/FluidHeatTransfer/<name>]
syntax. The following input performs the coupling between the fluid equations and the solid temperature equations. The coupling between the fluid and solid domain is performed through a volumetric ambient convection term.
Conjugate heat transfer on a surface on the boundary of the fluid domain is not currently implemented with the Physics
syntax. Please use a FVConvectionCorrelationInterface for that purpose.
Input Parameters
- active__all__ If specified only the blocks named will be visited and made active
Default:__all__
C++ Type:std::vector<std::string>
Unit:(no unit assumed)
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>
Unit:(no unit assumed)
Controllable:No
Description:Adds user-defined labels for accessing object parameters via control logic.
- ghost_layers2Number of layers of elements to ghost near process domain boundaries
Default:2
C++ Type:unsigned short
Unit:(no unit assumed)
Controllable:No
Description:Number of layers of elements to ghost near process domain boundaries
- inactiveIf specified blocks matching these identifiers will be skipped.
C++ Type:std::vector<std::string>
Unit:(no unit assumed)
Controllable:No
Description:If specified blocks matching these identifiers will be skipped.
Advanced Parameters
- ambient_convection_alphaThe heat exchange coefficients for each block in 'ambient_convection_blocks'.
C++ Type:std::vector<MooseFunctorName>
Unit:(no unit assumed)
Controllable:No
Description:The heat exchange coefficients for each block in 'ambient_convection_blocks'.
- ambient_convection_blocksThe blocks where the ambient convection is present.
C++ Type:std::vector<std::vector<SubdomainName>>
Unit:(no unit assumed)
Controllable:No
Description:The blocks where the ambient convection is present.
- ambient_convection_temperatureT_fluid The fluid temperature for each block in 'ambient_convection_blocks'.
Default:T_fluid
C++ Type:std::vector<MooseFunctorName>
Unit:(no unit assumed)
Controllable:No
Description:The fluid temperature for each block in 'ambient_convection_blocks'.
Ambient Convection Parameters
- boundary_heat_fluxesFunctors to compute the heat flux on each boundary in 'heat_flux_boundaries'
C++ Type:std::vector<MooseFunctorName>
Unit:(no unit assumed)
Controllable:No
Description:Functors to compute the heat flux on each boundary in 'heat_flux_boundaries'
- boundary_temperaturesFunctors to compute the heat flux on each boundary in 'fixed_temperature_boundaries'
C++ Type:std::vector<MooseFunctorName>
Unit:(no unit assumed)
Controllable:No
Description:Functors to compute the heat flux on each boundary in 'fixed_temperature_boundaries'
- fixed_temperature_boundariesBoundaries on which to apply a fixed temperature
C++ Type:std::vector<BoundaryName>
Unit:(no unit assumed)
Controllable:No
Description:Boundaries on which to apply a fixed temperature
- heat_flux_boundariesBoundaries on which to apply a heat flux
C++ Type:std::vector<BoundaryName>
Unit:(no unit assumed)
Controllable:No
Description:Boundaries on which to apply a heat flux
- insulated_boundariesBoundaries on which to apply a zero heat flux
C++ Type:std::vector<BoundaryName>
Unit:(no unit assumed)
Controllable:No
Description:Boundaries on which to apply a zero heat flux
Thermal Boundaries Parameters
- cp_solidcp_solidSpecific heat functor. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
Default:cp_solid
C++ Type:MooseFunctorName
Unit:(no unit assumed)
Controllable:No
Description:Specific heat functor. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
- rho_solidrho_solidDensity functor. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
Default:rho_solid
C++ Type:MooseFunctorName
Unit:(no unit assumed)
Controllable:No
Description:Density functor. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
- thermal_conductivity_blocksBlocks which each thermal conductivity is defined
C++ Type:std::vector<std::vector<SubdomainName>>
Unit:(no unit assumed)
Controllable:No
Description:Blocks which each thermal conductivity is defined
- thermal_conductivity_solidThermal conductivity, which may have different names depending on the subdomain
C++ Type:std::vector<MooseFunctorName>
Unit:(no unit assumed)
Controllable:No
Description:Thermal conductivity, which may have different names depending on the subdomain
- use_external_enthalpy_materialFalseTo indicate if the enthalpy material is set up outside of the action.
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:To indicate if the enthalpy material is set up outside of the action.
Material Properties Parameters
- external_heat_sourceThe name of a functor which contains the external heat source for the energy equation. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
C++ Type:MooseFunctorName
Unit:(no unit assumed)
Controllable:No
Description:The name of a functor which contains the external heat source for the energy equation. A functor is any of the following: a variable, a functor material property, a function, a post-processor, or a number.
- external_heat_source_blocksThe blocks where the heat source is present.
C++ Type:std::vector<SubdomainName>
Unit:(no unit assumed)
Controllable:No
Description:The blocks where the heat source is present.
- external_heat_source_coeff1Multiplier for the coupled heat source term.
Default:1
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Multiplier for the coupled heat source term.
Solid Porous Medium Heat Source Parameters
- initial_from_file_timestepLATESTGives the time step number (or "LATEST") for which to read the Exodus solution
Default:LATEST
C++ Type:std::string
Unit:(no unit assumed)
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
Unit:(no unit assumed)
Controllable:No
Description:Determines if the variables that are added by the action are initializedfrom the mesh file (only for Exodus format)
Restart From Exodus Parameters
- solid_temperature_face_interpolationaverageThe numerical scheme to interpolate the temperature/energy to the face for conduction (separate from the advected quantity interpolation).
Default:average
C++ Type:MooseEnum
Unit:(no unit assumed)
Controllable:No
Description:The numerical scheme to interpolate the temperature/energy to the face for conduction (separate from the advected quantity interpolation).
- solid_temperature_two_term_bc_expansionTrueIf a two-term Taylor expansion is needed for the determination of the boundary valuesof the temperature/energy.
Default:True
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:If a two-term Taylor expansion is needed for the determination of the boundary valuesof the temperature/energy.