LCOV - code coverage report
Current view: top level - include/components - FlowChannel1PhaseBase.h (source / functions) Hit Total Coverage
Test: idaholab/moose thermal_hydraulics: #30301 (3b550b) with base 2ad78d Lines: 3 3 100.0 %
Date: 2025-07-30 13:02:48 Functions: 0 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             : #pragma once
      11             : 
      12             : #include "FlowChannelBase.h"
      13             : 
      14             : /**
      15             :  * Base class for single-phase flow channels
      16             :  */
      17             : class FlowChannel1PhaseBase : public FlowChannelBase
      18             : {
      19             : public:
      20             :   static InputParameters validParams();
      21             : 
      22             :   FlowChannel1PhaseBase(const InputParameters & params);
      23             : 
      24             :   virtual void addMooseObjects() override;
      25             : 
      26             :   /**
      27             :    * Gets 1-phase wall heat transfer coefficient names for connected heat transfers
      28             :    */
      29         334 :   std::vector<MaterialPropertyName> getWallHTCNames1Phase() const { return _Hw_1phase_names; }
      30             : 
      31             :   /**
      32             :    * Gets the numerical flux user object name
      33             :    */
      34        3307 :   const UserObjectName & getNumericalFluxUserObjectName() const { return _numerical_flux_name; }
      35             : 
      36             :   /**
      37             :    * Gets the slope reconstruction option used
      38             :    */
      39         888 :   const MooseEnum & getSlopeReconstruction() const { return _rdg_slope_reconstruction; }
      40             : 
      41             :   /// Returns the names of the IC parameters
      42             :   virtual std::vector<std::string> ICParameters() const = 0;
      43             : 
      44             : protected:
      45             :   virtual void init() override;
      46             :   virtual std::shared_ptr<FlowModel> buildFlowModel() override;
      47             :   virtual void check() const override;
      48             : 
      49             :   /**
      50             :    * Adds a material for the hydraulic diameter
      51             :    */
      52             :   virtual void addHydraulicDiameterMaterial();
      53             : 
      54             :   /**
      55             :    * Populates heat connection variable names lists
      56             :    */
      57             :   virtual void getHeatTransferVariableNames() override;
      58             : 
      59             :   /// Logs an error if the fluid properties is not valid
      60             :   virtual void checkFluidProperties() const = 0;
      61             : 
      62             :   /// Returns the flow model class name
      63             :   virtual std::string flowModelClassName() const = 0;
      64             : 
      65             :   /// 1-phase wall heat transfer coefficient names for connected heat transfers
      66             :   std::vector<MaterialPropertyName> _Hw_1phase_names;
      67             : 
      68             :   /// Numerical flux user object name
      69             :   const UserObjectName _numerical_flux_name;
      70             : 
      71             :   /// Slope reconstruction type for rDG
      72             :   const MooseEnum _rdg_slope_reconstruction;
      73             : };

Generated by: LCOV version 1.14