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

#include <Champ_P1NC.h>

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

Public Member Functions

int fixer_nb_valeurs_nodales (int nb_noeuds) override
void mettre_a_jour (double temps) override
 Effectue une mise a jour en temps du champ inconnue.
void abortTimeStep () override
void calcul_y_plus (const Domaine_Cl_VEF &, DoubleVect &) const
void calcul_y_plus_diphasique (const Domaine_Cl_VEF &, DoubleVect &) const
void calcul_grad_T (const Domaine_Cl_VEF &, DoubleTab &) const
void calcul_grad_U (const Domaine_Cl_VEF &, DoubleTab &) const
void calcul_h_conv (const Domaine_Cl_VEF &, DoubleTab &, int temp_ref) const
int compo_normale_sortante (int) const
DoubleTab & trace (const Frontiere_dis_base &, DoubleTab &, double, int distant) const override
 voir Champ_base Cas particulier (malheureusement) du Champ_P0_VDF :
void cal_rot_ordre1 (DoubleTab &) const
void gradient (DoubleTab &) const
int imprime (Sortie &, int) const override
void calcul_critere_Q (DoubleVect &) const
virtual double norme_L2 (const Domaine &) const
Champ_baseaffecter_ (const Champ_base &) override
 Affectation d'un OWN_PTR(Champ_base) generique (Champ_base) dans un champ inconnue.
void verifie_valeurs_cl () override
virtual double norme_H1 (const Domaine &) const
virtual double norme_L2_H1 (const Domaine &dom) const
const Domaine_VEFdomaine_vef () const override
DoubleVect & valeur_a_elem (const DoubleVect &position, DoubleVect &val, int le_poly) const override
 provoque une erreur ! doit etre surchargee par les classes derivees
double valeur_a_elem_compo (const DoubleVect &position, int le_poly, int ncomp) const override
 provoque une erreur ! doit etre surchargee par les classes derivees
double valeur_a_sommet_compo (int num_som, int le_poly, int ncomp) const override
 renvoi la compo eme corrdonne des valeurs a l'element le_poly au sommet sommet
DoubleTab & valeur_aux_centres_de_gravite (const Domaine &dom, DoubleTab &tab_valeurs) const override
 Cette methode, generique mais lente (calcul des centres de gravite, remplissage les_poly, utilisation des fonctions de forme dans le Champ discretise) peut etre surchargee par le champ dicretise pour une implementation beaucoup plus rapide.
DoubleTab & valeur_aux_elems (const DoubleTab &positions, const IntVect &les_polys, DoubleTab &tab_valeurs) const override
 provoque une erreur ! doit etre surchargee par les classes derivees
DoubleVect & valeur_aux_elems_compo (const DoubleTab &positions, const IntVect &les_polys, DoubleVect &tab_valeurs, int ncomp) const override
 provoque une erreur ! doit etre surchargee par les classes derivees
DoubleTab & valeur_aux_elems_smooth (const DoubleTab &positions, const IntVect &les_polys, DoubleTab &tab_valeurs) override
DoubleVect & valeur_aux_elems_compo_smooth (const DoubleTab &positions, const IntVect &les_polys, DoubleVect &tab_valeurs, int ncomp) override
DoubleTab & valeur_aux_sommets (const Domaine &dom, DoubleTab &val) const override
 renvoie les valeurs aux sommets du Domaine dom
DoubleVect & valeur_aux_sommets_compo (const Domaine &dom, DoubleVect &val, int comp) const override
 renvoie la compo eme valeur aux sommets de dom.
DoubleTab & remplir_coord_noeuds (DoubleTab &positions) const override
int remplir_coord_noeuds_et_polys (DoubleTab &positions, IntVect &polys) const override
 NE FAIT RIEN Methode a surcharger.
void filtrer_L2 (DoubleTab &x) const
void filtrer_H1 (DoubleTab &x) const
void filtrer_resu (DoubleTab &x) const
Public Member Functions inherited from Champ_Inc_base
 Champ_Inc_base ()
double changer_temps (const double temps) override
 Fixe le temps du champ.
int reprendre (Entree &) override
 Lecture d'un champ inconnue a partir d'un flot d'entree en vue d'une reprise.
int sauvegarder (Sortie &) const override
 Sauvegarde le champ inconnue sur un flot de sortie.
Champ_baseaffecter_compo (const Champ_base &, int compo) override
 Affectation d'une composante d'un OWN_PTR(Champ_base) quelconque (Champ_base) dans une composante d'un champ inconnue.
void resetTime (double time) override
DoubleTab & valeurs () override
 Renvoie le tableau des valeurs du champ au temps courant.
const DoubleTab & valeurs () const override
DoubleVect & valeur_a (const DoubleVect &position, DoubleVect &valeurs) const override
 Calcule la valeur du champs inconnue a la position specifiee.
DoubleTab & valeur_aux (const DoubleTab &positions, DoubleTab &valeurs) const override
 Calcule les valeurs du champs inconnue aux positions specifiees.
DoubleVect & valeur_aux_compo (const DoubleTab &positions, DoubleVect &valeurs, int ncomp) const override
 Calcule les valeurs du champs inconnue aux positions specifiees, pour une certaine composante du champ.
int nb_valeurs_nodales () const override
 Returns the number of "real" geometric positions of the degrees of freedom, or -1 if not applicable (fields with multiple localisations).
virtual int fixer_nb_valeurs_temporelles (int)
 Fixe le nombre de valeurs temporelles a conserver.
virtual int nb_valeurs_temporelles () const
 Renvoie le nombre de valeurs temporelles actuellement conservees.
double changer_temps_futur (double, int i=1)
 Fixe le temps du ieme champ futur.
double changer_temps_passe (double, int i=1)
 Fixe le temps du ieme champ passe.
double recuperer_temps_futur (int i=1) const
 Retourne le temps du ieme champ futur.
double recuperer_temps_passe (int i=1) const
 Retourne le temps du ieme champ passe.
DoubleTab & valeurs (double temps) override
 Renvoie les valeurs du champs a l'instant temps.
const DoubleTab & valeurs (double temps) const override
 Renvoie les valeurs du champs a l'instant temps.
 operator DoubleTab & ()=delete
 operator const DoubleTab & () const =delete
DoubleTab & futur (int i=1) override
 Renvoie les valeurs du champs a l'instant t+i.
const DoubleTab & futur (int i=1) const override
DoubleTab & passe (int i=1) override
 Renvoie les valeurs du champs a l'instant t-i.
const DoubleTab & passe (int i=1) const override
Champ_Inc_baseavancer (int i=1)
 Avance le pointeur courant de i pas de temps, dans la liste des valeurs temporelles conservees.
Champ_Inc_basereculer (int i=1)
 Recule le pointeur courant de i pas de temps, dans la liste des valeurs temporelles conservees.
int lire_donnees (Entree &)
 Lit les valeurs du champs a partir d'un flot d'entree.
int a_un_domaine_dis_base () const override
virtual void associer_eqn (const Equation_base &)
 Associe le champ a l'equation dont il represente une inconnue.
virtual void associer_domaine_cl_dis (const Domaine_Cl_dis_base &)
void associer_domaine_dis_base (const Domaine_dis_base &) override
const Domaine_Cl_dis_basedomaine_Cl_dis () const
Domaine_Cl_dis_basedomaine_Cl_dis ()
const Domaine_dis_basedomaine_dis_base () const override
const Domaine_VFdomaine_vf () const
virtual int remplir_coord_noeuds_et_polys_compo (DoubleTab &, IntVect &, int) const
 Simple appel a: Champ_Inc_base::remplir_coord_noeuds_et_polys(DoubleTab&,IntVect& poly).
virtual DoubleTab & remplir_coord_noeuds_compo (DoubleTab &, int) const
 Simple appel a Champ_Inc_base::remplir_coord_noeuds(DoubleTab&).
virtual double integrale_espace (int ncomp) const
const Domaine & domaine () const
const tabs_t & derivees () const
tabs_t & derivees ()
DoubleTab & val_bord ()
void init_champ_calcule (const Objet_U &obj, fonc_calc_t fonc)
void reset_champ_calcule ()
void resize_val_bord ()
void set_val_bord_fluide_multiphase (const bool flag)
DoubleTab valeur_aux_bords () const override
 renvoie la valeur du champ aux faces de bord
virtual void creer_espace_distant (int dummy)
void set_via_ch_fonc_reprise ()
bool via_ch_fonc_reprise () const
void PDI_save_type (bool b)
virtual std::vector< YAML_datadata_a_sauvegarder () const
 for PDI IO: retrieve name, type and dimensions of the field to save/restore.
Nom get_PDI_dname () const
 for PDI IO: retrieve the name of the HDF5 dataset in which the field will be saved or be restored from
void set_PDI_dname (const Nom &name)
Public Member Functions inherited from Champ_base
 Champ_base ()
 Constructeur par defaut d'un Champ_base.
double temps () const
 Renvoie le temps du champ.
Champ_baseaffecter (const Champ_base &)
 Affecter un champ dans un autre.
void affecter_erreur ()
virtual double valeur_a_compo (const DoubleVect &position, int ncomp) const
 Calcule la valeur ponctuelle de la composante "compo" du champ au point de coordonnees pos.
virtual DoubleTab & valeur_aux_elems_passe (const DoubleTab &positions, const IntVect &les_polys, DoubleTab &tab_valeurs) const
virtual DoubleVect & valeur_a_sommet (int, const Domaine &, DoubleVect &) const
 Mise a jour en temps.
virtual DoubleTab & eval_elem (DoubleTab &valeurs) const
virtual DoubleTab & valeur_aux_faces (DoubleTab &result) const
 renvoie la valeur du champ aux faces
virtual DoubleTab & valeur_aux_faces_post (DoubleTab &result) const
void calculer_valeurs_som_post (DoubleTab &valeurs, int nbsom, Nom &nom_post, const Domaine &dom) const
void calculer_valeurs_som_compo_post (DoubleTab &valeurs, int ncomp, int nbsom, Nom &nom_post, const Domaine &dom, int appliquer_cl=0) const
void calculer_valeurs_elem_post (DoubleTab &valeurs, int nbelem, Nom &nom_post, const Domaine &dom) const
void calculer_valeurs_elem_compo_post (DoubleTab &valeurs, int ncomp, int nbelem, Nom &nom_post, const Domaine &dom) const
void corriger_unite_nom_compo ()
 cette methode va fixer les unites et le nom des compos elle n'est pas const en realite !!!
virtual int completer_post_champ (const Domaine &dom, const int axi, const Nom &loc_post, const Nom &le_nom_champ_post, Format_Post_base &format) const
virtual void completer (const Domaine_Cl_dis_base &zcl)
Public Member Functions inherited from Field_base
 Field_base ()
 Field_base (const Field_base &other)=default
void nommer (const Nom &) override
 Donne un nom au champ.
const Nomle_nom () const override
 Renvoie le nom du champ.
const Nomsget_synonyms () const
virtual void add_synonymous (const Nom &nom)
virtual int nb_comp () const
virtual void fixer_nb_comp (int i)
 Fixe le nombre de composantes du champ.
virtual int nb_vect_comp () const
const Nomsnoms_compo () const
 Renvoie le tableau des noms des composantes du champ.
const Nomnom_compo (int) const
 Renvoie le nom de la ieme composante du champ.
const Nomnom_compo () const
 Renvoie le nom d'un champ scalaire.
virtual const Nomsfixer_noms_compo (const Noms &)
 Fixe le nom des composantes du champ.
virtual const Nomfixer_nom_compo (int, const Nom &)
 Fixe le nom de la i-eme composante du champ.
virtual const Nomfixer_nom_compo (const Nom &)
 Fixe le nom d'un champ scalaire.
const Nomsunites () const
 Renvoie les unites des composantes du champ.
const Nomunite () const
 Renvoie l'unite d'un champ scalaire dont toutes les composantes ont la meme unite.
const Nomunite (int) const
 Renvoie l'unite de la i-eme composante du champ.
virtual const Nomsfixer_unites (const Noms &)
 Specifie les unites des composantes du champ.
virtual const Nomfixer_unite (const Nom &)
 Specifie l'unite d'un champ scalaire ou dont toutes les composantes ont la meme unite.
virtual const Nomfixer_unite (int i, const Nom &)
 Specifie l'unite de la i-eme composante du champ Signification: l'index de la composante du champ dont on veut specifier l'unite.
