www.mooseframework.org
NitrogenFluidProperties.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
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 
11 #include "Conversion.h"
12 #include "MathUtils.h"
13 #include "libmesh/utility.h"
14 
15 registerMooseObject("FluidPropertiesApp", NitrogenFluidProperties);
16 
17 template <>
18 InputParameters
20 {
21  InputParameters params = validParams<HelmholtzFluidProperties>();
22  params.addClassDescription("Fluid properties for Nitrogen (N2)");
23  return params;
24 }
25 
26 NitrogenFluidProperties::NitrogenFluidProperties(const InputParameters & parameters)
27  : HelmholtzFluidProperties(parameters),
28  _Mn2(28.01348e-3),
29  _p_critical(3.3958e6),
30  _T_critical(126.192),
31  _rho_molar_critical(11.1839),
32  _rho_critical(313.3),
33  _p_triple(12.523e3),
34  _T_triple(63.151)
35 {
36 }
37 
38 std::string
40 {
41  return "nitrogen";
42 }
43 
44 Real
46 {
47  return _Mn2;
48 }
49 
50 Real
52 {
53  return _p_critical;
54 }
55 
56 Real
58 {
59  return _T_critical;
60 }
61 
62 Real
64 {
65  return _rho_critical;
66 }
67 
68 Real
70 {
71  return _p_triple;
72 }
73 
74 Real
76 {
77  return _T_triple;
78 }
79 
80 Real
82 {
83  // Scale the input density and temperature
84  const Real delta = density / _rho_critical;
85  const Real tau = _T_critical / temperature;
86  const Real logTstar = std::log(temperature / 98.94);
87 
88  // The dilute gas component
89  Real logOmega = 0.0;
90  for (std::size_t i = 0; i < _bmu.size(); ++i)
91  logOmega += _bmu[i] * MathUtils::pow(logTstar, i);
92 
93  const Real mu0 =
94  0.0266958 * std::sqrt(1000.0 * _Mn2 * temperature) / (0.3656 * 0.3656 * std::exp(logOmega));
95 
96  // The residual component
97  Real mur = 0.0;
98  for (std::size_t i = 0; i < _Nmu.size(); ++i)
99  mur += _Nmu[i] * std::pow(tau, _tmu[i]) * MathUtils::pow(delta, _dmu[i]) *
100  std::exp(-_gammamu[i] * MathUtils::pow(delta, _lmu[i]));
101 
102  // The viscosity in Pa.s
103  return (mu0 + mur) * 1.0e-6;
104 }
105 
106 void
108  Real temperature,
109  Real ddensity_dT,
110  Real & mu,
111  Real & dmu_drho,
112  Real & dmu_dT) const
113 {
114  // Scale the input density and temperature
115  const Real delta = density / _rho_critical;
116  const Real tau = _T_critical / temperature;
117  const Real logTstar = std::log(temperature / 98.94);
118 
119  // The dilute gas component
120  Real logOmega = 0.0, dlogOmega_dT = 0.0;
121  for (std::size_t i = 0; i < _bmu.size(); ++i)
122  {
123  logOmega += _bmu[i] * MathUtils::pow(logTstar, i);
124  dlogOmega_dT += i * _bmu[i] * MathUtils::pow(logTstar, i) / (temperature * logTstar);
125  }
126 
127  const Real mu0 =
128  0.0266958 * std::sqrt(1000.0 * _Mn2 * temperature) / (0.3656 * 0.3656 * std::exp(logOmega));
129  const Real dmu0_dT = 26.6958 * _Mn2 * (1.0 - 2.0 * temperature * dlogOmega_dT) *
130  std::exp(-logOmega) /
131  (2.0 * std::sqrt(1000.0 * _Mn2 * temperature) * 0.3656 * 0.3656);
132 
133  // The residual component
134  Real mur = 0.0, dmur_drho = 0.0, dmur_dT = 0.0;
135  Real term;
136  for (std::size_t i = 0; i < _Nmu.size(); ++i)
137  {
138  term = _Nmu[i] * std::pow(tau, _tmu[i]) * MathUtils::pow(delta, _dmu[i]) *
139  std::exp(-_gammamu[i] * MathUtils::pow(delta, _lmu[i]));
140  mur += term;
141  dmur_drho += (_dmu[i] - _lmu[i] * _gammamu[i] * MathUtils::pow(delta, _lmu[i])) * term / delta /
142  _rho_molar_critical / (1000.0 * _Mn2);
143  dmur_dT += -_tmu[i] * term / temperature;
144  }
145 
146  // The viscosity in Pa.s
147  mu = (mu0 + mur) * 1.0e-6;
148  dmu_drho = dmur_drho * 1.0e-6;
149  dmu_dT = (dmu0_dT + dmur_dT) * 1.0e-6 + dmu_drho * ddensity_dT;
150 }
151 
152 Real
154 {
155  // Require density first
156  const Real density = rho_from_p_T(pressure, temperature);
158 }
159 
160 void
162  Real pressure, Real temperature, Real & mu, Real & dmu_dp, Real & dmu_dT) const
163 {
164  Real rho, drho_dp, drho_dT;
165  rho_from_p_T(pressure, temperature, rho, drho_dp, drho_dT);
166 
167  Real dmu_drho;
168  mu_from_rho_T(rho, temperature, drho_dT, mu, dmu_drho, dmu_dT);
169  dmu_dp = dmu_drho * drho_dp;
170 }
171 
172 void
174  Real temperature,
175  Real & rho,
176  Real & mu) const
177 {
180 }
181 
182 void
184  Real temperature,
185  Real & rho,
186  Real & drho_dp,
187  Real & drho_dT,
188  Real & mu,
189  Real & dmu_dp,
190  Real & dmu_dT) const
191 {
192  rho_from_p_T(pressure, temperature, rho, drho_dp, drho_dT);
193  Real dmu_drho;
194  mu_from_rho_T(rho, temperature, drho_dT, mu, dmu_drho, dmu_dT);
195  dmu_dp = dmu_drho * drho_dp;
196 }
197 
198 Real
200 {
201  // Scale the input density and temperature
202  const Real delta = density / _rho_critical;
203  const Real tau = _T_critical / temperature;
204 
205  // The dilute gas component
206  const Real lambda0 =
207  1.511 * mu_from_rho_T(0.0, temperature) * 1.0e6 + 2.117 / tau - 3.332 * std::pow(tau, -0.7);
208 
209  // The residual component
210  Real lambdar = 0.0;
211  for (std::size_t i = 0; i < _Nk.size(); ++i)
212  lambdar += _Nk[i] * std::pow(tau, _tk[i]) * MathUtils::pow(delta, _dk[i]) *
213  std::exp(-_gammak[i] * MathUtils::pow(delta, _lk[i]));
214 
215  // The thermal conductivity (note: critical enhancement not implemented)
216  return (lambda0 + lambdar) * 1.0e-3;
217 }
218 
219 Real
221 {
222  // Require density first
223  const Real density = rho_from_p_T(pressure, temperature);
225 }
226 
227 void
229  Real pressure, Real temperature, Real & k, Real & dk_dp, Real & dk_dT) const
230 {
231  k = this->k_from_p_T(pressure, temperature);
232  // Calculate derivatives using finite differences
233  const Real eps = 1.0e-6;
234  const Real peps = pressure * eps;
235  const Real Teps = temperature * eps;
236 
237  dk_dp = (this->k_from_p_T(pressure + peps, temperature) - k) / peps;
238  dk_dT = (this->k_from_p_T(pressure, temperature + Teps) - k) / Teps;
239 }
240 
241 std::vector<Real>
243 {
244  return {-9.67578, 4.72162, 11.70585};
245 }
246 
247 Real
249 {
250  if (temperature < _T_triple || temperature > _T_critical)
251  throw MooseException("Temperature is out of range in " + name() + ": vaporPressure()");
252 
253  const Real Tr = temperature / _T_critical;
254  const Real theta = 1.0 - Tr;
255 
256  const Real logpressure =
257  (-6.12445284 * theta + 1.2632722 * std::pow(theta, 1.5) - 0.765910082 * std::pow(theta, 2.5) -
258  1.77570564 * Utility::pow<5>(theta)) /
259  Tr;
260 
261  return _p_critical * std::exp(logpressure);
262 }
263 
264 void
265 NitrogenFluidProperties::vaporPressure(Real, Real &, Real &) const
266 {
267  mooseError(name(), ": vaporPressure() is not implemented");
268 }
269 
270 Real
272 {
273  if (temperature < _T_triple || temperature > _T_critical)
274  throw MooseException("Temperature is out of range in " + name() + ": vaporPressure()");
275 
276  const Real Tr = temperature / _T_critical;
277  const Real theta = 1.0 - Tr;
278 
279  const Real logpressure =
280  1.48654237 * std::pow(theta, 0.3294) - 0.280476066 * std::pow(theta, 2.0 / 3.0) +
281  0.0894143085 * std::pow(theta, 8.0 / 3.0) - 0.119879866 * std::pow(theta, 35.0 / 6.0);
282 
283  return _rho_critical * std::exp(logpressure);
284 }
285 
286 Real
288 {
289  if (temperature < _T_triple || temperature > _T_critical)
290  throw MooseException("Temperature is out of range in " + name() + ": vaporPressure()");
291 
292  const Real Tr = temperature / _T_critical;
293  const Real theta = 1.0 - Tr;
294 
295  const Real logpressure =
296  (-1.70127164 * std::pow(theta, 0.34) - 3.70402649 * std::pow(theta, 5.0 / 6.0) +
297  1.29859383 * std::pow(theta, 7.0 / 6.0) - 0.561424977 * std::pow(theta, 13.0 / 6.0) -
298  2.68505381 * std::pow(theta, 14.0 / 3.0)) /
299  Tr;
300 
301  return _rho_critical * std::exp(logpressure);
302 }
303 
304 Real
305 NitrogenFluidProperties::alpha(Real delta, Real tau) const
306 {
307  // Ideal gas component of the Helmholtz free energy
308  const Real alpha0 = std::log(delta) + _a[0] * std::log(tau) + _a[1] + _a[2] * tau + _a[3] / tau +
309  _a[4] / Utility::pow<2>(tau) + _a[5] / Utility::pow<3>(tau) +
310  _a[6] * std::log(1.0 - std::exp(-_a[7] * tau));
311 
312  // Residual component of the Helmholtz free energy
313  Real alphar = 0.0;
314 
315  for (std::size_t i = 0; i < _N1.size(); ++i)
316  alphar += _N1[i] * MathUtils::pow(delta, _i1[i]) * std::pow(tau, _j1[i]);
317 
318  for (std::size_t i = 0; i < _N2.size(); ++i)
319  alphar += _N2[i] * MathUtils::pow(delta, _i2[i]) * std::pow(tau, _j2[i]) *
320  std::exp(-MathUtils::pow(delta, _l2[i]));
321 
322  for (std::size_t i = 0; i < _N3.size(); ++i)
323  alphar += _N3[i] * MathUtils::pow(delta, _i3[i]) * std::pow(tau, _j3[i]) *
324  std::exp(-_phi3[i] * Utility::pow<2>(delta - 1.0) -
325  _beta3[i] * Utility::pow<2>(tau - _gamma3[i]));
326 
327  // The Helmholtz free energy is the sum of these two
328  return alpha0 + alphar;
329 }
330 
331 Real
332 NitrogenFluidProperties::dalpha_ddelta(Real delta, Real tau) const
333 {
334  // Ideal gas component of the Helmholtz free energy
335  const Real dalpha0 = 1.0 / delta;
336 
337  // Residual component of the Helmholtz free energy
338  Real dalphar = 0.0;
339 
340  for (std::size_t i = 0; i < _N1.size(); ++i)
341  dalphar += _N1[i] * _i1[i] * MathUtils::pow(delta, _i1[i]) * std::pow(tau, _j1[i]);
342 
343  for (std::size_t i = 0; i < _N2.size(); ++i)
344  dalphar += _N2[i] * MathUtils::pow(delta, _i2[i]) * std::pow(tau, _j2[i]) *
345  std::exp(-MathUtils::pow(delta, _l2[i])) *
346  (_i2[i] - _l2[i] * MathUtils::pow(delta, _l2[i]));
347 
348  for (std::size_t i = 0; i < _N3.size(); ++i)
349  dalphar += _N3[i] * MathUtils::pow(delta, _i3[i]) * std::pow(tau, _j3[i]) *
350  std::exp(-_phi3[i] * Utility::pow<2>(delta - 1.0) -
351  _beta3[i] * Utility::pow<2>(tau - _gamma3[i])) *
352  (_i3[i] - 2.0 * delta * _phi3[i] * (delta - 1.0));
353 
354  // The Helmholtz free energy is the sum of these two
355  return dalpha0 + dalphar / delta;
356 }
357 
358 Real
359 NitrogenFluidProperties::dalpha_dtau(Real delta, Real tau) const
360 {
361  // Ideal gas component of the Helmholtz free energy
362  const Real dalpha0 = _a[0] + _a[2] * tau - _a[3] / tau - 2.0 * _a[4] / Utility::pow<2>(tau) -
363  3.0 * _a[5] / Utility::pow<3>(tau) +
364  _a[6] * _a[7] * tau / (std::exp(_a[7] * tau) - 1.0);
365 
366  // Residual component of the Helmholtz free energy
367  Real dalphar = 0.0;
368 
369  for (std::size_t i = 0; i < _N1.size(); ++i)
370  dalphar += _N1[i] * _j1[i] * MathUtils::pow(delta, _i1[i]) * std::pow(tau, _j1[i]);
371 
372  for (std::size_t i = 0; i < _N2.size(); ++i)
373  dalphar += _N2[i] * _j2[i] * MathUtils::pow(delta, _i2[i]) * std::pow(tau, _j2[i]) *
374  std::exp(-MathUtils::pow(delta, _l2[i]));
375 
376  for (std::size_t i = 0; i < _N3.size(); ++i)
377  dalphar += _N3[i] * MathUtils::pow(delta, _i3[i]) * std::pow(tau, _j3[i]) *
378  std::exp(-_phi3[i] * Utility::pow<2>(delta - 1.0) -
379  _beta3[i] * Utility::pow<2>(tau - _gamma3[i])) *
380  (_j3[i] - 2.0 * tau * _beta3[i] * (tau - _gamma3[i]));
381 
382  // The Helmholtz free energy is the sum of these two
383  return (dalpha0 + dalphar) / tau;
384 }
385 
386 Real
387 NitrogenFluidProperties::d2alpha_ddelta2(Real delta, Real tau) const
388 {
389  // Ideal gas component of the Helmholtz free energy
390  const Real dalpha0 = -1.0 / delta / delta;
391 
392  // Residual component of the Helmholtz free energy
393  Real dalphar = 0.0;
394 
395  for (std::size_t i = 0; i < _N1.size(); ++i)
396  dalphar +=
397  _N1[i] * _i1[i] * (_i1[i] - 1.0) * MathUtils::pow(delta, _i1[i]) * std::pow(tau, _j1[i]);
398 
399  for (std::size_t i = 0; i < _N2.size(); ++i)
400  dalphar += _N2[i] * MathUtils::pow(delta, _i2[i]) * std::pow(tau, _j2[i]) *
401  std::exp(-MathUtils::pow(delta, _l2[i])) *
402  ((_i2[i] - _l2[i] * MathUtils::pow(delta, _l2[i])) *
403  (_i2[i] - 1.0 - _l2[i] * MathUtils::pow(delta, _l2[i])) -
404  _l2[i] * _l2[i] * MathUtils::pow(delta, _l2[i]));
405 
406  for (std::size_t i = 0; i < _N3.size(); ++i)
407  dalphar += _N3[i] * MathUtils::pow(delta, _i3[i]) * std::pow(tau, _j3[i]) *
408  std::exp(-_phi3[i] * Utility::pow<2>(delta - 1.0) -
409  _beta3[i] * Utility::pow<2>(tau - _gamma3[i])) *
410  (Utility::pow<2>(_i3[i] - 2.0 * delta * _phi3[i] * (delta - 1.0)) - _i3[i] -
411  2.0 * delta * delta * _phi3[i]);
412 
413  // The Helmholtz free energy
414  return dalpha0 + dalphar / delta / delta;
415 }
416 
417 Real
418 NitrogenFluidProperties::d2alpha_dtau2(Real delta, Real tau) const
419 {
420  // Ideal gas component of the Helmholtz free energy
421  const Real dalpha0 = -_a[0] + 2.0 * _a[3] / tau + 6.0 * _a[4] / Utility::pow<2>(tau) +
422  12.0 * _a[5] / Utility::pow<3>(tau) -
423  _a[6] * _a[7] * _a[7] * tau * tau * std::exp(_a[7] * tau) /
424  Utility::pow<2>(std::exp(_a[7] * tau) - 1.0);
425 
426  // Residual component of the Helmholtz free energy
427  Real dalphar = 0.0;
428 
429  for (std::size_t i = 0; i < _N1.size(); ++i)
430  dalphar +=
431  _N1[i] * _j1[i] * (_j1[i] - 1.0) * MathUtils::pow(delta, _i1[i]) * std::pow(tau, _j1[i]);
432 
433  for (std::size_t i = 0; i < _N2.size(); ++i)
434  dalphar += _N2[i] * _j2[i] * (_j2[i] - 1.0) * MathUtils::pow(delta, _i2[i]) *
435  std::pow(tau, _j2[i]) * std::exp(-MathUtils::pow(delta, _l2[i]));
436 
437  for (std::size_t i = 0; i < _N3.size(); ++i)
438  dalphar += _N3[i] * MathUtils::pow(delta, _i3[i]) * std::pow(tau, _j3[i]) *
439  std::exp(-_phi3[i] * Utility::pow<2>(delta - 1.0) -
440  _beta3[i] * Utility::pow<2>(tau - _gamma3[i])) *
441  (Utility::pow<2>(_j3[i] - 2.0 * tau * _beta3[i] * (tau - _gamma3[i])) - _j3[i] -
442  2.0 * tau * tau * _beta3[i]);
443 
444  // The Helmholtz free energy is the sum of these two
445  return (dalpha0 + dalphar) / tau / tau;
446 }
447 
448 Real
450 {
451  // Residual component of the Helmholtz free energy (second derivative of ideal
452  // component wrt delta and tau is 0)
453  Real dalphar = 0.0;
454 
455  for (std::size_t i = 0; i < _N1.size(); ++i)
456  dalphar += _N1[i] * _i1[i] * _j1[i] * MathUtils::pow(delta, _i1[i]) * std::pow(tau, _j1[i]);
457 
458  for (std::size_t i = 0; i < _N2.size(); ++i)
459  dalphar += _N2[i] * _j2[i] * MathUtils::pow(delta, _i2[i]) * std::pow(tau, _j2[i]) *
460  std::exp(-MathUtils::pow(delta, _l2[i])) *
461  (_i2[i] - _l2[i] * MathUtils::pow(delta, _l2[i]));
462 
463  for (std::size_t i = 0; i < _N3.size(); ++i)
464  dalphar += _N3[i] * MathUtils::pow(delta, _i3[i]) * std::pow(tau, _j3[i]) *
465  std::exp(-_phi3[i] * Utility::pow<2>(delta - 1.0) -
466  _beta3[i] * Utility::pow<2>(tau - _gamma3[i])) *
467  (_i3[i] - 2.0 * delta * _phi3[i] * (delta - 1.0)) *
468  (_j3[i] - 2.0 * tau * _beta3[i] * (tau - _gamma3[i]));
469 
470  // The Helmholtz free energy
471  return dalphar / delta / tau;
472 }
NitrogenFluidProperties::_gamma3
const std::array< Real, 4 > _gamma3
Definition: NitrogenFluidProperties.h:190
registerMooseObject
registerMooseObject("FluidPropertiesApp", NitrogenFluidProperties)
HelmholtzFluidProperties::rho_from_p_T
virtual Real rho_from_p_T(Real pressure, Real temperature) const override
Definition: HelmholtzFluidProperties.C:29
NitrogenFluidProperties::_N2
const std::array< Real, 26 > _N2
Definition: NitrogenFluidProperties.h:167
NitrogenFluidProperties::mu_from_p_T
virtual Real mu_from_p_T(Real pressure, Real temperature) const override
Definition: NitrogenFluidProperties.C:153
NitrogenFluidProperties::henryCoefficients
virtual std::vector< Real > henryCoefficients() const override
Henry's law coefficients for dissolution in water.
Definition: NitrogenFluidProperties.C:242
NitrogenFluidProperties::d2alpha_ddelta2
virtual Real d2alpha_ddelta2(Real delta, Real tau) const override
Second derivative of Helmholtz free energy wrt delta.
Definition: NitrogenFluidProperties.C:387
validParams< NitrogenFluidProperties >
InputParameters validParams< NitrogenFluidProperties >()
Definition: NitrogenFluidProperties.C:19
NitrogenFluidProperties::_j1
const std::array< Real, 6 > _j1
Definition: NitrogenFluidProperties.h:165
NitrogenFluidProperties::_dmu
const std::array< Real, 5 > _dmu
Definition: NitrogenFluidProperties.h:196
pow
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)
Definition: ExpressionBuilder.h:673
NitrogenFluidProperties::_lmu
const std::array< Real, 5 > _lmu
Definition: NitrogenFluidProperties.h:197
NitrogenFluidProperties::molarMass
virtual Real molarMass() const override
Fluid name.
Definition: NitrogenFluidProperties.C:45
NitrogenFluidProperties::criticalDensity
virtual Real criticalDensity() const override
Critical density.
Definition: NitrogenFluidProperties.C:63
validParams< HelmholtzFluidProperties >
InputParameters validParams< HelmholtzFluidProperties >()
Definition: HelmholtzFluidProperties.C:16
NitrogenFluidProperties::dalpha_dtau
virtual Real dalpha_dtau(Real delta, Real tau) const override
Derivative of Helmholtz free energy wrt tau.
Definition: NitrogenFluidProperties.C:359
NitrogenFluidProperties::criticalTemperature
virtual Real criticalTemperature() const override
Critical temperature.
Definition: NitrogenFluidProperties.C:57
NitrogenFluidProperties::criticalPressure
virtual Real criticalPressure() const override
Critical pressure.
Definition: NitrogenFluidProperties.C:51
NitrogenFluidProperties::saturatedLiquidDensity
Real saturatedLiquidDensity(Real temperature) const
Saturated liquid density of N2 Valid for temperatures between the triple point temperature and critic...
Definition: NitrogenFluidProperties.C:271
NitrogenFluidProperties::_N1
const std::array< Real, 6 > _N1
Coefficients for residual component of the Helmholtz free energy.
Definition: NitrogenFluidProperties.h:158
NitrogenFluidProperties::_i1
const std::array< unsigned int, 6 > _i1
Definition: NitrogenFluidProperties.h:164
NitrogenFluidProperties::d2alpha_dtau2
virtual Real d2alpha_dtau2(Real delta, Real tau) const override
Second derivative of Helmholtz free energy wrt tau.
Definition: NitrogenFluidProperties.C:418
NitrogenFluidProperties::_T_triple
const Real _T_triple
Triple point temperature (K)
Definition: NitrogenFluidProperties.h:146
NitrogenFluidProperties::_p_triple
const Real _p_triple
Triple point pressure (Pa)
Definition: NitrogenFluidProperties.h:144
NitrogenFluidProperties::vaporPressure
virtual Real vaporPressure(Real temperature) const override
Vapor pressure.
Definition: NitrogenFluidProperties.C:248
NitrogenFluidProperties::_Nmu
const std::array< Real, 5 > _Nmu
Definition: NitrogenFluidProperties.h:194
NitrogenFluidProperties::_beta3
const std::array< Real, 4 > _beta3
Definition: NitrogenFluidProperties.h:189
NitrogenFluidProperties.h
NitrogenFluidProperties::_bmu
const std::array< Real, 5 > _bmu
Coefficients for viscosity.
Definition: NitrogenFluidProperties.h:193
NitrogenFluidProperties::d2alpha_ddeltatau
virtual Real d2alpha_ddeltatau(Real delta, Real tau) const override
Second derivative of Helmholtz free energy wrt delta and tau.
Definition: NitrogenFluidProperties.C:449
NS::density
const std::string density
Definition: NS.h:16
NitrogenFluidProperties::_Nk
const std::array< Real, 6 > _Nk
Coefficients for thermal conductivity.
Definition: NitrogenFluidProperties.h:201
NitrogenFluidProperties::k_from_p_T
virtual Real k_from_p_T(Real pressure, Real temperature) const override
Definition: NitrogenFluidProperties.C:220
NitrogenFluidProperties
Nitrogen (N2) fluid properties as a function of pressure (Pa) and temperature (K).
Definition: NitrogenFluidProperties.h:38
NitrogenFluidProperties::_lk
const std::array< unsigned int, 6 > _lk
Definition: NitrogenFluidProperties.h:204
NitrogenFluidProperties::_phi3
const std::array< Real, 4 > _phi3
Definition: NitrogenFluidProperties.h:188
NitrogenFluidProperties::_rho_molar_critical
const Real _rho_molar_critical
Critical molar density (mol/l)
Definition: NitrogenFluidProperties.h:140
SinglePhaseFluidProperties::rho
e e e e p h T rho
Definition: SinglePhaseFluidProperties.h:169
NitrogenFluidProperties::_tk
const std::array< Real, 6 > _tk
Definition: NitrogenFluidProperties.h:202
name
const std::string name
Definition: Setup.h:21
NitrogenFluidProperties::_rho_critical
const Real _rho_critical
Critical density (kg/m^3)
Definition: NitrogenFluidProperties.h:142
NitrogenFluidProperties::_p_critical
const Real _p_critical
Critical pressure (Pa)
Definition: NitrogenFluidProperties.h:136
NitrogenFluidProperties::triplePointTemperature
virtual Real triplePointTemperature() const override
Triple point temperature.
Definition: NitrogenFluidProperties.C:75
HelmholtzFluidProperties
Base class equation of state for fluids that use a Helmholtz free energy alpha(delta,...
Definition: HelmholtzFluidProperties.h:34
NitrogenFluidProperties::mu_from_rho_T
virtual Real mu_from_rho_T(Real density, Real temperature) const override
Definition: NitrogenFluidProperties.C:81
NitrogenFluidProperties::_dk
const std::array< unsigned int, 6 > _dk
Definition: NitrogenFluidProperties.h:203
NitrogenFluidProperties::triplePointPressure
virtual Real triplePointPressure() const override
Triple point pressure.
Definition: NitrogenFluidProperties.C:69
NitrogenFluidProperties::_a
const std::array< Real, 8 > _a
Coefficients for ideal gas component of the Helmholtz free energy.
Definition: NitrogenFluidProperties.h:149
NitrogenFluidProperties::alpha
virtual Real alpha(Real delta, Real tau) const override
Helmholtz free energy.
Definition: NitrogenFluidProperties.C:305
NitrogenFluidProperties::NitrogenFluidProperties
NitrogenFluidProperties(const InputParameters &parameters)
Definition: NitrogenFluidProperties.C:26
NS::temperature
const std::string temperature
Definition: NS.h:26
NitrogenFluidProperties::dalpha_ddelta
virtual Real dalpha_ddelta(Real delta, Real tau) const override
Derivative of Helmholtz free energy wrt delta.
Definition: NitrogenFluidProperties.C:332
NitrogenFluidProperties::_tmu
const std::array< Real, 5 > _tmu
Definition: NitrogenFluidProperties.h:195
NitrogenFluidProperties::_Mn2
const Real _Mn2
Nitrogen molar mass (kg/mol)
Definition: NitrogenFluidProperties.h:134
NitrogenFluidProperties::_gammamu
const std::array< Real, 5 > _gammamu
Definition: NitrogenFluidProperties.h:198
NitrogenFluidProperties::_j2
const std::array< Real, 26 > _j2
Definition: NitrogenFluidProperties.h:177
NitrogenFluidProperties::_i2
const std::array< unsigned int, 26 > _i2
Definition: NitrogenFluidProperties.h:175
NitrogenFluidProperties::_N3
const std::array< Real, 4 > _N3
Definition: NitrogenFluidProperties.h:183
NitrogenFluidProperties::k_from_rho_T
virtual Real k_from_rho_T(Real density, Real temperature) const override
Definition: NitrogenFluidProperties.C:199
NitrogenFluidProperties::rho_mu_from_p_T
virtual void rho_mu_from_p_T(Real pressure, Real temperature, Real &rho, Real &mu) const override
Combined methods.
Definition: NitrogenFluidProperties.C:173
NitrogenFluidProperties::_j3
const std::array< unsigned int, 4 > _j3
Definition: NitrogenFluidProperties.h:186
NitrogenFluidProperties::fluidName
virtual std::string fluidName() const override
Definition: NitrogenFluidProperties.C:39
NitrogenFluidProperties::_gammak
const std::array< Real, 6 > _gammak
Definition: NitrogenFluidProperties.h:205
NitrogenFluidProperties::_i3
const std::array< unsigned int, 4 > _i3
Definition: NitrogenFluidProperties.h:185
NitrogenFluidProperties::_l2
const std::array< unsigned int, 26 > _l2
Definition: NitrogenFluidProperties.h:180
NitrogenFluidProperties::saturatedVaporDensity
Real saturatedVaporDensity(Real temperature) const
Saturated vapor density of N2 Valid for temperatures between the triple point temperature and critica...
Definition: NitrogenFluidProperties.C:287
NS::pressure
const std::string pressure
Definition: NS.h:25
NitrogenFluidProperties::_T_critical
const Real _T_critical
Critical temperature (K)
Definition: NitrogenFluidProperties.h:138