|
TRUST 1.9.8
HPC thermohydraulic platform
|
Classe Matrice_Morse_Sym Represente une matrice M (creuse) symetrique stockee au format Morse. More...
#include <Matrice_Morse_Sym.h>
Public Member Functions | |
| Matrice_Morse_Sym (int n1=1, int n2=1) | |
| Matrice_Morse_Sym (int, int, const IntLists &, const DoubleLists &, const DoubleVect &) | |
| Constructeur d'une Matrice_Morse_Sym comportant n1 lignes et pouvant stocker n2 elements non-nuls (au maximum). | |
| Matrice_Morse_Sym (const Matrice &) | |
| Matrice_Morse_Sym (const Matrice_Morse &) | |
| Constructeur d'une Matrice_Morse_Sym par copie d'une Matrice_Morse. | |
| Matrice_Morse_Sym (const Matrice_Morse_Sym &) | |
| Constructeur d'une Matrice_Morse_Sym par copie d'une Matrice_Morse. | |
| Matrice_Morse_Sym & | operator= (const Matrice_Morse_Sym &) |
| Operateur d'affectatiob d'une Matrice_Morse_Sym dans une Matrice_Morse_Sym. | |
| Matrice_Morse_Sym & | operator= (const Matrice_Morse &) |
| Matrice_Morse_Sym & | operator= (const Matrice &) |
| Matrice_Morse_Sym & | operator*= (double) |
| NE FAIT RIEN : NON CODE. | |
| void | scale (const double x) override |
| void | get_stencil (Stencil &stencil) const override |
| void | get_symmetric_stencil (Stencil &stencil) const override |
| void | get_stencil_and_coefficients (Stencil &stencil, StencilCoeffs &coefficients) const override |
| void | get_symmetric_stencil_and_coefficients (Stencil &stencil, StencilCoeffs &coefficients) const override |
| Matrice_Morse_Sym | operator- () const |
| Operateur de negation unaire, renvoie l'opposee de la matrice: - A. | |
| DoubleTab & | ajouter_multTab_ (const DoubleTab &, DoubleTab &) const override |
| Operation de multiplication-accumulation (saxpy) matrice matrice (matrice represente par un tableau). | |
| DoubleVect & | ajouter_multvect_ (const DoubleVect &, DoubleVect &) const override |
| Operation de multiplication-accumulation (saxpy) matrice vecteur. | |
| DoubleVect & | ajouter_multvectT_ (const DoubleVect &, DoubleVect &) const override |
| Operation de multiplication-accumulation (saxpy) matrice vecteur, par la matrice transposee. | |
| virtual double | multvect_et_prodscal (const DoubleVect &, DoubleVect &) const |
| int | inverse (const DoubleVect &, DoubleVect &, double) const override |
| Calcule la solution du systeme lineaire: A * solution = secmem. | |
| int | inverse (const DoubleVect &, DoubleVect &, double, int) const override |
| Sortie & | imprimer_formatte (Sortie &s) const override |
| void | compacte (int elim_coeff_nul=0) |
| Suppression des doublons on ordonne tab2;. | |
| void | renumerote () const |
| Renumerotation d'une matrice afin de reduire la largeur de bande. | |
| Matrice & | matrice_renumerotee () |
| Matrice & | matrice_renumerotee () const |
| ArrOfInt & | permutation () |
| ArrOfInt & | permutation_inverse () |
| ArrOfInt & | permutation () const |
| ArrOfInt & | permutation_inverse () const |
| bool | check_symmetric_morse_matrix_structure () const |
| bool | check_sorted_symmetric_morse_matrix_structure () const |
| void | assert_check_symmetric_morse_matrix_structure () const |
| void | assert_check_sorted_symmetric_morse_matrix_structure () const |
| Public Member Functions inherited from Matrice_Morse | |
| Matrice_Morse () | |
| template<typename _SIZE_> | |
| Matrice_Morse (int n, _SIZE_ nnz) | |
| Constructeur d'une matrice Morse carree d'ordre n et pouvant stocker au maximum nnz elements non nuls. | |
| template<typename _SIZE_> | |
| Matrice_Morse (int n, int m, _SIZE_ nnz) | |
| Constructeur d'une matrice Morse avec n lignes et m colonnes pouvant stocker au maximum nnz elements non nuls. | |
| Matrice_Morse (const Matrice_Morse &) | |
| Constructeur par copie d'une Matrice_Morse. | |
| Matrice_Morse (int, int, const IntLists &, const DoubleLists &, const DoubleVect &) | |
| Sortie & | imprimer (Sortie &s) const override |
| Sortie & | imprimer_formatte (Sortie &s, int symetrie) const |
| Sortie & | imprimer_image (Sortie &s) const |
| Sortie & | imprimer_image (Sortie &s, int symetrie) const |
| void | WriteFileMTX (const Nom &) const |
| int | largeur_de_bande () const |
| Calcule la largeur de bande d'une matrice morse. | |
| void | remplir (const IntLists &, const DoubleLists &, const DoubleVect &) |
| void | remplir (const IntLists &, const DoubleLists &) |
| void | remplir (const int, const int, const int, const int, const Matrice_Morse &) |
| Remplissage d'une matrice morse par une matrice morse plus petite. | |
| template<typename _SIZE_> | |
| void | dimensionner (int n, _SIZE_ nnz) |
| Size the matrix with n lines and n columns and nnz zero-values coefficients. | |
| template<typename _SIZE_> | |
| void | dimensionner (int n, int m, _SIZE_ nnz) |
| Size the matrix with n lines, m columns with nnz zero-values coefficients. | |
| void | dimensionner (const IntTab &) |
| Redimensionne la matrice creuse en ajoutant eventuellement des coefficients non nuls. | |
| int | ordre () const override |
| Renvoie l'ordre de la matrice: - le nombre de lignes si la matrice est carree. | |
| int | nb_lignes () const override |
| Return local number of lines (=size on the current proc). | |
| int | nb_colonnes () const override |
| Return local number of columns (=size on the current proc). | |
| auto | nb_coeff () const |
| void | set_nb_columns (const int) |
| void | set_symmetric (const int) |
| int | get_symmetric () const |
| auto & | get_set_tab1 () |
| auto & | get_set_tab2 () |
| auto & | get_set_coeff () |
| const auto & | get_tab1 () const |
| const auto & | get_tab2 () const |
| const auto & | get_coeff () const |
| int | nb_vois (int i) const |
| void | clean () override |
| Remplit la matrice avec des zeros. | |
| double & | operator() (int i, int j) |
| double | operator() (int i, int j) const |
| double | coef (int i, int j) const |
| double & | coef (int i, int j) |
| Matrice_Morse & | operator= (const Matrice_Morse &) |
| Operateur d'affectation d'une Matrice_Morse dans une autre Matrice_Morse. | |
| Matrice_Morse & | operator+= (const Matrice_Morse &) |
| NE FAIT RIEN. | |
| Matrice_Morse & | operator*= (double) |
| Operateur de multiplication (de tous les elements) d'une matrice par un scalaire. | |
| void | get_stencil_and_coeff_ptrs (Stencil &stencil, std::vector< const double * > &coeff_ptr) const override |
| Matrice_Morse & | operator/= (double) |
| Operateur de division (de tous les elements) d'une matrice par un scalaire. | |
| Matrice_Morse & | operator*= (const DoubleVect &) |
| Operateur de multiplication d'une matrice par un vecteur: scaling des lignes de la matrice par les coefficients. | |
| Matrice_Morse | operator- () const |
| Operateur de negation unaire, renvoie l'opposee de la matrice: - A Appelle operator*(double,const Matrice_Morse&). | |
| Matrice_Morse & | affecte_prod (const Matrice_Morse &A, const Matrice_Morse &B) |
| Affecte le produit de 2 matrices Morse A et B a l'objet (this). | |
| void | compacte (int elim_coeff_nul=0) |
| Method to check/clean the Matrice_Morse matrix: -Suppress coefficient defined several times. | |
| ArrOfDouble & | ajouter_multvect_ (const ArrOfDouble &, ArrOfDouble &, ArrOfInt &) const |
| ArrOfDouble & | ajouter_multvectT_ (const ArrOfDouble &, ArrOfDouble &, ArrOfInt &) const |
| virtual Matrice_Morse & | transpose (const Matrice_Morse &a) |
| *this = a transposee. | |
| virtual Matrice_Morse & | diagmulmat (const DoubleVect &x) |
| virtual Matrice_Morse & | partie_sup (const Matrice_Morse &a) |
| void | unite () |
| Initialisation a la matrice unite (modif MT). | |
| void | construire_sous_bloc (int nl0, int nc0, int nl1, int nc1, Matrice_Morse &result) const |
| void | formeC () |
| void | formeF () |
| bool | has_same_morse_matrix_structure (const Matrice_Morse &) const |
| bool | check_morse_matrix_structure () const |
| bool | check_sorted_morse_matrix_structure () const |
| void | assert_check_morse_matrix_structure () const |
| void | assert_check_sorted_morse_matrix_structure () const |
| void | sort_stencil () |
| bool & | constant_stencil () const |
| bool | is_sorted_stencil () const |
| bool | is_diagonal () |
| void | set_tab1_int32 () const |
| const IntVect & | get_tab1_int32 () const |
| void | set_tab1 (const IntVect &tab1_int32) |
| Public Member Functions inherited from Matrice_Base | |
| virtual DoubleVect & | ajouter_multvect (const DoubleVect &x, DoubleVect &r) const |
| Operation de multiplication-accumulation (saxpy) matrice vecteur. | |
| virtual DoubleVect & | ajouter_multvectT (const DoubleVect &x, DoubleVect &r) const |
| Operation de multiplication-accumulation (saxpy) matrice vecteur. | |
| virtual DoubleTab & | ajouter_multTab (const DoubleTab &, DoubleTab &r) const |
| NON CODE Operation de multiplication-accumulation (saxpy) matrice matrice. | |
| virtual DoubleVect & | multvect_ (const DoubleVect &, DoubleVect &) const |
| virtual DoubleVect & | multvect (const DoubleVect &, DoubleVect &) const |
| Multiplication d'un vecteur par la matrice. | |
| virtual DoubleVect & | multvectT_ (const DoubleVect &, DoubleVect &) const |
| virtual DoubleVect & | multvectT (const DoubleVect &, DoubleVect &) const |
| Multiplication d'un vecteur par la matrice transposee. | |
| virtual DoubleTab & | multTab (const DoubleTab &, DoubleTab &r) const |
| NON CODE Multiplication d'une matrice representee par un tableau par la matrice. | |
| int | get_stencil_size () const |
| virtual void | build_stencil () |
| void | set_stencil (const Stencil &stencil) |
| bool | is_stencil_up_to_date () const |
| 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. | |
| 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 () |
| Public Member Functions inherited from Process | |
| virtual | ~Process () |
| Public Member Functions inherited from Matrice_Sym | |
| virtual | ~Matrice_Sym () |
| Matrice_Sym () | |
| int | get_est_definie () const |
| void | set_est_definie (int) |
| void | unsymmetrize_stencil (const int nb_lines, const Stencil &symmetric_stencil, Stencil &stencil) const |
| void | unsymmetrize_stencil_and_coefficients (const int nb_lines, const Stencil &symmetric_stencil, const StencilCoeffs &symmetric_coefficients, Stencil &stencil, StencilCoeffs &coefficients) const |
Friends | |
| Matrice_Morse_Sym | operator+ (const Matrice_Morse_Sym &A, const Matrice_Morse_Sym &B) |
| Fonction (hors classe) amie de la classe Matrice_Morse_Sym NE FAIT RIEN : NON CODE. | |
| Matrice_Morse_Sym | operator* (const Matrice_Morse_Sym &A, double x) |
| Fonction (hors classe) amie de la classe Matrice_Morse_Sym Simple appel a operator*(double,const Matrice_Morse_Sym&) (qui est NON CODE). | |
| Matrice_Morse_Sym | operator* (double x, const Matrice_Morse_Sym &A) |
| Fonction (hors classe) amie de la classe Matrice_Morse_Sym NE FAIT RIEN : NON CODE. | |
Additional Inherited Members | |
| 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) |
| Public Attributes inherited from Matrice_Morse | |
| int | sorted_ |
| 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 Matrice_Morse | |
| template<typename _TAB_T_, typename _VALUE_T_> | |
| void | get_stencil_coeff_templ (Stencil &stencil, _TAB_T_ &coeffs_span) const |
| 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). | |
| virtual void | set_param (Param &) const |
| Protected Attributes inherited from Matrice_Morse | |
| IntVect | tab1_ |
| IntVect | tab2_ |
| DoubleVect | coeff_ |
| int | morse_matrix_structure_has_changed_ =-1 |
| int | m_ |
| int | symetrique_ |
| Protected Attributes inherited from Matrice_Base | |
| bool | is_stencil_up_to_date_ = false |
| Stencil | stencil_ |
Classe Matrice_Morse_Sym Represente une matrice M (creuse) symetrique stockee au format Morse.
Symetrique: on ne stocke que la partie triangulaire superieure de la matrice. Important: Tous les coefficients diagonaux doivent etre stockes meme s'ils sont nuls (hypothese TRUST pour plusieurs methodes dont multvect). Cette classe derive de Matrice_Morse et Matrice_Sym.
Definition at line 33 of file Matrice_Morse_Sym.h.
|
inline |
Definition at line 41 of file Matrice_Morse_Sym.h.
| Matrice_Morse_Sym::Matrice_Morse_Sym | ( | int | n1, |
| int | n2, | ||
| const IntLists & | voisins, | ||
| const DoubleLists & | valeurs, | ||
| const DoubleVect & | terme_diag ) |
Constructeur d'une Matrice_Morse_Sym comportant n1 lignes et pouvant stocker n2 elements non-nuls (au maximum).
Les elements de la matrice et la table des connectivites sont donnes dans les 3 derniers parametres.
| (int | n1) le nombre de ligne de la matrice |
| (int | n2) le nombre d'element non nuls stockable par la matrice |
| (IntLists& | voisins) liste des voisins de chaque lignes |
| (DoubleLists& | valeurs) liste des valeurs |
| (DoubleVect& | terme_diag) le vecteur des termes diagonaux |
Definition at line 63 of file Matrice_Morse_Sym.cpp.
| Matrice_Morse_Sym::Matrice_Morse_Sym | ( | const Matrice & | A | ) |
Definition at line 86 of file Matrice_Morse_Sym.cpp.
| Matrice_Morse_Sym::Matrice_Morse_Sym | ( | const Matrice_Morse & | A | ) |
Constructeur d'une Matrice_Morse_Sym par copie d'une Matrice_Morse.
| (Matrice_Morse& | acopier) la matrice a copier |
Definition at line 78 of file Matrice_Morse_Sym.cpp.
| Matrice_Morse_Sym::Matrice_Morse_Sym | ( | const Matrice_Morse_Sym & | acopier | ) |
Constructeur d'une Matrice_Morse_Sym par copie d'une Matrice_Morse.
| (Matrice_Morse& | acopier) la matrice a copier |
Definition at line 124 of file Matrice_Morse_Sym.cpp.
|
overridevirtual |
Operation de multiplication-accumulation (saxpy) matrice matrice (matrice represente par un tableau).
Operation: RESU = RESU + A*X
| (DoubleTab& | x) la matrice a multiplier |
| (DoubleTab& | resu) la matrice resultat de l'operation |
| taille | du resultat incompatible avec la taille de x |
Reimplemented from Matrice_Morse.
Definition at line 141 of file Matrice_Morse_Sym.cpp.
|
overridevirtual |
Operation de multiplication-accumulation (saxpy) matrice vecteur.
Operation: resu = resu + A*x
| (DoubleVect& | x) le vecteur a multiplier |
| (DoubleVect& | resu) le vecteur resultat de l'operation |
Reimplemented from Matrice_Morse.
Definition at line 235 of file Matrice_Morse_Sym.cpp.
|
overridevirtual |
Operation de multiplication-accumulation (saxpy) matrice vecteur, par la matrice transposee.
Operation: resu = resu + A^{T}*x
| (DoubleVect& | x) le vecteur a multiplier |
| (DoubleVect& | resu) le vecteur resultat de l'operation |
Reimplemented from Matrice_Morse.
Definition at line 334 of file Matrice_Morse_Sym.cpp.
| void Matrice_Morse_Sym::assert_check_sorted_symmetric_morse_matrix_structure | ( | ) | const |
Definition at line 946 of file Matrice_Morse_Sym.cpp.
| void Matrice_Morse_Sym::assert_check_symmetric_morse_matrix_structure | ( | ) | const |
Definition at line 931 of file Matrice_Morse_Sym.cpp.
| bool Matrice_Morse_Sym::check_sorted_symmetric_morse_matrix_structure | ( | ) | const |
Definition at line 904 of file Matrice_Morse_Sym.cpp.
| bool Matrice_Morse_Sym::check_symmetric_morse_matrix_structure | ( | ) | const |
Definition at line 877 of file Matrice_Morse_Sym.cpp.
| void Matrice_Morse_Sym::compacte | ( | int | elim_coeff_nul = 0 | ) |
Suppression des doublons on ordonne tab2;.
Verification de la diagonale: tous ses elements doivent etre stockes
Definition at line 737 of file Matrice_Morse_Sym.cpp.
|
overridevirtual |
Reimplemented from Matrice_Morse.
Definition at line 519 of file Matrice_Morse_Sym.cpp.
|
overridevirtual |
Reimplemented from Matrice_Morse.
Definition at line 569 of file Matrice_Morse_Sym.cpp.
|
overridevirtual |
Reimplemented from Matrice_Base.
Definition at line 531 of file Matrice_Morse_Sym.cpp.
|
overridevirtual |
Reimplemented from Matrice_Base.
Definition at line 586 of file Matrice_Morse_Sym.cpp.
Reimplemented from Matrice_Morse.
Definition at line 727 of file Matrice_Morse_Sym.cpp.
|
overridevirtual |
Calcule la solution du systeme lineaire: A * solution = secmem.
La methode utilisee est GMRES preconditionnee avec ILUT. ATTENTION: cette methode n'a vraisemblablement jamais ete testee en parallele
| (DoubleVect& | secmem) le second membre du systeme lineaire |
| (DoubleVect& | solution) la solution du systeme |
| (double | coeff_seuil) |
| Erreur | dans ilut 'matrix may be wrong' dixit SAAD |
| Erreur | dans ilut : debordement dans L |
| Erreur | dans ilut : debordement dans U |
| Valeur | illegale de lfil : sans doute ecrasement memoire |
| Ligne | vide rencontree |
| Pivot | nul rencontre ! au pas |
| Il | s'est passe quelque chose de bizarre : je prefere tout arreter. |
Reimplemented from Matrice_Morse.
Definition at line 711 of file Matrice_Morse_Sym.cpp.
|
overridevirtual |
Reimplemented from Matrice_Morse.
Definition at line 719 of file Matrice_Morse_Sym.cpp.
|
inline |
Definition at line 81 of file Matrice_Morse_Sym.h.
|
inline |
Definition at line 82 of file Matrice_Morse_Sym.h.
|
virtual |
Definition at line 178 of file Matrice_Morse_Sym.cpp.
| Matrice_Morse_Sym & Matrice_Morse_Sym::operator*= | ( | double | x | ) |
NE FAIT RIEN : NON CODE.
| (double) |
| NON | CODE |
Definition at line 508 of file Matrice_Morse_Sym.cpp.
| Matrice_Morse_Sym Matrice_Morse_Sym::operator- | ( | ) | const |
Operateur de negation unaire, renvoie l'opposee de la matrice: - A.
Appelle operator*(const Matrice_Morse_Sym&,double)
Definition at line 651 of file Matrice_Morse_Sym.cpp.
| Matrice_Morse_Sym & Matrice_Morse_Sym::operator= | ( | const Matrice & | A | ) |
Definition at line 109 of file Matrice_Morse_Sym.cpp.
| Matrice_Morse_Sym & Matrice_Morse_Sym::operator= | ( | const Matrice_Morse & | A | ) |
Definition at line 96 of file Matrice_Morse_Sym.cpp.
| Matrice_Morse_Sym & Matrice_Morse_Sym::operator= | ( | const Matrice_Morse_Sym & | a | ) |
Operateur d'affectatiob d'une Matrice_Morse_Sym dans une Matrice_Morse_Sym.
| (Matrice_Morse_Sym& | a) la partie droite de l'affectation |
Definition at line 693 of file Matrice_Morse_Sym.cpp.
|
inline |
Definition at line 83 of file Matrice_Morse_Sym.h.
|
inline |
Definition at line 85 of file Matrice_Morse_Sym.h.
|
inline |
Definition at line 84 of file Matrice_Morse_Sym.h.
|
inline |
Definition at line 86 of file Matrice_Morse_Sym.h.
| void Matrice_Morse_Sym::renumerote | ( | ) | const |
Renumerotation d'une matrice afin de reduire la largeur de bande.
Definition at line 790 of file Matrice_Morse_Sym.cpp.
|
overridevirtual |
Reimplemented from Matrice_Morse.
Definition at line 514 of file Matrice_Morse_Sym.cpp.
|
friend |
Fonction (hors classe) amie de la classe Matrice_Morse_Sym Simple appel a operator*(double,const Matrice_Morse_Sym&) (qui est NON CODE).
| (Matrice_Morse_Sym& | A) la matrice a multiplier par x |
| (double | x) un scalaire |
Definition at line 496 of file Matrice_Morse_Sym.cpp.
|
friend |
Fonction (hors classe) amie de la classe Matrice_Morse_Sym NE FAIT RIEN : NON CODE.
| (double) | |
| (Matrice_Morse_Sym& | A) |
| NON | CODE |
Definition at line 481 of file Matrice_Morse_Sym.cpp.
|
friend |
Fonction (hors classe) amie de la classe Matrice_Morse_Sym NE FAIT RIEN : NON CODE.
| (Matrice_Morse_Sym&) | |
| (Matrice_Morse_Sym&) |
Definition at line 348 of file Matrice_Morse_Sym.cpp.