TrioCFD 1.9.8
TrioCFD documentation
Loading...
Searching...
No Matches
Navier_Stokes_IBM_Turbulent Class Reference

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

#include <Navier_Stokes_IBM_Turbulent.h>

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

Public Member Functions

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.
int preparer_calcul () override
 Prepare le calcul.
bool initTimeStep (double dt) override
 Allocation et initialisation de l'inconnue et des CLs jusqu'a present+dt.
void mettre_a_jour (double) override
 Effecttue une mise a jour en temps de l'equation.
void completer () override
 Appels successifs a: Navier_Stokes_IBM::completer().
const Champ_Don_basediffusivite_pour_transport () const override
const Champ_basediffusivite_pour_pas_de_temps () const override
void creer_champ (const Motcle &motlu) override
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
void get_noms_champs_postraitables (Noms &nom, Option opt=NONE) const override
void imprimer (Sortie &) const override
 Imprime les operateurs de l'equation si le schema en temps indique que c'est necessaire.
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_IBM
void assembler (Matrice_Morse &mat_morse, const DoubleTab &present, DoubleTab &secmem) override
void derivee_en_temps_inco_sources (DoubleTrav &) override
void verify_scheme () override
int get_matrice_pression_penalisee_H1 () const
int get_correction_matrice_pression () const
int get_correction_vitesse_modifie () const
int get_correction_pression_modifie () const
int get_gradient_pression_qdm_modifie () const
int get_correction_vitesse_projection_initiale () const
int get_correction_calcul_pression_initiale () const
int get_correction_matrice_projection_initiale () const
Public Member Functions inherited from Navier_Stokes_std
 Navier_Stokes_std ()
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.
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).
void discretiser () override
 Dicretise l'equation.
virtual void discretiser_vitesse ()
virtual void discretiser_grad_p ()
void completer () override
 Complete l'equation base, associe la pression a l'equation,.
Entreelire_cond_init (Entree &) override
 Lecture des conditions initiales dans un flot d'entree.
bool initTimeStep (double dt) override
 Allocation et initialisation de l'inconnue et des CLs jusqu'a present+dt.
void mettre_a_jour (double temps) override
 Effectue une mise a jour en temps de l'equation.
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().
int impr (Sortie &os) const override
 Effectue quelques impressions sur un flot de sortie: - maximum de div U.
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
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
 Appelle Equation_base::sauvegarder(Sortie&) et sauvegarde la pression sur un flot de sortie.
int reprendre (Entree &) override
 Effectue une reprise a partir d'un flot d'entree.
DoubleTab & derivee_en_temps_inco (DoubleTab &) override
 Returns the time derivative of the unknown I of the equation: dI/dt = M-1*(sum(operators(I) + sources)).
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.
int preparer_calcul () override
 cf Equation_base::preparer_calcul() Assemblage du solveur pression et
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
void creer_champ (const Motcle &motlu) override
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
void get_noms_champs_postraitables (Noms &nom, Option opt=NONE) 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.
virtual const Champ_Inc_baserho_la_vitesse () const
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 assembler_avec_inertie (Matrice_Morse &mat_morse, const DoubleTab &present, DoubleTab &secmem)
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 Equation_IBM_proto
void assembler_ibm_proto (Matrice_Morse &mat_morse, const DoubleTab &present, DoubleTab &secmem)
void set_param_ibm_proto (Param &param) const
EntreereadOn_ibm_proto (Entree &is, Equation_base &eq)
bool initTimeStep_ibm_proto (double ddt)
DoubleTab & derivee_en_temps_inco_ibm_proto (DoubleTab &)
void preparer_calcul_ibm_proto ()
void modify_initial_variable_ibm_proto (DoubleTab &)
int get_correction_variable_initiale () const
int get_i_source_pdf () const
const DoubleTab & get_champ_coeff_pdf_som () const
void set_champ_coeff_pdf_som (DoubleTab &coeff)
bool is_IBM ()

Protected Member Functions

Entreelire_op_diff_turbulent (Entree &is)
 OWN_PTR (Modele_turbulence_hyd_base) le_modele_turbulence
Protected Member Functions inherited from Navier_Stokes_IBM
void modify_initial_variable () override
void modify_initial_gradP (DoubleTrav &) override
Protected Member Functions inherited from Navier_Stokes_std
virtual void discretiser_assembleur_pression ()
 Typage de l'assembleur pression.
 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 Equation_IBM_proto
 OBS_PTR (Equation_base) eq_IBM_

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 Attributes inherited from Navier_Stokes_IBM
int correction_matrice_projection_initiale_ = 0
int correction_calcul_pression_initiale_ = 0
int correction_vitesse_projection_initiale_ = 1
int correction_matrice_pression_ = 1
int matrice_pression_penalisee_H1_ = 0
int correction_vitesse_modifie_ = 1
int correction_pression_modifie_ = 0
int gradient_pression_qdm_modifie_ = 0
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 Equation_IBM_proto
DoubleTab champ_coeff_pdf_som_
int i_source_pdf_ = -1
int correction_variable_initiale_ = -1

Detailed Description

classe Navier_Stokes_IBM_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_IBM OWN_PTR(Modele_turbulence_hyd_base) Pb_Hydraulique_Turbulent, Pb_Thermohydraulique_Turbulent

Definition at line 31 of file Navier_Stokes_IBM_Turbulent.h.

Member Function Documentation

◆ completer()