virtual Nature_du_champ nature_du_champ () const
virtual Nature_du_champ fixer_nature_du_champ (Nature_du_champ nat)
 Fixer la nature d'un champ: scalaire, multiscalaire, vectoriel.
bool is_basis_function () const
bool is_quadrature () const
bool is_vectorial () const
bool is_scalar () const
int order_field () const
 Renvoie l'ordre des fonctions de base.
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 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 Interpreteinterprete () const
Interpreteinterprete ()
Public Member Functions inherited from Process
virtual ~Process ()
Public Member Functions inherited from Champ_Proto
virtual ~Champ_Proto ()
int lire_dimension (Entree &, const Nom &)
 Verification de la dimension du champ Renvoie la dimension du champ.
int lire_dimension (int dim, const Nom &le_nom_)
 Verification de la dimension du champ Renvoie la dimension du champ.
double operator() (int i, int j) const =delete
double & operator() (int i, int j)=delete
double operator() (int i) const =delete
double & operator() (int i)=delete
Public Member Functions inherited from MorEqn
void associer_eqn (const Equation_base &)
 Associe une equation a l'objet.
virtual void calculer_pour_post (Champ_base &espace_stockage, const Nom &option, int comp) const
virtual Motcle get_localisation_pour_post (const Nom &option) const
const Equation_baseequation () const
 Renvoie la reference sur l'equation pointe par MorEqn::mon_equation.
Equation_baseequation ()
 Renvoie la reference sur l'equation pointe par MorEqn::mon_equation.
int mon_equation_non_nul () const
virtual void check_multiphase_compatibility () const
Public Member Functions inherited from Champ_P1NC_implementation
 Champ_P1NC_implementation ()
 ~Champ_P1NC_implementation () override
int fixer_nb_valeurs_nodales (int)
KOKKOS_INLINE_FUNCTION double fonction_forme_2D_v (double x, double y, int le_poly, int face, CIntTabView sommet_poly, CDoubleTabView coord) const
KOKKOS_INLINE_FUNCTION double fonction_forme_3D_v (double x, double y, double z, int le_poly, int face, CIntTabView sommet_poly, CDoubleTabView coord) const
double fonction_forme_2D (double x, double y, int le_poly, int face, const IntTab &sommet_poly, const DoubleTab &coord) const
double fonction_forme_3D (double x, double y, double z, int le_poly, int face, const IntTab &sommet_poly, const DoubleTab &coord) const
double coord_barycentrique (const IntTab &sommet_poly, const DoubleTab &coord, double x, double y, int le_poly, int face) const
double coord_barycentrique (const IntTab &sommet_poly, const DoubleTab &coord, double x, double y, double z, int le_poly, int face) const
DoubleVect & valeur_a_elem (const DoubleVect &position, DoubleVect &val, int le_poly) const override
double valeur_a_elem_compo (const DoubleVect &position, int le_poly, int ncomp) const override
DoubleTab & valeur_aux_centres_de_gravite (const Domaine &, DoubleTab &valeurs) const
 Computes values at the centers of gravity for a P1NC field.
DoubleTab & valeur_aux_elems (const DoubleTab &positions, const IntVect &les_polys, DoubleTab &valeurs) const override
DoubleVect & valeur_aux_elems_compo (const DoubleTab &positions, const IntVect &les_polys, DoubleVect &valeurs, int ncomp) const override
DoubleTab & valeur_aux_sommets (const Domaine &dom, DoubleTab &ch_som) const override
DoubleVect & valeur_aux_sommets_compo (const Domaine &dom, DoubleVect &ch_som, int ncomp) const override
double valeur_a_sommet_compo (int num_som, int le_poly, int ncomp) const
KOKKOS_INLINE_FUNCTION double valeur_a_sommet_compo (int num_som, int num_elem, int ncomp, CIntTabView elem_faces, CIntTabView sommet_elem, CDoubleTabView ch) const
DoubleTab & valeur_aux_elems_smooth (const DoubleTab &positions, const IntVect &les_polys, DoubleTab &valeurs)
DoubleVect & valeur_aux_elems_compo_smooth (const DoubleTab &positions, const IntVect &les_polys, DoubleVect &valeurs, int ncomp)
DoubleTab & remplir_coord_noeuds (DoubleTab &positions) const override
int remplir_coord_noeuds_et_polys (DoubleTab &positions, IntVect &polys) const override
int imprime_P1NC (Sortie &, int) const
void filtrer_L2 (DoubleTab &) const
void filtrer_H1 (DoubleTab &) const
void filtrer_resu (DoubleTab &) const
DoubleTab & ch_som ()
DoubleVect & ch_som_vect ()
const Matrice_Morse_Symget_MatP1NC2P1_L2 () const
const SolveurSysget_solveur_L2 () const
const Matrice_Morse_Symget_MatP1NC2P1_L2_H1 () const
const Matrice_Morse_Symget_MatP1NC2P1_H1 () const
const SolveurSysget_solveur_L2_H1 () const
const SolveurSysget_solveur_H1 () const
int nb_colonnes_tot ()
int nb_colonnes ()
void dimensionner_Mat_Bloc_Morse_Sym (Matrice &matrice_tmp)
void Mat_Morse_to_Mat_Bloc (Matrice &matrice_tmp)
Public Member Functions inherited from Champ_implementation
virtual ~Champ_implementation ()

