https://mooseframework.inl.gov
HeatTransferModels.h
Go to the documentation of this file.
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 "HeatConductionNames.h"
13 
15 {
16 
26 template <typename T1, typename T2, typename T3>
27 auto
28 cylindricalThermalConductance(const T1 & k, const T2 & r_inner, const T3 & r_outer)
29 {
30  mooseAssert(r_outer > r_inner, "Outer radius must be larger than inner radius.");
31  using std::log;
32 
33  const auto r_avg = 0.5 * (r_inner + r_outer);
34  return k / (r_avg * log(r_outer / r_inner));
35 }
36 
49 template <typename T1, typename T2, typename T3, typename T4, typename T5>
50 auto
52  const T2 & r_inner,
53  const T3 & r_outer,
54  const T4 & T_inner,
55  const T5 & T_outer)
56 {
57  return cylindricalThermalConductance(k_gap, r_inner, r_outer) * (T_inner - T_outer);
58 }
59 
74 template <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
75 auto
77  const T2 & r_outer,
78  const T3 & emiss_inner,
79  const T4 & emiss_outer,
80  const T5 & T_inner,
81  const T6 & T_outer,
83 {
84  mooseAssert(r_outer > r_inner, "Outer radius must be larger than inner radius.");
85  using std::pow;
86 
87  const auto rad_resistance =
88  1.0 / emiss_inner + r_inner / r_outer * (1.0 - emiss_outer) / emiss_outer;
89  return sigma * (pow(T_inner, 4) - pow(T_outer, 4)) / rad_resistance;
90 }
91 
92 }
auto cylindricalGapRadiationHeatFlux(const T1 &r_inner, const T2 &r_outer, const T3 &emiss_inner, const T4 &emiss_outer, const T5 &T_inner, const T6 &T_outer, const Real &sigma=HeatConduction::Constants::sigma)
Computes the radiation heat flux across a cylindrical gap.
auto log(const T &)
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)
auto cylindricalGapConductionHeatFlux(const T1 &k_gap, const T2 &r_inner, const T3 &r_outer, const T4 &T_inner, const T5 &T_outer)
Computes the conduction heat flux across a cylindrical gap.
MooseUnits pow(const MooseUnits &, int)
static const std::string k
Definition: NS.h:130
auto cylindricalThermalConductance(const T1 &k, const T2 &r_inner, const T3 &r_outer)
Computes the thermal conductance across a cylindrical medium.