TrioCFD 1.9.8
TrioCFD documentation
Loading...
Searching...
No Matches
Flux_parietal_Kommajosyula.h
1/****************************************************************************
2* Copyright (c) 2021, CEA
3* All rights reserved.
4*
5* Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
6* 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
7* 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
8* 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
9*
10* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
11* IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
12* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
13*
14*****************************************************************************/
15
16#ifndef Flux_parietal_Kommajosyula_included
17#define Flux_parietal_Kommajosyula_included
18
19#include <TRUSTTab.h>
20#include <Flux_parietal_base.h>
21#include <Correlation_base.h>
22#include <Param.h>
23
24/*! @brief Wall heat flux correlation for subcooled boiling using the Kommajosyula model.
25 *
26 * Implements nucleation, bubble dynamics, sliding, and evaporation
27 * for subcooled boiling wall heat flux partitioning.
28 *
29 * Reference: R. Kommajosyula, "Computational modeling of subcooled boiling flow",
30 * PhD thesis, MIT, 2020.
31 */
33{
34 Declare_instanciable(Flux_parietal_Kommajosyula);
35
36public:
37 void qp(const input_t& input, output_t& output) const override;
38 void completer() override;
39
40 int calculates_bubble_nucleation_diameter() const override { return 1; }
41 int needs_saturation() const override { return 1; }
42 int T_at_wall() const override { return 1; }
43
44protected:
45 OWN_PTR(Correlation_base) correlation_monophasique_;
46 double theta_; //!< Contact angle on the surface [degrees]
47 double molar_mass_; //!< Molar mass [kg/mol]
48
49 double Lambert_W_function(double x) const;
50 double dx_Lambert_W_function(double x) const;
51
52private:
53 /*! @brief Results of nucleation parameter computation (page 42-56 Kommajosyula PhD). */
54 struct NucleationParams
55 {
56 double D_d, dTp_D_d, dTl_D_d; //!< Departure diameter and derivatives
57 double D_lo, dTp_D_lo, dTl_D_lo; //!< Liftoff diameter and derivatives
58 double t_g, dTp_t_g, dTl_t_g; //!< Growth time and derivatives
59 double f_dep, dTp_f_dep, dTl_f_dep; //!< Departure frequency and derivatives
60 double N_sites, dTp_N_sites, dTl_N_sites, dTk_N_sites; //!< Site density and derivatives
61 };
62
63 /*! @brief Results of sliding area computation (page 66 Kommajosyula PhD). */
64 struct SlidingAreaParams
65 {
66 double N_active, dTp_N_active, dTl_N_active, dTk_N_active; //!< Active site density and derivatives
67 double S_sl, dTp_S_sl, dTl_S_sl, dTk_S_sl; //!< Surface fraction and derivatives
68 };
69
70 /*! @brief Computes nucleation parameters: Jakob numbers, site density, diameters, frequencies.
71 *
72 * @param in Input data
73 * @param n_l Liquid phase index
74 * @param k Gas phase index
75 * @param ind_sat Saturation index
76 * @param Delta_T_sup Wall superheat [K]
77 * @param Delta_T_sub Subcooling [K]
78 * @param u_bulk Bulk velocity [m/s]
79 */
80 NucleationParams compute_nucleation_params(const input_t& in, int n_l, int k, int ind_sat,
81 double Delta_T_sup, double Delta_T_sub, double u_bulk) const;
82
83 /*! @brief Computes active nucleation site density, sliding area, and surface fraction.
84 *
85 * @param nuc Nucleation parameters from compute_nucleation_params
86 * @param h_fc Single-phase heat transfer coefficient [W/m^2/K]
87 * @param t_star Thermal boundary layer reformation time [s]
88 */
89 SlidingAreaParams compute_sliding_area(const NucleationParams& nuc, double h_fc, double t_star) const;
90};
91
92#endif
Wall heat flux correlation for subcooled boiling using the Kommajosyula model.
int calculates_bubble_nucleation_diameter() const override
OWN_PTR(Correlation_base) correlation_monophasique_
double theta_
Contact angle on the surface [degrees].
void qp(const input_t &input, output_t &output) const override
double molar_mass_
Molar mass [kg/mol].
classe Flux_parietal_base correlations de flux parietal de la forme