Static Public Member Functions

static DoubleVect & calcul_S_barre (const DoubleTab &, DoubleVect &, const Domaine_Cl_VEF &)
static DoubleTab & calcul_gradient (const DoubleTab &, DoubleTab &, const Domaine_Cl_VEF &)
static DoubleTab & calcul_duidxj_paroi (DoubleTab &, const DoubleTab &, const DoubleTab &, const DoubleTab &, const Domaine_Cl_VEF &)
static double calculer_integrale_volumique (const Domaine_VEF &, const DoubleVect &, Ok_Perio ok)
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)

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
Protected Member Functions inherited from Champ_Inc_base
virtual void creer_tableau_distribue (const MD_Vector &, RESIZE_OPTIONS=RESIZE_OPTIONS::COPY_INIT)
 OBS_PTR (Domaine_Cl_dis_base) mon_dom_cl_dis
 OBS_PTR (Domaine_VF) le_dom_VF
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).
virtual void set_param (Param &) const
Protected Member Functions inherited from MorEqn
 OBS_PTR (Equation_base) mon_equation
virtual ~MorEqn ()
Protected Member Functions inherited from Champ_P1NC_implementation
DoubleTab & trace (const Frontiere_dis_base &fr, const DoubleTab &y, DoubleTab &x, int distant) const
Protected Member Functions inherited from Champ_implementation_divers
DoubleTab & valeur_aux_sommets_impl (DoubleTab &result) const override
DoubleVect & valeur_aux_sommets_compo_impl (DoubleVect &result, int ncomp) const override
Protected Member Functions inherited from Champ_implementation
const Domaine_VFget_domaine_dis () const
const Domaine & get_domaine_geom () const
Protected Attributes inherited from Champ_Inc_base
Roue_ptr les_valeurs
fonc_calc_t fonc_calc_
int fonc_calc_init_ = 0
RefObjU obj_calc_
DoubleTab val_bord_
tabs_t deriv_
bool bord_fluide_multiphase_ = false
bool via_ch_fonc_reprise_ = false
bool PDI_save_type_ = false
Nom PDI_dname_
Protected Attributes inherited from Champ_base
double temps_
Protected Attributes inherited from Field_base
Nom nom_
Noms noms_synonymes_
Noms noms_compo_
Noms unite_
int nb_compo_
Nature_du_champ nature_
Protected Attributes inherited from Champ_P1NC_implementation
Matrice_Morse_Sym MatP1NC2P1_L2
Matrice MatP1NC2P1_L2_Parallele
SolveurSys solveur_L2
Matrice_Morse_Sym MatP1NC2P1_H1
SolveurSys solveur_H1
DoubleTab ch_som_
DoubleVect ch_som_vect_
int filtrer_L2_deja_appele_
Matrice_Morse_Sym MatP1NC2P1_L2_H1
SolveurSys solveur_L2_H1

Detailed Description

Definition at line 34 of file Champ_P1NC.h.

Member Function Documentation

◆ abortTimeStep()

void Champ_P1NC::abortTimeStep ( )
overridevirtual

Reimplemented from Champ_base.

Definition at line 60 of file Champ_P1NC.cpp.

◆ affecter_()

Champ_base & Champ_P1NC::affecter_ ( const Champ_base & ch)
overridevirtual

