|
TrioCFD 1.9.8
TrioCFD documentation
|
Classe de champ particuliere qui encapsule une reference a un champ volumique de TRUST de type Champ_base. More...
#include <Champ_Generique_refChamp.h>
Public Member Functions | |
| void | initialize (const Champ_base &champ) |
| On initialise la classe avec le champ en parametre. | |
| void | set_param (Param ¶m) const override |
| pb_champ : declenche la lecture du nom du probleme (nom_pb_) auquel appartient le champ discret et le nom de ce champ discret (nom_champ_) | |
| 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. | |
| int | get_dimension () const override |
| Renvoie le nombre de coordonnees de chaque sommet du domaine. | |
| void | get_property_names (Motcles &list) const override |
| Renvoie la liste des "query" possibles pour le champ. | |
| const Noms | get_property (const Motcle &query) const override |
| Renvoie la propriete demandee. | |
| Entity | get_localisation (const int index=-1) const override |
| Si le champ n'est pas un champ discret : exception Champ_Generique_erreur("INVALID") Sinon, renvoie la localisation du champ pour le support "index". | |
| const DoubleTab & | get_ref_values () const override |
| Verifie que le champ est bien un champ discret et renvoie le tableau de valeurs. | |
| void | get_copy_values (DoubleTab &) const override |
| Cree une copie du tableau de valeurs Voir GenericField_base::get_copy_values(). | |
| void | get_xyz_values (const DoubleTab &coords, DoubleTab &values, ArrOfBit &validity_flag) const override |
| appel a Champ_base::valeur_aux() | |
| const Domaine_Cl_dis_base & | get_ref_zcl_dis_base () const override |
| Renvoie une ref au domaine_cl_discretisee de l equation portant le champ cible. | |
| const DoubleTab & | get_ref_coordinates () const override |
| Renvoie une reference au tableau des coordonnees des sommets du maillage support du champ, s'il existe. | |
| void | get_copy_coordinates (DoubleTab &) const override |
| const IntTab & | get_ref_connectivity (Entity index1, Entity index2) const override |
| Renvoie le tableau de connectivite entre l'entite geometrique index1 et l'entite index2. | |
| void | get_copy_connectivity (Entity index1, Entity index2, IntTab &) const override |
| const Probleme_base & | get_ref_pb_base () const override |
| Renvoie le probleme qui porte le champ cible. | |
| void | reset () override |
| void | completer (const Postraitement_base &post) override |
| void | mettre_a_jour (double temps) override |
| Voir Champ_Generique_base::mettre_a_jour Si le champ est champ_inc dans l'equation, il doit deja avoir. | |
| const Champ_base & | get_champ (OWN_PTR(Champ_base)&espace_stockage) const override |
| Voir Champ_Generique_base::get_champ. | |
| const Champ_base & | get_champ_without_evaluation (OWN_PTR(Champ_base)&espace_stockage) const override |
| virtual const Champ_base & | get_ref_champ_base () const |
| Renvoie le champ_base sous-jacent. | |
| virtual void | set_ref_champ (const Champ_base &) |
| Associe le champ et determine sa localisation. | |
| double | get_time () const override |
| Renvoie le temps du Champ_Generique_base. | |
| const Motcle | get_directive_pour_discr () const override |
| Renvoie la directive (champ_elem, champ_sommets, champ_face ou pression) pour lancer la discretisation de l espace de stockage rendu par get_champ(). | |
| void | set_nom_champ (const Motcle &) |
| void | nommer_source (const Postraitement_base &post) |
| int | get_info_type_post () const override |
| const Noms & | fixer_noms_compo (const Noms &noms) override |
| const Noms & | fixer_noms_synonyms (const Noms &noms) override |
| Public Member Functions inherited from Champ_Generique_base | |
| virtual std::vector< YAML_data > | data_a_sauvegarder () const |
| int | sauvegarder (Sortie &os) const override |
| Sauvegarde d'un Objet_U sur un flot de sortie Methode a surcharger. | |
| int | reprendre (Entree &is) override |
| Reprise d'un Objet_U sur un flot d'entree Methode a surcharger. | |
| virtual const Discretisation_base & | get_discretisation () const |
| Renvoie la discretisation associee au probleme. | |
| void | nommer (const Nom &nom) override |
| Donne un nom a l'Objet_U Methode virtuelle a surcharger. | |
| virtual const Nom & | get_nom_post () const |
| virtual int | get_nb_localisations () const |
| virtual const Domaine & | get_ref_domain () const |
| Renvoie une ref au domaine sur lequel sera evalue l espace de stockage. | |
| virtual void | get_copy_domain (Domaine &) const |
| Cree une copie du domaine sur lequel sera evalue l espace de stockage. | |
| virtual const Domaine_dis_base & | get_ref_domaine_dis_base () const |
| Renvoie une ref au domaine_discretisee du domaine sur lequel sera evalue l espace de stockage. | |
| virtual const Champ_base & | get_champ (OWN_PTR(Champ_base) &espace_stockage) const =0 |
| virtual const Champ_Generique_base & | get_champ_post (const Motcle &nom) const |
| virtual bool | has_champ_post (const Motcle &nom) const |
| virtual int | comprend_champ_post (const Motcle &identifiant) const |
| void | fixer_identifiant_appel (const Nom &identifiant) |
| 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. | |
| 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 | 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 () |
Protected Member Functions | |
| OBS_PTR (Champ_base) ref_champ_ | |
| OWN_PTR (Champ_base) ptr_champ_ | |
| Protected Member Functions inherited from Champ_Generique_base | |
| OBS_PTR (Probleme_base) ref_pb_ | |
| 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 | |
| Noms | compo_ |
| Noms | syno_ |
| Motcle | localisation_ |
| Nom | nom_champ_ |
| Protected Attributes inherited from Champ_Generique_base | |
| Nom | nom_post_ |
| Nom | identifiant_appel_ |
| Nom | nom_pb_ |
Additional Inherited Members | |
| Static Public Member Functions inherited from Champ_Generique_base | |
| static int | composante (const Nom &nom_test, const Nom &nom, const Noms &composantes, const Noms &synonyms) |
| 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) |
| 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 |
| Static Protected Member Functions inherited from Champ_Generique_base | |
| static void | assert_parallel (int) |
Classe de champ particuliere qui encapsule une reference a un champ volumique de TRUST de type Champ_base.
La classe ne gere pas la memoire de Champ_base.
Definition at line 34 of file Champ_Generique_refChamp.h.
|
overridevirtual |
Implements Champ_Generique_base.
Definition at line 391 of file Champ_Generique_refChamp.cpp.
Reimplemented from Champ_Generique_base.
Definition at line 557 of file Champ_Generique_refChamp.cpp.
Reimplemented from Champ_Generique_base.
Definition at line 553 of file Champ_Generique_refChamp.cpp.
|
override |
Voir Champ_Generique_base::get_champ.
Ici, l'espace_stockage n'est pas utilise, le champ existe deja
Definition at line 412 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Implements Champ_Generique_base.
Definition at line 419 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Reimplemented from Champ_Generique_base.
Definition at line 358 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Reimplemented from Champ_Generique_base.
Definition at line 303 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Cree une copie du tableau de valeurs Voir GenericField_base::get_copy_values().
Reimplemented from Champ_Generique_base.
Definition at line 267 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Renvoie le nombre de coordonnees de chaque sommet du domaine.
Voir GenericField_base::get_dimension()
Reimplemented from Champ_Generique_base.
Definition at line 109 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Renvoie la directive (champ_elem, champ_sommets, champ_face ou pression) pour lancer la discretisation de l espace de stockage rendu par get_champ().
Reimplemented from Champ_Generique_base.
Definition at line 473 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Implements Champ_Generique_base.
Definition at line 548 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Si le champ n'est pas un champ discret : exception Champ_Generique_erreur("INVALID") Sinon, renvoie la localisation du champ pour le support "index".
Si index == -1 (valeur par defaut), leve une exception si le champ est multisupport. Sinon, leve une exception si l'index est superieur au nombre de localisations du champ.
Reimplemented from Champ_Generique_base.
Definition at line 215 of file Champ_Generique_refChamp.cpp.
Renvoie la propriete demandee.
Exemples: "DISCRETISATION" : type du champ discret (P0, P1, P1NC, etc...) "ELEMENT_TYPE" : type de l'element de plus grande dimension ({TRIANGLE}, {TETRAHEDRA}, {QUAD}, {HEXA}, etc) "DYNAMIC_MESH" : le maillage est-il dynamique ou pas ({STATIC}, {DYNAMIC}) "NAME" : nom du champ "COMPONENT_NAMES" : nom des composantes du champ ({K,EPSILON} ou {VITESSE_X,VITESSE_Y,VITESSE_Z}) "BOUNDARY_NAMES" : nom des bords "COORDINATES" : systeme de coordonnees des noeuds ({X}, {X,Y}, {X,Y,Z}, {R,THETA}, etc...) Exceptions:
Reimplemented from Champ_Generique_base.
Definition at line 127 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Renvoie la liste des "query" possibles pour le champ.
Reimplemented from Champ_Generique_base.
Definition at line 118 of file Champ_Generique_refChamp.cpp.
|
virtual |
Renvoie le champ_base sous-jacent.
Teste si le champ a bien ete associe. A terme, cette methode disparaitra de la classe GenericField_base mais reste dans celle-ci (on y teste si le champ a ete associe). Exceptions: Champ_Generique_erreur("NOT_INITIALIZED")
Definition at line 378 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Renvoie le tableau de connectivite entre l'entite geometrique index1 et l'entite index2.
Par exemple get_ref_connectivity(ELEM, NODE) = Domaine::mes_elems get_ref_connectivity(ELEM, FACE) = DomaineVF::elem_faces_ get_ref_connectivity(FACE, ELEM) = DomaineVF::face_voisins_ Le tableau a toujours deux dimensions : dimension(0) = nombre d'entites "index1" reelles dimension(1) = nombre d'entites "index2" connectees a chaque entite "index1" En parallele, le tableau est un tableau distribue avec items communs Exceptions:
Reimplemented from Champ_Generique_base.
Definition at line 309 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Renvoie une reference au tableau des coordonnees des sommets du maillage support du champ, s'il existe.
Le tableau a toujours deux dimensions : dimension(0) = nombre de sommets reels dimension(1) = get_dimension() (dimension de l'espace dans lequel est defini le champ) En parallele, le tableau est un tableau distribue avec items communs. Exceptions:
Reimplemented from Champ_Generique_base.
Definition at line 297 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Renvoie le probleme qui porte le champ cible.
Reimplemented from Champ_Generique_base.
Definition at line 365 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Verifie que le champ est bien un champ discret et renvoie le tableau de valeurs.
Sinon, leve l'exception Champ_Generique_erreur("NO_REF")
Reimplemented from Champ_Generique_base.
Reimplemented in Champ_Generique_refChamp_special.
Definition at line 254 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Renvoie une ref au domaine_cl_discretisee de l equation portant le champ cible.
Reimplemented from Champ_Generique_base.
Definition at line 282 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Renvoie le temps du Champ_Generique_base.
Reimplemented from Champ_Generique_base.
Definition at line 463 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
appel a Champ_base::valeur_aux()
Reimplemented from Champ_Generique_base.
Definition at line 277 of file Champ_Generique_refChamp.cpp.
| void Champ_Generique_refChamp::initialize | ( | const Champ_base & | champ | ) |
On initialise la classe avec le champ en parametre.
On prend une ref a ce champ (il doit rester valable ensuite).
Definition at line 99 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree.
| (Motcle& | motlu) le nom du terme a lire |
| (Entree& | is) un flot d'entree |
Reimplemented from Champ_Generique_base.
Definition at line 57 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
Voir Champ_Generique_base::mettre_a_jour Si le champ est champ_inc dans l'equation, il doit deja avoir.
ete mis a jour par l'equation. Si c est un clacule, l actualisation est faite dans get_champ
Implements Champ_Generique_base.
Definition at line 402 of file Champ_Generique_refChamp.cpp.
| void Champ_Generique_refChamp::nommer_source | ( | const Postraitement_base & | post | ) |
Definition at line 529 of file Champ_Generique_refChamp.cpp.
|
protected |
|
mutableprotected |
|
overridevirtual |
Implements Champ_Generique_base.
Definition at line 385 of file Champ_Generique_refChamp.cpp.
| void Champ_Generique_refChamp::set_nom_champ | ( | const Motcle & | nom | ) |
Definition at line 522 of file Champ_Generique_refChamp.cpp.
|
overridevirtual |
pb_champ : declenche la lecture du nom du probleme (nom_pb_) auquel appartient le champ discret et le nom de ce champ discret (nom_champ_)
nom_source : option pour nommer le champ en tant que source (sinon nommer par defaut)
Implements Champ_Generique_base.
Reimplemented in Champ_Generique_refChamp_special.
Definition at line 50 of file Champ_Generique_refChamp.cpp.
|
virtual |
Associe le champ et determine sa localisation.
Definition at line 427 of file Champ_Generique_refChamp.cpp.
|
protected |
Definition at line 84 of file Champ_Generique_refChamp.h.
|
protected |
Definition at line 90 of file Champ_Generique_refChamp.h.
|
protected |
Definition at line 92 of file Champ_Generique_refChamp.h.
|
protected |
Definition at line 84 of file Champ_Generique_refChamp.h.