Arcane  4.2.1.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::Real2x2

Classe gérant une matrice 2x2 de réels. Plus de détails...

#include <arccore/base/Real2x2.h>

Fonctions membres publiques

constexpr __host__ __device__ Real2x2 ()
 Construit la matrice nulle.
constexpr __host__ __device__ Real2x2 (Real2 ax, Real2 ay)
 Construit le couple (ax,ay).
 Real2x2 (const Real2x2 &f)=default
 Construit une copie identique à f.
constexpr __host__ __device__ Real2x2 (const Real2x2POD &f)
 Construit une copie identique à f.
constexpr __host__ __device__ Real2x2 (Real v)
 Construit l'instance avec le triplet (v,v,v).
constexpr __host__ __device__ Real2x2 (ConstArrayView< Real > av)
 Construit le couple ((av[0], av[1]), (av[2], av[3])).
Real2x2operator= (const Real2x2 &f)=default
 Opérateur d'affectation de copie.
constexpr __host__ __device__ Real2x2operator= (Real v)
 Affecte le couple (v,v,v) à l'instance.
constexpr __host__ __device__ Real2x2 copy () const
 Retourne une copie du couple.
constexpr __host__ __device__ Real2x2reset ()
 Réinitialise le couple avec les constructeurs par défaut.
constexpr __host__ __device__ Real2x2assign (Real2 ax, Real2 ay)
 Affecte le couple (ax,ay) à l'instance.
constexpr __host__ __device__ Real2x2assign (Real2x2 f)
 Copie le couple f.
constexpr __host__ __device__ ArrayView< Realview ()
constexpr __host__ __device__ ConstArrayView< RealconstView () const
std::istream & assign (std::istream &i)
 Lit la matrice depuis le flux i La matrice est lue sous la forme de trois Real2.
std::ostream & print (std::ostream &o) const
 Écrit le couple dans le flux o de manière à être lisible par assign().
std::ostream & printXy (std::ostream &o) const
 Écrit le couple dans le flux o sous la forme (x,y,z).
constexpr __host__ __device__ Real2x2add (Real2x2 b)
 Ajoute b au couple.
constexpr __host__ __device__ Real2x2sub (Real2x2 b)
 Soustrait b du couple.
constexpr __host__ __device__ Real2x2div (Real2x2 b)
 Multiplie chaque composante du couple par la composante correspondante de b.
constexpr __host__ __device__ Real2x2addSame (Real2 b)
 Ajoute b à chaque composante du couple.
constexpr __host__ __device__ Real2x2subSame (Real2 b)
 Soustrait b à chaque composante du couple.
constexpr __host__ __device__ Real2x2mulSame (Real2 b)
 Multiplie chaque composante du couple par b.
constexpr __host__ __device__ Real2x2divSame (Real2 b)
 Divise chaque composante du couple par b.
constexpr __host__ __device__ Real2x2operator+= (Real2x2 b)
 Ajoute b au couple.
constexpr __host__ __device__ Real2x2operator-= (Real2x2 b)
 Soustrait b du couple.
constexpr __host__ __device__ void operator*= (Real b)
 Multiplie chaque composante du couple par la composante correspondante de b.
constexpr __host__ __device__ void operator/= (Real b)
 Divise chaque composante du couple par la composante correspondante de b.
constexpr __host__ __device__ Real2x2 operator+ (Real2x2 b) const
 Crée un couple égal à ce couple ajouté à b.
constexpr __host__ __device__ Real2x2 operator- (Real2x2 b) const
 Crée un couple égal à ce couple moins b.
constexpr __host__ __device__ Real2x2 operator- () const
 Crée un tenseur inverse du tenseur actuel.
constexpr __host__ __device__ bool operator== (Real2x2 b) const
 Compare l'instance actuelle composante par composante à b.
constexpr __host__ __device__ bool operator!= (Real2x2 b) const
 Compare deux couples. Pour la notion d'égalité, voir operator==().
__host__ __device__ Real2 operator[] (Integer i) const
 Accès en lecture seule à la ligne i-ème (entre 0 et 1 inclus) de l'instance.
__host__ __device__ Real2 operator() (Integer i) const
 Accès en lecture seule à la ligne i-ème (entre 0 et 1 inclus) de l'instance.
__host__ __device__ Real operator() (Integer i, Integer j) const
 Accès en lecture seule à la ligne i-ème et à la colonne j-ème.
__host__ __device__ Real2operator[] (Integer i)
 Accès à la ligne i-ème (entre 0 et 1 inclus) de l'instance.
__host__ __device__ Real2operator() (Integer i)
 Accès à la ligne i-ème (entre 0 et 1 inclus) de l'instance.
__host__ __device__ Realoperator() (Integer i, Integer j)
 Accès à la ligne i-ème et à la colonne j-ème.
