|
TrioCFD 1.9.9_beta
TrioCFD documentation
|
Class Frontiere. More...
#include <Frontiere.h>
Public Types | |
| using | int_t = _SIZE_ |
| using | ArrOfInt_t = ArrOfInt_T<_SIZE_> |
| using | IntVect_t = IntVect_T<_SIZE_> |
| using | IntTab_t = IntTab_T<_SIZE_> |
| using | DoubleVect_t = DoubleVect_T<_SIZE_> |
| using | DoubleTab_t = DoubleTab_T<_SIZE_> |
| using | Domaine_t = Domaine_32_64<_SIZE_> |
| using | Faces_t = Faces_32_64<_SIZE_> |
Public Member Functions | |
| void | associer_domaine (const Domaine_t &) |
| Associates the boundary to the domain it belongs to. | |
| const Domaine_t & | domaine () const |
| Returns the domain associated with the boundary (const version). | |
| Domaine_t & | domaine () |
| Returns the domain associated with the boundary. | |
| const Nom & | le_nom () const override |
| Returns the name of the Objet_U. Virtual method to override: returns "neant" in this implementation. | |
| void | nommer (const Nom &) override |
| Gives a name to the boundary. | |
| void | ajouter_faces (const IntTab_t &) |
| Adds one or more faces to the boundary; the face(s) are specified by an array. | |
| void | typer_faces (const Motcle &) |
| Sets the type of the boundary faces. | |
| void | typer_faces (const Type_Face &) |
| Sets the type of the boundary faces. | |
| const Faces_t & | faces () const |
| Faces_t & | faces () |
| IntTab_t & | les_sommets_des_faces () |
| Returns the vertices of the boundary faces. | |
| const IntTab_t & | les_sommets_des_faces () const |
| Returns the vertices of the boundary faces (const version). | |
| int_t | nb_faces () const |
| Returns the number of faces of the boundary. | |
| void | dimensionner (int_t i) |
| Sizes the boundary, i.e. sets its number of faces. | |
| void | renum (const IntVect_t &) |
| Renumbers the nodes (vertices) of the faces. | |
| void | add (const Frontiere_32_64 &) |
| Adds the vertices (and faces) of the given boundary to this object (Frontiere_32_64). | |
| int_t | nb_faces_virt () const |
| int_t | face_virt (int_t i) const |
| int_t | num_premiere_face () const |
| void | fixer_num_premiere_face (int_t i) |
| const ArrOfInt_t & | get_faces_virt () const |
| ArrOfInt_t & | get_faces_virt () |
| const double & | get_aire () const |
| void | set_aire (double &aire) |
| virtual void | creer_tableau_faces (Array_base &, RESIZE_OPTIONS opt=RESIZE_OPTIONS::COPY_INIT) const |
| Creates an array with one "row" per face of this boundary. | |
| virtual void | trace_elem_local (const DoubleTab &, DoubleTab &) const |
| virtual void | trace_face_local (const DoubleTab &, DoubleTab &) const |
| virtual void | trace_face_local (const DoubleVect &, DoubleVect &) const |
| virtual void | trace_elem_distant (const DoubleTab &, DoubleTab &) const |
| virtual void | trace_som_distant (const DoubleTab &, DoubleTab &) const |
| virtual void | trace_face_distant (const DoubleTab &, DoubleTab &) const |
| virtual void | trace_face_distant (const DoubleVect &, DoubleVect &) const |
| virtual void | trace_som_local (const DoubleTab &y, DoubleTab &x) const |
| void | trace_elem_local (const DoubleTab &y, DoubleTab &x) const |
| Returns the trace on the boundary of the element-based array y. | |
| void | trace_som_local (const DoubleTab &y, DoubleTab &x) const |
| Returns the trace on the boundary of the node-based array y. | |
| void | trace_face_local (const DoubleVect &y, DoubleVect &x) const |
| Returns the trace on the boundary of the face-based array y. | |
| void | trace_face_local (const DoubleTab &y, DoubleTab &x) const |
| Returns the trace on the boundary of the face-based array y (DoubleTab version). | |
| void | trace_som_distant (const DoubleTab &, DoubleTab &) const |
| void | trace_elem_distant (const DoubleTab &, DoubleTab &) const |
| void | trace_face_distant (const DoubleTab &, DoubleTab &) const |
| void | trace_face_distant (const DoubleVect &, DoubleVect &) const |
| Public Member Functions inherited from Objet_U | |
| ~Objet_U () override | |
| Destructor. Removes the object from the list of objects registered in "memory". | |
| int | numero () const |
| Returns the index of the object in Memoire::data. | |
| virtual int | duplique () const =0 |
| virtual Sortie & | printOn (Sortie &) const |
| Writes the object to an output stream. Virtual method to override. | |
| virtual Entree & | readOn (Entree &) |
| Reads an Objet_U from an input stream. Virtual method to override. | |
| virtual unsigned | taille_memoire () const =0 |
| virtual int | est_egal_a (const Objet_U &) const |
| Returns 1 if x and *this are the same instance (same memory address). | |
| virtual int | reprendre (Entree &) |
| Restores an Objet_U from an input stream. Virtual method to override. | |
| virtual int | sauvegarder (Sortie &) const |
| Saves an Objet_U to an output stream. Virtual method to override. | |
| int | get_object_id () const |
| Returns the unique identifier of the object (object_id_). | |
| virtual const Type_info * | get_info () const |
| Returns type information for the Objet_U. | |
| const Nom & | que_suis_je () const |
| Returns the string identifying the class. | |
| const char * | le_type () const |
| Returns the type name of the Objet_U. | |
| virtual int | change_num (const int *const) |
| Changes the internal number of the Objet_U. | |
| virtual int | lire_motcle_non_standard (const Motcle &motlu, Entree &is) |
| Reads non-simple-type parameters of an Objet_U from an input stream. | |
| virtual int | associer_ (Objet_U &) |
| Associates the Objet_U with another Objet_U. Virtual method to override. | |
| const Interprete & | interprete () const |
| Interprete & | interprete () |
| Public Member Functions inherited from Process | |
| virtual | ~Process () |
Additional Inherited Members | |
| Static Public Member Functions inherited from Objet_U | |
| static const Nom & | nom_du_cas () |
| Returns a constant reference to the case name. This method is static. | |
| static Nom & | get_set_nom_du_cas () |
| Returns a non-constant reference to the case name (to allow modification). This method is static. | |
| static const Type_info * | info () |
| Returns type information for the Objet_U (static version). | |
| static const Objet_U & | self_cast (const Objet_U &) |
| Method added for casting in Python. | |
| static Objet_U & | self_cast (Objet_U &) |
| Static Public Member Functions inherited from Process | |
| static int | me () |
| Returns the rank of the local processor in the current communication group. See Comm_Group::rank() and PE_Groups::current_group(). | |
| static int | nproc () |
| Returns the number of processors in the current group. See Comm_Group::nproc() and PE_Groups::current_group(). | |
| static bool | is_parallel () |
| static void | exit (int exit_code=-1) |
| Exit routine for TRUST within a Kokkos region. | |
| static double | mp_sum (double) |
| Computes the sum of x over all processors in the current group. | |
| static float | mp_sum (float) |
| static trustIdType | mp_sum (trustIdType) |
| Computes the sum of x over all processors in the current group. | |
| static double | mp_max (double) |
| static double | mp_min (double) |
| static int | mp_max (int) |
| Returns the maximum value of x across all processors in the current group. | |
| static int | mp_min (int) |
| Returns the minimum value of x across all processors in the current group. | |
| static double | mp_sum_as_double (int v) |
| static trustIdType | mppartial_sum (trustIdType i) |
| Computes the partial sum of x over processors 0 to me()-1 (returns 0 on processor 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) |
| Computes the logical AND of b across all processors in the current group. | |
| static bool | mp_or (bool) |
| static int | check_int_overflow (trustIdType) |
| static int | je_suis_maitre () |
| Returns 1 if on the master processor of the current group (i.e. me() == 0), 0 otherwise. | |
| static KOKKOS_INLINE_FUNCTION void | Kokkos_exit (const char *) |
| Exit routine for TRUST within a Kokkos region. | |
| static int | node_master () |
| Returns 1 if on the NUMA node master processor, 0 otherwise. | |
| static void | exit (const Nom &message, int exit_code=-1) |
| static bool | is_sequential () |
| static void | barrier () |
| Synchronizes all processors in the current group (waits until all processors have reached the barrier). | |
| static void | abort () |
| Abort routine for TRUST on a fatal error. | |
| static Sortie & | Journal (int message_level=0) |
| Returns a static Sortie object used as an event journal. | |
| 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 |
| Protected Member Functions inherited from Objet_U | |
| Objet_U () | |
| Default constructor: assigns a unique identifier to the object (object_id_) and registers the object in "memory" by giving it a num_obj number. | |
| Objet_U (const Objet_U &) | |
| Copy constructor. | |
| const Objet_U & | operator= (const Objet_U &) |
| Assignment operator: does nothing (the number and identifier are preserved). | |
| virtual void | set_param (Param &) const |
Class Frontiere.
A Frontiere describes a part of the boundary of a Domain, it has a Name, it carries Faces and has an associated Domain. A Frontiere can be specialized into an Edge, a Joint, a Connection or an Internal Face.
Definition at line 31 of file Frontiere.h.
| using Frontiere_32_64< _SIZE_ >::ArrOfInt_t = ArrOfInt_T<_SIZE_> |
Definition at line 37 of file Frontiere.h.
| using Frontiere_32_64< _SIZE_ >::Domaine_t = Domaine_32_64<_SIZE_> |
Definition at line 42 of file Frontiere.h.
| using Frontiere_32_64< _SIZE_ >::DoubleTab_t = DoubleTab_T<_SIZE_> |
Definition at line 41 of file Frontiere.h.
| using Frontiere_32_64< _SIZE_ >::DoubleVect_t = DoubleVect_T<_SIZE_> |
Definition at line 40 of file Frontiere.h.
| using Frontiere_32_64< _SIZE_ >::Faces_t = Faces_32_64<_SIZE_> |
Definition at line 43 of file Frontiere.h.
| using Frontiere_32_64< _SIZE_ >::int_t = _SIZE_ |
Definition at line 36 of file Frontiere.h.
| using Frontiere_32_64< _SIZE_ >::IntTab_t = IntTab_T<_SIZE_> |
Definition at line 39 of file Frontiere.h.
| using Frontiere_32_64< _SIZE_ >::IntVect_t = IntVect_T<_SIZE_> |
Definition at line 38 of file Frontiere.h.
| void Frontiere_32_64< _SIZE_ >::add | ( | const Frontiere_32_64< _SIZE_ > & | front | ) |
Adds the vertices (and faces) of the given boundary to this object (Frontiere_32_64).
| (Frontiere_32_64& | front) the boundary to "add" to this object |
Definition at line 173 of file Frontiere.cpp.
| void Frontiere_32_64< _SIZE_ >::ajouter_faces | ( | const IntTab_t & | sommets | ) |
Adds one or more faces to the boundary; the face(s) are specified by an array.
containing the vertex indices.
| (IntTab& | sommets) array containing the vertex indices of the faces to add |
Definition at line 86 of file Frontiere.cpp.
| void Frontiere_32_64< _SIZE_ >::associer_domaine | ( | const Domaine_t & | un_domaine | ) |
Associates the boundary to the domain it belongs to.
| (Domaine& | un_domaine) the domain to associate with the boundary |
Definition at line 63 of file Frontiere.cpp.
|
virtual |
Creates an array with one "row" per face of this boundary.
See MD_Vector_tools::creer_tableau_distribue()
Definition at line 201 of file Frontiere.cpp.
|
inline |
Sizes the boundary, i.e. sets its number of faces.
Definition at line 61 of file Frontiere.h.
| Frontiere_32_64< _SIZE_ >::Domaine_t & Frontiere_32_64< _SIZE_ >::domaine | ( | ) |
Returns the domain associated with the boundary.
Definition at line 162 of file Frontiere.cpp.
| const Frontiere_32_64< _SIZE_ >::Domaine_t & Frontiere_32_64< _SIZE_ >::domaine | ( | ) | const |
Returns the domain associated with the boundary (const version).
Definition at line 152 of file Frontiere.cpp.
|
inline |
Definition at line 65 of file Frontiere.h.
|
inline |
Definition at line 55 of file Frontiere.h.
|
inline |
Definition at line 54 of file Frontiere.h.
|
inline |
Definition at line 68 of file Frontiere.h.
|
inline |
Definition at line 72 of file Frontiere.h.
|
inline |
Definition at line 70 of file Frontiere.h.
|
inline |
Definition at line 69 of file Frontiere.h.
|
inlineoverridevirtual |
Returns the name of the Objet_U. Virtual method to override: returns "neant" in this implementation.
Reimplemented from Objet_U.
Definition at line 49 of file Frontiere.h.
| Frontiere_32_64< _SIZE_ >::IntTab_t & Frontiere_32_64< _SIZE_ >::les_sommets_des_faces | ( | ) |
Returns the vertices of the boundary faces.
Definition at line 116 of file Frontiere.cpp.
| const Frontiere_32_64< _SIZE_ >::IntTab_t & Frontiere_32_64< _SIZE_ >::les_sommets_des_faces | ( | ) | const |
Returns the vertices of the boundary faces (const version).
Definition at line 125 of file Frontiere.cpp.
|
inline |
Returns the number of faces of the boundary.
Definition at line 59 of file Frontiere.h.
|
inline |
Definition at line 64 of file Frontiere.h.
|
overridevirtual |
Gives a name to the boundary.
| (Nom& | name) the name to give to the boundary |
Reimplemented from Objet_U.
Definition at line 74 of file Frontiere.cpp.
|
inline |
Definition at line 67 of file Frontiere.h.
| void Frontiere_32_64< _SIZE_ >::renum | ( | const IntVect_t & | Les_Nums | ) |
Renumbers the nodes (vertices) of the faces.
The node with index k becomes the node with index Les_Nums[k].
| (IntVect& | Les_Nums) the renumbering vector: new_vertex[i] = Les_Nums[old_vertex[i]] |
Definition at line 137 of file Frontiere.cpp.
|
inline |
Definition at line 73 of file Frontiere.h.
| void Frontiere_32_64< int >::trace_elem_distant | ( | const DoubleTab & | , |
| DoubleTab & | ) const |
Definition at line 302 of file Frontiere.cpp.
|
virtual |
Reimplemented in Raccord_distant_homogene_32_64< _SIZE_ >, Raccord_distant_homogene_32_64< _SIZE_ >, Raccord_distant_homogene_32_64< int >, Raccord_distant_homogene_32_64< int >, Raccord_distant_homogene_32_64< trustIdType >, Raccord_distant_homogene_32_64< trustIdType >, Raccord_local_homogene_32_64< _SIZE_ >, Raccord_local_homogene_32_64< _SIZE_ >, Raccord_local_homogene_32_64< int >, Raccord_local_homogene_32_64< int >, Raccord_local_homogene_32_64< trustIdType >, and Raccord_local_homogene_32_64< trustIdType >.
Definition at line 362 of file Frontiere.cpp.
|
virtual |
Definition at line 327 of file Frontiere.cpp.
| void Frontiere_32_64< int >::trace_elem_local | ( | const DoubleTab & | y, |
| DoubleTab & | x ) const |
Returns the trace on the boundary of the element-based array y.
Definition at line 211 of file Frontiere.cpp.
| void Frontiere_32_64< int >::trace_face_distant | ( | const DoubleTab & | , |
| DoubleTab & | ) const |
Definition at line 309 of file Frontiere.cpp.
|
virtual |
Reimplemented in Raccord_distant_homogene_32_64< _SIZE_ >, Raccord_distant_homogene_32_64< _SIZE_ >, Raccord_distant_homogene_32_64< int >, Raccord_distant_homogene_32_64< int >, Raccord_distant_homogene_32_64< trustIdType >, Raccord_distant_homogene_32_64< trustIdType >, Raccord_local_homogene_32_64< _SIZE_ >, Raccord_local_homogene_32_64< _SIZE_ >, Raccord_local_homogene_32_64< int >, Raccord_local_homogene_32_64< int >, Raccord_local_homogene_32_64< trustIdType >, and Raccord_local_homogene_32_64< trustIdType >.
Definition at line 369 of file Frontiere.cpp.
| void Frontiere_32_64< int >::trace_face_distant | ( | const DoubleVect & | , |
| DoubleVect & | ) const |
Definition at line 316 of file Frontiere.cpp.
|
virtual |
Reimplemented in Raccord_distant_homogene_32_64< _SIZE_ >, Raccord_distant_homogene_32_64< _SIZE_ >, Raccord_distant_homogene_32_64< int >, Raccord_distant_homogene_32_64< int >, Raccord_distant_homogene_32_64< trustIdType >, Raccord_distant_homogene_32_64< trustIdType >, Raccord_local_homogene_32_64< _SIZE_ >, Raccord_local_homogene_32_64< _SIZE_ >, Raccord_local_homogene_32_64< int >, Raccord_local_homogene_32_64< int >, Raccord_local_homogene_32_64< trustIdType >, and Raccord_local_homogene_32_64< trustIdType >.
Definition at line 376 of file Frontiere.cpp.
|
virtual |
Definition at line 348 of file Frontiere.cpp.
| void Frontiere_32_64< int >::trace_face_local | ( | const DoubleTab & | y, |
| DoubleTab & | x ) const |
Returns the trace on the boundary of the face-based array y (DoubleTab version).
Definition at line 281 of file Frontiere.cpp.
|
virtual |
Definition at line 341 of file Frontiere.cpp.
| void Frontiere_32_64< int >::trace_face_local | ( | const DoubleVect & | y, |
| DoubleVect & | x ) const |
Returns the trace on the boundary of the face-based array y.
Definition at line 271 of file Frontiere.cpp.
| void Frontiere_32_64< int >::trace_som_distant | ( | const DoubleTab & | , |
| DoubleTab & | ) const |
Definition at line 295 of file Frontiere.cpp.
|
virtual |
Definition at line 355 of file Frontiere.cpp.
| void Frontiere_32_64< int >::trace_som_local | ( | const DoubleTab & | y, |
| DoubleTab & | x ) const |
Returns the trace on the boundary of the node-based array y.
Definition at line 239 of file Frontiere.cpp.
|
virtual |
Definition at line 334 of file Frontiere.cpp.
| void Frontiere_32_64< _SIZE_ >::typer_faces | ( | const Motcle & | typ | ) |
Sets the type of the boundary faces.
| (Motcle& | typ) the geometric type of the faces |
Definition at line 96 of file Frontiere.cpp.
| void Frontiere_32_64< _SIZE_ >::typer_faces | ( | const Type_Face & | typ | ) |
Sets the type of the boundary faces.
| (Type_Face& | typ) the geometric type of the faces |
Definition at line 106 of file Frontiere.cpp.