LCOV - code coverage report
Current view: top level - src/components - HeatTransferFromTemperature1Phase.C (source / functions) Hit Total Coverage
Test: idaholab/moose thermal_hydraulics: #30301 (3b550b) with base 2ad78d Lines: 35 35 100.0 %
Date: 2025-07-30 13:02:48 Functions: 7 7 100.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : //* This file is part of the MOOSE framework
       2             : //* https://mooseframework.inl.gov
       3             : //*
       4             : //* All rights reserved, see COPYRIGHT for full restrictions
       5             : //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
       6             : //*
       7             : //* Licensed under LGPL 2.1, please see LICENSE for details
       8             : //* https://www.gnu.org/licenses/lgpl-2.1.html
       9             : 
      10             : #include "HeatTransferFromTemperature1Phase.h"
      11             : #include "FlowModelSinglePhase.h"
      12             : 
      13             : InputParameters
      14        1822 : HeatTransferFromTemperature1Phase::validParams()
      15             : {
      16        1822 :   InputParameters params = HeatTransfer1PhaseBase::validParams();
      17        3644 :   MooseEnum var_type("nodal elemental", "nodal", false);
      18        3644 :   params.addParam<MooseEnum>(
      19             :       "var_type", var_type, "The type of wall temperature variable (nodal, elemental).");
      20        1822 :   params.addClassDescription("Heat transfer specified by a wall temperature provided by an "
      21             :                              "external application going into 1-phase flow channel.");
      22        1822 :   return params;
      23        1822 : }
      24             : 
      25         911 : HeatTransferFromTemperature1Phase::HeatTransferFromTemperature1Phase(
      26         911 :     const InputParameters & parameters)
      27             :   : HeatTransfer1PhaseBase(parameters),
      28         911 :     _fe_type(getParam<MooseEnum>("var_type") == 0 ? libMesh::FEType(FIRST, LAGRANGE)
      29         911 :                                                   : libMesh::FEType(CONSTANT, MONOMIAL))
      30             : {
      31         911 : }
      32             : 
      33             : const libMesh::FEType &
      34         554 : HeatTransferFromTemperature1Phase::getFEType()
      35             : {
      36         554 :   return _fe_type;
      37             : }
      38             : 
      39             : void
      40         842 : HeatTransferFromTemperature1Phase::addVariables()
      41             : {
      42         842 :   HeatTransfer1PhaseBase::addVariables();
      43             : 
      44         842 :   getTHMProblem().addSimVariable(false, _T_wall_name, getFEType(), _flow_channel_subdomains);
      45         842 : }
      46             : 
      47             : void
      48         842 : HeatTransferFromTemperature1Phase::addMooseObjects()
      49             : {
      50         842 :   HeatTransfer1PhaseBase::addMooseObjects();
      51         842 : }
      52             : 
      53             : void
      54         554 : HeatTransferFromTemperature1Phase::addHeatTransferKernels()
      55             : {
      56             :   {
      57         554 :     const std::string class_name = "ADOneDEnergyWallHeating";
      58         554 :     InputParameters params = _factory.getValidParams(class_name);
      59        1108 :     params.set<NonlinearVariableName>("variable") = FlowModelSinglePhase::RHOEA;
      60        1108 :     params.set<std::vector<SubdomainName>>("block") = _flow_channel_subdomains;
      61        1662 :     params.set<std::vector<VariableName>>("T_wall") = {_T_wall_name};
      62        1108 :     params.set<MaterialPropertyName>("Hw") = _Hw_1phase_name;
      63        1662 :     params.set<std::vector<VariableName>>("P_hf") = {_P_hf_name};
      64        1108 :     params.set<MaterialPropertyName>("T") = FlowModelSinglePhase::TEMPERATURE;
      65        1108 :     getTHMProblem().addKernel(class_name, genName(name(), "wall_heat_transfer"), params);
      66         554 :   }
      67         554 : }
      68             : 
      69             : bool
      70        1853 : HeatTransferFromTemperature1Phase::isTemperatureType() const
      71             : {
      72        1853 :   return true;
      73             : }

Generated by: LCOV version 1.14