constexpr __host__ __device__ bool isNearlyZero () const
 Compare la matrice avec la matrice nulle.

Fonctions membres publiques statiques

constexpr __host__ static __device__ Real2x2 null ()
 Construit la matrice nulle.
constexpr __host__ static __device__ Real2x2 fromColumns (Real ax, Real ay, Real bx, Real by)
 Construit le couple ((ax,bx),(ay,by)).
constexpr __host__ static __device__ Real2x2 fromLines (Real ax, Real bx, Real ay, Real by)
 Construit le couple ((ax,bx),(ay,by)).

Attributs publics

Real2 x
 Première composante.
Real2 y
 Deuxième composante.

Amis

std::ostream & operator<< (std::ostream &o, Real2x2 t)
 Écrit le couple t dans le flux o.
std::istream & operator>> (std::istream &i, Real2x2 &t)
 Lit le couple t depuis le flux o.
constexpr __host__ __device__ Real2x2 operator* (Real sca, Real2x2 vec)
 Multiplication par un scalaire.
constexpr __host__ __device__ Real2x2 operator* (Real2x2 vec, Real sca)
 Multiplication par un scalaire.
constexpr __host__ __device__ Real2x2 operator/ (Real2x2 vec, Real sca)
 Division par un scalaire.
constexpr __host__ __device__ bool operator< (Real2x2 v1, Real2x2 v2)
 Opérateur de comparaison.

Description détaillée

Classe gérant une matrice 2x2 de réels.

La matrice comprend deux composantes x et y qui sont de type Real2. Par exemple:

Real2x2 matrix;
matrix.x.y = 2.;
matrix.y.y = 3.;
constexpr __host__ __device__ Real2x2()
Construit la matrice nulle.
Real y
deuxième composante du couple

Définition à la ligne 54 du fichier arccore/src/base/arccore/base/Real2x2.h.

Documentation des constructeurs et destructeur

◆ Real2x2() [1/5]

__host__ __device__ Arcane::Real2x2::Real2x2 ( )
inlineconstexpr

◆ Real2x2() [2/5]

__host__ __device__ Arcane::Real2x2::Real2x2 ( Real2 ax,
Real2 ay )
inlineconstexpr

Construit le couple (ax,ay).

Définition à la ligne 65 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x, et y.

◆ Real2x2() [3/5]

__host__ __device__ Arcane::Real2x2::Real2x2 ( const Real2x2POD & f)
inlineexplicitconstexpr

Construit une copie identique à f.

Définition à la ligne 85 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x, et y.

◆ Real2x2() [4/5]

__host__ __device__ Arcane::Real2x2::Real2x2 ( Real v)
inlineexplicitconstexpr

Construit l'instance avec le triplet (v,v,v).

Définition à la ligne 91 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x, et y.

◆ Real2x2() [5/5]

__host__ __device__ Arcane::Real2x2::Real2x2 ( ConstArrayView< Real > av)
inlineexplicitconstexpr

Construit le couple ((av[0], av[1]), (av[2], av[3])).

Définition à la ligne 97 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x, et y.

Documentation des fonctions membres

◆ add()

__host__ __device__ Real2x2 & Arcane::Real2x2::add ( Real2x2 b)
inlineconstexpr

Ajoute b au couple.

Définition à la ligne 189 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

Référencé par operator+=().

◆ addSame()

__host__ __device__ Real2x2 & Arcane::Real2x2::addSame ( Real2 b)
inlineconstexpr

Ajoute b à chaque composante du couple.

Définition à la ligne 216 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ assign() [1/3]

__host__ __device__ Real2x2 & Arcane::Real2x2::assign ( Real2 ax,
Real2 ay )
inlineconstexpr

Affecte le couple (ax,ay) à l'instance.

Définition à la ligne 147 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

Référencé par operator>>.

◆ assign() [2/3]

__host__ __device__ Real2x2 & Arcane::Real2x2::assign ( Real2x2 f)
inlineconstexpr

Copie le couple f.

Définition à la ligne 155 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ assign() [3/3]

std::istream & Arcane::Real2x2::assign ( std::istream & i)

Lit la matrice depuis le flux i La matrice est lue sous la forme de trois Real2.

Définition à la ligne 27 du fichier arcane/src/arcane/utils/Real2x2.cc.

Références x, et y.

◆ constView()

__host__ __device__ ConstArrayView< Real > Arcane::Real2x2::constView ( ) const
inlineconstexpr

Retourne une vue constante des quatre éléments de la matrice. [x.x, x.y, y.x, y.y]

Définition à la ligne 171 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x.

◆ copy()

__host__ __device__ Real2x2 Arcane::Real2x2::copy ( ) const
inlineconstexpr

Retourne une copie du couple.

Définition à la ligne 137 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2().

◆ div()

__host__ __device__ Real2x2 & Arcane::Real2x2::div ( Real2x2 b)
inlineconstexpr

