|
| void | set_param (Param ¶m) const override |
| int | build (Matrice &matrix, const int &nb_elem, const int &derivative_order) |
| int | build_with_unknown_pattern (Matrice &matrix, const int &nb_elem, const int &derivative_order) |
| int | build_with_known_pattern (Matrice &matrix, const int &nb_elem, const int &derivative_order) |
| void | modify_rhs_for_bc (Matrice &modified_matrix, DoubleVect &modified_rhs, const int &ini_boundary_conditions, const int &end_boundary_conditions) |
| void | scale_matrix_by_vector (Matrice &matrix, const DoubleVect &vector, const int &boundary_conditions) |
| void | scale_matrix_subproblem_by_vector (Matrice *matrix, const DoubleVect &vector, const int &subproblem_index, const int &boundary_conditions, const int &use_sparse_matrix, const FixedVector< ArrOfInt, 6 > *first_indices_sparse_matrix) |
| void | make_operation_on_sub_matrix_sparse (Matrice &local_sub_matrix, Matrice *matrix, const int &subproblem_index, const FixedVector< ArrOfInt, 6 > *first_indices_sparse_matrix) |
| void | recombined_local_sub_matrix_with_matrix (Matrice &local_sub_matrix, Matrice *matrix, const int &subproblem_index, const FixedVector< ArrOfInt, 6 > *first_indices_sparse_matrix) |
| void | impose_boundary_conditions (Matrice &modified_matrix, DoubleVect &mdified_rhs, const int &ini_boundary_conditions, const double &interfacial_value, const int &end_boundary_conditions, const double &end_values, const double &dr_inv, const int &first_time_step_temporal, const int &first_time_step_explicit, const DoubleVect &temperature_ini_temporal_schemes) |
| void | impose_boundary_conditions_subproblem (Matrice *matrix, DoubleVect *global_rhs, DoubleVect &local_rhs, const int &ini_boundary_conditions, const double &interfacial_value, const int &end_boundary_conditions, const double &end_value, const int &subproblem_index, const double &dr_inv, const int &first_time_step_temporal, const int &first_time_step_explicit, const DoubleVect &temperature_ini_temporal_schemes, const int &start_index, const FixedVector< ArrOfInt, 6 > *first_indices_sparse_matrix, const int &use_sparse_matrix) |
| void | sum_any_matrices_subproblems (Matrice &matrix_A, Matrice &matrix_B, const int &use_sparse_matrix, const int &debug) |
| void | sum_sparse_matrices_subproblems (Matrice &matrix_A, Matrice &matrix_B, const int &debug) |
| void | sum_matrices_subproblems (Matrice &matrix_A, Matrice &matrix_B) |
| void | sum_matrices (Matrice &matrix_A, Matrice &matrix_B) |
| void | initialise_sparse_matrix_subproblems (Matrice &matrix_subproblems, Matrice &fd_operator, const int &nb_subproblems, const int &first_time_step_varying_probes, FixedVector< ArrOfInt, 6 > &first_indices_sparse_matrix, const int &first_initialisation, int &initialise_sparse_indices) |
| void | initialise_matrix_subproblems (Matrice &matrix_subproblems, Matrice &fd_operator, const int &subproblems, const int &first_time_step_varying_probes) |
| void | reinitialise_any_matrix_subproblem (Matrice *matrix_subproblems, const Matrice *fd_operator, const int &nb_subproblems, const int &use_sparse_matrix, FixedVector< ArrOfInt, 6 > *first_indices_sparse_matrix, const int &first_initialisation, const int &keep_global_probes_discretisation) |
| void | reinitialise_sparse_matrix_subproblem (Matrice *matrix_subproblems, const Matrice *fd_operator, const int &nb_subproblems, FixedVector< ArrOfInt, 6 > *first_indices_sparse_matrix, const int &first_initialisation, const int &keep_global_probes_discretisation) |
| void | reinitialise_matrix_subproblem (Matrice *matrix_subproblems, const Matrice *fd_operator, const int &nb_subproblems, const int &keep_global_probes_discretisation) |
| void | add_source_terms (DoubleVect *thermal_subproblems_rhs_assembly, DoubleVect &rhs_assembly, const DoubleVect &source_terms, const int &index_start, const int &boundary_condition_interface, const int &boundary_condition_end) |
| void | compute_operator (const Matrice *fd_operator, const DoubleVect &solution, DoubleVect &res) |
| void | apply_euler_time_step (Matrice *convection_matrix, Matrice *diffusion_matrix, const int &subproblem_index, const double &local_time_step, const double &alpha) |
| void | correct_sign_temporal_schemes_subproblems (Matrice *convection_matrix, Matrice *diffusion_matrix, const int &subproblem_index, const double &local_time_step, const double &alpha) |
| void | pre_initialise_matrix_subproblems (Matrice &matrice, Matrice &fd_operator, const int &max_subproblems_predicted) |
| void | pre_initialise_sparse_matrix_subproblems (Matrice &matrix_subproblems, Matrice &fd_operator, const int &max_subproblems_predicted) |
| void | complete_empty_matrices_initialisation (Matrice &matrix_subproblems, Matrice &fd_operator, const int &empty_problem_start_index, const int &empty_problem_end_index) |
| void | reduce_solver_matrix (const Matrice_Morse &thermal_subproblems_matrix_assembly_for_solver, Matrice_Morse &thermal_subproblems_matrix_assembly_for_solver_reduced, const int &nb_points, const int &pre_initialise_thermal_subproblems_list) |
| | ~Objet_U () override |
| | Destructeur, supprime l'objet de la liste d'objets enregistres dans "memoire".
|
| int | numero () const |
| | Renvoie l'indice de l'objet dans Memoire::data.
|
| virtual int | duplique () const =0 |
| virtual Sortie & | printOn (Sortie &) const |
| | Ecriture de l'objet sur un flot de sortie Methode a surcharger.
|
| virtual Entree & | readOn (Entree &) |
| | Lecture d'un Objet_U sur un flot d'entree Methode a surcharger.
|
| virtual unsigned | taille_memoire () const =0 |
| virtual int | est_egal_a (const Objet_U &) const |
| | Renvoie 1 si l'objet x et *this sont une seule et meme instance (meme adresse en memoire).
|
| virtual const Nom & | le_nom () const |
| | Donne le nom de l'Objet_U Methode a surcharger : renvoie "neant" dans cette implementation.
|
| virtual void | nommer (const Nom &) |
| | Donne un nom a l'Objet_U Methode virtuelle a surcharger.
|
| virtual int | reprendre (Entree &) |
| | Reprise d'un Objet_U sur un flot d'entree Methode a surcharger.
|
| virtual int | sauvegarder (Sortie &) const |
| | Sauvegarde d'un Objet_U sur un flot de sortie Methode a surcharger.
|
| int | get_object_id () const |
| | Renvoie l'identifiant unique de l'objet object_id_.
|
| virtual const Type_info * | get_info () const |
| | Donne des informations sur le type de l'Objet_U.
|
| const Nom & | que_suis_je () const |
| | renvoie la chaine identifiant la classe.
|
| const char * | le_type () const |
| | Donne le nom du type de l'Objet_U.
|
| virtual int | change_num (const int *const) |
| | Change le numero interne de l'Objet_U.
|
| virtual int | lire_motcle_non_standard (const Motcle &motlu, Entree &is) |
| | Lecture des parametres de type non simple d'un objet_U a partir d'un flot d'entree.
|
| virtual int | associer_ (Objet_U &) |
| | Associe l'Objet_U a un autre Objet_U Methode virtuelle a surcharger.
|
| const Interprete & | interprete () const |
| Interprete & | interprete () |
| virtual | ~Process () |
|
| void | set_operators_size (const std::vector< std::vector< double > > &fd_operator_vector, FixedVector< FixedVector< DoubleVect, 2 >, MAX_ORDER_DERIVATIVE > &fd_operator) |
| void | set_operators_indices (const std::vector< std::vector< double > > &fd_operator_vector, FixedVector< FixedVector< DoubleVect, 2 >, MAX_ORDER_DERIVATIVE > &fd_operator, const int &fd_coefficient_type) |
| int | non_zero_stencil_values (const FixedVector< FixedVector< DoubleVect, 2 >, MAX_ORDER_DERIVATIVE > &fd_operator) |
| int | get_max_operators (const FixedVector< FixedVector< DoubleVect, 2 >, MAX_ORDER_DERIVATIVE > &fd_operator_conv, const FixedVector< FixedVector< DoubleVect, 2 >, MAX_ORDER_DERIVATIVE > &fd_operator_diff, int(&stencil_left_offset)[3], int(&stencil_right_offset)[3]) |
| void | get_max_stencil (const int &nb_elem, int &non_zero_elem_max, int &stencil_forward_max, int &stencil_centred_max, int &stencil_backward_max) |
| void | compute_stencil_properties (const int nb_elem) |
| void | fill_lines (Matrice &matrix) |
| | 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).
|
|
| FixedVector< FixedVector< DoubleVect, 2 >, MAX_ORDER_DERIVATIVE > | identity_coefficient_ |
| const std::vector< std::vector< double > > | first_order_derivative_forward_vector_ |
| FixedVector< FixedVector< DoubleVect, 2 >, MAX_ORDER_DERIVATIVE > | first_order_derivative_forward_ |
| const std::vector< std::vector< double > > | first_order_derivative_centred_vector_ |
| FixedVector< FixedVector< DoubleVect, 2 >, MAX_ORDER_DERIVATIVE > | first_order_derivative_centred_ |
| const std::vector< std::vector< double > > | first_order_derivative_backward_vector_ |
| FixedVector< FixedVector< DoubleVect, 2 >, MAX_ORDER_DERIVATIVE > | first_order_derivative_backward_ |
| const std::vector< std::vector< double > > | second_order_derivative_forward_vector_ |
| FixedVector< FixedVector< DoubleVect, 2 >, MAX_ORDER_DERIVATIVE > | second_order_derivative_forward_ |
| const std::vector< std::vector< double > > | second_order_derivative_centred_vector_ |
| FixedVector< FixedVector< DoubleVect, 2 >, MAX_ORDER_DERIVATIVE > | second_order_derivative_centred_ |
| const std::vector< std::vector< double > > | second_order_derivative_backward_vector_ |
| FixedVector< FixedVector< DoubleVect, 2 >, MAX_ORDER_DERIVATIVE > | second_order_derivative_backward_ |
| int | precision_order_ = 2 |
| bool | reduce_side_precision_ = false |
| int | core_matrix_type_ = centred |
| int | equation_type_ = advection_diffusion |
| int | nb_elem_ = 0 |
| int | non_zero_elem_ = 0 |
| int | stencil_forward_max_ = 0 |
| int | stencil_centred_max_ = 0 |
| int | stencil_backward_max_ = 0 |
| int | forward_left_offset_ [3] = {0, 0, 0} |
| int | forward_right_offset_ [3] = {0, 0, 0} |
| int | centred_left_offset_ [3] = {0, 0, 0} |
| int | centred_right_offset_ [3] = {0, 0, 0} |
| int | backward_left_offset_ [3] = {0, 0, 0} |
| int | backward_right_offset_ [3] = {0, 0, 0} |
| bool | computed_stencil_ = false |
| int | known_pattern_ =1 |
|
| 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 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 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 int | exception_sur_exit =0 |
| static int | multiple_files =5120 |