16#include <Solveur_Implicite_base.h>
17#include <Schema_Implicite_base.h>
18#include <Schema_Temps_base.h>
19#include <Discret_Thyd.h>
20#include <Milieu_base.h>
21#include <Domaine_VF.h>
34 p.lire_avec_accolades(is);
50 if(
reorder_.algo() != Reorder_Algo::None)
57 Cerr <<
"Velocity discretization" << finl;
63 Cerr <<
"Translation discretization" << finl;
69 Cerr <<
"Entcor discretization" << finl;
75 Cerr <<
"Pressure discretization" << finl;
82 Cerr <<
"Pressure pa discretization" << finl;
89 Cerr <<
"Velocity divergence discretization" << finl;
95 Cerr <<
"Pressure gradient discretization" << finl;
101 Cerr <<
"Discret_Thyd::creer_champ_vorticite() does nothing" << finl;
102 Cerr <<
que_suis_je() <<
"needs to overload it !" << finl;
110 Cerr <<
"Discret_Thyd::critere_Q() does nothing" << finl;
111 Cerr <<
que_suis_je() <<
" needs to overload it !" << finl;
117 Cerr <<
"Hydraulic diameter face field discretization" << finl;
126 Cerr <<
"Section passage field discretization" << finl;
130 DoubleVect& tab = ch_fonc.
valeurs();
138 Cerr <<
"Discret_Thyd::y_plus() does nothing" << finl;
139 Cerr <<
que_suis_je() <<
" needs to overload it !" << finl;
145 Cerr <<
"Discret_Thyd::distance_paroi_globale() does nothing" << finl;
146 Cerr <<
que_suis_je() <<
" needs to overload it !" << finl;
152 Cerr <<
"Discret_Thyd::grad_T() does nothing" << finl;
153 Cerr <<
que_suis_je() <<
" needs to overload it !" << finl;
159 Cerr <<
"Discret_Thyd::h_conv() does nothing" << finl;
160 Cerr <<
que_suis_je() <<
" needs to overload it !" << finl;
166 Cerr <<
"Discret_Thyd::proprietes_physiques_fluide_Ostwald() does nothing" << finl;
167 Cerr <<
que_suis_je() <<
" needs to overload it !" << finl;
173 Cerr <<
"\nDiscret_Thyd::grad_u() does nothing" << finl;
174 Cerr <<
que_suis_je() <<
" needs to overload it !" << finl;
180 Cerr <<
"Concentration discretization " << finl;
183 if (nb_constituants > 1)
186 Noms noms(nb_constituants);
187 for (
int i = 0; i < nb_constituants; i++)
DoubleTab & valeurs() override
Overrides Champ_base::valeurs() Returns the array of values.
class Champ_Fonc_base Base class of fields that are functions of a calculated quantity
Class Discret_Thermique: base class representing a spatial discretisation applied to thermal problems...
class Discret_Thyd This class is the base class representing a discretization
void gradient_P(const Schema_Temps_base &, Domaine_dis_base &, OWN_PTR(Champ_Inc_base)&, int nb_comp=1) const
void pression_en_pa(const Schema_Temps_base &, Domaine_dis_base &, OWN_PTR(Champ_Inc_base)&) const
void set_param(Param ¶m) const override
void pression(const Schema_Temps_base &, Domaine_dis_base &, OWN_PTR(Champ_Inc_base)&) const
Domaine_dis_base & discretiser() const override
virtual void y_plus(const Domaine_dis_base &, const Domaine_Cl_dis_base &, const Champ_Inc_base &, OWN_PTR(Champ_Fonc_base)&) const
virtual void creer_champ_vorticite(const Schema_Temps_base &, const Champ_Inc_base &, OWN_PTR(Champ_Fonc_base)&) const
virtual void proprietes_physiques_fluide_Ostwald(const Domaine_dis_base &, Fluide_Ostwald &, const Navier_Stokes_std &, const Champ_Inc_base &) const
virtual void check_param()
void entcor(const Schema_Temps_base &, Domaine_dis_base &, OWN_PTR(Champ_Fonc_base)&) const
void concentration(const Schema_Temps_base &, Domaine_dis_base &, OWN_PTR(Champ_Inc_base)&, int=1, const Nom nom_champ="concentration") const
virtual void grad_u(const Domaine_dis_base &, const Domaine_Cl_dis_base &, const Champ_Inc_base &, OWN_PTR(Champ_Fonc_base)&) const
void divergence_U(const Schema_Temps_base &, Domaine_dis_base &, OWN_PTR(Champ_Inc_base)&) const
virtual void h_conv(const Domaine_dis_base &z, const Domaine_Cl_dis_base &zcl, const Champ_Inc_base &eqn, OWN_PTR(Champ_Fonc_base)&ch, Motcle &nom, int temp_ref) const
virtual void distance_paroi_globale(const Schema_Temps_base &, Domaine_dis_base &, OWN_PTR(Champ_Fonc_base)&) const
void translation(const Schema_Temps_base &, Domaine_dis_base &, OWN_PTR(Champ_Fonc_base)&) const
void vitesse(const Schema_Temps_base &, Domaine_dis_base &, OWN_PTR(Champ_Inc_base)&, int nb_comp=1) const
void section_passage(const Domaine_dis_base &, const DoubleVect &, const Schema_Temps_base &, OWN_PTR(Champ_Fonc_base)&) const
void diametre_hydraulique_face(const Domaine_dis_base &, const DoubleVect &, const Schema_Temps_base &, OWN_PTR(Champ_Fonc_base)&) const
virtual void grad_T(const Domaine_dis_base &z, const Domaine_Cl_dis_base &zcl, const Champ_Inc_base &eqn, OWN_PTR(Champ_Fonc_base)&ch) const
virtual void critere_Q(const Domaine_dis_base &, const Domaine_Cl_dis_base &, const Champ_Inc_base &, OWN_PTR(Champ_Fonc_base)&) const
virtual Domaine_dis_base & discretiser() const
Reorder_Mesh reorder_
Helper object to renumber entities (nodes, elems, faces) if requested.
void discretiser_champ(const Motcle &directive, const Domaine_dis_base &z, const Nom &nom, const Nom &unite, int nb_comp, int nb_pas_dt, double temps, OWN_PTR(Champ_Inc_base)&champ, const Nom &sous_type=NOM_VIDE) const
class Domaine_Cl_dis_base Domaine_Cl_dis_base objects represent discretized boundary conditions
class Domaine_dis_base This class is the base of the hierarchy of discretized domains.
void set_reorder(const Reorder_Mesh &r)
Class defining operators and methods for all reading operation in an input flow (file,...
void nommer(const Nom &) override
Gives a name to the field.
virtual Nature_du_champ fixer_nature_du_champ(Nature_du_champ nat)
Sets the nature of a field: scalar, multiscalar, vectorial.
virtual const Nom & fixer_nom_compo(int, const Nom &)
Sets the name of the i-th component of the field.
A character string (Nom) in uppercase.
Navier_Stokes_std This class carries the terms of the momentum equation.
class Nom: a character string for naming TRUST objects.
An array of character strings (VECT(Nom)).
const Nom & que_suis_je() const
Returns the string identifying the class.
virtual Entree & readOn(Entree &)
Reads an Objet_U from an input stream. Virtual method to override.
virtual Sortie & printOn(Sortie &) const
Writes the object to an output stream. Virtual method to override.
Helper class to factorize the readOn method of Objet_U classes.
void ajouter(const char *keyword, const int *value, Param::Nature nat=Param::OPTIONAL)
Register an integer parameter.
static void exit(int exit_code=-1)
Exit routine for TRUST within a Kokkos region.
class Schema_Implicite_base Base class for all implicit time schemes.
double temps_courant() const
Returns the current time.
virtual int nb_valeurs_temporelles() const =0
Base class for output streams.
TRUSTArray & inject_array(const TRUSTArray &source, _SIZE_ nb_elements=-1, _SIZE_ first_element_dest=0, _SIZE_ first_element_source=0)
virtual void ref(const TRUSTTab &)