void Navier_Stokes_IBM_Turbulent::completer ( )
overridevirtual

Appels successifs a: Navier_Stokes_IBM::completer().

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

Reimplemented from Equation_base.

Definition at line 315 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ creer_champ()

void Navier_Stokes_IBM_Turbulent::creer_champ ( const Motcle & motlu)
overridevirtual

Reimplemented from Equation_base.

Definition at line 395 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ data_a_sauvegarder()

std::vector< YAML_data > Navier_Stokes_IBM_Turbulent::data_a_sauvegarder ( ) const
overridevirtual

for PDI IO: retrieve name, type and dimensions of the fields to save/restore

Reimplemented from Equation_base.

Definition at line 257 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ diffusivite_pour_pas_de_temps()

const Champ_base & Navier_Stokes_IBM_Turbulent::diffusivite_pour_pas_de_temps ( ) const
overridevirtual

Reimplemented from Navier_Stokes_std.

Definition at line 112 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ diffusivite_pour_transport()

const Champ_Don_base & Navier_Stokes_IBM_Turbulent::diffusivite_pour_transport ( ) const
overridevirtual

Reimplemented from Navier_Stokes_std.

Definition at line 107 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ expression_residu()

Nom Navier_Stokes_IBM_Turbulent::expression_residu ( )
overridevirtual

Reimplemented from Equation_base.

Definition at line 407 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ get_champ()

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

Reimplemented from Equation_base.

Definition at line 356 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ get_modele()

const RefObjU & Navier_Stokes_IBM_Turbulent::get_modele ( Type_modele type) const
overridevirtual

Reimplemented from Equation_base.

Definition at line 383 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ get_noms_champs_postraitables()

void Navier_Stokes_IBM_Turbulent::get_noms_champs_postraitables ( Noms & nom,
Option opt = NONE ) const
overridevirtual

Reimplemented from Equation_base.

Definition at line 370 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ has_champ() [1/2]

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

Reimplemented from Equation_base.

Definition at line 344 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ has_champ() [2/2]

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

◆ imprime_residu()

void Navier_Stokes_IBM_Turbulent::imprime_residu ( SFichier & fic)
overridevirtual

Reimplemented from Equation_base.

Definition at line 402 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ imprimer()

void Navier_Stokes_IBM_Turbulent::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 Equation_base.

Definition at line 377 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ initTimeStep()

bool Navier_Stokes_IBM_Turbulent::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_IBM.

Definition at line 247 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ lire_motcle_non_standard()

int Navier_Stokes_IBM_Turbulent::lire_motcle_non_standard ( const Motcle & motlu,
Entree & is )
overridevirtual

Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree.

Parameters
(Motcle&motlu) le nom du terme a lire
(Entree&is) un flot d'entree
Returns
(int) negative value if the keyword is not understood, otherwise positive value.

Reimplemented from Equation_base.

Definition at line 46 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ lire_op_diff_turbulent()

Entree & Navier_Stokes_IBM_Turbulent::lire_op_diff_turbulent ( Entree & is)
protected

Definition at line 119 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ mettre_a_jour()

void Navier_Stokes_IBM_Turbulent::mettre_a_jour ( double temps)
overridevirtual

Effecttue une mise a jour en temps de l'equation.

Parameters
(doubletemps) le temps de mise a jour

Reimplemented from Equation_base.

Definition at line 326 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ modele_turbulence()

const Modele_turbulence_hyd_base & Navier_Stokes_IBM_Turbulent::modele_turbulence ( ) const
inline

Definition at line 39 of file Navier_Stokes_IBM_Turbulent.h.

◆ OWN_PTR()

Navier_Stokes_IBM_Turbulent::OWN_PTR ( Modele_turbulence_hyd_base )
protected

◆ preparer_calcul()

int Navier_Stokes_IBM_Turbulent::preparer_calcul ( )
overridevirtual

Prepare le calcul.

Simple appe a Modele_turbulence_hyd_base->preparer_caclul() sur le membre reprresentant la turbulence.

Returns
(int) renvoie toujours 1

Reimplemented from Navier_Stokes_IBM.

Definition at line 235 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ reprendre()

int Navier_Stokes_IBM_Turbulent::reprendre ( Entree & is)
overridevirtual

Reprise de l'equation et de son modele de turbulence a partir d'un flot d'entree.

Parameters
(Entree&is) un flot d'entree
Returns
(int) renvoie toujours 1
Exceptions
finde fichier rencontre pendant la reprise

Reimplemented from Equation_base.

Definition at line 286 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ sauvegarder()

int Navier_Stokes_IBM_Turbulent::sauvegarder ( Sortie & os) const
overridevirtual

Sauvegarde l'equation (et son modele de turbulence) sur un flot de sortie.

Parameters
(Sortie&os) un flot de sortie
Returns
(int) renvoie toujours 1

Reimplemented from Equation_base.

Definition at line 270 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ set_param()

void Navier_Stokes_IBM_Turbulent::set_param ( Param & titi) const
overridevirtual

Reimplemented from Navier_Stokes_IBM.

Definition at line 40 of file Navier_Stokes_IBM_Turbulent.cpp.

◆ viscosite_turbulente()

const Champ_Fonc_base & Navier_Stokes_IBM_Turbulent::viscosite_turbulente ( ) const
inline

Definition at line 38 of file Navier_Stokes_IBM_Turbulent.h.


The documentation for this class was generated from the following files: