This class provides an interface for managing conjugate heat transfer (CHT) between fluid and solid domains. More...
#include <CHTHandler.h>
Public Types | |
| typedef DataFileName | DataFileParameterType |
Public Member Functions | |
| CHTHandler (const InputParameters ¶meters) | |
| Constructor with initialization parameters. More... | |
| void | linkEnergySystems (SystemBase *solid_energy_system, SystemBase *fluid_energy_system) |
| Link energy systems. More... | |
| void | setupConjugateHeatTransferContainers () |
| Set up the boundary condition pairs, functor maps, and every other necessary structure for the conjugate heat transfer routines. More... | |
| void | deduceCHTBoundaryCoupling () |
| Run error checks and make sure everything works. More... | |
| void | updateCHTBoundaryCouplingFields (const NS::CHTSide side) |
| Update the coupling fields for. More... | |
| void | initializeCHTCouplingFields () |
| Initialize the coupling fields for the conjugate heat transfer routines. More... | |
| bool | converged () const |
| Check if CHT iteration converged. More... | |
| void | resetCHTConvergence () |
| Reset the convergence data. More... | |
| void | incrementCHTIterators () |
| Increment CHT iterators in the loop. More... | |
| void | sumIntegratedFluxes () |
| Sum the integrated fluxes over all processors. More... | |
| void | printIntegratedFluxes () const |
| Print the integrated heat fluxes. More... | |
| void | resetIntegratedFluxes () |
| Reset the heat fluxes to 0. More... | |
| virtual bool | enabled () const override final |
| Check if CHT treatment is needed. More... | |
| std::shared_ptr< MooseObject > | getSharedPtr () |
| std::shared_ptr< const MooseObject > | getSharedPtr () const |
| bool | isKokkosObject (IsKokkosObjectKey &&) const |
| MooseApp & | getMooseApp () const |
| const std::string & | type () const |
| const std::string & | name () const |
| std::string | typeAndName () const |
| MooseObjectParameterName | uniqueParameterName (const std::string ¶meter_name) const |
| MooseObjectName | uniqueName () const |
| const InputParameters & | parameters () const |
| const hit::Node * | getHitNode () const |
| bool | hasBase () const |
| const std::string & | getBase () const |
| const T & | getParam (const std::string &name) const |
| std::vector< std::pair< T1, T2 > > | getParam (const std::string ¶m1, const std::string ¶m2) const |
| const T * | queryParam (const std::string &name) const |
| const T & | getRenamedParam (const std::string &old_name, const std::string &new_name) const |
| T | getCheckedPointerParam (const std::string &name, const std::string &error_string="") const |
| bool | isParamValid (const std::string &name) const |
| bool | isParamSetByUser (const std::string &name) const |
| void | connectControllableParams (const std::string ¶meter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const |
| void | paramError (const std::string ¶m, Args... args) const |
| void | paramWarning (const std::string ¶m, Args... args) const |
| void | paramWarning (const std::string ¶m, Args... args) const |
| void | paramInfo (const std::string ¶m, Args... args) const |
| std::string | messagePrefix (const bool hit_prefix=true) const |
| std::string | errorPrefix (const std::string &) const |
| void | mooseError (Args &&... args) const |
| void | mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const |
| void | mooseErrorNonPrefixed (Args &&... args) const |
| void | mooseWarning (Args &&... args) const |
| void | mooseWarning (Args &&... args) const |
| void | mooseWarningNonPrefixed (Args &&... args) const |
| void | mooseWarningNonPrefixed (Args &&... args) const |
| void | mooseDeprecated (Args &&... args) const |
| void | mooseDeprecated (Args &&... args) const |
| void | mooseInfo (Args &&... args) const |
| void | callMooseError (std::string msg, const bool with_prefix, const hit::Node *node=nullptr) const |
| std::string | getDataFileName (const std::string ¶m) const |
| std::string | getDataFileNameByName (const std::string &relative_path) const |
| std::string | getDataFilePath (const std::string &relative_path) const |
| const Parallel::Communicator & | comm () const |
| processor_id_type | n_processors () const |
| processor_id_type | processor_id () const |
Static Public Member Functions | |
| static InputParameters | validParams () |
| static void | callMooseError (MooseApp *const app, const InputParameters ¶ms, std::string msg, const bool with_prefix, const hit::Node *node) |
Public Attributes | |
| usingCombinedWarningSolutionWarnings | |
| const ConsoleStream | _console |
Static Public Attributes | |
| static const std::string | type_param |
| static const std::string | name_param |
| static const std::string | unique_name_param |
| static const std::string | app_param |
| static const std::string | moose_base_param |
| static const std::string | kokkos_object_param |
Protected Member Functions | |
| void | flagInvalidSolutionInternal (const InvalidSolutionID invalid_solution_id) const |
| InvalidSolutionID | registerInvalidSolutionInternal (const std::string &message, const bool warning) const |
Protected Attributes | |
| FEProblemBase & | _problem |
| Reference to FEProblem. More... | |
| MooseMesh & | _mesh |
| Mesh. More... | |
| SystemBase * | _energy_system |
| The energy system. More... | |
| SystemBase * | _solid_energy_system |
| The solid energy system. More... | |
| std::vector< BoundaryName > | _cht_boundary_names |
| The names of the CHT boundaries. More... | |
| std::vector< BoundaryID > | _cht_boundary_ids |
| The IDs of the CHT boundaries. More... | |
| const unsigned int | _max_cht_fpi |
| Maximum number of CHT fixed point iterations. More... | |
| const Real | _cht_heat_flux_tolerance |
| Tolerance for heat flux at the CHT interfaces. More... | |
| std::vector< std::vector< Real > > | _cht_flux_relaxation_factor |
| The relaxation factors for flux fields for the CHT boundaries first index is solid/fluid second is the interface. More... | |
| std::vector< std::vector< Real > > | _cht_temperature_relaxation_factor |
| The relaxation factors for temperature fields for the CHT boundaries first index is solid/fluid second is the interface. More... | |
| std::vector< unsigned int > | _cht_system_numbers |
| The solid (0) and fluid (1) system numbers. More... | |
| std::vector< std::vector< const FaceInfo * > > | _cht_face_info |
| The subset of the FaceInfo objects that belong to the given boundaries. More... | |
| std::vector< LinearFVFluxKernel * > | _cht_conduction_kernels |
| The conduction kernels from the solid/fluid domains. Can't be const, considering we are updating the inner structures for every face. More... | |
| std::vector< std::vector< LinearFVBoundaryCondition * > > | _cht_boundary_conditions |
| Vector of boundary conditions that describe the conjugate heat transfer from each side. More... | |
| std::vector< std::vector< FaceCenteredMapFunctor< Real, std::unordered_map< dof_id_type, Real > > > > | _boundary_heat_flux |
| Functors describing the heat flux on the conjugate heat transfer interfaces. More... | |
| std::vector< std::vector< Real > > | _integrated_boundary_heat_flux |
| Integrated flux for the boundaries, first index is the boundary second is solid/fluid. More... | |
| std::vector< std::vector< FaceCenteredMapFunctor< Real, std::unordered_map< dof_id_type, Real > > > > | _boundary_temperature |
| Functors describing the heat flux on the conjugate heat transfer interfaces. More... | |
| const bool & | _enabled |
| MooseApp & | _app |
| Factory & | _factory |
| ActionFactory & | _action_factory |
| const std::string & | _type |
| const std::string & | _name |
| const InputParameters & | _pars |
| const Parallel::Communicator & | _communicator |
Private Attributes | |
| unsigned int | _fpi_it |
| CHT fixed point iteration counter. More... | |
This class provides an interface for managing conjugate heat transfer (CHT) between fluid and solid domains.
Definition at line 29 of file CHTHandler.h.
| NS::FV::CHTHandler::CHTHandler | ( | const InputParameters & | parameters | ) |
Constructor with initialization parameters.
Definition at line 76 of file CHTHandler.C.
| bool NS::FV::CHTHandler::converged | ( | ) | const |
Check if CHT iteration converged.
Definition at line 415 of file CHTHandler.C.
Referenced by LinearAssemblySegregatedSolve::solve().
| void NS::FV::CHTHandler::deduceCHTBoundaryCoupling | ( | ) |
Run error checks and make sure everything works.
Definition at line 103 of file CHTHandler.C.
Referenced by LinearAssemblySegregatedSolve::initialSetup().
|
inlinefinaloverridevirtual |
Check if CHT treatment is needed.
Reimplemented from MooseObject.
Definition at line 138 of file CHTHandler.h.
Referenced by LinearAssemblySegregatedSolve::initialSetup(), LinearAssemblySegregatedSolve::LinearAssemblySegregatedSolve(), and LinearAssemblySegregatedSolve::solve().
|
inline |
Increment CHT iterators in the loop.
Definition at line 150 of file CHTHandler.h.
Referenced by LinearAssemblySegregatedSolve::solve().
| void NS::FV::CHTHandler::initializeCHTCouplingFields | ( | ) |
Initialize the coupling fields for the conjugate heat transfer routines.
Definition at line 306 of file CHTHandler.C.
Referenced by LinearAssemblySegregatedSolve::solve().
| void NS::FV::CHTHandler::linkEnergySystems | ( | SystemBase * | solid_energy_system, |
| SystemBase * | fluid_energy_system | ||
| ) |
Link energy systems.
Definition at line 91 of file CHTHandler.C.
Referenced by LinearAssemblySegregatedSolve::LinearAssemblySegregatedSolve().
| void NS::FV::CHTHandler::printIntegratedFluxes | ( | ) | const |
Print the integrated heat fluxes.
Definition at line 396 of file CHTHandler.C.
Referenced by LinearAssemblySegregatedSolve::solve().
|
inline |
Reset the convergence data.
Definition at line 144 of file CHTHandler.h.
Referenced by LinearAssemblySegregatedSolve::solve().
| void NS::FV::CHTHandler::resetIntegratedFluxes | ( | ) |
Reset the heat fluxes to 0.
Definition at line 408 of file CHTHandler.C.
Referenced by LinearAssemblySegregatedSolve::solve().
| void NS::FV::CHTHandler::setupConjugateHeatTransferContainers | ( | ) |
Set up the boundary condition pairs, functor maps, and every other necessary structure for the conjugate heat transfer routines.
Definition at line 226 of file CHTHandler.C.
Referenced by LinearAssemblySegregatedSolve::initialSetup().
| void NS::FV::CHTHandler::sumIntegratedFluxes | ( | ) |
Sum the integrated fluxes over all processors.
Definition at line 385 of file CHTHandler.C.
Referenced by LinearAssemblySegregatedSolve::solve().
| void NS::FV::CHTHandler::updateCHTBoundaryCouplingFields | ( | const NS::CHTSide | side | ) |
Update the coupling fields for.
| side |
Definition at line 327 of file CHTHandler.C.
Referenced by LinearAssemblySegregatedSolve::solve().
|
static |
Definition at line 25 of file CHTHandler.C.
Referenced by LinearAssemblySegregatedSolve::validParams().
|
protected |
Functors describing the heat flux on the conjugate heat transfer interfaces.
Two functors per sideset, first is solid second is fluid.
Definition at line 122 of file CHTHandler.h.
Referenced by setupConjugateHeatTransferContainers(), and updateCHTBoundaryCouplingFields().
|
protected |
Functors describing the heat flux on the conjugate heat transfer interfaces.
Two functors per sideset, first is solid second is fluid.
Definition at line 130 of file CHTHandler.h.
Referenced by initializeCHTCouplingFields(), setupConjugateHeatTransferContainers(), and updateCHTBoundaryCouplingFields().
|
protected |
Vector of boundary conditions that describe the conjugate heat transfer from each side.
Definition at line 117 of file CHTHandler.h.
Referenced by deduceCHTBoundaryCoupling(), initializeCHTCouplingFields(), and updateCHTBoundaryCouplingFields().
|
protected |
The IDs of the CHT boundaries.
Definition at line 91 of file CHTHandler.h.
Referenced by deduceCHTBoundaryCoupling(), initializeCHTCouplingFields(), setupConjugateHeatTransferContainers(), and updateCHTBoundaryCouplingFields().
|
protected |
The names of the CHT boundaries.
Definition at line 88 of file CHTHandler.h.
Referenced by CHTHandler(), deduceCHTBoundaryCoupling(), enabled(), printIntegratedFluxes(), and setupConjugateHeatTransferContainers().
|
protected |
The conduction kernels from the solid/fluid domains. Can't be const, considering we are updating the inner structures for every face.
Definition at line 114 of file CHTHandler.h.
Referenced by deduceCHTBoundaryCoupling(), and updateCHTBoundaryCouplingFields().
|
protected |
The subset of the FaceInfo objects that belong to the given boundaries.
Definition at line 111 of file CHTHandler.h.
Referenced by initializeCHTCouplingFields(), setupConjugateHeatTransferContainers(), and updateCHTBoundaryCouplingFields().
|
protected |
The relaxation factors for flux fields for the CHT boundaries first index is solid/fluid second is the interface.
Definition at line 101 of file CHTHandler.h.
Referenced by deduceCHTBoundaryCoupling(), and updateCHTBoundaryCouplingFields().
|
protected |
Tolerance for heat flux at the CHT interfaces.
Definition at line 97 of file CHTHandler.h.
Referenced by converged().
|
protected |
The solid (0) and fluid (1) system numbers.
Definition at line 108 of file CHTHandler.h.
Referenced by deduceCHTBoundaryCoupling(), initializeCHTCouplingFields(), and updateCHTBoundaryCouplingFields().
|
protected |
The relaxation factors for temperature fields for the CHT boundaries first index is solid/fluid second is the interface.
Definition at line 105 of file CHTHandler.h.
Referenced by deduceCHTBoundaryCoupling(), and updateCHTBoundaryCouplingFields().
|
protected |
The energy system.
Definition at line 82 of file CHTHandler.h.
Referenced by deduceCHTBoundaryCoupling(), linkEnergySystems(), and setupConjugateHeatTransferContainers().
|
private |
CHT fixed point iteration counter.
Definition at line 134 of file CHTHandler.h.
Referenced by converged(), incrementCHTIterators(), printIntegratedFluxes(), and resetCHTConvergence().
|
protected |
Integrated flux for the boundaries, first index is the boundary second is solid/fluid.
Definition at line 125 of file CHTHandler.h.
Referenced by converged(), printIntegratedFluxes(), resetIntegratedFluxes(), setupConjugateHeatTransferContainers(), sumIntegratedFluxes(), and updateCHTBoundaryCouplingFields().
|
protected |
Maximum number of CHT fixed point iterations.
Definition at line 94 of file CHTHandler.h.
Referenced by converged().
|
protected |
Mesh.
Definition at line 79 of file CHTHandler.h.
|
protected |
Reference to FEProblem.
Definition at line 76 of file CHTHandler.h.
Referenced by deduceCHTBoundaryCoupling(), setupConjugateHeatTransferContainers(), and sumIntegratedFluxes().
|
protected |
The solid energy system.
Definition at line 85 of file CHTHandler.h.
Referenced by deduceCHTBoundaryCoupling(), linkEnergySystems(), and setupConjugateHeatTransferContainers().
1.8.14