Matrice_Base#
#include <Matrice_Base.h>
Classe Matrice_Base Classe de base de la hierarchie des matrices.
How to cite this class in this doc#
:ref:`Matrice\_Base <class-matrice-base>`
[Matrice\_Base](#class-matrice-base)
Detailed description#
Cette classe definie l’interface generique d’une matrice telle qu’elle est utilisee dans Trio - U. En consequence elle n’est pas instanciable. Toutes les types de matrices devront deriver de cette classe de base et implementer ses methodes abstraites. Dans les commentaires des methodes A represente un objet Matrice_base.
Inherits from#
public : Objet_U
Inherited by#
public : Matrice_Bloc
public : Matrice_Dense
public : Matrice_Diagonale
public : Matrice_Morse
public : Matrice_Nulle
public : Matrice_Petsc
List of Public Methods#
List of Public Static Methods#
List of Protected Methods#
Complete Member Function Documentation#
DoubleTab & Matrice_Base::ajouter_multTab(const DoubleTab &, DoubleTab &r) const
NON CODE Operation de multiplication - accumulation (saxpy) matrice matrice.
(matrice represente par un tableau) Operation: R = R + A*X
How to cite in this doc:
:ref:`DoubleTab & Matrice_Base::ajouter_multTab(const DoubleTab &, DoubleTab &r) const <public-doubletab-ref-matrice-base-ajouter-multtab-const-doubletab-ref-doubletab-ref-r-const>`
[DoubleTab & Matrice_Base::ajouter_multTab(const DoubleTab &, DoubleTab &r) const](#public-doubletab-ref-matrice-base-ajouter-multtab-const-doubletab-ref-doubletab-ref-r-const)
virtual DoubleTab & Matrice_Base::ajouter_multTab_(const DoubleTab &x, DoubleTab &r) const =0
Referenced By
How to cite in this doc:
:ref:`virtual DoubleTab & Matrice_Base::ajouter_multTab_(const DoubleTab &x, DoubleTab &r) const =0 <public-virtual-doubletab-ref-matrice-base-ajouter-multtab-underscore-const-doubletab-ref-x-doubletab-ref-r-const-equal-0>`
[virtual DoubleTab & Matrice_Base::ajouter_multTab_(const DoubleTab &x, DoubleTab &r) const =0](#public-virtual-doubletab-ref-matrice-base-ajouter-multtab-underscore-const-doubletab-ref-x-doubletab-ref-r-const-equal-0)
DoubleVect & Matrice_Base::ajouter_multvect(const DoubleVect &x, DoubleVect &r) const
Operation de multiplication - accumulation (saxpy) matrice vecteur.
Operation: r = r + A*x
Referenced By
How to cite in this doc:
:ref:`DoubleVect & Matrice_Base::ajouter_multvect(const DoubleVect &x, DoubleVect &r) const <public-doublevect-ref-matrice-base-ajouter-multvect-const-doublevect-ref-x-doublevect-ref-r-const>`
[DoubleVect & Matrice_Base::ajouter_multvect(const DoubleVect &x, DoubleVect &r) const](#public-doublevect-ref-matrice-base-ajouter-multvect-const-doublevect-ref-x-doublevect-ref-r-const)
virtual DoubleVect & Matrice_Base::ajouter_multvect_(const DoubleVect &x, DoubleVect &r) const =0
Referenced By
How to cite in this doc:
:ref:`virtual DoubleVect & Matrice_Base::ajouter_multvect_(const DoubleVect &x, DoubleVect &r) const =0 <public-virtual-doublevect-ref-matrice-base-ajouter-multvect-underscore-const-doublevect-ref-x-doublevect-ref-r-const-equal-0>`
[virtual DoubleVect & Matrice_Base::ajouter_multvect_(const DoubleVect &x, DoubleVect &r) const =0](#public-virtual-doublevect-ref-matrice-base-ajouter-multvect-underscore-const-doublevect-ref-x-doublevect-ref-r-const-equal-0)
DoubleVect & Matrice_Base::ajouter_multvectT(const DoubleVect &x, DoubleVect &r) const
Operation de multiplication - accumulation (saxpy) matrice vecteur.
Operation: r = r + A*x
Referenced By
How to cite in this doc:
:ref:`DoubleVect & Matrice_Base::ajouter_multvectT(const DoubleVect &x, DoubleVect &r) const <public-doublevect-ref-matrice-base-ajouter-multvectt-const-doublevect-ref-x-doublevect-ref-r-const>`
[DoubleVect & Matrice_Base::ajouter_multvectT(const DoubleVect &x, DoubleVect &r) const](#public-doublevect-ref-matrice-base-ajouter-multvectt-const-doublevect-ref-x-doublevect-ref-r-const)
virtual DoubleVect & Matrice_Base::ajouter_multvectT_(const DoubleVect &x, DoubleVect &r) const =0
Referenced By
How to cite in this doc:
:ref:`virtual DoubleVect & Matrice_Base::ajouter_multvectT_(const DoubleVect &x, DoubleVect &r) const =0 <public-virtual-doublevect-ref-matrice-base-ajouter-multvectt-underscore-const-doublevect-ref-x-doublevect-ref-r-const-equal-0>`
[virtual DoubleVect & Matrice_Base::ajouter_multvectT_(const DoubleVect &x, DoubleVect &r) const =0](#public-virtual-doublevect-ref-matrice-base-ajouter-multvectt-underscore-const-doublevect-ref-x-doublevect-ref-r-const-equal-0)
void Matrice_Base::build_stencil()
References
How to cite in this doc:
:ref:`void Matrice_Base::build_stencil() <public-void-matrice-base-build-stencil>`
[void Matrice_Base::build_stencil()](#public-void-matrice-base-build-stencil)
virtual void Matrice_Base::clean()
References
Referenced By
How to cite in this doc:
:ref:`virtual void Matrice_Base::clean() <public-virtual-void-matrice-base-clean>`
[virtual void Matrice_Base::clean()](#public-virtual-void-matrice-base-clean)
const Type_info * Matrice_Base::get_info() const override
Donne des informations sur le type de l’ Objet_U .
Reimplements:
How to cite in this doc:
:ref:`const Type_info * Matrice_Base::get_info() const override <public-const-type-info-ptr-matrice-base-get-info-const-override>`
[const Type_info * Matrice_Base::get_info() const override](#public-const-type-info-ptr-matrice-base-get-info-const-override)
void Matrice_Base::get_stencil(IntTab &stencil) const
References
Referenced By
How to cite in this doc:
:ref:`void Matrice_Base::get_stencil(IntTab &stencil) const <public-void-matrice-base-get-stencil-inttab-ref-stencil-const>`
[void Matrice_Base::get_stencil(IntTab &stencil) const](#public-void-matrice-base-get-stencil-inttab-ref-stencil-const)
void Matrice_Base::get_stencil_and_coeff_ptrs(IntTab &stencil, std::vector< const double * > &coeff_ptr) const
References
Referenced By
How to cite in this doc:
:ref:`void Matrice_Base::get_stencil_and_coeff_ptrs(IntTab &stencil, std::vector< const double * > &coeff_ptr) const <public-void-matrice-base-get-stencil-and-coeff-ptrs-inttab-ref-stencil-std-vector-const-double-ptr-ref-coeff-ptr-const>`
[void Matrice_Base::get_stencil_and_coeff_ptrs(IntTab &stencil, std::vector< const double * > &coeff_ptr) const](#public-void-matrice-base-get-stencil-and-coeff-ptrs-inttab-ref-stencil-std-vector-const-double-ptr-ref-coeff-ptr-const)
void Matrice_Base::get_stencil_and_coefficients(IntTab &stencil, ArrOfDouble &coefficients) const
References
Referenced By
How to cite in this doc:
:ref:`void Matrice_Base::get_stencil_and_coefficients(IntTab &stencil, ArrOfDouble &coefficients) const <public-void-matrice-base-get-stencil-and-coefficients-inttab-ref-stencil-arrofdouble-ref-coefficients-const>`
[void Matrice_Base::get_stencil_and_coefficients(IntTab &stencil, ArrOfDouble &coefficients) const](#public-void-matrice-base-get-stencil-and-coefficients-inttab-ref-stencil-arrofdouble-ref-coefficients-const)
int Matrice_Base::get_stencil_size() const
References
How to cite in this doc:
:ref:`int Matrice_Base::get_stencil_size() const <public-int-matrice-base-get-stencil-size-const>`
[int Matrice_Base::get_stencil_size() const](#public-int-matrice-base-get-stencil-size-const)
void Matrice_Base::get_symmetric_stencil(IntTab &stencil) const
Referenced By
How to cite in this doc:
:ref:`void Matrice_Base::get_symmetric_stencil(IntTab &stencil) const <public-void-matrice-base-get-symmetric-stencil-inttab-ref-stencil-const>`
[void Matrice_Base::get_symmetric_stencil(IntTab &stencil) const](#public-void-matrice-base-get-symmetric-stencil-inttab-ref-stencil-const)
void Matrice_Base::get_symmetric_stencil_and_coefficients(IntTab &stencil, ArrOfDouble &coefficients) const
References
Referenced By
How to cite in this doc:
:ref:`void Matrice_Base::get_symmetric_stencil_and_coefficients(IntTab &stencil, ArrOfDouble &coefficients) const <public-void-matrice-base-get-symmetric-stencil-and-coefficients-inttab-ref-stencil-arrofdouble-ref-coefficients-const>`
[void Matrice_Base::get_symmetric_stencil_and_coefficients(IntTab &stencil, ArrOfDouble &coefficients) const](#public-void-matrice-base-get-symmetric-stencil-and-coefficients-inttab-ref-stencil-arrofdouble-ref-coefficients-const)
Sortie & Matrice_Base::imprimer(Sortie &) const
Referenced By
How to cite in this doc:
:ref:`Sortie & Matrice_Base::imprimer(Sortie &) const <public-sortie-ref-matrice-base-imprimer-sortie-ref-const>`
[Sortie & Matrice_Base::imprimer(Sortie &) const](#public-sortie-ref-matrice-base-imprimer-sortie-ref-const)
Sortie & Matrice_Base::imprimer_formatte(Sortie &s) const
Referenced By
How to cite in this doc:
:ref:`Sortie & Matrice_Base::imprimer_formatte(Sortie &s) const <public-sortie-ref-matrice-base-imprimer-formatte-sortie-ref-s-const>`
[Sortie & Matrice_Base::imprimer_formatte(Sortie &s) const](#public-sortie-ref-matrice-base-imprimer-formatte-sortie-ref-s-const)
bool Matrice_Base::is_stencil_up_to_date() const
References
Referenced By
How to cite in this doc:
:ref:`bool Matrice_Base::is_stencil_up_to_date() const <public-bool-matrice-base-is-stencil-up-to-date-const>`
[bool Matrice_Base::is_stencil_up_to_date() const](#public-bool-matrice-base-is-stencil-up-to-date-const)
Matrice_Base::Matrice_Base()
How to cite in this doc:
:ref:`Matrice_Base::Matrice_Base() <public-matrice-base-matrice-base>`
[Matrice_Base::Matrice_Base()](#public-matrice-base-matrice-base)
DoubleTab & Matrice_Base::multTab(const DoubleTab &, DoubleTab &r) const
NON CODE Multiplication d’une matrice representee par un tableau par la matrice.
Operation: R = A*X
How to cite in this doc:
:ref:`DoubleTab & Matrice_Base::multTab(const DoubleTab &, DoubleTab &r) const <public-doubletab-ref-matrice-base-multtab-const-doubletab-ref-doubletab-ref-r-const>`
[DoubleTab & Matrice_Base::multTab(const DoubleTab &, DoubleTab &r) const](#public-doubletab-ref-matrice-base-multtab-const-doubletab-ref-doubletab-ref-r-const)
DoubleVect & Matrice_Base::multvect(const DoubleVect &, DoubleVect &) const
Multiplication d’un vecteur par la matrice.
Operation: r = A*x
Referenced By
How to cite in this doc:
:ref:`DoubleVect & Matrice_Base::multvect(const DoubleVect &, DoubleVect &) const <public-doublevect-ref-matrice-base-multvect-const-doublevect-ref-doublevect-ref-const>`
[DoubleVect & Matrice_Base::multvect(const DoubleVect &, DoubleVect &) const](#public-doublevect-ref-matrice-base-multvect-const-doublevect-ref-doublevect-ref-const)
DoubleVect & Matrice_Base::multvect_(const DoubleVect &, DoubleVect &) const
References
Referenced By
How to cite in this doc:
:ref:`DoubleVect & Matrice_Base::multvect_(const DoubleVect &, DoubleVect &) const <public-doublevect-ref-matrice-base-multvect-underscore-const-doublevect-ref-doublevect-ref-const>`
[DoubleVect & Matrice_Base::multvect_(const DoubleVect &, DoubleVect &) const](#public-doublevect-ref-matrice-base-multvect-underscore-const-doublevect-ref-doublevect-ref-const)
DoubleVect & Matrice_Base::multvectT(const DoubleVect &, DoubleVect &) const
Multiplication d’un vecteur par la matrice transposee.
Operation: r = AT*x
Referenced By
How to cite in this doc:
:ref:`DoubleVect & Matrice_Base::multvectT(const DoubleVect &, DoubleVect &) const <public-doublevect-ref-matrice-base-multvectt-const-doublevect-ref-doublevect-ref-const>`
[DoubleVect & Matrice_Base::multvectT(const DoubleVect &, DoubleVect &) const](#public-doublevect-ref-matrice-base-multvectt-const-doublevect-ref-doublevect-ref-const)
DoubleVect & Matrice_Base::multvectT_(const DoubleVect &, DoubleVect &) const
References
Referenced By
How to cite in this doc:
:ref:`DoubleVect & Matrice_Base::multvectT_(const DoubleVect &, DoubleVect &) const <public-doublevect-ref-matrice-base-multvectt-underscore-const-doublevect-ref-doublevect-ref-const>`
[DoubleVect & Matrice_Base::multvectT_(const DoubleVect &, DoubleVect &) const](#public-doublevect-ref-matrice-base-multvectt-underscore-const-doublevect-ref-doublevect-ref-const)
virtual int Matrice_Base::nb_colonnes() const =0
Return local number of columns ( = size on the current proc)
Referenced By
How to cite in this doc:
:ref:`virtual int Matrice_Base::nb_colonnes() const =0 <public-virtual-int-matrice-base-nb-colonnes-const-equal-0>`
[virtual int Matrice_Base::nb_colonnes() const =0](#public-virtual-int-matrice-base-nb-colonnes-const-equal-0)
virtual int Matrice_Base::nb_lignes() const =0
Return local number of lines ( = size on the current proc)
Referenced By
How to cite in this doc:
:ref:`virtual int Matrice_Base::nb_lignes() const =0 <public-virtual-int-matrice-base-nb-lignes-const-equal-0>`
[virtual int Matrice_Base::nb_lignes() const =0](#public-virtual-int-matrice-base-nb-lignes-const-equal-0)
virtual int Matrice_Base::ordre() const =0
If square matrix, returns number of lines, otherwise 0.
How to cite in this doc:
:ref:`virtual int Matrice_Base::ordre() const =0 <public-virtual-int-matrice-base-ordre-const-equal-0>`
[virtual int Matrice_Base::ordre() const =0](#public-virtual-int-matrice-base-ordre-const-equal-0)
virtual void Matrice_Base::scale(const double x)=0
Referenced By
How to cite in this doc:
:ref:`virtual void Matrice_Base::scale(const double x)=0 <public-virtual-void-matrice-base-scale-const-double-x-equal-0>`
[virtual void Matrice_Base::scale(const double x)=0](#public-virtual-void-matrice-base-scale-const-double-x-equal-0)
void Matrice_Base::set_stencil(const IntTab &stencil)
References
How to cite in this doc:
:ref:`void Matrice_Base::set_stencil(const IntTab &stencil) <public-void-matrice-base-set-stencil-const-inttab-ref-stencil>`
[void Matrice_Base::set_stencil(const IntTab &stencil)](#public-void-matrice-base-set-stencil-const-inttab-ref-stencil)
Matrice_Base::~Matrice_Base() override
How to cite in this doc:
:ref:`Matrice_Base::~Matrice_Base() override <public-matrice-base-dtor-matrice-base-override>`
[Matrice_Base::~Matrice_Base() override](#public-matrice-base-dtor-matrice-base-override)
const Type_info * Matrice_Base::info()
How to cite in this doc:
:ref:`const Type_info * Matrice_Base::info() <public-static-const-type-info-ptr-matrice-base-info>`
[const Type_info * Matrice_Base::info()](#public-static-const-type-info-ptr-matrice-base-info)
const Matrice_Base & Matrice_Base::self_cast(const Objet_U &)
How to cite in this doc:
:ref:`const Matrice_Base & Matrice_Base::self_cast(const Objet_U &) <public-static-const-matrice-base-ref-matrice-base-self-cast-const-objet-u-ref>`
[const Matrice_Base & Matrice_Base::self_cast(const Objet_U &)](#public-static-const-matrice-base-ref-matrice-base-self-cast-const-objet-u-ref)
Matrice_Base & Matrice_Base::self_cast(Objet_U &)
How to cite in this doc:
:ref:`Matrice_Base & Matrice_Base::self_cast(Objet_U &) <public-static-matrice-base-ref-matrice-base-self-cast-objet-u-ref>`
[Matrice_Base & Matrice_Base::self_cast(Objet_U &)](#public-static-matrice-base-ref-matrice-base-self-cast-objet-u-ref)
Sortie & Matrice_Base::printOn(Sortie &x) const override
Ecriture de l’objet sur un flot de sortie Methode a surcharger.
Reimplements:
References
How to cite in this doc:
:ref:`Sortie & Matrice_Base::printOn(Sortie &x) const override <protected-sortie-ref-matrice-base-printon-sortie-ref-x-const-override>`
[Sortie & Matrice_Base::printOn(Sortie &x) const override](#protected-sortie-ref-matrice-base-printon-sortie-ref-x-const-override)
Entree & Matrice_Base::readOn(Entree &) override
Lecture d’un Objet_U sur un flot d’entree Methode a surcharger.
Reimplements:
How to cite in this doc:
:ref:`Entree & Matrice_Base::readOn(Entree &) override <protected-entree-ref-matrice-base-readon-entree-ref-override>`
[Entree & Matrice_Base::readOn(Entree &) override](#protected-entree-ref-matrice-base-readon-entree-ref-override)
Attributes Documentation#
const Type_info Matrice_Base::info_obj
bool Matrice_Base::is_stencil_up_to_date_ = false
IntTab Matrice_Base::stencil_
Friends#
DoubleVect operator*