|
TrioCFD 1.9.8
TrioCFD documentation
|
Classe Turbulence_paroi_base Classe de base pour la hierarchie des classes representant les modeles. More...
#include <Turbulence_paroi_base.h>
Public Member Functions | |
| virtual void | set_param (Param ¶m) const override |
| void | associer_modele (const Modele_turbulence_hyd_base &) |
| Associe un modele de turbulence a l'objet. | |
| virtual void | associer (const Domaine_dis_base &, const Domaine_Cl_dis_base &)=0 |
| virtual void | completer () |
| virtual int | init_lois_paroi ()=0 |
| int | calculer_hyd (Champ_Inc_base &) |
| Simple appel a int calculer_hyd(DoubleTab& ). | |
| int | calculer_hyd (Champ_Fonc_base &, Champ_Fonc_base &) |
| Simple appel a int calculer_hyd(DoubleTab&, DoubleTab&). | |
| virtual int | calculer_hyd (DoubleTab &)=0 |
| virtual int | calculer_hyd (DoubleTab &, DoubleTab &)=0 |
| virtual int | calculer_hyd_BiK (DoubleTab &, DoubleTab &)=0 |
| virtual DoubleTab & | corriger_derivee_impl (DoubleTab &d) const |
| virtual void | imprimer_ustar (Sortie &) const |
| virtual void | imprimer_premiere_ligne_ustar (int, const LIST(Nom)&, const Nom &) const |
| Writes header line for u* (friction velocity) statistics file. | |
| virtual void | imprimer_ustar_mean_only (Sortie &, int, const LIST(Nom)&, const Nom &) const |
| Prints mean friction velocity (u*) statistics to a file for specified boundaries. | |
| const DoubleTab & | Cisaillement_paroi () const |
| const DoubleVect & | tab_u_star () const |
| double | tab_u_star (int face) const |
| const DoubleVect & | tab_d_plus () const |
| double | tab_d_plus (int face) const |
| int | sauvegarder (Sortie &) const override |
| Sauvegarde d'un Objet_U sur un flot de sortie Methode a surcharger. | |
| int | reprendre (Entree &) override |
| Reprise d'un Objet_U sur un flot d'entree Methode a surcharger. | |
| virtual std::vector< YAML_data > | data_a_sauvegarder () const |
| void | creer_champ (const Motcle &motlu) override |
| const Champ_base & | get_champ (const Motcle &nom) const override |
| void | get_noms_champs_postraitables (Noms &nom, Option opt=NONE) const override |
| bool | has_champ (const Motcle &nom, OBS_PTR(Champ_base) &ref_champ) const override |
| bool | has_champ (const Motcle &nom) const override |
| void | ouvrir_fichier_partage (EcrFicPartage &, const Nom &) const |
| Ouverture/creation d'un fichier d'impression de Face, uplus_, dplus_, tab_u_star, Cisaillement_paroi_. | |
| void | ouvrir_fichier_partage (EcrFicPartage &, const Nom &, const Nom &) const |
| Ouverture/creation d'un fichier d'impression de moyennes de uplus_, dplus_, tab_u_star. | |
| virtual bool | use_shear () const |
| 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 Sortie & | printOn (Sortie &) const |
| Ecriture de l'objet sur un flot de sortie Methode a surcharger. | |
| virtual Entree & | readOn (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). | |
| virtual const Nom & | le_nom () const |
| Donne le nom de l'Objet_U Methode a surcharger : renvoie "neant" dans cette implementation. | |
| virtual void | nommer (const Nom &) |
| Donne un nom a l'Objet_U Methode virtuelle a surcharger. | |
| int | get_object_id () const |
| Renvoie l'identifiant unique de l'objet object_id_. | |
| virtual const Type_info * | get_info () const |
| Donne des informations sur le type de l'Objet_U. | |
| const Nom & | que_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 | lire_motcle_non_standard (const Motcle &motlu, Entree &is) |
| Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree. | |
| virtual int | associer_ (Objet_U &) |
| Associe l'Objet_U a un autre Objet_U Methode virtuelle a surcharger. | |
| const Interprete & | interprete () const |
| Interprete & | interprete () |
| Public Member Functions inherited from Process | |
| virtual | ~Process () |
Static Public Member Functions | |
| static void | typer_lire_turbulence_paroi (OWN_PTR(Turbulence_paroi_base)&, const Modele_turbulence_hyd_base &, Entree &) |
| Lit les caracteristques de la loi de parois a partir d'un flot d'entree. | |
| Static Public Member Functions inherited from Objet_U | |
| static const Nom & | nom_du_cas () |
| Renvoie une reference constante vers le nom du cas. | |
| static Nom & | get_set_nom_du_cas () |
| Renvoie une reference non constante vers le nom du cas (pour pouvoir le modifier). | |
| static const Type_info * | info () |
| Donne des informations sur le type de l'Objet_U. | |
| static const Objet_U & | self_cast (const Objet_U &) |
| methode ajoutee pour caster en python | |
| static Objet_U & | self_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 Sortie & | Journal (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) |
Protected Member Functions | |
| OBS_PTR (Modele_turbulence_hyd_base) mon_modele_turb_hyd | |
| OWN_PTR (Champ_Fonc_base) champ_u_star_ | |
| OBS_PTR (Domaine_VF) le_dom_dis_ | |
| OBS_PTR (Domaine_Cl_dis_base) le_dom_Cl_dis_ | |
| 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_U & | operator= (const Objet_U &) |
| Operateur= : ne fait rien (on conserve le numero et l'identifiant). | |
Protected Attributes | |
| DoubleTab | Cisaillement_paroi_ |
| DoubleVect | tab_u_star_ |
| DoubleVect | tab_d_plus_ |
| int | nb_impr_ = 0 |
| int | nb_impr0_ = 0 |
| Champs_compris | champs_compris_ |
Additional Inherited Members | |
| 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 |
Classe Turbulence_paroi_base Classe de base pour la hierarchie des classes representant les modeles.
de calcul des grandeurs turbulentes aux voisinages des parois. Contient une reference a un modele de turbulence.
Definition at line 37 of file Turbulence_paroi_base.h.
|
pure virtual |
Implemented in LoiParoiHybride_VDF, LoiParoiHybride_VEF, Paroi_hyd_base_EF, Paroi_hyd_base_VDF, and Paroi_hyd_base_VEF.
|
inline |
Associe un modele de turbulence a l'objet.
| (Modele_turbulence_hyd_base& | le_modele) le modele de turbulence hydraulique a associer a l'objet |
Definition at line 100 of file Turbulence_paroi_base.h.
|
inline |
Simple appel a int calculer_hyd(DoubleTab&, DoubleTab&).
| (Champ_Inc_base& | ch1) |
| (Champ_Inc_base& | ch2) |
Definition at line 121 of file Turbulence_paroi_base.h.
|
inline |
Simple appel a int calculer_hyd(DoubleTab& ).
| (Champ_Inc_base& | ch) |
Definition at line 110 of file Turbulence_paroi_base.h.
|
pure virtual |
Implemented in LoiParoiHybride_VDF, LoiParoiHybride_VEF, Paroi_2couches_VDF, Paroi_Cisaillement_Imp_VEF, Paroi_loi_Ciofalo_hyd_VDF, Paroi_loi_WW_hyd_EF, Paroi_loi_WW_hyd_VDF, Paroi_loi_WW_hyd_VEF, Paroi_negligeable_EF, Paroi_negligeable_VDF, Paroi_negligeable_VEF, Paroi_std_hyd_EF, Paroi_std_hyd_VDF, Paroi_std_hyd_VDF_diphasique, Paroi_std_hyd_VEF, Paroi_std_hyd_VEF_diphasique, Paroi_TAU_NUL_VDF, Paroi_UTAU_IMP_VDF, ParoiVDF_TBLE, ParoiVDF_TBLE_LRM, and ParoiVEF_TBLE.
|
pure virtual |
Implemented in LoiParoiHybride_VDF, LoiParoiHybride_VEF, Paroi_2couches_VDF, Paroi_Cisaillement_Imp_VEF, Paroi_loi_Ciofalo_hyd_VDF, Paroi_loi_WW_hyd_EF, Paroi_loi_WW_hyd_VDF, Paroi_loi_WW_hyd_VEF, Paroi_negligeable_EF, Paroi_negligeable_VDF, Paroi_negligeable_VEF, Paroi_std_hyd_EF, Paroi_std_hyd_VDF, Paroi_std_hyd_VDF_diphasique, Paroi_std_hyd_VEF, Paroi_std_hyd_VEF_diphasique, Paroi_TAU_NUL_VDF, Paroi_UTAU_IMP_VDF, ParoiVDF_TBLE, ParoiVDF_TBLE_LRM, and ParoiVEF_TBLE.
|
pure virtual |
Implemented in LoiParoiHybride_VDF, LoiParoiHybride_VEF, Paroi_2couches_VDF, Paroi_Cisaillement_Imp_VEF, Paroi_negligeable_EF, Paroi_negligeable_VDF, Paroi_negligeable_VEF, Paroi_std_hyd_EF, Paroi_std_hyd_VDF, Paroi_std_hyd_VEF, Paroi_TAU_NUL_VDF, Paroi_UTAU_IMP_VDF, ParoiVDF_TBLE, ParoiVDF_TBLE_LRM, and ParoiVEF_TBLE.
|
inline |
Definition at line 126 of file Turbulence_paroi_base.h.
|
inlinevirtual |
Definition at line 47 of file Turbulence_paroi_base.h.
|
inlinevirtual |
Reimplemented in Paroi_hyd_base_EF, and Paroi_hyd_base_VEF.
Definition at line 54 of file Turbulence_paroi_base.h.
|
overridevirtual |
Implements Champs_compris_interface.
Definition at line 92 of file Turbulence_paroi_base.cpp.
|
inlinevirtual |
Definition at line 69 of file Turbulence_paroi_base.h.
|
overridevirtual |
Implements Champs_compris_interface.
Definition at line 128 of file Turbulence_paroi_base.cpp.
|
overridevirtual |
Implements Champs_compris_interface.
Definition at line 159 of file Turbulence_paroi_base.cpp.
|
overridevirtual |
Implements Champs_compris_interface.
Definition at line 120 of file Turbulence_paroi_base.cpp.
|
override |
|
virtual |
Writes header line for u* (friction velocity) statistics file.
| boundaries_ | Flag to control boundary selection (0: all boundaries, 1: specified boundaries) |
| boundaries_list | List of boundary names to process |
| nom_fichier_ | Output filename |
Creates header line with column names for u* and d+ statistics. Format: "Time Mean(u*) Mean(d+) [boundary1(u*) boundary1(d+) ...]" Writes warning messages if specified boundaries are not of correct wall type (Dirichlet_paroi_fixe or Dirichlet_paroi_defilante).
Definition at line 233 of file Turbulence_paroi_base.cpp.
|
inlinevirtual |
Reimplemented in Paroi_2couches_VDF, Paroi_std_hyd_EF, Paroi_std_hyd_VDF, Paroi_std_hyd_VEF, ParoiVDF_TBLE, ParoiVDF_TBLE_LRM, and ParoiVEF_TBLE.
Definition at line 55 of file Turbulence_paroi_base.h.
|
virtual |
Prints mean friction velocity (u*) statistics to a file for specified boundaries.
| os | Output stream for messages |
| boundaries_ | Flag to control boundary selection (0: all boundaries, 1: specified boundaries) |
| boundaries_list | List of boundary names to process when boundaries_=1 |
| nom_fichier_ | Output filename |
Calculates and writes average u* (friction velocity) and d+ values for wall boundaries. Results are written for all boundaries combined and then for each boundary separately. Only processes fixed walls (Dirichlet_paroi_fixe) and moving walls (Dirichlet_paroi_defilante). Output format: time mean_u* mean_d+ [boundary1_u* boundary1_d+ boundary2_u* boundary2_d+ ...]
Definition at line 287 of file Turbulence_paroi_base.cpp.
|
pure virtual |
Implemented in LoiParoiHybride_VDF, LoiParoiHybride_VEF, Paroi_2couches_VDF, Paroi_Cisaillement_Imp_VEF, Paroi_negligeable_EF, Paroi_negligeable_VDF, Paroi_negligeable_VEF, Paroi_std_hyd_EF, Paroi_std_hyd_VDF, Paroi_std_hyd_VEF, Paroi_UTAU_IMP_VDF, ParoiVDF_TBLE, ParoiVDF_TBLE_LRM, and ParoiVEF_TBLE.
|
protected |
|
protected |
|
protected |
| void Turbulence_paroi_base::ouvrir_fichier_partage | ( | EcrFicPartage & | Ustar, |
| const Nom & | extension ) const |
Ouverture/creation d'un fichier d'impression de Face, uplus_, dplus_, tab_u_star, Cisaillement_paroi_.
Definition at line 172 of file Turbulence_paroi_base.cpp.
| void Turbulence_paroi_base::ouvrir_fichier_partage | ( | EcrFicPartage & | fichier, |
| const Nom & | nom_fichier, | ||
| const Nom & | extension ) const |
Ouverture/creation d'un fichier d'impression de moyennes de uplus_, dplus_, tab_u_star.
Definition at line 203 of file Turbulence_paroi_base.cpp.
|
mutableprotected |
|
inlineoverridevirtual |
Reprise d'un Objet_U sur un flot d'entree Methode a surcharger.
| (Entree&) | flot d'entree a utiliser pour la reprise |
Reimplemented from Objet_U.
Definition at line 68 of file Turbulence_paroi_base.h.
|
inlineoverridevirtual |
Sauvegarde d'un Objet_U sur un flot de sortie Methode a surcharger.
| (Sortie&) | flot de sortie a utiliser pour la sauvegarde |
Reimplemented from Objet_U.
Definition at line 67 of file Turbulence_paroi_base.h.
|
inlineoverridevirtual |
Reimplemented from Objet_U.
Reimplemented in Paroi_2couches_VDF, Paroi_loi_WW_hyd_EF, Paroi_loi_WW_hyd_VDF, Paroi_loi_WW_hyd_VEF, Paroi_std_hyd_EF, Paroi_std_hyd_VDF, Paroi_std_hyd_VEF, ParoiVDF_TBLE, and ParoiVEF_TBLE.
Definition at line 44 of file Turbulence_paroi_base.h.
|
inline |
Definition at line 141 of file Turbulence_paroi_base.h.
|
inline |
Definition at line 146 of file Turbulence_paroi_base.h.
|
inline |
Definition at line 131 of file Turbulence_paroi_base.h.
|
inline |
Definition at line 136 of file Turbulence_paroi_base.h.
|
static |
Lit les caracteristques de la loi de parois a partir d'un flot d'entree.
Format: type_de_loi_de_paroi Les valeurs possibles du type de loi de paroi sont:
Definition at line 63 of file Turbulence_paroi_base.cpp.
|
inlinevirtual |
Reimplemented in Paroi_2couches_VDF, Paroi_negligeable_EF, Paroi_negligeable_VDF, and Paroi_negligeable_VEF.
Definition at line 81 of file Turbulence_paroi_base.h.
|
protected |
Definition at line 91 of file Turbulence_paroi_base.h.
|
protected |
Definition at line 85 of file Turbulence_paroi_base.h.
|
protected |
Definition at line 90 of file Turbulence_paroi_base.h.
|
mutableprotected |
Definition at line 90 of file Turbulence_paroi_base.h.
|
protected |
Definition at line 88 of file Turbulence_paroi_base.h.
|
protected |
Definition at line 87 of file Turbulence_paroi_base.h.