Affectation d'un OWN_PTR(Champ_base) generique (Champ_base) dans un champ inconnue.

Parameters
(Champ_base&ch) le champ partie droite de l'affectation
Returns
(Champ_base&) le resultat de l'affectation (*this)

Reimplemented from Champ_Inc_base.

Definition at line 415 of file Champ_P1NC.cpp.

◆ cal_rot_ordre1()

void Champ_P1NC::cal_rot_ordre1 ( DoubleTab & tab_vorticite) const

Definition at line 78 of file Champ_P1NC.cpp.

◆ calcul_critere_Q()

void Champ_P1NC::calcul_critere_Q ( DoubleVect & tab_Critere_Q) const

Definition at line 504 of file Champ_P1NC.cpp.

◆ calcul_duidxj_paroi()

DoubleTab & Champ_P1NC::calcul_duidxj_paroi ( DoubleTab & tab_gij,
const DoubleTab & tab_nu,
const DoubleTab & tab_nu_turb,
const DoubleTab & tab_tau_tan,
const Domaine_Cl_VEF & domaine_Cl_VEF )
static

Definition at line 923 of file Champ_P1NC.cpp.

◆ calcul_grad_T()

void Champ_P1NC::calcul_grad_T ( const Domaine_Cl_VEF & domaine_Cl_VEF,
DoubleTab & grad_T ) const

Definition at line 685 of file Champ_P1NC.cpp.

◆ calcul_grad_U()

void Champ_P1NC::calcul_grad_U ( const Domaine_Cl_VEF & domaine_Cl_VEF,
DoubleTab & tab_grad_u ) const

Definition at line 660 of file Champ_P1NC.cpp.

◆ calcul_gradient()

DoubleTab & Champ_P1NC::calcul_gradient ( const DoubleTab & champ,
DoubleTab & gij,
const Domaine_Cl_VEF & domaine_Cl_VEF )
static

Definition at line 915 of file Champ_P1NC.cpp.

◆ calcul_h_conv()

void Champ_P1NC::calcul_h_conv ( const Domaine_Cl_VEF & domaine_Cl_VEF,
DoubleTab & h_conv,
int temp_ref ) const

Definition at line 732 of file Champ_P1NC.cpp.

◆ calcul_S_barre()

DoubleVect & Champ_P1NC::calcul_S_barre ( const DoubleTab & la_vitesse,
DoubleVect & SMA_barre,
const Domaine_Cl_VEF & domaine_Cl_VEF )
static

Definition at line 1052 of file Champ_P1NC.cpp.

◆ calcul_y_plus()

void Champ_P1NC::calcul_y_plus ( const Domaine_Cl_VEF & domaine_Cl_VEF,
DoubleVect & y_plus ) const

Definition at line 533 of file Champ_P1NC.cpp.

◆ calcul_y_plus_diphasique()

void Champ_P1NC::calcul_y_plus_diphasique ( const Domaine_Cl_VEF & domaine_Cl_VEF,
DoubleVect & y_plus ) const

Definition at line 18 of file Champ_P1NC_bis.cpp.

◆ calculer_integrale_volumique()

double Champ_P1NC::calculer_integrale_volumique ( const Domaine_VEF & domaine,
const DoubleVect & v,
Ok_Perio ok )
static

Definition at line 1082 of file Champ_P1NC.cpp.

◆ compo_normale_sortante()

int Champ_P1NC::compo_normale_sortante ( int num_face) const

Definition at line 65 of file Champ_P1NC.cpp.

◆ domaine_vef()

const Domaine_VEF & Champ_P1NC::domaine_vef ( ) const
inlineoverridevirtual

Implements Champ_P1NC_implementation.

Definition at line 66 of file Champ_P1NC.h.

◆ filtrer_H1()

void Champ_P1NC::filtrer_H1 ( DoubleTab & x) const
inline

Definition at line 132 of file Champ_P1NC.h.

◆ filtrer_L2()

void Champ_P1NC::filtrer_L2 ( DoubleTab & x) const
inline

Definition at line 127 of file Champ_P1NC.h.

◆ filtrer_resu()

void Champ_P1NC::filtrer_resu ( DoubleTab & x) const
inline

Definition at line 137 of file Champ_P1NC.h.

◆ fixer_nb_valeurs_nodales()

int Champ_P1NC::fixer_nb_valeurs_nodales ( int nb_noeuds)
overridevirtual

Reimplemented from Champ_Inc_base.

Definition at line 1097 of file Champ_P1NC.cpp.

◆ gradient()

void Champ_P1NC::gradient ( DoubleTab & gradient_elem) const

Definition at line 401 of file Champ_P1NC.cpp.

◆ imprime()

int Champ_P1NC::imprime ( Sortie & os,
int ncomp ) const
overridevirtual

Reimplemented from Champ_Inc_base.

Definition at line 409 of file Champ_P1NC.cpp.

◆ mettre_a_jour()

void Champ_P1NC::mettre_a_jour ( double un_temps)
overridevirtual

Effectue une mise a jour en temps du champ inconnue.

WEC : Maintenant si on l'appelle 2 fois de suite avec le meme argument, la 2eme ne fait rien.

Parameters
(doubletemps) le nouveau temps

Reimplemented from Champ_Inc_base.

Definition at line 52 of file Champ_P1NC.cpp.

◆ norme_H1()

double Champ_P1NC::norme_H1 ( const Domaine & dom) const
virtual

Definition at line 852 of file Champ_P1NC.cpp.

◆ norme_L2()

double Champ_P1NC::norme_L2 ( const Domaine & dom) const
virtual

Definition at line 840 of file Champ_P1NC.cpp.

◆ norme_L2_H1()

double Champ_P1NC::norme_L2_H1 ( const Domaine & dom) const
virtual

Definition at line 902 of file Champ_P1NC.cpp.

◆ remplir_coord_noeuds()

DoubleTab & Champ_P1NC::remplir_coord_noeuds ( DoubleTab & positions) const
inlineoverridevirtual

Implements Champ_Inc_base.

Definition at line 117 of file Champ_P1NC.h.

◆ remplir_coord_noeuds_et_polys()

int Champ_P1NC::remplir_coord_noeuds_et_polys ( DoubleTab & ,
IntVect &  ) const
inlineoverridevirtual

NE FAIT RIEN Methode a surcharger.

Parameters
(DoubleTab&)
(IntVect&)
Returns
(int) renvoie toujours 0

Reimplemented from Champ_Inc_base.

Definition at line 122 of file Champ_P1NC.h.

◆ trace()

DoubleTab & Champ_P1NC::trace ( const Frontiere_dis_base & ,
DoubleTab & x,
double tps,
int distant ) const
overridevirtual

voir Champ_base Cas particulier (malheureusement) du Champ_P0_VDF :

Si la frontiere est un raccord, le resultat est calcule sur le raccord associe. Dans ce cas, le DoubleTab x doit etre dimensionne sur le raccord associe.

Reimplemented from Champ_Inc_base.

Definition at line 73 of file Champ_P1NC.cpp.

◆ valeur_a_elem()

DoubleVect & Champ_P1NC::valeur_a_elem ( const DoubleVect & position,
DoubleVect & les_valeurs,
int le_poly ) const
inlineoverridevirtual

provoque une erreur ! doit etre surchargee par les classes derivees

non virtuelle pure par commodite de developpement ! Renvoie la valeur du champ au point specifie par ses coordonnees, en indiquant que ce point est situe dans un element specifie.

Parameters
(DoubleVect&)les coordonnees du point de calcul
(DoubleVect&les_valeurs) la valeur du champ au point specifie
(int)l'element dans lequel est situe le point de calcul
Returns
(DoubleVect&) la valeur du champ au point specifie

Reimplemented from Champ_base.

Definition at line 67 of file Champ_P1NC.h.

◆ valeur_a_elem_compo()

double Champ_P1NC::valeur_a_elem_compo ( const DoubleVect & position,
int le_poly,
int ncomp ) const
inlineoverridevirtual

provoque une erreur ! doit etre surchargee par les classes derivees

non virtuelle pure par commodite de developpement !

Reimplemented from Champ_base.

Definition at line 72 of file Champ_P1NC.h.

◆ valeur_a_sommet_compo()

double Champ_P1NC::valeur_a_sommet_compo ( int sommet,
int le_poly,
int compo ) const
inlineoverridevirtual

