16#ifndef Calcul_Production_K_VEF_included
17#define Calcul_Production_K_VEF_included
19#include <TRUSTTabs_forward.h>
20#include <View_Types.h>
36 const double& limiteur,
const bool& deactivate_production_limiter=
false,
const double& cst_production_limiter=0.)
const;
38 const DoubleVect& volumes,
const IntTab& face_voisins,
const int nfaceinit,
const int nfaceend,
39 const int interpol_visco,
const double limiteur,
const DoubleTab& K_Omega,
const bool& activate_production_limiter=
false,
const double& cst_production_limiter=0.)
const;
41 const DoubleVect& volumes,
const IntTab& face_voisins,
const int nfaceinit,
const int nfaceend,
42 const int interpol_visco,
const double limiteur,
const DoubleTab& K_Omega,
const bool& activate_production_limiter=
false,
const double& cst_production_limiter=0.)
const;
47 void compute_production_term_EASM(
const int face,
const double visco_face,
const DoubleTab& Re_face,
const DoubleTab& gradient_face, DoubleTab& P)
const;
51 KOKKOS_INLINE_FUNCTION
52 double get_turbulent_viscosity(CDoubleArrView visco_turb, CDoubleArrView volumes,
const int type_interpo,
const int poly1,
const int poly2,
const double limiteur)
const;
53 double get_turbulent_viscosity(
const DoubleTab& visco_turb,
const DoubleVect& volumes,
const int type_interpo,
const int poly1,
const int poly2,
const double limiteur)
const;
void compute_utheta_nbConsti_le_1_nbCompo_eq_0(const Domaine_VEF &domaine_VEF, const Domaine_Cl_VEF &zcl_VEF, const IntTab &face_voisins, const DoubleVect &volumes, const DoubleTab &tab_beta, const DoubleTab &alpha_turb, const DoubleTrav &gradient_elem, DoubleTrav &u_theta) const
Calcul_Production_K_VEF()
void compute_utheta_nbConsti_gt_1_nbCompo_eq_1(const Domaine_VEF &domaine_VEF, const Domaine_Cl_VEF &zcl_VEF, const IntTab &face_voisins, const DoubleVect &volumes, const DoubleTab &tab_beta, const DoubleTab &alpha_turb, const DoubleTrav &gradient_elem, const int nb_consti, DoubleTrav &u_theta) const
void mettre_a_jour(double temps)
void compute_utheta_nbConsti_le_1_nbCompo_eq_1(const Domaine_VEF &domaine_VEF, const Domaine_Cl_VEF &zcl_VEF, const IntTab &face_voisins, const DoubleVect &volumes, const DoubleTab &tab_beta, const DoubleTab &alpha_turb, const DoubleTrav &gradient_elem, DoubleTrav &u_theta) const
void loop_for_non_periodic_boundaries(DoubleTab &prodK, const DoubleTab &gradient_elem, const DoubleTab &visco_turb, const DoubleVect &volumes, const IntTab &face_voisins, const int nfaceinit, const int nfaceend, const int interpol_visco, const double limiteur, const DoubleTab &K_Omega, const bool &activate_production_limiter=false, const double &cst_production_limiter=0.) const
Compute production term on non periodic boundary faces.
void compute_production_term_EASM(const int face, const double visco_face, const DoubleTab &Re_face, const DoubleTab &gradient_face, DoubleTab &P) const
void compute_utheta_nbConsti_gt_1_nbCompo_gt_1(const Domaine_VEF &domaine_VEF, const Domaine_Cl_VEF &zcl_VEF, const IntTab &face_voisins, const DoubleVect &volumes, const DoubleTab &tab_beta, const DoubleTab &alpha_turb, const DoubleTrav &gradient_elem, const int nb_consti, DoubleTrav &u_theta) const
DoubleTab & calculer_terme_destruction_K_gen(const Domaine_VEF &, const Domaine_Cl_VEF &, DoubleTab &, const DoubleTab &, const DoubleTab &, const Champ_Don_base &, const DoubleVect &, int) const
DoubleTab & calculer_terme_production_K(const Domaine_VEF &, const Domaine_Cl_VEF &, DoubleTab &, const DoubleTab &, const DoubleTab &, const DoubleTab &, const int &interpol_visco, const double &limiteur, const bool &deactivate_production_limiter=false, const double &cst_production_limiter=0.) const
Compute the production term for the turbulent kinetic energy.
void compute_utheta_nbConsti_le_1_nbCompo_gt_1(const Domaine_VEF &domaine_VEF, const Domaine_Cl_VEF &zcl_VEF, const IntTab &face_voisins, const DoubleVect &volumes, const DoubleTab &tab_beta, const DoubleTab &alpha_turb, const DoubleTrav &gradient_elem, DoubleTrav &u_theta) const
DoubleTab & calcul_tenseur_face(DoubleTab &, const DoubleTab &, const Domaine_VEF &, const Domaine_Cl_VEF &) const
DoubleTab & calculer_terme_production_K_EASM(const Domaine_VEF &, const Domaine_Cl_VEF &, DoubleTab &, const DoubleTab &, const DoubleTab &, const DoubleTab &, const DoubleTab &, const int &interpol_visco, const double &limiteur) const
KOKKOS_INLINE_FUNCTION double get_turbulent_viscosity(CDoubleArrView visco_turb, CDoubleArrView volumes, const int type_interpo, const int poly1, const int poly2, const double limiteur) const
Get the turbulent viscosity depending on the interpolation choice.
DoubleTab & calculer_terme_production_K_BiK(const Domaine_VEF &, const Domaine_Cl_VEF &, DoubleTab &, const DoubleTab &, const DoubleTab &, const DoubleTab &, const DoubleTab &, const int &interpol_visco, const double &limiteur) const
void loop_for_internal_or_periodic_faces(DoubleTab &prodK, const DoubleTab &gradient_elem, const DoubleTab &visco_turb, const DoubleVect &volumes, const IntTab &face_voisins, const int nfaceinit, const int nfaceend, const int interpol_visco, const double limiteur, const DoubleTab &K_Omega, const bool &activate_production_limiter=false, const double &cst_production_limiter=0.) const
Compute production term on internal and periodic boundary faces.
void compute_utheta_nbConsti_gt_1_nbCompo_eq_0(const Domaine_VEF &domaine_VEF, const Domaine_Cl_VEF &zcl_VEF, const IntTab &face_voisins, const DoubleVect &volumes, const DoubleTab &tab_beta, const DoubleTab &alpha_turb, const DoubleTrav &gradient_elem, const int nb_consti, DoubleTrav &u_theta) const
classe Champ_Don_base classe de base des Champs donnes (non calcules)