TrioCFD 1.9.8
TrioCFD documentation
Loading...
Searching...
No Matches
Echange_contact_Correlation_VDF.h
1/****************************************************************************
2* Copyright (c) 2026, 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 Echange_contact_Correlation_VDF_included
17#define Echange_contact_Correlation_VDF_included
18
19#include <Echange_global_impose.h>
20#include <Domaine_forward.h>
21#include <Parser_U.h>
22
23class Milieu_base;
24class Front_VF;
25class Domaine_VDF;
26class Param;
27
29{
30
31 Declare_instanciable(Echange_contact_Correlation_VDF);
32
33public:
34
35 void mettre_a_jour(double) override;
36 void completer() override;
37 virtual void imprimer(double) const;
38 virtual int limpr(double, double) const;
39
40 /*
41 * Methode qu'on peut surcharger dans les classes filles pour definir un Nusselt particulier
42 * Sinon on peut rentrer dans le jdd directement une fonction Nusselt de Reynolds local et Prandtl local.
43 * Elle se charge de renvoyer la valeur du coefficient d'echange sur la maille i.
44 */
45 virtual double calculer_coefficient_echange(int i);
46
47 /*
48 * Methode qu'on peut surcharger dans les classes filles pour definir une forme particuliere.
49 * Sinon on peut rentrer dans le jdd une fonction de la surface laterale S et du diametre hydraulique Dh.
50 * Elle calcule le volume d'une tranche de fluide de surface laterale s et de diametre hydraulique d.
51 * Cette fonction depend donc de la geometrie pour laquelle la correlation est ecrite
52 * (plaques paralleles, cylindres etc...)
53 */
54 virtual double volume(double s, double d);
55
56 /*
57 * Renvoie U et T et les proprietes physiques sur la maille 1D i
58 */
59 inline double getU(int i) const { return U(i); }
60 inline double getT(int i) const { return T(i); }
61 inline double getMu(int i) const { return mu(i); }
62 inline double getLambda(int i) const { return lambda(i); }
63 inline double getRho(int i) const { return rho(i); }
64 inline double getCp() const { return Cp; }
65 inline double getDh() const { return diam; }
66 inline double getQh() const { return debit; }
67
68protected:
69 void set_param(Param& param) const override;
70 int lire_motcle_non_standard(const Motcle&, Entree&) override;
71
72 void calculer_CL();
73 void calculer_Q();
75 void trier_coord();
76 void calculer_Vitesse();
77 void calculer_Tfluide();
78 void calculer_h_mon_pb(DoubleTab&);
79 void calculer_h_solide(DoubleTab&, const Equation_base&, const Domaine_VDF&, const Front_VF&, const Milieu_base&);
80 void init_tab_echange();
81
83 DoubleTab autre_h;
84 bool Reprise_temperature = false;
85
86 DoubleTab tab_ech;
87
88 double Tinf = -100., Tsup = -100.; // Temperature entree, sortie
89 double T_CL0 = -100., T_CL1 = -100.; // CL sur le domaine. En seq. = Tinf et Tsup ; En parallele = Tvoisin
90 int dir = -1; // Direction du cylindre
96 double dt_impr = -100.;
97 double Cp = -100.;
98 double debit = -100.;
99
100 double diam = -100.; // diametre hydraulique
101 DoubleVect vol; // volumes des tranches Sdz du volume suivant la direction de l'ecoulement
102 DoubleVect coord; // coordonnees des points de discretisation 1D
103
104 int N = -1; // nb de points du maillage 1D pour la vitesse et la temperature
105 DoubleVect U, T; // inconnues fluides vitesse et temperature
106 DoubleVect Qvol; // puissance volumique dans le fluide 1D
107 DoubleVect rho, mu, lambda; // tableau des proprietes physiques du fluide a un instant donne
108 DoubleVect h_correlation; // le coeff d'echange par correlation
109
110};
111
112#endif
class Domaine_VDF
Definition Domaine_VDF.h:64
void set_param(Param &param) const override
virtual double volume(double s, double d)
int lire_motcle_non_standard(const Motcle &, Entree &) override
Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree.
void calculer_h_solide(DoubleTab &, const Equation_base &, const Domaine_VDF &, const Front_VF &, const Milieu_base &)
Classe Echange_global_impose Cette classe represente le cas particulier de la classe.
Class defining operators and methods for all reading operation in an input flow (file,...
Definition Entree.h:42
classe Equation_base Le role d'une equation est le calcul d'un ou plusieurs champs....
class Front_VF
Definition Front_VF.h:36
classe Milieu_base Cette classe est la base de la hierarchie des milieux (physiques)
Definition Milieu_base.h:50
Une chaine de caractere (Nom) en majuscules.
Definition Motcle.h:26
Helper class to factorize the readOn method of Objet_U classes.
Definition Param.h:112
classe Parser_U Version de la classe Parser, derivant de Objet_U.
Definition Parser_U.h:32