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#

Inherited by#

List of Public Methods#

List of Public Static Methods#

List of Protected Methods#

Complete Member Function Documentation#

ajouter_multTab
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

References
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)
ajouter_multTab_
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)
ajouter_multvect
DoubleVect & Matrice_Base::ajouter_multvect(const DoubleVect &x, DoubleVect &r) const

Operation de multiplication - accumulation (saxpy) matrice vecteur.

Operation: r = r + A*x

References
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)
ajouter_multvect_
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)
ajouter_multvectT
DoubleVect & Matrice_Base::ajouter_multvectT(const DoubleVect &x, DoubleVect &r) const

Operation de multiplication - accumulation (saxpy) matrice vecteur.

Operation: r = r + A*x

References
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)
ajouter_multvectT_
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)
build_stencil
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)
clean
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)
get_info
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)
get_stencil
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)
get_stencil_and_coeff_ptrs
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)
get_stencil_and_coefficients
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)
get_stencil_size
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)
get_symmetric_stencil
void Matrice_Base::get_symmetric_stencil(IntTab &stencil) const
References
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)
get_symmetric_stencil_and_coefficients
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)
imprimer
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)
imprimer_formatte
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)
is_stencil_up_to_date
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::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)
multTab
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

References
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)
multvect
DoubleVect & Matrice_Base::multvect(const DoubleVect &, DoubleVect &) const

Multiplication d’un vecteur par la matrice.

Operation: r = A*x

References
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)
multvect_
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)
multvectT
DoubleVect & Matrice_Base::multvectT(const DoubleVect &, DoubleVect &) const

Multiplication d’un vecteur par la matrice transposee.

Operation: r = AT*x

References
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)
multvectT_
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)
ordre
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)
scale
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)
set_stencil
void Matrice_Base::set_stencil(const IntTab &stencil)
References
Referenced By
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::~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)
info
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)
self_cast
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)
self_cast
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)
printOn
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)
readOn
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#

info_obj (public)
const Type_info Matrice_Base::info_obj
is_stencil_up_to_date_ (protected)
bool Matrice_Base::is_stencil_up_to_date_ = false
stencil_ (protected)
IntTab Matrice_Base::stencil_

Friends#

  • DoubleVect operator*