renvoi la compo eme corrdonne des valeurs a l'element le_poly au sommet sommet

Reimplemented from Champ_base.

Definition at line 77 of file Champ_P1NC.h.

◆ valeur_aux_centres_de_gravite()

DoubleTab & Champ_P1NC::valeur_aux_centres_de_gravite ( const Domaine & dom,
DoubleTab & valeurs ) const
inlineoverridevirtual

Cette methode, generique mais lente (calcul des centres de gravite, remplissage les_poly, utilisation des fonctions de forme dans le Champ discretise) peut etre surchargee par le champ dicretise pour une implementation beaucoup plus rapide.

Reimplemented from Champ_base.

Definition at line 82 of file Champ_P1NC.h.

◆ valeur_aux_elems()

DoubleTab & Champ_P1NC::valeur_aux_elems ( const DoubleTab & positions,
const IntVect & les_polys,
DoubleTab & les_valeurs ) const
inlineoverridevirtual

provoque une erreur ! doit etre surchargee par les classes derivees

non virtuelle pure par commodite de developpement ! Renvoie les valeurs du champ aux points specifies par leurs coordonnees, en indiquant que les points de calculs sont situes dans les elements indiques.

Parameters
(DoubleTab&)le tableau des coordonnees des points de calcul
(IntVect&)le tableau des elements dans lesquels sont situes les points de calcul
(DoubleTab&les_valeurs) le tableau des valeurs du champ aux points specifies
Returns
(DoubleTab&) le tableau des valeurs du champ aux points specifies

Reimplemented from Champ_base.

Definition at line 87 of file Champ_P1NC.h.

◆ valeur_aux_elems_compo()

DoubleVect & Champ_P1NC::valeur_aux_elems_compo ( const DoubleTab & positions,
const IntVect & les_polys,
DoubleVect & les_valeurs,
int ncomp ) const
inlineoverridevirtual

provoque une erreur ! doit etre surchargee par les classes derivees

non virtuelle pure par commodite de developpement ! Renvoie les valeurs d'une composante du champ aux points specifies par leurs coordonnees, en indiquant que les points de calculs sont situes dans les elements indiques.

Parameters
(DoubleTab&)le tableau des coordonnees des points de calcul
(IntVect&)le tableau des elements dans lesquels sont situes les points de calcul
(DoubleVect&les_valeurs) le tableau des valeurs de la composante du champ aux points specifies
(int)l'index de la composante du champ a calculer
Returns
(DoubleVect&) le tableau des valeurs de la composante du champ aux points specifies

Reimplemented from Champ_base.

Definition at line 92 of file Champ_P1NC.h.

◆ valeur_aux_elems_compo_smooth()

DoubleVect & Champ_P1NC::valeur_aux_elems_compo_smooth ( const DoubleTab & positions,
const IntVect & les_polys,
DoubleVect & tab_valeurs,
int ncomp )
inlineoverridevirtual

Reimplemented from Champ_base.

Definition at line 102 of file Champ_P1NC.h.

◆ valeur_aux_elems_smooth()

DoubleTab & Champ_P1NC::valeur_aux_elems_smooth ( const DoubleTab & positions,
const IntVect & les_polys,
DoubleTab & tab_valeurs )
inlineoverridevirtual

Reimplemented from Champ_base.

Definition at line 97 of file Champ_P1NC.h.

◆ valeur_aux_sommets()

DoubleTab & Champ_P1NC::valeur_aux_sommets ( const Domaine & dom,
DoubleTab & val ) const
inlineoverridevirtual

renvoie les valeurs aux sommets du Domaine dom

Reimplemented from Champ_base.

Definition at line 107 of file Champ_P1NC.h.

◆ valeur_aux_sommets_compo()

DoubleVect & Champ_P1NC::valeur_aux_sommets_compo ( const Domaine & dom,
DoubleVect & val,
int compo ) const
inlineoverridevirtual

renvoie la compo eme valeur aux sommets de dom.

Reimplemented from Champ_base.

Definition at line 112 of file Champ_P1NC.h.

◆ verifie_valeurs_cl()

void Champ_P1NC::verifie_valeurs_cl ( )
overridevirtual

Reimplemented from Champ_Inc_base.

Definition at line 466 of file Champ_P1NC.cpp.


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