HeatStructureFromFile3D

This component allows users to load a 3D mesh from a file into a heat structure.

The block, sideset, and nodeset names are preserved, but are prepended with a component name. For example, if the component name is hs and the mesh has a block called body, users can refer to this block using the hs:body name, and similarly for sidesets and nodesets.

Usage

The initial temperature is given by the function parameter "initial_T".

The following parameters need to be specified:

  • "position": The location in 3D space where the origin of the mesh will be placed. This can be used to move the mesh from its original location specified in the file.

  • "file": the ExodusII file name with the mesh to load. Note that ExodusII is the only supported format at the moment.

To define the material properties used by the heat conduction model, users must create materials that define the following AD material properties on all of their blocks (see Mesh):

Material PropertySymbolDescription
densityρ\rhoDensity [kg/m3^3]
specific_heatcpc_pSpecific heat capacity [J/(kg-K)]
thermal_conductivitykkThermal conductivity [W/(m-K)]

Input Parameters

  • fileThe ExodusII mesh file name

    C++ Type:FileName

    Unit:(no unit assumed)

    Controllable:No

    Description:The ExodusII mesh file name

  • positionTranslation vector for the file mesh [m]

    C++ Type:libMesh::Point

    Unit:(no unit assumed)

    Controllable:No

    Description:Translation vector for the file mesh [m]

Required Parameters

  • initial_TInitial temperature [K]

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:Initial temperature [K]

  • scaling_factor_temperature1Scaling factor for solid temperature variable.

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Scaling factor for solid temperature variable.

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.

Advanced Parameters

Mesh

The block and sideset names in the loaded mesh file are prepended with the name of the component. For example if the heat structure component name is myhs and the mesh file has the block myblock, then the block myhs:myblock is created.

Variables

The following variables are created:

VariableSymbolDescription
T_solidTTTemperature [K]

Formulation

The heat conduction equation is the following: ρcp\pdTt(kT)=q\eqc \rho c_p \pd{T}{t} - \nabla \cdot (k \nabla T) = q''' \eqc where

  • ρ\rho is density,

  • cpc_p is specific heat capacity,

  • kk is thermal conductivity,

  • TT is temperature, and

  • qq''' is a volumetric heat source.

Multiplying by a test function ϕi\phi_i and integrating by parts over the domain Ω\Omega gives \prρcp\pdTt,ϕiΩ+\prkT,ϕiΩkT,ϕinΩ=\prq,ϕiΩ\eqc \pr{\rho c_p \pd{T}{t}, \phi_i}_\Omega + \pr{k \nabla T, \nabla\phi_i}_\Omega - \left\langle k \nabla T, \phi_i\mathbf{n}\right\rangle_{\partial\Omega} = \pr{q''', \phi_i}_\Omega \eqc where Ω\partial\Omega is the boundary of the domain Ω\Omega.