Multiplie chaque composante du couple par la composante correspondante de b.

Divise chaque composante du couple par la composante correspondante de b

Définition à la ligne 208 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ divSame()

__host__ __device__ Real2x2 & Arcane::Real2x2::divSame ( Real2 b)
inlineconstexpr

Divise chaque composante du couple par b.

Définition à la ligne 240 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ fromColumns()

__host__ static __device__ Real2x2 Arcane::Real2x2::fromColumns ( Real ax,
Real ay,
Real bx,
Real by )
inlinestaticconstexpr

Construit le couple ((ax,bx),(ay,by)).

Définition à la ligne 123 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2().

◆ fromLines()

__host__ static __device__ Real2x2 Arcane::Real2x2::fromLines ( Real ax,
Real bx,
Real ay,
Real by )
inlinestaticconstexpr

Construit le couple ((ax,bx),(ay,by)).

Définition à la ligne 129 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2().

Référencé par Arcane::NumMatrix< DataType, Row, Column >::operator Real2x2().

◆ isNearlyZero()

__host__ __device__ bool Arcane::Real2x2::isNearlyZero ( ) const
inlineconstexpr

Compare la matrice avec la matrice nulle.

La matrice est nulle si et seulement si chacune de ses composantes est inférieure à un epsilon donné. La valeur epsilon utilisée est celle de float_info<value_type>::nearlyEpsilon():

\[A=0 \Leftrightarrow |A.x|<\epsilon,|A.y|<\epsilon\]

Valeurs retournées
vraisi la matrice est égale à la matrice nulle,
fauxsinon.

Définition à la ligne 55 du fichier MathReal2x2.h.

◆ mulSame()

__host__ __device__ Real2x2 & Arcane::Real2x2::mulSame ( Real2 b)
inlineconstexpr

Multiplie chaque composante du couple par b.

Définition à la ligne 232 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ null()

__host__ static __device__ Real2x2 Arcane::Real2x2::null ( )
inlinestaticconstexpr

Construit la matrice nulle.

Définition à la ligne 120 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2().

Référencé par Arcane::DataTypeTraitsT< Real2x2 >::defaultValue(), Real2x2(), reset(), et Arcane::Real2x2Proxy::reset().

◆ operator!=()

__host__ __device__ bool Arcane::Real2x2::operator!= ( Real2x2 b) const
inlineconstexpr

Compare deux couples. Pour la notion d'égalité, voir operator==().

Valeurs retournées
vraisi les deux couples sont différents,
fauxsinon.

Définition à la ligne 299 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références operator==(), et Real2x2().

◆ operator()() [1/4]

__host__ __device__ Real2 & Arcane::Real2x2::operator() ( Integer i)
inline

Accès à la ligne i-ème (entre 0 et 1 inclus) de l'instance.

Paramètres
inuméro de ligne à retourner

Définition à la ligne 350 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x.

◆ operator()() [2/4]

__host__ __device__ Real2 Arcane::Real2x2::operator() ( Integer i) const
inline

Accès en lecture seule à la ligne i-ème (entre 0 et 1 inclus) de l'instance.

Paramètres
inuméro de ligne à retourner

Définition à la ligne 318 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x.

◆ operator()() [3/4]

__host__ __device__ Real & Arcane::Real2x2::operator() ( Integer i,
Integer j )
inline

Accès à la ligne i-ème et à la colonne j-ème.

Paramètres
inuméro de ligne à retourner
jnuméro de colonne à retourner

Définition à la ligne 361 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x.

◆ operator()() [4/4]

__host__ __device__ Real Arcane::Real2x2::operator() ( Integer i,
Integer j ) const
inline

Accès en lecture seule à la ligne i-ème et à la colonne j-ème.

Paramètres
inuméro de ligne à retourner
jnuméro de colonne à retourner

Définition à la ligne 329 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x.

◆ operator*=()

__host__ __device__ void Arcane::Real2x2::operator*= ( Real b)
inlineconstexpr

Multiplie chaque composante du couple par la composante correspondante de b.

Multiplie chaque composante de la matrice par le réel b

Définition à la ligne 257 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x, et y.

◆ operator+()

__host__ __device__ Real2x2 Arcane::Real2x2::operator+ ( Real2x2 b) const
inlineconstexpr

Crée un couple égal à ce couple ajouté à b.

Définition à la ligne 274 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ operator+=()

__host__ __device__ Real2x2 & Arcane::Real2x2::operator+= ( Real2x2 b)
inlineconstexpr

Ajoute b au couple.

Définition à la ligne 248 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références add(), et Real2x2().

◆ operator-() [1/2]

__host__ __device__ Real2x2 Arcane::Real2x2::operator- ( ) const
inlineconstexpr

Crée un tenseur inverse du tenseur actuel.

