https://mooseframework.inl.gov
Loading...
Searching...
No Matches
GasLiquidMassTransferTest.C
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#include "gtest/gtest.h"
11
13
14#include <cmath>
15
17
18const Real p = 1e5;
19const double T = 800;
20const double M = 30e-3;
21const double R = 8.31446;
22const double mu = 20e-6;
23const double v = 1.0;
24const double d = 10e-3;
25const double radius = 1e-3;
26
27const double rho = p / R / T * M;
28const double Re = rho * v * d / mu;
29
31{
32
33 // Stokes-Einstein
34 {
35 const double D = 1.38064852e-23 * T / (6.0 * libMesh::pi * mu * radius);
36 const double Sc = mu / (rho * D);
37 const double mtc_gold = 0.023 * std::pow(Re, 0.8) * std::pow(Sc, 0.4) * D / d;
38 EXPECT_LT(std::abs(_mtc_stokes->mtc(p, T, v) - mtc_gold), tol * mtc_gold);
39 }
40
41 // Wilke-Chang
42 {
43 const double molar_volume = M / (rho / 1e6); // cm3/mol
44 const double mu_cp = mu * 1e3 / 1e2 * 1e2; // cP
45 const double D = 7.4e-8 * T * std::pow(1 * M * 1e3, 0.5) /
46 (mu_cp * std::pow(molar_volume, 0.6)) * std::pow(0.01, 2);
47 const double Sc = mu / (rho * D);
48 const double mtc_gold = 0.023 * std::pow(Re, 0.8) * std::pow(Sc, 0.4) * D / d;
49 EXPECT_LT(std::abs(_mtc_wilkes->mtc(p, T, v) - mtc_gold), tol * mtc_gold);
50 }
51}
const double R
const double radius
const double M
const double mu
const Real p
const double Re
const double d
const double rho
TEST_F(GasLiquidMassTransferTest, test)
const Real tol
const double T
const double v
const Real pi
static constexpr Real TOLERANCE