16#include <Modele_turbulence_hyd_K_Eps_Bicephale.h>
17#include <Source_Transport_K_VDF_Elem.h>
18#include <Milieu_base.h>
40 return mon_eq_transport_K->modele_turbulence().viscosite_turbulente().valeurs();
45 const DoubleTab& K = mon_eq_transport_K->inconnue().valeurs();
58 const DoubleTab& K = mon_eq_transport_K->inconnue().valeurs(), &Eps =
mon_eq_transport_Eps->inconnue().valeurs();
59 get_modele_fonc_bas_reyn()->Calcul_D_BiK(D,mon_eq_transport_K->domaine_dis(),mon_eq_transport_K->domaine_Cl_dis(),vit,K, Eps,ch_visco_cin);
60 get_modele_fonc_bas_reyn()->Calcul_E_BiK(E,mon_eq_transport_K->domaine_dis(),mon_eq_transport_K->domaine_Cl_dis(),vit,K, Eps,ch_visco_cin,visco_turb);
65 const DoubleTab& K = mon_eq_transport_K->inconnue().valeurs(), &Eps =
mon_eq_transport_Eps->inconnue().valeurs();
66 get_modele_fonc_bas_reyn()->Calcul_F1_BiK(F1,mon_eq_transport_K->domaine_dis(),mon_eq_transport_K->domaine_Cl_dis(), P_tab, K, Eps,ch_visco_cin_ou_dyn);
67 get_modele_fonc_bas_reyn()->Calcul_F2_BiK(F2,D,mon_eq_transport_K->domaine_dis(),K, Eps, ch_visco_cin_ou_dyn );
72 const DoubleVect& volumes = le_dom_VDF->volumes(), &porosite_vol = le_dom_Cl_VDF->equation().milieu().porosite_elem();
74 for (
int elem = 0; elem < le_dom_VDF->nb_elem(); elem++)
75 resu(elem) += (P(elem)-Eps(elem)-D(elem))*volumes(elem)*porosite_vol(elem);
80 const DoubleVect& volumes = le_dom_VDF->volumes(), &porosite_vol = le_dom_Cl_VDF->equation().milieu().porosite_elem();
82 for (
int elem = 0; elem < le_dom_VDF->nb_elem(); elem++)
83 resu(elem) += (P(elem)-Eps(elem))*volumes(elem)*porosite_vol(elem);
91 Matrice_Morse* mat = matrices.count(nom_inco) ? matrices.at(nom_inco) :
nullptr;
94 const DoubleTab& K = mon_eq_transport_K->inconnue().valeurs(), &Eps =
mon_eq_transport_Eps->inconnue().valeurs();
95 const DoubleVect& porosite = le_dom_Cl_VDF->equation().milieu().porosite_elem(), &volumes = le_dom_VDF->volumes();
98 const OWN_PTR(Modele_Fonc_Bas_Reynolds_Base)& mon_modele_fonc=ref_cast(Modele_turbulence_hyd_K_Eps_Bicephale,mon_eq_transport_K->modele_turbulence()).associe_modele_fonction();
99 const int is_modele_fonc=(bool(mon_modele_fonc));
105 const Domaine_dis_base& domaine_dis_k =mon_eq_transport_K->domaine_dis();
106 const Champ_base& ch_visco_cin_ou_dyn =ref_cast(Operateur_Diff_base,
equation().operateur(0).l_op_base()).diffusivite();
107 mon_modele_fonc->Calcul_F2_BiK(F2,D,domaine_dis_k,K,Eps, ch_visco_cin_ou_dyn );
110 for (
int c=0; c<size; c++)
115 double coef_k=porosite(c)*volumes(c)*Eps(c)/K(c);
DoubleVect & calculer_terme_production_K_BiK(const Domaine_VDF &, const Domaine_Cl_VDF &, DoubleVect &, const DoubleTab &, const DoubleTab &, const Champ_Face_VDF &, const DoubleTab &) const
DoubleVect & calculer_terme_production_K_BiK_Axi(const Domaine_VDF &, const Champ_Face_VDF &, DoubleVect &, const DoubleTab &, const DoubleTab &) const
classe Champ_Don_base classe de base des Champs donnes (non calcules)
class Champ_Face_VDF Cette classe sert a representer un champ vectoriel dont on ne calcule
classe Champ_base Cette classe est la base de la hierarchie des champs.
Class defining operators and methods for all reading operation in an input flow (file,...
virtual const Champ_Inc_base & inconnue() const =0
const Nom & le_nom() const override
Renvoie le nom du champ.
Classe Modele_turbulence_hyd_K_Eps_Bicephale Cette classe represente le modele de turbulence (k,...
const Transport_K_ou_Eps_base & get_eq_transp_Eps() const
Renvoie l equation d evolution de epsilon du modele de turbulence (version const).
const Equation_base & equation() const
Renvoie la reference sur l'equation pointe par MorEqn::mon_equation.
const std::string & getString() const
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 Sortie & printOn(Sortie &) const
Ecriture de l'objet sur un flot de sortie Methode a surcharger.
classe Probleme_base C'est un Probleme_U qui n'est pas un couplage.
Classe de base des flux de sortie.
class Source_Transport_K_VDF_Elem Cette classe represente le terme source qui figure dans l'equation ...
const OWN_PTR(Modele_Fonc_Bas_Reynolds_Base) &get_modele_fonc_bas_reyn() const override
void calcul_F1_F2(const Champ_base &, DoubleTab &, DoubleTab &, DoubleTab &, DoubleTab &) const override
const DoubleTab & get_visc_turb() const override
void fill_resu(const DoubleVect &, DoubleTab &) const override
void fill_resu_bas_rey(const DoubleVect &, const DoubleTab &, const DoubleTab &, const DoubleTab &, const DoubleTab &, DoubleTab &) const override
void ajouter_blocs(matrices_t matrices, DoubleTab &secmem, const tabs_t &semi_impl) const override
void associer_pb(const Probleme_base &pb) override
void calculer_terme_production(const Champ_Face_VDF &, const DoubleTab &, const DoubleTab &, DoubleVect &, const bool &deactivate_production_limiter=false, const double &cst_production_limiter=0.) const override
void calcul_D_E(const DoubleTab &, const DoubleTab &, const Champ_Don_base &, DoubleTab &, DoubleTab &) const override
DoubleTab & ajouter_keps(DoubleTab &) const
void associer_pb(const Probleme_base &) override
void resize(_SIZE_ n, RESIZE_OPTIONS opt=RESIZE_OPTIONS::COPY_INIT)
_SIZE_ dimension_tot(int) const override
_SIZE_ dimension(int d) const
classe Transport_K_ou_Eps Cette classe represente l'equation de transport de l'energie cinetique
Entree & readOn_nothing(Entree &, const Nom &)
void verifier_pb_keps(const Probleme_base &, const Nom &)