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 "Closures1PhaseBase.h" 13 : 14 : /** 15 : * THM 1-phase closures 16 : */ 17 : class Closures1PhaseTHM : public Closures1PhaseBase 18 : { 19 : public: 20 : Closures1PhaseTHM(const InputParameters & params); 21 : 22 : /// Fluid heat transfer coefficient closure type 23 : enum class WallHTCClosureType 24 : { 25 : DITTUS_BOELTER, 26 : KAZIMI_CARELLI, 27 : LYON, 28 : MIKITYUK, 29 : SCHAD, 30 : WEISMAN, 31 : WOLF_MCCARTHY, 32 : GNIELINSKI 33 : }; 34 : 35 : /// Fluid friction factor closure type 36 : enum class WallFFClosureType 37 : { 38 : CHENG_TODREAS, 39 : CHURCHILL, 40 : COLEBROOK_WHITE 41 : }; 42 : 43 : virtual void checkFlowChannel(const FlowChannelBase & flow_channel) const override; 44 : virtual void checkHeatTransfer(const HeatTransferBase & heat_transfer, 45 : const FlowChannelBase & flow_channel) const override; 46 : virtual void addMooseObjectsFlowChannel(const FlowChannelBase & flow_channel) override; 47 99 : virtual void addMooseObjectsHeatTransfer(const HeatTransferBase & /*heat_transfer*/, 48 99 : const FlowChannelBase & /*flow_channel*/) override{}; 49 : 50 : protected: 51 : /** 52 : * Adds material that computes wall friction factor 53 : * 54 : * @param[in] flow_channel Flow channel component 55 : */ 56 : void addWallFFMaterial(const FlowChannel1Phase & flow_channel) const; 57 : 58 : /** 59 : * Adds wall heat transfer coefficient material 60 : * 61 : * @param[in] flow_channel Flow channel component 62 : * @param[in] i Heat transfer index 63 : */ 64 : void addWallHTCMaterial(const FlowChannel1Phase & flow_channel, unsigned int i) const; 65 : 66 : /// Wall heat transfer coefficient closure 67 : const WallHTCClosureType _wall_htc_closure; 68 : 69 : /// Wall friction factor closure 70 : const WallFFClosureType _wall_ff_closure; 71 : 72 : public: 73 : static InputParameters validParams(); 74 : };