TRUST 1.9.8
HPC thermohydraulic platform
Loading...
Searching...
No Matches
Navier_Stokes_Turbulent_QC Class Reference

classe Navier_Stokes_Turbulent Cette classe represente l'equation de la dynamique pour un fluide More...

#include <Navier_Stokes_Turbulent_QC.h>

Inheritance diagram for Navier_Stokes_Turbulent_QC:
[legend]
Collaboration diagram for Navier_Stokes_Turbulent_QC:
[legend]

Public Member Functions

void completer () override
 Appels successifs a: Navier_Stokes_std::completer().
void mettre_a_jour (double) override
 appel Navier_Stokes_Turbulent::mettre_a_jour et Convection_Diffusion_Chaleur_Turbulent_QC::mettre_a_jour_modele
bool initTimeStep (double dt) override
 Allocation et initialisation de l'inconnue et des CLs jusqu'a present+dt.
int preparer_calcul () override
 cf Equation_base::preparer_calcul() Assemblage du solveur pression et
int impr (Sortie &) const override
 Effectue quelques impressions sur un flot de sortie: - maximum de div U.
void imprimer (Sortie &os) const override
 Imprime les operateurs de l'equation si le schema en temps indique que c'est necessaire.
DoubleTab & derivee_en_temps_inco (DoubleTab &) override
 Calcule la derivee en temps de l'inconnue vitesse, i.
void assembler (Matrice_Morse &mat_morse, const DoubleTab &present, DoubleTab &secmem) override
void assembler_avec_inertie (Matrice_Morse &mat_morse, const DoubleTab &present, DoubleTab &secmem) override
const Champ_Inc_baserho_la_vitesse () const override
void discretiser () override
 Dicretise l'equation.
const Champ_baseget_champ (const Motcle &nom) const override
bool has_champ (const Motcle &nom, OBS_PTR(Champ_base) &ref_champ) const override
bool has_champ (const Motcle &nom) const override
const Champ_Don_basediffusivite_pour_transport () const override
Public Member Functions inherited from Navier_Stokes_Turbulent
void set_param (Param &titi) const override
int lire_motcle_non_standard (const Motcle &, Entree &) override
 Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree.
const Champ_Fonc_baseviscosite_turbulente () const
const Modele_turbulence_hyd_basemodele_turbulence () const
std::vector< YAML_datadata_a_sauvegarder () const override
 for PDI IO: retrieve name, type and dimensions of the fields to save/restore
int sauvegarder (Sortie &) const override
 Sauvegarde l'equation (et son modele de turbulence) sur un flot de sortie.
int reprendre (Entree &) override
 Reprise de l'equation et de son modele de turbulence a partir d'un flot d'entree.
const Champ_basediffusivite_pour_pas_de_temps () const override
void creer_champ (const Motcle &motlu) override
bool has_champ (const Motcle &nom, OBS_PTR(Champ_base) &ref_champ) const override
void get_noms_champs_postraitables (Noms &nom, Option opt=NONE) const override
const RefObjU & get_modele (Type_modele type) const override
void imprime_residu (SFichier &) override
Nom expression_residu () override
Public Member Functions inherited from Navier_Stokes_std
 Navier_Stokes_std ()
void associer_pb_base (const Probleme_base &) override
 S'associe au probleme: apelle Equation_base::associer_pb_base(const Probleme_base&).
void associer_fluide (const Fluide_base &un_fluide)
const Milieu_basemilieu () const override
 Renvoie le milieu physique de l'equation (le Fluide_base upcaste en Milieu_base).
Milieu_basemilieu () override
 Renvoie le milieu physique de l'equation (le Fluide_base upcaste en Milieu_base).
