- boundaryList of boundary names for which this component applies
C++ Type:std::vector<BoundaryName>
Unit:(no unit assumed)
Controllable:No
Description:List of boundary names for which this component applies
- heat_flux_is_inwardFalseSet to true if the transferred heat flux corresponds to the inward direction on the heat structure boundary; else the outward direction
Default:False
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Set to true if the transferred heat flux corresponds to the inward direction on the heat structure boundary; else the outward direction
- heat_flux_nameName to give the heat flux variable transferred from the external application
C++ Type:VariableName
Unit:(no unit assumed)
Controllable:No
Description:Name to give the heat flux variable transferred from the external application
- hsHeat structure name
C++ Type:std::string
Unit:(no unit assumed)
Controllable:No
Description:Heat structure name
- perimeter_extName to give the external application perimeter post-processor
C++ Type:PostprocessorName
Unit:(no unit assumed)
Controllable:No
Description:Name to give the external application perimeter post-processor
HSBoundaryExternalAppHeatFlux
This component is a heat structure boundary that is used to apply a heat flux variable transferred from another application in a Neumann boundary condition. Currently, this component may only be used with 2D, cylindrical heat structures, such as HeatStructureCylindrical.
Usage
This component creates a heat flux variable with the name given by "heat_flux_name". The other application is responsible for transferring into this variable, and this name will need to be supplied to the other application's input file. If "heat_flux_is_monomial" is set to true
, then the finite element type of the variable will be CONSTANT MONOMIAL
; otherwise, it will be FIRST LAGRANGE
. The former is recommended whenever the other application uses a layered-average user object like NearestPointLayeredSideAverageFunctor to compute the heat flux, since in each axial division, there is only one value; there is not a value for each node. The latter is recommended whenever some kind of nodal transfer is used.
The parameter "heat_flux_is_inward" indicates whether the transferred heat flux corresponds to the inward direction, with respect to the heat structure boundary, i.e., if true
, a positive value indicates heat is moving into the heat structure.
This component creates a Receiver post-processor to receive the discrete perimeter of the boundary from the other application, with the name given by the parameter "perimeter_ext". This perimeter is necessary to normalize the heat flux to achieve energy conservation. The other application is responsible for transferring into this post-processor using a MultiAppPostprocessorTransfer, or the perimeter may be simply specified as a constant if it is so.
This component creates the post-processor <heat_structure_boundary_name>_integral
, which gives the heat rate found by integrating this heat flux over the boundary. This should be used to verify the conservation of the heat flux.
Formulation
The heat conduction equation is the following: where
is density,
is specific heat capacity,
is thermal conductivity,
is temperature, and
is a volumetric heat source.
Multiplying by a test function and integrating by parts over the domain gives where is the boundary of the domain .
For Neumann boundary conditions on the boundary , is replaced with a known incoming heat flux function :
This incoming boundary flux is computed from the transferred heat flux variable , the sign determined by "heat_flux_is_inward", the external discrete perimeter , and the heat structure boundary perimeter :
Input Parameters
- heat_flux_is_monomialTrueIf true, makes the heat flux variable transferred from the external application to have the FE type 'CONSTANT MONOMIAL'. Else, the FE type is 'FIRST LAGRANGE'.
Default:True
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:If true, makes the heat flux variable transferred from the external application to have the FE type 'CONSTANT MONOMIAL'. Else, the FE type is 'FIRST LAGRANGE'.
Optional Parameters
- 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.
- enableTrueSet the enabled status of the MooseObject.
Default:True
C++ Type:bool
Unit:(no unit assumed)
Controllable:No
Description:Set the enabled status of the MooseObject.