|
| 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 |
| | 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 const Nom & | le_nom () const |
| | Returns the name of the Objet_U. Virtual method to override: returns "neant" in this implementation.
|
| virtual void | nommer (const Nom &) |
| | Assigns a name to the Objet_U. Virtual method to override.
|
| 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 () |
| 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 () |
| | 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).
|
|
| 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 () |
| | 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 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 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 |