const Fluide_basefluide () const
 Renvoie le fluide incompressible (milieu physique de l'equation) associe a l'equation.
Fluide_basefluide ()
 Renvoie le fluide incompressible (milieu physique de l'equation) associe a l'equation.
void associer_milieu_base (const Milieu_base &) override
 Associe un mileu physique a l'equation en construisant dynamiquement (cast) un objet de type Fluide_base.
int nombre_d_operateurs () const override
 Renvoie le nombre d'operateurs de l'equation: Pour Navier Stokes Standard c'est 2.
int nombre_d_operateurs_tot () const override
const Operateuroperateur (int) const override
 Renvoie le i-eme operateur de l'equation: - le terme_diffusif si i = 0.
Operateuroperateur (int) override
 Renvoie le i-eme operateur de l'equation: - le terme_diffusif si i = 0.
const Operateuroperateur_fonctionnel (int) const override
Operateuroperateur_fonctionnel (int) override
Operateur_Divoperateur_divergence ()
 Renvoie l'operateur de calcul de la divergence associe a l'equation.
const Operateur_Divoperateur_divergence () const
 Renvoie l'operateur de calcul de la divergence associe a l'equation.
Operateur_Gradoperateur_gradient ()
 Renvoie l'operateur de calcul du gradient associe a l'equation.
const Operateur_Gradoperateur_gradient () const
 Renvoie l'operateur de calcul du gradient associe a l'equation.
Operateur_Diffoperateur_diff ()
const Operateur_Diffoperateur_diff () const
const Champ_Inc_baseinconnue () const override
 Renvoie la vitesse (champ inconnue de l'equation) (version const).
Champ_Inc_baseinconnue () override
 Renvoie la vitesse (champ inconnue de l'equation).
SolveurSyssolveur_pression ()
 Renvoie le solveur en pression (version const).
virtual void discretiser_vitesse ()
virtual void discretiser_grad_p ()
Entreelire_cond_init (Entree &) override
 Lecture des conditions initiales dans un flot d'entree.
void abortTimeStep () override
 Reinitialiser ce qui doit l'etre.
void resetTime (double time) override
 Reset current time of the equation. Used from ICoCo. See documentation of Problem_base::resetTime().
void dimensionner_matrice_sans_mem (Matrice_Morse &matrice) override
int has_interface_blocs () const override
void dimensionner_blocs (matrices_t matrices, const tabs_t &semi_impl={}) const override
void assembler_blocs (matrices_t matrices, DoubleTab &secmem, const tabs_t &semi_impl={}) const override
DoubleTab & corriger_derivee_expl (DoubleTab &) override
 Add a specific term for Navier Stokes (-gradP(n)) if necessary.
DoubleTab & corriger_derivee_impl (DoubleTab &) override
 Resolution de la pression, inconnue implicitee de Navier Stokes.
Matricematrice_pression ()
 OWN_PTR (Assembleur_base) &assembleur_pression()
bool has_grad_P () const
Champ_Inc_basegrad_P ()
const Champ_Inc_basegrad_P () const
Champ_Inc_basepression ()
const Champ_Inc_basepression () const
Champ_Inc_basepression_pa ()
const Champ_Inc_basepression_pa () const
Champ_Inc_basediv ()
const Champ_Inc_basediv () const
virtual const Champ_basevitesse_pour_transport () const
bool has_champ (const Motcle &nom, OBS_PTR(Champ_base) &ref_champ) const override
const Motcledomaine_application () const override
 Renvoie le nom du domaine d'application: "Hydraulique".
virtual const Champ_Inc_basevitesse () const
virtual Champ_Inc_basevitesse ()
virtual void projeter ()
 Calcule la solution U des equations: | M(U-V)/dt + BtP = 0.
virtual int projection_a_faire ()
virtual void sauver () const
virtual void calculer_la_pression_en_pa ()
 Calcul de "la_pression_en_pa" en fonction de "la_pression".
virtual void calculer_pression_hydrostatique (Champ_base &pression_hydro) const
int verif_Cl () const override
 Verifie la compatibilite des conditions limites avec l'equation.
Operateur_Convget_terme_convectif ()
virtual void updateFluidForce (DoubleTab &)
virtual bool getCouplingInfoForFiltering () const
DoubleTab getPressureTimeN ()
void setPressureTimeN ()
void update_y_plus (const DoubleTab &tab)
void reassembler_pression_si_necessaire ()
Public Member Functions inherited from Equation_base
void nommer (const Nom &nom) override
 Methode appelee lorsqu'on cree l'instance de l'objet dans le jeu de donnees (Interprete::ajouter).
virtual void avancer (int i=1)
virtual void reculer (int i=1)
Nom create_polymacfamily_syno (const Nom &field_tag) const
 Create a synonym of a field name in order to ensure backward compatibility with old names of the PolyMAC discretisation family.
virtual void init_save_file ()
virtual void close_save_file ()
int limpr () const
 Demande au schema en temps si il faut effectuer une impression.
virtual void associer_milieu_equation ()
virtual DoubleTab & derivee_en_temps_inco_transport (DoubleTab &derivee)
virtual void valider_iteration ()
 methode virtuelle permettant de corriger l'onconnue lors d'iterations implicites par exemple K-eps doivent rester positifs
virtual bool updateGivenFields ()
virtual double calculer_pas_de_temps () const
 Calcul du prochain pas de temps.
void calculer_pas_de_temps_locaux (DoubleTab &) const
Sourcessources ()
 Renvoie les termes sources asssocies a l'equation.
const Sourcessources () const
 Renvoie les termes sources asssocies a l'equation (version const).
Solveur_Masse_basesolv_masse ()
 Renvoie le solveur de masse associe a l'equation.
const Solveur_Masse_basesolv_masse () const
 Renvoie le solveur de masse associe a l'equation.
Probleme_baseprobleme ()
 Renvoie le probleme associe a l'equation.
const Probleme_baseprobleme () const
 Renvoie le probleme associe a l'equation.
Schema_Temps_baseschema_temps ()
 Renvoie le schema en temps associe a l'equation.
const Schema_Temps_baseschema_temps () const
 Renvoie le schema en temps associe a l'equation.
virtual void associer_sch_tps_base (const Schema_Temps_base &)
 S'associe au schema_en_temps.
virtual void associer_domaine_dis (const Domaine_dis_base &)
 Associe le domaine discretise a l'equation.
const Discretisation_basediscretisation () const
 Renvoie la discretisation associee a l'equation.
virtual Domaine_Cl_dis_basedomaine_Cl_dis ()
 Renvoie le domaine des conditions aux limite discretisee associee a l'equation.
virtual const Domaine_Cl_dis_basedomaine_Cl_dis () const
 Renvoie le domaine des conditions aux limite discretisee associee a l'equation.
Domaine_dis_basedomaine_dis ()
 Renvoie le domaine discretise associe a l'equation.
const Domaine_dis_basedomaine_dis () const
 Renvoie le domaine discretise associe a l'equation.
const Nomle_nom () const override
 Renvoie le nom de l'equation.
DoubleVect & get_residu ()
DoubleVect & residu_initial ()
void initialise_residu (int=0)
virtual void dimensionner_matrice (Matrice_Morse &mat_morse)
virtual void modifier_pour_Cl (Matrice_Morse &mat_morse, DoubleTab &secmem) const
virtual void dimensionner_termes_croises (Matrice_Morse &matrice, const Probleme_base &autre_pb, int nl, int nc)
virtual void ajouter_termes_croises (const DoubleTab &inco, const Probleme_base &autre_pb, const DoubleTab &autre_inco, DoubleTab &resu) const
virtual void contribuer_termes_croises (const DoubleTab &inco, const Probleme_base &autre_pb, const DoubleTab &autre_inco, Matrice_Morse &matrice) const
virtual double get_time_factor () const
virtual void assembler_blocs_avec_inertie (matrices_t matrices, DoubleTab &secmem, const tabs_t &semi_impl={})
Champ_Inc_basechamp_conserve () const
int has_champ_conserve () const
void init_champ_conserve () const
virtual std::pair< std::string, fonc_calc_t > get_fonc_champ_conserve () const
virtual Champ_Inc_basechamp_convecte () const
virtual int has_champ_convecte () const
virtual void init_champ_convecte () const
virtual void mettre_a_jour_champs_conserves (double temps, int reset=0)
bool has_champ (const Motcle &nom, OBS_PTR(Champ_base) &ref_champ) const override
virtual void verifie_ch_init_nb_comp (const Champ_Inc_base &ch_ref, const int nb_comp) const
 Verification du nombre de composantes lues pour la specification d un champ.
virtual void verifie_ch_init_nb_comp_cl (const Champ_Inc_base &ch_ref, const int nb_comp, const Cond_lim_base &cl) const
DoubleTab & derivee_en_temps_conv (DoubleTab &, const DoubleTab &)
 Add convection term In: solution is the unknown I.
void Gradient_conjugue_diff_impl (DoubleTrav &secmem, DoubleTab &solution)
void Gradient_conjugue_diff_impl (DoubleTrav &secmem, DoubleTab &solution, const DoubleTab &terme_mul)
 OWN_PTR (Parametre_equation_base) &parametre_equation()
const OWN_PTR (Parametre_equation_base) &parametre_equation() const
virtual int equation_non_resolue () const
int disable_equation_residual () const
virtual const Champ_Inc_basederivee_en_temps () const
virtual Champ_Inc_basederivee_en_temps ()
void set_calculate_time_derivative (int i)
int calculate_time_derivative () const
void set_residuals (const DoubleTab &residual)
virtual bool positive_unkown ()
void add_champs_compris (const Champ_base &ch)
void set_diffusion_multi_scalaire (bool flg=true)
const bool & diffusion_multi_scalaire () const
public_for_cuda void Gradient_conjugue_diff_impl (DoubleTrav &secmem, DoubleTab &solution, int size_terme_mul, const DoubleTab &term_mul)
 Solve: (1/dt + M-1*L)*dI = M-1 * secmem with a Conjugate Gradient matrix-free algorithm by default.
Public Member Functions inherited from Champs_compris_interface
virtual ~Champs_compris_interface ()
virtual bool has_champ (const Motcle &nom, OBS_PTR(Champ_base)&ref_champ) const =0
Public Member Functions inherited from Objet_U
 ~Objet_U () override
 Destructeur, supprime l'objet de la liste d'objets enregistres dans "memoire".
int numero () const
 Renvoie l'indice de l'objet dans Memoire::data.
virtual int duplique () const =0
virtual SortieprintOn (Sortie &) const
 Ecriture de l'objet sur un flot de sortie Methode a surcharger.
virtual EntreereadOn (Entree &)
 Lecture d'un Objet_U sur un flot d'entree Methode a surcharger.
virtual unsigned taille_memoire () const =0
virtual int est_egal_a (const Objet_U &) const
 Renvoie 1 si l'objet x et *this sont une seule et meme instance (meme adresse en memoire).
int get_object_id () const
 Renvoie l'identifiant unique de l'objet object_id_.
virtual const Type_infoget_info () const
 Donne des informations sur le type de l'Objet_U.
const Nomque_suis_je () const
 renvoie la chaine identifiant la classe.
const char * le_type () const
 Donne le nom du type de l'Objet_U.
virtual int change_num (const int *const)
 Change le numero interne de l'Objet_U.
virtual int associer_ (Objet_U &)
 Associe l'Objet_U a un autre Objet_U Methode virtuelle a surcharger.
const Interpreteinterprete () const
Interpreteinterprete ()
Public Member Functions inherited from Process
virtual ~Process ()
Public Member Functions inherited from Navier_Stokes_Fluide_Dilatable_Proto
 Navier_Stokes_Fluide_Dilatable_Proto ()
int impr_impl (const Navier_Stokes_std &eqn, Sortie &os) const
void assembler_impl (Matrice_Morse &mat_morse, const DoubleTab &present, DoubleTab &secmem)
void assembler_avec_inertie_impl (const Navier_Stokes_std &eqn, Matrice_Morse &mat_morse, const DoubleTab &present, DoubleTab &secmem)
void assembler_blocs_avec_inertie (const Navier_Stokes_std &eqn, matrices_t matrices, DoubleTab &secmem, const tabs_t &semi_impl)
DoubleTab & derivee_en_temps_inco_impl (Navier_Stokes_std &, DoubleTab &res)
 Calcule la derivee en temps de l'inconnue vitesse, i.
DoubleTab & rho_vitesse_impl (const DoubleTab &tab_rho, const DoubleTab &vit, DoubleTab &rhovitesse) const

Additional Inherited Members

Static Public Member Functions inherited from Equation_base
static void calculer_champ_conserve (const Objet_U &obj, DoubleTab &val, DoubleTab &bval, tabs_t &deriv)
Static Public Member Functions inherited from Objet_U
static const Nomnom_du_cas ()
 Renvoie une reference constante vers le nom du cas.
static Nomget_set_nom_du_cas ()
 Renvoie une reference non constante vers le nom du cas (pour pouvoir le modifier).
static const Type_infoinfo ()
 Donne des informations sur le type de l'Objet_U.
static const Objet_Uself_cast (const Objet_U &)
 methode ajoutee pour caster en python
static Objet_Uself_cast (Objet_U &)
Static Public Member Functions inherited from Process
static int me ()
 renvoie mon rang dans le groupe de communication courant.
static int nproc ()
 renvoie le nombre de processeurs dans le groupe courant Voir Comm_Group::nproc() et PE_Groups::current_group()
static bool is_parallel ()
static void exit (int exit_code=-1)
 Routine de sortie de TRUST dans une region Kokkos.
static double mp_sum (double)
 Calcule la somme de x sur tous les processeurs du groupe courant.
static float mp_sum (float)
static trustIdType mp_sum (trustIdType)
 Calcule la somme de x sur tous les processeurs du groupe courant.
static double mp_max (double)
static double mp_min (double)
static int mp_max (int)
 renvoie le plus grand int i sur l'ensemble des processeurs du groupe courant.
static int mp_min (int)
 renvoie le plus petit int i sur l'ensemble des processeurs du groupe courant.
static double mp_sum_as_double (int v)
static trustIdType mppartial_sum (trustIdType i)
 Calul de la somme partielle de i sur les processeurs 0 a me()-1 (renvoie 0 sur le processeur 0).
template<typename T>
static void mp_sum_for_each (T &arg1, T &arg2)
 C++14 compatible mp_sum_for_each: combine multiple mp_sum calls into one collective operation Usage: mp_sum_for_each(a, b); mp_sum_for_each(a, b, c); mp_sum_for_each(a, b, c, d); mp_sum_for_each(a, b, c, d, e); All arguments must be of the same type (double or int) and are modified in place. Supports 2-5 parameters.
template<typename T>
static void mp_sum_for_each (T &arg1, T &arg2, T &arg3)
template<typename T>
static void mp_sum_for_each (T &arg1, T &arg2, T &arg3, T &arg4)
template<typename T>
static void mp_sum_for_each (T &arg1, T &arg2, T &arg3, T &arg4, T &arg5)
template<typename T>
static void mp_max_for_each (T &arg1, T &arg2)
 C++14 compatible mp_max_for_each: combine multiple mp_max calls into one collective operation.
template<typename T>
static void mp_max_for_each (T &arg1, T &arg2, T &arg3)
template<typename T>
static void mp_max_for_each (T &arg1, T &arg2, T &arg3, T &arg4)
template<typename T>
static void mp_max_for_each (T &arg1, T &arg2, T &arg3, T &arg4, T &arg5)
template<typename T>
static void mp_min_for_each (T &arg1, T &arg2)
 C++14 compatible mp_min_for_each: combine multiple mp_min calls into one collective operation.
template<typename T>
static void mp_min_for_each (T &arg1, T &arg2, T &arg3)
template<typename T>
static void mp_min_for_each (T &arg1, T &arg2, T &arg3, T &arg4)
template<typename T>
static void mp_min_for_each (T &arg1, T &arg2, T &arg3, T &arg4, T &arg5)
template<typename _TYPE_>
static void mp_sum_for_each_item (TRUSTArray< _TYPE_ > &x, int n=-1)
template<typename _TYPE_>
static void mp_max_for_each_item (TRUSTArray< _TYPE_ > &x, int n=-1)
template<typename _TYPE_>
static void mp_min_for_each_item (TRUSTArray< _TYPE_ > &x, int n=-1)
static bool mp_and (bool)
 Calcule le 'et' logique de b sur tous les processeurs du groupe courant.
static bool mp_or (bool)
static int check_int_overflow (trustIdType)
static int je_suis_maitre ()
 renvoie 1 si on est sur le processeur maitre du groupe courant (c'est a dire me() == 0), 0 sinon.
static KOKKOS_INLINE_FUNCTION void Kokkos_exit (const char *)
 Routine de sortie de TRUST dans une region Kokkos.
static int node_master ()
 renvoie 1 si on est sur le processeur maitre du noeud numa, 0 sinon.
static void exit (const Nom &message, int exit_code=-1)
static bool is_sequential ()
static void barrier ()
 Synchronise tous les processeurs du groupe courant (attend que tous les processeurs soient arrives a la barriere).
static void abort ()
 Routine de sortie de Trio-U sur une erreur abort().
static SortieJournal (int message_level=0)
 Renvoie un objet statique de type Sortie qui sert de journal d'evenements.
static double ram_processeur ()
static void imprimer_ram_totale (int all_process=0)
static bool force_single_file (const int ranks, const Nom &filename)
Public Attributes inherited from Equation_base
Matrice_Morse_Diag diag_
Static Public Attributes inherited from Objet_U
static double precision_geom = 1e-10
static constexpr bool HAS_POINTER = false
static int dimension =0
static int format_precision_geom =11
static int axi =0
static int bidim_axi =0
static int DEACTIVATE_SIGINT_CATCH =0
static Type_info info_obj
static bool disable_TU =false
 Flag to disable or not the writing of the .TU files.
static bool stat_per_proc_perf_log =false
 Flag to enable the writing of the statistics detailed per processor in _csv.TU file.
Static Public Attributes inherited from Process
static int exception_sur_exit =0
static int multiple_files =5120
Protected Member Functions inherited from Navier_Stokes_Turbulent
Entreelire_op_diff_turbulent (Entree &is)
 OWN_PTR (Modele_turbulence_hyd_base) le_modele_turbulence
Protected Member Functions inherited from Navier_Stokes_std
virtual void discretiser_assembleur_pression ()
 Typage de l'assembleur pression.
virtual void modify_initial_variable ()
virtual void modify_initial_gradP (DoubleTrav &)
 OBS_PTR (Fluide_base) le_fluide
 OWN_PTR (Champ_Inc_base) la_vitesse
 OWN_PTR (Champ_Fonc_base) la_vorticite
 OWN_PTR (Champ_Fonc_base) distance_paroi_globale
 OWN_PTR (Assembleur_base) assembleur_pression_
 OWN_PTR (Traitement_particulier_NS_base) le_traitement_particulier
void uzawa (const DoubleTab &, const Matrice_Base &, SolveurSys &, DoubleTab &, DoubleTab &)
Protected Member Functions inherited from Equation_base
 OWN_PTR (Solveur_Masse_base) solveur_masse
 OBS_PTR (Schema_Temps_base) le_schema_en_temps
 OBS_PTR (Domaine_dis_base) le_dom_dis
 OWN_PTR (Domaine_Cl_dis_base) le_dom_Cl_dis
 OBS_PTR (Probleme_base) mon_probleme
virtual Entreelire_sources (Entree &)
 Lecture des termes sources dans un flot d'entree.
virtual Entreelire_cl (Entree &)
 Lecture des conditions limites sur un flot d'entree.
virtual void lire ()
 OWN_PTR (Parametre_equation_base) parametre_equation_
 LIST (RefObjU) liste_modeles_
 OWN_PTR (Champ_Inc_base) champ_conserve_
 OWN_PTR (Champ_Inc_base) champ_convecte_
 OWN_PTR (Champ_Inc_base) derivee_en_temps_
Protected Member Functions inherited from Objet_U
 Objet_U ()
 Constructeur par defaut : attribue un numero d'identifiant unique a l'objet (object_id_), et enregistre l'objet en "memoire".
 Objet_U (const Objet_U &)
 Constructeur par copie.
const Objet_Uoperator= (const Objet_U &)
 Operateur= : ne fait rien (on conserve le numero et l'identifiant).
Protected Member Functions inherited from Navier_Stokes_Fluide_Dilatable_Proto
 OWN_PTR (Champ_Inc_base) rho_la_vitesse_
Protected Attributes inherited from Navier_Stokes_std
 la_pression
 divergence_U
 gradient_P
 la_pression_en_pa
 grad_u
 critere_Q
 pression_hydrostatique_
 combinaison_champ
 y_plus
 Reynolds_maille
 Courant_maille
 Taux_cisaillement
Operateur_Conv terme_convectif
Operateur_Diff terme_diffusif
Operateur_Div divergence
Operateur_Grad gradient
Matrice matrice_pression_
SolveurSys solveur_pression_
int projection_initiale
double dt_projection
double seuil_projection
double seuil_uzawa
double max_div_U
double seuil_divU
double raison_seuil_divU
double cumulative_
Nom chaine_champ_combi
int methode_calcul_pression_initiale_
bool postraiter_gradient_pression_sans_masse_ = false
int div_u_nul_et_non_dsurdt_divu_
Protected Attributes inherited from Equation_base
Nom nom_
Sources les_sources
DoubleList dt_op_bak
int sys_invariant_
int implicite_
bool has_time_factor_
Champs_compris champs_compris_
Champs_Fonc list_champ_combi
Matrice_Morse matrice_stockee
int matrice_init
int calculate_time_derivative_
bool diffusion_multi_scalaire_ = false
Protected Attributes inherited from Navier_Stokes_Fluide_Dilatable_Proto
IntVect orientation_VDF_
DoubleTab tab_W

Detailed Description

classe Navier_Stokes_Turbulent Cette classe represente l'equation de la dynamique pour un fluide

visqueux verifiant la condition d'incompressibilite div U = 0 avec
modelisation de la turbulence.
Un membre de type OWN_PTR(Modele_turbulence_hyd_base)  representera le modele de turbulence.
See also
Navier_Stokes_Turbulent OWN_PTR(Modele_turbulence_hyd_base) Pb_Thermohydraulique_Turbulent_QC

Definition at line 30 of file Navier_Stokes_Turbulent_QC.h.

Member Function Documentation

◆ assembler()

void Navier_Stokes_Turbulent_QC::assembler ( Matrice_Morse & mat_morse,
const DoubleTab & present,
DoubleTab & secmem )
overridevirtual

Reimplemented from Equation_base.

Definition at line 186 of file Navier_Stokes_Turbulent_QC.cpp.

◆ assembler_avec_inertie()

void Navier_Stokes_Turbulent_QC::assembler_avec_inertie ( Matrice_Morse & mat_morse,
const DoubleTab & present,
DoubleTab & secmem )
overridevirtual

Reimplemented from Equation_base.

Definition at line 190 of file Navier_Stokes_Turbulent_QC.cpp.

◆ completer()

void Navier_Stokes_Turbulent_QC::completer ( )
overridevirtual

Appels successifs a: Navier_Stokes_std::completer().

 Mod_Turb_Hyd::completer() [sur le membre concerne]

Reimplemented from Navier_Stokes_Turbulent.

Definition at line 85 of file Navier_Stokes_Turbulent_QC.cpp.

◆ derivee_en_temps_inco()

DoubleTab & Navier_Stokes_Turbulent_QC::derivee_en_temps_inco ( DoubleTab & vpoint)
overridevirtual

Calcule la derivee en temps de l'inconnue vitesse, i.

e. l'acceleration dU/dt et la renvoie. Appelle Equation_base::derivee_en_temps_inco(DoubleTab& ) Calcule egalement la pression.

Parameters
(DoubleTab&vpoint) le tableau des valeurs de l'acceleration dU/dt
Returns
(DoubleTab&) le tableau des valeurs de l'acceleration (derivee de la vitesse)

Reimplemented from Navier_Stokes_std.

Definition at line 181 of file Navier_Stokes_Turbulent_QC.cpp.

◆ diffusivite_pour_transport()

const Champ_Don_base & Navier_Stokes_Turbulent_QC::diffusivite_pour_transport ( ) const
overridevirtual

Reimplemented from Navier_Stokes_Turbulent.

Definition at line 43 of file Navier_Stokes_Turbulent_QC.cpp.

◆ discretiser()

void Navier_Stokes_Turbulent_QC::discretiser ( )
overridevirtual

Dicretise l'equation.

Reimplemented from Navier_Stokes_std.

Definition at line 72 of file Navier_Stokes_Turbulent_QC.cpp.

◆ get_champ()

const Champ_base & Navier_Stokes_Turbulent_QC::get_champ ( const Motcle & nom) const
overridevirtual

Reimplemented from Navier_Stokes_Turbulent.

Definition at line 156 of file Navier_Stokes_Turbulent_QC.cpp.

◆ has_champ() [1/2]

bool Navier_Stokes_Turbulent_QC::has_champ ( const Motcle & nom) const
overridevirtual

Reimplemented from Navier_Stokes_Turbulent.

Definition at line 142 of file Navier_Stokes_Turbulent_QC.cpp.

◆ has_champ() [2/2]

bool Navier_Stokes_Turbulent_QC::has_champ ( const Motcle & nom,
OBS_PTR(Champ_base) & ref_champ ) const
override

◆ impr()

int Navier_Stokes_Turbulent_QC::impr ( Sortie & os) const
overridevirtual

Effectue quelques impressions sur un flot de sortie: - maximum de div U.

  - terme convectif
  - terme diffusif
  - divergence
  - gradient
Parameters
(Sortie&os) un flot de sortie
Returns
(int) renvoie toujours 1

Reimplemented from Navier_Stokes_std.

Definition at line 60 of file Navier_Stokes_Turbulent_QC.cpp.

◆ imprimer()

void Navier_Stokes_Turbulent_QC::imprimer ( Sortie & os) const
overridevirtual

Imprime les operateurs de l'equation si le schema en temps indique que c'est necessaire.

[SI limpr() ALORS impr(os)]
Parameters
(Sortie&os) le flot de sortie

Reimplemented from Navier_Stokes_Turbulent.

Definition at line 66 of file Navier_Stokes_Turbulent_QC.cpp.

◆ initTimeStep()

bool Navier_Stokes_Turbulent_QC::initTimeStep ( double dt)
overridevirtual

Allocation et initialisation de l'inconnue et des CLs jusqu'a present+dt.

  • autres initialisations pour les calculs sur le prochain pas de temps : operateurs, solveur_masse->
Returns
(0 en cas d'erreur, 1 sinon)

Reimplemented from Navier_Stokes_Turbulent.

Definition at line 195 of file Navier_Stokes_Turbulent_QC.cpp.

◆ mettre_a_jour()

void Navier_Stokes_Turbulent_QC::mettre_a_jour ( double temps)
overridevirtual

◆ preparer_calcul()

int Navier_Stokes_Turbulent_QC::preparer_calcul ( )
overridevirtual

cf Equation_base::preparer_calcul() Assemblage du solveur pression et

initialisation de la pression.
Returns
(int) renvoie toujours 1

Reimplemented from Navier_Stokes_Turbulent.

Definition at line 120 of file Navier_Stokes_Turbulent_QC.cpp.

◆ rho_la_vitesse()

const Champ_Inc_base & Navier_Stokes_Turbulent_QC::rho_la_vitesse ( ) const
inlineoverridevirtual

Reimplemented from Navier_Stokes_std.

Definition at line 46 of file Navier_Stokes_Turbulent_QC.h.


The documentation for this class was generated from the following files:
  • /home/docs/checkouts/readthedocs.org/user_builds/cea-trust-platform/checkouts/v1.9.8/src/ThHyd/Turbulence/Equations/Navier_Stokes_Turbulent_QC.h
  • /home/docs/checkouts/readthedocs.org/user_builds/cea-trust-platform/checkouts/v1.9.8/src/ThHyd/Turbulence/Equations/Navier_Stokes_Turbulent_QC.cpp