Définition à la ligne 280 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ operator-() [2/2]

__host__ __device__ Real2x2 Arcane::Real2x2::operator- ( Real2x2 b) const
inlineconstexpr

Crée un couple égal à ce couple moins b.

Définition à la ligne 277 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ operator-=()

__host__ __device__ Real2x2 & Arcane::Real2x2::operator-= ( Real2x2 b)
inlineconstexpr

Soustrait b du couple.

Définition à la ligne 251 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), et sub().

◆ operator/=()

__host__ __device__ void Arcane::Real2x2::operator/= ( Real b)
inlineconstexpr

Divise chaque composante du couple par la composante correspondante de b.

Divise chaque composante de la matrice par le réel b

Définition à la ligne 267 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x, et y.

◆ operator=()

__host__ __device__ Real2x2 & Arcane::Real2x2::operator= ( Real v)
inlineconstexpr

Affecte le couple (v,v,v) à l'instance.

Définition à la ligne 106 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ operator==()

__host__ __device__ bool Arcane::Real2x2::operator== ( Real2x2 b) const
inlineconstexpr

Compare l'instance actuelle composante par composante à b.

Valeurs retournées
vraisi this.x==b.x et this.y==b.y.
fauxsinon.

Définition à la ligne 288 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

Référencé par operator!=().

◆ operator[]() [1/2]

__host__ __device__ Real2 & Arcane::Real2x2::operator[] ( Integer i)
inline

Accès à la ligne i-ème (entre 0 et 1 inclus) de l'instance.

Paramètres
inuméro de ligne à retourner

Définition à la ligne 340 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x.

◆ operator[]() [2/2]

__host__ __device__ Real2 Arcane::Real2x2::operator[] ( Integer i) const
inline

Accès en lecture seule à la ligne i-ème (entre 0 et 1 inclus) de l'instance.

Paramètres
inuméro de ligne à retourner

Définition à la ligne 308 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x.

◆ print()

std::ostream & Arcane::Real2x2::print ( std::ostream & o) const

Écrit le couple dans le flux o de manière à être lisible par assign().

Définition à la ligne 37 du fichier arcane/src/arcane/utils/Real2x2.cc.

Références x, et y.

◆ printXy()

std::ostream & Arcane::Real2x2::printXy ( std::ostream & o) const

Écrit le couple dans le flux o sous la forme (x,y,z).

Définition à la ligne 47 du fichier arcane/src/arcane/utils/Real2x2.cc.

Références x, et y.

Référencé par operator<<.

◆ reset()

__host__ __device__ Real2x2 & Arcane::Real2x2::reset ( )
inlineconstexpr

Réinitialise le couple avec les constructeurs par défaut.

Définition à la ligne 140 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références null(), et Real2x2().

◆ sub()

__host__ __device__ Real2x2 & Arcane::Real2x2::sub ( Real2x2 b)
inlineconstexpr

Soustrait b du couple.

Définition à la ligne 197 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

Référencé par operator-=().

◆ subSame()

__host__ __device__ Real2x2 & Arcane::Real2x2::subSame ( Real2 b)
inlineconstexpr

Soustrait b à chaque composante du couple.

Définition à la ligne 224 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ view()

__host__ __device__ ArrayView< Real > Arcane::Real2x2::view ( )
inlineconstexpr

Retourne une vue des quatre éléments de la matrice. [x.x, x.y, y.x, y.y]

Définition à la ligne 164 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références x.

◆ operator* [1/2]

__host__ __device__ Real2x2 operator* ( Real sca,
Real2x2 vec )
friend

Multiplication par un scalaire.

Définition à la ligne 383 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ operator* [2/2]

__host__ __device__ Real2x2 operator* ( Real2x2 vec,
Real sca )
friend

Multiplication par un scalaire.

Définition à la ligne 389 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ operator/

__host__ __device__ Real2x2 operator/ ( Real2x2 vec,
Real sca )
friend

Division par un scalaire.

Définition à la ligne 395 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ operator<

__host__ __device__ bool operator< ( Real2x2 v1,
Real2x2 v2 )
friend

Opérateur de comparaison.

Cet opérateur permet par exemple de trier Real2x2 dans std::set

Définition à la ligne 406 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références Real2x2(), x, et y.

◆ operator<<

std::ostream & operator<< ( std::ostream & o,
Real2x2 t )
friend

Écrit le couple t dans le flux o.

Définition à la ligne 371 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références printXy(), et Real2x2().

◆ operator>>

std::istream & operator>> ( std::istream & i,
Real2x2 & t )
friend

Lit le couple t depuis le flux o.

Définition à la ligne 377 du fichier arccore/src/base/arccore/base/Real2x2.h.

Références assign(), et Real2x2().

Documentation des données membres

◆ x

◆ y


La documentation de cette classe a été générée à partir des fichiers suivants :