16#include <Modele_turbulence_hyd_K_Eps_2_Couches.h>
17#include <Schema_Temps_base.h>
18#include <Modifier_pour_fluide_dilatable.h>
19#include <Probleme_base.h>
20#include <Perf_counters.h>
45 const DoubleTab& tab_K_Eps = chK_Eps.
valeurs();
46 DoubleTab& visco_turb = la_viscosite_turbulente_->valeurs();
52 if (visco_turb.
size() != n)
55 visco_turb_au_format_K_eps.typer(type);
58 if (visco_turb_K_eps.
size() != n)
60 Cerr <<
"visco_turb_K_eps size is " << visco_turb_K_eps.
size() <<
" instead of " << n << finl;
64 fill_turbulent_viscosity_tab(n, tab_K_Eps, visco_turb_K_eps);
65 la_viscosite_turbulente_->affecter(visco_turb_au_format_K_eps.valeur());
68 fill_turbulent_viscosity_tab(n, tab_K_Eps, visco_turb);
70 la_viscosite_turbulente_->changer_temps(temps);
71 return la_viscosite_turbulente_;
74void Modele_turbulence_hyd_K_Eps_2_Couches::fill_turbulent_viscosity_tab(
const int n,
const DoubleTab& tab_K_Eps, DoubleTab& turbulent_viscosity)
76 for (
int i = 0; i < n; i++)
79 turbulent_viscosity[i] = 0.;
81 turbulent_viscosity[i] = CMU * tab_K_Eps(i, 0) * tab_K_Eps(i, 0) / tab_K_Eps(i, 1);
91 la_viscosite_turbulente_->valeurs().echange_espace_virtuel();
114 statistics().begin_count(STD_COUNTERS::turbulent_viscosity, statistics().get_last_opened_counter_level()+1);
116 statistics().end_count(STD_COUNTERS::turbulent_viscosity);
classe Champ_Fonc_base Classe de base des champs qui sont fonction d'une grandeur calculee
virtual DoubleTab & valeurs()=0
classe Champ_base Cette classe est la base de la hierarchie des champs.
virtual void mettre_a_jour(double temps)
Effectue une mise a jour en temps de toutes les conditions aux limites.
Class defining operators and methods for all reading operation in an input flow (file,...
virtual void mettre_a_jour(double temps)
La valeur de l'inconnue sur le pas de temps a ete calculee.
virtual void completer()
Complete la construction (initialisation) des objets associes a l'equation.
virtual int preparer_calcul()
Tout ce qui ne depend pas des autres problemes eventuels.
virtual Domaine_Cl_dis_base & domaine_Cl_dis()
Renvoie le domaine des conditions aux limite discretisee associee a l'equation.
Schema_Temps_base & schema_temps()
Renvoie le schema en temps associe a l'equation.
virtual bool initTimeStep(double dt)
Allocation et initialisation de l'inconnue et des CLs jusqu'a present+dt.
virtual void verifie_loi_paroi()
Champ_Inc_base & get_set_unknown()
Classe Modele_turbulence_hyd_K_Eps_2_Couches Cette classe represente le modele de turbulence (k,...
void controler() override
bool initTimeStep(double dt) override
Transport_K_KEps & get_set_eq_transport() override
Champ_Fonc_base & calculer_viscosite_turbulente(double temps)
Calcule la viscosite turbulente au temps demande.
int preparer_calcul() override
Prepare le calcul.
void completer() override
Simple appel a Transport_K_Eps::completer().
void mettre_a_jour(double) override
Effectue une mise a jour en temps du modele de turbulence.
DoubleTab & complete_viscosity_field(const int, const Domaine_dis_base &, Champ_Inc_base &)
std::enable_if_t<(M_TYPE==MODELE_TYPE::K_EPS||M_TYPE==MODELE_TYPE::K_EPS_REALISABLE||M_TYPE==MODELE_TYPE::K_OMEGA), void > calculate_limit_viscosity(Champ_Inc_base &, double)
Classe Modele_turbulence_hyd_RANS_K_Eps_base Classe de base des modeles de type RANS_keps.
OWN_PTR(Modele_Fonc_Bas_Reynolds_Base) &associe_modele_fonction()
virtual int preparer_calcul()
Prepare le calcul.
Equation_base & equation()
Renvoie l'equation associee au modele de turbulence.
class Nom Une chaine de caractere pour nommer les objets de TRUST
const Nom & que_suis_je() const
renvoie la chaine identifiant la classe.
virtual Entree & readOn(Entree &)
Lecture d'un Objet_U sur un flot d'entree Methode a surcharger.
virtual const Nom & le_nom() const
Donne le nom de l'Objet_U Methode a surcharger : renvoie "neant" dans cette implementation.
virtual Sortie & printOn(Sortie &) const
Ecriture de l'objet sur un flot de sortie Methode a surcharger.
static void exit(int exit_code=-1)
Routine de sortie de TRUST dans une region Kokkos.
virtual int faire_un_pas_de_temps_eqn_base(Equation_base &)=0
Classe de base des flux de sortie.
_SIZE_ dimension(int d) const
const Champ_Inc_base & inconnue() const override
Renvoie le champ inconnue de l'equation.
int controler_K_Eps()
Controle le champ inconnue K-epsilon en forcant a zero les valeurs du champ.