23#include <Rupture_bulles_2groupes_Smith.h>
24#include <Pb_Multiphase.h>
42 const DoubleTab& rho,
const DoubleTab& nu,
const DoubleTab& sigma,
const double Dh,
43 const DoubleTab& ndv,
const DoubleTab& d_bulles,
44 const DoubleTab& eps,
const DoubleTab& k_turb,
const int n_l,
const int n_g1,
const int n_g2,
45 DoubleTab& coeff)
const
48 const double We1 = 2. * rho(n_l) * std::pow(eps(n_l) * d_bulles(n_g1), 2. / 3.) * d_bulles(n_g1) / sigma(n_g1, n_l);
49 const double D_crit = 4. * std::sqrt(sigma(n_g1, n_l) / g / (rho(n_l) - rho(n_g1)));
50 const double d2_eff = std::max(d_bulles(n_g2), D_crit);
51 const double We2 = 2. * rho(n_l) * std::pow(eps(n_l) * d2_eff, 2. / 3.) * d2_eff / sigma(n_g2, n_l);
52 const double ratio_Dc_D2 = D_crit / d2_eff;
53 const double Dcrit_overD2_13_over3 = std::pow(ratio_Dc_D2, 13. / 3.);
54 const double Dcrit_overD2_5 = std::pow(ratio_Dc_D2, 5.);
57 coeff(n_g1, n_l) = (alpha(n_g1) > 1. / fac_sec_) ? 0.12 * C_TI1 * std::exp(-We_cr1 / We1) * std::sqrt(1. - std::min(We_cr1 / We1, 1.)) : 0.;
58 coeff(n_l, n_g1) = coeff(n_g1, n_l);
61 coeff(n_g2, n_l) = (alpha(n_g2) > 1. / fac_sec_) ? 0.378 * C_TI2 * std::exp(-We_cr2 / We2) * std::sqrt(1. - std::min(We_cr1 / We2, 1.)) * std::max(1. - 0.212 * Dcrit_overD2_13_over3, 0.) : 0.;
62 coeff(n_l, n_g2) = coeff(n_g2, n_l);
65 coeff(n_g1, n_g2) = (alpha(n_g2) > 1. / fac_sec_) ? 6.165 * C_TI21 * std::exp(-We_cr2 / We2) * std::sqrt(1. - std::min(We_cr1 / We2, 1.)) * std::max(0.212 * Dcrit_overD2_13_over3 - 0.167 * Dcrit_overD2_5, 0.) : 0.;
66 coeff(n_g2, n_g1) = coeff(n_g1, n_g2);
70 const DoubleTab& rho,
const DoubleTab& nu,
const DoubleTab& sigma,
const double Dh,
71 const DoubleTab& ndv,
const DoubleTab& d_bulles,
72 const DoubleTab& eps,
const DoubleTab& k_turb,
const int n_l,
const int n_g1,
const int n_g2,
73 DoubleTab& coeff)
const
76 const double La_square = sigma(n_g2, n_l) / g / (rho(n_l)-rho(n_g2));
77 const double C_D2 = 8./3. * (1.-std::min(alpha(n_g2),0.81)) * (1.-std::min(alpha(n_g2),0.81));
78 const double D_crit = 4. * std::sqrt(sigma(n_g2, n_l) / g / (rho(n_l)-rho(n_g1)));
79 const double Ur2 = std::min(ndv(n_l, n_g2), std::sqrt(4. / 3. * std::max(d_bulles(n_g2), D_crit) / C_D2 * g * std::abs(rho(n_l) - rho(n_g2)) / rho(n_l) * (alpha(n_l))));
82 coeff(n_g2, n_l) = (alpha(n_g2) > 1. / fac_sec_) ? 2.616e-4 * C_RC2 * std::cbrt(eps(n_l)) / Dh / Dh * std::pow(La_square, 1. / 6.) * std::max(1. - std::exp(-C_RC0 * std::sqrt(alpha(n_g2))), 0.) + 1.425e-7 * C_WE2 * (1. - std::exp(-0.7 * alpha(n_g2))) * 0.94 * Ur2 * std::cbrt(C_D2) / La_square : 0.;
83 coeff(n_l, n_g2) = coeff(n_g2, n_l);
87 const DoubleTab& rho,
const DoubleTab& nu,
const DoubleTab& sigma,
const double Dh,
88 const DoubleTab& ndv,
const DoubleTab& d_bulles,
89 const DoubleTab& eps,
const DoubleTab& k_turb,
const int n_l,
const int n_g1,
const int n_g2,
90 DoubleTab& coeff)
const
92 const double D_crit = 4. * std::sqrt(sigma(n_g2, n_l) / g / (rho(n_l) - rho(n_g1)));
93 const double d2_eff = std::max(d_bulles(n_g2), D_crit);
94 const double We2 = 2. * rho(n_l) * std::pow(eps(n_l) * d2_eff, 2. / 3.) * d2_eff / sigma(n_g2, n_l);
95 const double Ur2 = std::max(ndv(n_l, n_g2), std::sqrt(1. / 2. * D_crit * g * std::abs(rho(n_l) - rho(n_g2)) / rho(n_l)));
98 coeff(n_g1, n_l) = (alpha(n_g2) > 1. / fac_sec_) ? 8.0 * C_S0 * std::pow(rho(n_l), 3. / 5.) * std::pow(ndv(n_l, n_g2), 1. / 5.) * std::pow(sigma(n_g2, n_l), 2. / 5.) / rho(n_g2) / std::pow(Dh, 2. / 5.) / std::pow(We_cr2, 3. / 5.) * std::max(1. - std::pow(We_SO / We2, 4.), 0.) : 0.;
99 coeff(n_l, n_g1) = coeff(n_g1, n_l);
102 coeff(n_g2, n_l) = (alpha(n_g2) > 1. / fac_sec_) ? -0.36 * C_S0 * sigma(n_g2, n_l) / rho(n_g2) / Ur2 * std::max(1. - We_SO / We2, 0.) : 0.;
103 coeff(n_l, n_g2) = coeff(n_g2, n_l);
Class defining operators and methods for all reading operation in an input flow (file,...
virtual Entree & readOn(Entree &)
Lecture d'un Objet_U sur un flot d'entree Methode a surcharger.
virtual Sortie & printOn(Sortie &) const
Ecriture de l'objet sur un flot de sortie Methode a surcharger.
Two-group bubble breakup source terms using the Smith model.
void coefficient_SO(const DoubleTab &alpha, const DoubleTab &p, const DoubleTab &T, const DoubleTab &rho, const DoubleTab &nu, const DoubleTab &sigma, const double Dh, const DoubleTab &ndv, const DoubleTab &d_bulles, const DoubleTab &eps, const DoubleTab &k_turb, const int n_l, const int n_g1, const int n_g2, DoubleTab &coeff) const override
void coefficient_SI(const DoubleTab &alpha, const DoubleTab &p, const DoubleTab &T, const DoubleTab &rho, const DoubleTab &nu, const DoubleTab &sigma, const double Dh, const DoubleTab &ndv, const DoubleTab &d_bulles, const DoubleTab &eps, const DoubleTab &k_turb, const int n_l, const int n_g1, const int n_g2, DoubleTab &coeff) const override
void coefficient_TI(const DoubleTab &alpha, const DoubleTab &p, const DoubleTab &T, const DoubleTab &rho, const DoubleTab &nu, const DoubleTab &sigma, const double Dh, const DoubleTab &ndv, const DoubleTab &d_bulles, const DoubleTab &eps, const DoubleTab &k_turb, const int n_l, const int n_g1, const int n_g2, DoubleTab &coeff) const override
Classe de base des flux de sortie.