16#ifndef Op_Diff_K_Eps_Bas_Re_VDF_base_included
17#define Op_Diff_K_Eps_Bas_Re_VDF_base_included
19#include <Modele_turbulence_hyd_K_Eps_Bas_Reynolds.h>
20#include <Modele_turbulence_hyd_K_Eps_2_Couches.h>
21#include <Eval_Diff_K_Eps_Bas_Re_VDF_leaves.h>
22#include <Op_Dift_VDF_base.h>
23#include <Iterateur_VDF_Elem.h>
24#include <Op_VDF_Elem.h>
25#include <Perf_counters.h>
37 inline DoubleTab&
calculer(
const DoubleTab& inco, DoubleTab& resu)
const override {
return iter->calculer(inco, resu); }
42 Matrice_Morse *mat = matrices.count(nom_inco) ? matrices.at(nom_inco) :
nullptr, mat2;
49 void ajouter_blocs(matrices_t matrices, DoubleTab& secmem,
const tabs_t& semi_impl)
const override
51 statistics().begin_count(STD_COUNTERS::diffusion, statistics().get_last_opened_counter_level()+1);
52 iter->ajouter_blocs(matrices,secmem,semi_impl);
53 statistics().end_count(STD_COUNTERS::diffusion);
59 template <
typename EVAL_TYPE>
62 EVAL_TYPE& eval_diff_turb =
static_cast<EVAL_TYPE&
> (iter->evaluateur());
63 eval_diff_turb.associer(ch_diff);
66 template <
typename EVAL_TYPE>
69 const EVAL_TYPE& eval_diff =
static_cast<const EVAL_TYPE&
> (iter->evaluateur());
70 return eval_diff.diffusivite_turbulente();
73 template <
typename EVAL_TYPE>
76 const EVAL_TYPE& eval_diff_turb =
static_cast<const EVAL_TYPE&
> (iter->evaluateur());
77 return eval_diff_turb.diffusivite();
80 template <
typename EVAL_TYPE,
typename EVAL_TYPE2 = EVAL_TYPE >
87template <
typename EVAL_TYPE,
typename EVAL_TYPE2>
96 EVAL_TYPE& eval_diff =
static_cast<EVAL_TYPE&
> (iter->evaluateur());
97 eval_diff.associer_diff_turb(diff_turb);
104 EVAL_TYPE& eval_diff =
static_cast<EVAL_TYPE&
> (iter->evaluateur());
105 eval_diff.associer_diff_turb(diff_turb);
112 EVAL_TYPE2& eval_diff =
static_cast<EVAL_TYPE2&
> (iter->evaluateur());
113 eval_diff.associer_diff_turb(diff_turb);
classe Champ_Fonc_base Classe de base des champs qui sont fonction d'une grandeur calculee
classe Champ_base Cette classe est la base de la hierarchie des champs.
virtual const Champ_Inc_base & inconnue() const =0
const Nom & le_nom() const override
Renvoie le nom du champ.
Classe Matrice_Morse Represente une matrice M (creuse), non necessairement carree.
int nb_colonnes() const override
Return local number of columns (=size on the current proc).
Classe Modele_turbulence_hyd_K_Eps_2_Couches Cette classe represente le modele de turbulence (k,...
class Modele_turbulence_hyd_K_Eps_Bas_Reynolds
Classe Modele_turbulence_hyd_K_Eps Cette classe represente le modele de turbulence (k,...
const Champ_Fonc_base & viscosite_turbulente() const
const Equation_base & equation() const
Renvoie la reference sur l'equation pointe par MorEqn::mon_equation.
const std::string & getString() const
void ajouter_blocs(matrices_t matrices, DoubleTab &secmem, const tabs_t &semi_impl) const override
DoubleTab & calculer(const DoubleTab &inco, DoubleTab &resu) const override
const Champ_base & diffusivite_impl() const
OWN_PTR(Iterateur_VDF_base) &get_iter()
void modifier_pour_Cl(Matrice_Morse &matrice, DoubleTab &secmem) const override
DOES NOTHING - to override in derived classes.
void completer() override
Associe l'operateur au domaine_dis, le domaine_Cl_dis, et a l'inconnue de son equation.
const Champ_Fonc_base & diffusivite_turbulente_impl() const
void mettre_a_jour_diffusivite() const
int has_interface_blocs() const override
Op_Diff_K_Eps_Bas_Re_VDF_base(const Iterateur_VDF_base &iter_base)
OWN_PTR(Iterateur_VDF_base) iter
void associer_diffusivite_turbulente_impl()
void dimensionner_blocs(matrices_t matrices, const tabs_t &semi_impl) const override
void associer_diffusivite_impl(const Champ_base &ch_diff)
Op_Dift_VDF_base(const Iterateur_VDF_base &iter_base)
void modifier_pour_Cl(const Domaine_VDF &, const Domaine_Cl_VDF &, Matrice_Morse &, DoubleTab &) const
void dimensionner(const Domaine_VDF &, const Domaine_Cl_VDF &, Matrice_Morse &, const bool) const
const Modele_turbulence_hyd_2_eq_base & modele_turbulence() const
Renvoie le modele de turbulence associe a l'equation.
classe Transport_K_Eps Cette classe represente l'equation de transport de l'energie cinetique
classe Transport_K_KEps Cette classe represente l'equation de transport de l'energie cinetique