https://mooseframework.inl.gov
HeatTransferUtils.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 "MooseTypes.h"
13 
15 {
16 
26 template <typename T1, typename T2, typename T3, typename T4>
27 auto
28 reynolds(const T1 & rho, const T2 & vel, const T3 & L, const T4 & mu)
29 {
30  using std::fabs;
31 
32  return rho * fabs(vel) * L / mu;
33 }
34 
43 template <typename T1, typename T2, typename T3>
44 auto
45 prandtl(const T1 & cp, const T2 & mu, const T3 & k)
46 {
47  return cp * mu / k;
48 }
49 
62 template <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
63 auto
64 grashof(const T1 & beta,
65  const T2 & T_s,
66  const T3 & T_bulk,
67  const T4 & L,
68  const T5 & rho,
69  const T6 & mu,
70  Real gravity_magnitude)
71 {
72  using std::abs, std::pow;
73 
74  return gravity_magnitude * beta * abs(T_s - T_bulk) * pow(L, 3) * (rho * rho) / (mu * mu);
75 }
76 
86 template <typename T1, typename T2, typename T3, typename T4>
87 auto
88 laplace(const T1 & sigma, const T2 & rho, const T3 & L, const T4 & mu)
89 {
90  return sigma * rho * L / (mu * mu);
91 }
92 
101 template <typename T1, typename T2, typename T3>
102 auto
103 thermalDiffusivity(const T1 & k, const T2 & rho, const T3 & cp)
104 {
105  return k / (rho * cp);
106 }
107 
116 template <typename T1, typename T2, typename T3>
117 auto
118 peclet(const T1 & vel, const T2 & L, const T3 & diffusivity)
119 {
120  using std::fabs;
121 
122  return fabs(vel) * L / diffusivity;
123 }
124 
125 } // namespace HeatTransferUtils
MetaPhysicL::DualNumber< V, D, asd > abs(const MetaPhysicL::DualNumber< V, D, asd > &a)
auto peclet(const T1 &vel, const T2 &L, const T3 &diffusivity)
Compute Peclet number.
auto thermalDiffusivity(const T1 &k, const T2 &rho, const T3 &cp)
Compute thermal diffusivity.
auto grashof(const T1 &beta, const T2 &T_s, const T3 &T_bulk, const T4 &L, const T5 &rho, const T6 &mu, Real gravity_magnitude)
Compute Grashof number.
static const std::string cp
Definition: NS.h:121
static const std::string mu
Definition: NS.h:123
auto reynolds(const T1 &rho, const T2 &vel, const T3 &L, const T4 &mu)
Compute Reynolds number.
auto prandtl(const T1 &cp, const T2 &mu, const T3 &k)
Compute Prandtl number.
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)
auto laplace(const T1 &sigma, const T2 &rho, const T3 &L, const T4 &mu)
Compute Laplace number.
MooseUnits pow(const MooseUnits &, int)
static const std::string k
Definition: NS.h:130