https://mooseframework.inl.gov
Loading...
Searching...
No Matches
NS.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 <string>
13#include "MathUtils.h"
14#include "MooseUtils.h"
15#include "MooseTypes.h"
16#include "libmesh/vector_value.h"
17#include "HeatConductionNames.h"
18
19namespace NS
20{
21using namespace HeatConduction;
22
23static const std::string directions[3] = {"x", "y", "z"};
24
25// geometric quantities
26static const std::string pebble_diameter = "pebble_diameter";
27static const std::string infinite_porosity = "infinite_porosity";
28static const std::string axis = "axis";
29static const std::string center = "center";
30static const std::string wall_porosity = "wall_porosity";
31static const std::string wall_distance = "wall_distance";
32
33// Names defined in Navier-Stokes
34static const std::string density = "rho";
35static const std::string superficial_density = "superficial_rho";
36static const std::string momentum_x = "rhou";
37static const std::string momentum_y = "rhov";
38static const std::string momentum_z = "rhow";
39static const std::string momentum_vector[3] = {momentum_x, momentum_y, momentum_z};
40static const std::string superficial_momentum_x = "superficial_rhou";
41static const std::string superficial_momentum_y = "superficial_rhov";
42static const std::string superficial_momentum_z = "superficial_rhow";
45
46static const std::string velocity = "velocity";
47static const std::string velocity_x = "vel_x";
48static const std::string velocity_y = "vel_y";
49static const std::string velocity_z = "vel_z";
51static const std::string superficial_velocity_x = "superficial_vel_x";
52static const std::string superficial_velocity_y = "superficial_vel_y";
53static const std::string superficial_velocity_z = "superficial_vel_z";
54static const std::string superficial_velocity = "superficial_velocity";
57static const std::string pressure = "pressure";
58// Starting variable name with pressure so it is displayed next to pressure in outputs
59static const std::string total_pressure = "pressure_total";
60static const std::string temperature = "temperature";
61
62static const std::string internal_energy = "internal_energy";
63static const std::string specific_internal_energy = "e";
64static const std::string specific_total_energy = "et";
65static const std::string internal_energy_density = "rho_e";
66static const std::string total_energy_density = "rho_et";
67static const std::string superficial_total_energy_density = "superficial_rho_et";
68
69static const std::string specific_enthalpy = "h";
70static const std::string specific_total_enthalpy = "ht";
71static const std::string enthalpy_density = "rho_h";
72static const std::string total_enthalpy_density = "rho_ht";
73static const std::string superficial_total_enthalpy_density = "superficial_rho_ht";
74
75static const std::string mixing_length = "mixing_length";
76static const std::string wall_shear_stress = "wall_shear_stress";
77static const std::string wall_yplus = "wall_yplus";
78static const std::string eddy_viscosity = "eddy_viscosity";
79static const std::string total_viscosity = "total_viscosity";
80
81static const std::string mach_number = "Mach";
82static const std::string specific_volume = "specific_volume";
83
84static const std::string momentum = "momentum";
85static const std::string v = "v";
86static const std::string acceleration = "acceleration";
87
88static const std::string fluid = "fp";
89
90// for Navier-Stokes material props representing gradients of nonlin+aux vars
91inline std::string
92grad(const std::string & var)
93{
94 return MathUtils::gradName(var);
95}
96// for Navier-Stokes material props representing time derivatives of nonlin+aux vars
97inline std::string
98time_deriv(const std::string & var)
99{
100 if (MooseUtils::isFloat(var))
101 return "0";
102 else
103 return MathUtils::timeDerivName(var);
104}
105
106// Navier-Stokes Variables
107// Relating to porous media
108static const std::string porosity = "porosity";
109static const std::string smoothed_porosity = "smoothed_porosity";
110static const std::string T_fluid = "T_fluid";
111static const std::string T_solid = "T_solid";
112static const std::string heat_source = "heat_source";
113
114// Navier-Stokes Materials
115static const std::string cL = "Darcy_coefficient";
116static const std::string cQ = "Forchheimer_coefficient";
117static const std::string alpha_boussinesq = "alpha_b";
118static const std::string drhos_dTs = "drhos_dTs";
119static const std::string dks_dTs = "dks_dTs";
120static const std::string kappa = "kappa";
121static const std::string kappa_s = "kappa_s";
122static const std::string rho_s = "rho_s";
123static const std::string cp_s = "cp_s";
124static const std::string k_s = "k_s";
125static const std::string cp = "cp";
126static const std::string cv = "cv";
127static const std::string mu = "mu";
128// Turbulent dynamic viscosity
129static const std::string mu_t = "mu_t";
130// Turbulent dynamic scalar viscosity
131static const std::string mu_t_passive_scalar = "mu_t_passive_scalar";
132// Effective viscosity = sum of viscosities
133static const std::string mu_eff = "mu_eff";
134static const std::string k = "k";
135// Turbulence 'conductivity'
136static const std::string k_t = "k_t";
137static const std::string thermal_diffusivity = "thermal_diffusivity";
138static const std::string alpha = "alpha";
139static const std::string alpha_wall = "alpha_wall";
140static const std::string solid = "solid";
141static const std::string Prandtl = "Pr";
142static const std::string turbulent_Prandtl = "Pr_t";
143static const std::string Reynolds = "Re";
144static const std::string Reynolds_hydraulic = "Re_h";
145static const std::string Reynolds_interstitial = "Re_i";
146static const std::string c = "c";
147static const std::string speed = "speed";
148static const std::string sound_speed = "sound_speed";
149
150// Two phase mixture materials
151static const std::string latent_heat = "latent_heat";
152static const std::string T_liquidus = "T_liquidus";
153static const std::string T_solidus = "T_solidus";
154static const std::string alpha_exchange = "alpha_exchange";
155
156// other Navier-Stokes terms
157static const std::string component = "component";
158static const std::string source_scaling = "source_scaling";
159
160// SUPG terms
161static const std::string matrix_tau = "matrix_tau";
162static const std::string vector_tau = "vector_tau";
163static const std::string scalar_tau = "scalar_tau";
164static const std::string diagonal_tau = "diagonal_tau";
165static const std::string A = "A";
166static const std::string R = "R";
167static const std::string S = "S";
168static const std::string dS_dTs = "dS_dTs";
169static const std::string F = "F";
170static const std::string G = "G";
171static const std::string dUdt = "dUdt";
172static const std::string C = "C";
173static const std::string Z = "Z";
174static const std::string K = "K";
175static const std::string mass_flux = "mass_flux";
176
177// Turbulence
178
179// Turbulence variables
180static const std::string TKE = "tke";
181static const std::string TKED = "epsilon";
182
187{
188 EQ_NEWTON = 0,
189 EQ_INCREMENTAL = 1,
190 EQ_LINEARIZED = 2,
191 NEQ = 3
192};
193
199{
200 SOLID = 0,
201 FLUID = 1
203
204// Turbulence constants
205static constexpr Real von_karman_constant = 0.4187;
206static constexpr Real E_turb_constant = 9.793;
207// Lower limit for mu_t
208static constexpr Real mu_t_low_limit = 1.0e-8;
209// Lower limit for epsilon in the k-epsilon
210static constexpr Real epsilon_low_limit = 1.0e-8;
211// Lower limit for y_plus
212static constexpr Real min_y_plus = 1e-10;
213
214// Boundary condition types
216{
217 FIXED_VELOCITY = 0,
218 FLUX_VELOCITY = 1,
219 FLUX_MASS = 2,
221};
222}
223
225{
226static const Real infinite_porosity = 0.4;
227static const int bed_axis = 2;
228static const Real wall_porosity = 1.0;
229
230static const Real k_epsilon = 1e-6;
231static const Real vel_epsilon = 1e-8;
232
233static const RealVectorValue center(0.0, 0.0, 0.0);
234static const RealVectorValue acceleration(0.0, 0.0, 0.0);
235
236// assumed that the RZ geometry is not annular unless otherwise specified
237static const Real inner_radius = 0.0;
238}
239
241{
242using namespace HeatConduction::Constants;
243}
Point center
T gradName(const T &base_prop_name)
T timeDerivName(const T &base_prop_name)
static const Real inner_radius
Definition NS.h:237
static const int bed_axis
Definition NS.h:227
static const Real k_epsilon
Definition NS.h:230
static const Real infinite_porosity
Definition NS.h:226
static const Real wall_porosity
Definition NS.h:228
static const Real vel_epsilon
Definition NS.h:231
static const RealVectorValue acceleration(0.0, 0.0, 0.0)
static const std::string superficial_momentum_z
Definition NS.h:42
static const std::string latent_heat
Definition NS.h:151
static const std::string specific_volume
Definition NS.h:82
static const std::string dks_dTs
Definition NS.h:119
static const std::string component
Definition NS.h:157
static const std::string mixing_length
Definition NS.h:75
static const std::string superficial_velocity_y
Definition NS.h:52
static constexpr Real mu_t_low_limit
Definition NS.h:208
static const std::string kappa_s
Definition NS.h:121
static const std::string diagonal_tau
Definition NS.h:164
static const std::string solid
Definition NS.h:140
static const std::string superficial_momentum_y
Definition NS.h:41
static const std::string density
Definition NS.h:34
static const std::string dS_dTs
Definition NS.h:168
static const std::string matrix_tau
Definition NS.h:161
static const std::string cL
Definition NS.h:115
static const std::string drhos_dTs
Definition NS.h:118
static const std::string T_fluid
Definition NS.h:110
static constexpr Real epsilon_low_limit
Definition NS.h:210
static constexpr Real von_karman_constant
Definition NS.h:205
static const std::string TKED
Definition NS.h:181
static const std::string axis
Definition NS.h:28
static const std::string cp
Definition NS.h:125
static const std::string momentum
Definition NS.h:84
static const std::string alpha_wall
Definition NS.h:139
static const std::string turbulent_Prandtl
Definition NS.h:142
static const std::string mu_t
Definition NS.h:129
static const std::string sound_speed
Definition NS.h:148
static const std::string wall_shear_stress
Definition NS.h:76
static const std::string velocity_y
Definition NS.h:48
static const std::string Reynolds_hydraulic
Definition NS.h:144
static const std::string k_s
Definition NS.h:124
static const std::string wall_yplus
Definition NS.h:77
static const std::string T_solidus
Definition NS.h:153
static const std::string A
Definition NS.h:165
static const std::string center
Definition NS.h:29
static const std::string mu_t_passive_scalar
Definition NS.h:131
static const std::string dUdt
Definition NS.h:171
static const std::string c
Definition NS.h:146
static const std::string superficial_total_enthalpy_density
Definition NS.h:73
static const std::string scalar_tau
Definition NS.h:163
static const std::string superficial_momentum_vector[3]
Definition NS.h:43
static const std::string temperature
Definition NS.h:60
static const std::string G
Definition NS.h:170
static const std::string R
Definition NS.h:166
static const std::string superficial_velocity_z
Definition NS.h:53
MomentumInletTypes
Definition NS.h:216
static const std::string enthalpy_density
Definition NS.h:71
static const std::string total_pressure
Definition NS.h:59
static const std::string mu
Definition NS.h:127
static const std::string acceleration
Definition NS.h:86
const std::string velocity_vector[3]
Definition NS.h:50
static const std::string wall_distance
Definition NS.h:31
static const std::string TKE
Definition NS.h:180
static const std::string total_enthalpy_density
Definition NS.h:72
static const std::string v
Definition NS.h:85
static const std::string total_energy_density
Definition NS.h:66
static const std::string eddy_viscosity
Definition NS.h:78
static const std::string cv
Definition NS.h:126
static const std::string S
Definition NS.h:167
static const std::string momentum_x
Definition NS.h:36
static const std::string K
Definition NS.h:174
static const std::string k
Definition NS.h:134
static const std::string superficial_density
Definition NS.h:35
CHTSide
CHT side options, we want to make sure these can be used as integers so we are avoiding the enum clas...
Definition NS.h:199
@ SOLID
Definition NS.h:200
@ FLUID
Definition NS.h:201
static const std::string velocity_z
Definition NS.h:49
static const std::string momentum_y
Definition NS.h:37
WallTreatmentEnum
Wall treatment options.
Definition NS.h:187
static const std::string T_solid
Definition NS.h:111
static const std::string cp_s
Definition NS.h:123
static const std::string specific_total_energy
Definition NS.h:64
static const std::string T_liquidus
Definition NS.h:152
static const std::string C
Definition NS.h:172
static const std::string rho_s
Definition NS.h:122
static const std::string superficial_total_energy_density
Definition NS.h:67
static const std::string alpha
Definition NS.h:138
static constexpr Real E_turb_constant
Definition NS.h:206
static const std::string specific_enthalpy
Definition NS.h:69
static const std::string thermal_diffusivity
Definition NS.h:137
static const std::string superficial_velocity
Definition NS.h:54
static const std::string mach_number
Definition NS.h:81
static const std::string Z
Definition NS.h:173
static const std::string kappa
Definition NS.h:120
static const std::string smoothed_porosity
Definition NS.h:109
static const std::string porosity
Definition NS.h:108
static constexpr Real min_y_plus
Definition NS.h:212
static const std::string wall_porosity
Definition NS.h:30
static const std::string Prandtl
Definition NS.h:141
static const std::string alpha_boussinesq
Definition NS.h:117
static const std::string superficial_velocity_x
Definition NS.h:51
static const std::string specific_total_enthalpy
Definition NS.h:70
static const std::string Reynolds_interstitial
Definition NS.h:145
static const std::string cQ
Definition NS.h:116
static const std::string k_t
Definition NS.h:136
static const std::string directions[3]
Definition NS.h:23
static const std::string mass_flux
Definition NS.h:175
static const std::string speed
Definition NS.h:147
static const std::string mu_eff
Definition NS.h:133
std::string time_deriv(const std::string &var)
Definition NS.h:98
static const std::string F
Definition NS.h:169
static const std::string heat_source
Definition NS.h:112
static const std::string total_viscosity
Definition NS.h:79
static const std::string superficial_momentum_x
Definition NS.h:40
static const std::string velocity_x
Definition NS.h:47
static const std::string fluid
Definition NS.h:88
static const std::string source_scaling
Definition NS.h:158
static const std::string specific_internal_energy
Definition NS.h:63
static const std::string alpha_exchange
Definition NS.h:154
static const std::string momentum_vector[3]
Definition NS.h:39
static const std::string internal_energy_density
Definition NS.h:65
static const std::string superficial_velocity_vector[3]
Definition NS.h:55
static const std::string pressure
Definition NS.h:57
static const std::string vector_tau
Definition NS.h:162
static const std::string infinite_porosity
Definition NS.h:27
static const std::string internal_energy
Definition NS.h:62
static const std::string pebble_diameter
Definition NS.h:26
static const std::string velocity
Definition NS.h:46
std::string grad(const std::string &var)
Definition NS.h:92
static const std::string momentum_z
Definition NS.h:38
static const std::string Reynolds
Definition NS.h:143