Classe gérant une matrice réelle 3x3. Plus de détails...
Fonctions membres publiques | |
| constexpr __host__ __device__ | Real3x3 () |
| Construit la matrice avec tous les coefficients à zéro. | |
| constexpr __host__ __device__ | Real3x3 (Real3 ax, Real3 ay, Real3 az) |
| Construit la matrice avec les lignes (ax,ay,az). | |
| Real3x3 (const Real3x3 &f)=default | |
| Construit un triplet identique à f. | |
| constexpr __host__ __device__ | Real3x3 (const Real3x3POD &f) |
| Construit un triplet identique à f. | |
| constexpr __host__ __device__ | Real3x3 (Real v) |
| Construit l'instance avec le triplet (v,v,v). | |
| constexpr __host__ __device__ | Real3x3 (ConstArrayView< Real > av) |
| Construit le triplet ((av[0], av[1], av[2]), (av[3], av[4], av[5]), (av[6], av[7], av[8])). | |
| Real3x3 & | operator= (const Real3x3 &f)=default |
| Opérateur d'affectation de copie. | |
| constexpr __host__ __device__ Real3x3 & | operator= (Real v) |
| Affecte le triplet (v,v,v) à l'instance. | |
| constexpr __host__ __device__ Real3x3 | copy () const |
| Retourne une copie de la matrice. | |
| constexpr __host__ __device__ Real3x3 & | reset () |
| Réinitialise les coefficients de la matrice à zéro. | |
| constexpr __host__ __device__ Real3x3 & | assign (Real3 ax, Real3 ay, Real3 az) |
| Affecte les lignes (ax,ay,az) à l'instance. | |
| constexpr __host__ __device__ Real3x3 & | assign (Real3x3 f) |
| Copie la matrice f. | |
| constexpr __host__ __device__ ArrayView< Real > | view () |
| constexpr __host__ __device__ ConstArrayView< Real > | constView () const |
| std::istream & | assign (std::istream &i) |
| Lit la matrice à partir du flux i La matrice est lue sous la forme de trois Real3. | |
| std::ostream & | print (std::ostream &o) const |
| Écrit le triplet dans le flux o de manière à ce qu'il soit lisible par assign(). | |
| std::ostream & | printXyz (std::ostream &o) const |
| Écrit le triplet dans le flux o sous la forme (x,y,z). | |
| constexpr __host__ __device__ Real3x3 & | add (Real3x3 b) |
| Ajoute b au triplet. | |
| constexpr __host__ __device__ Real3x3 & | sub (Real3x3 b) |
| Soustrait b du triplet. | |
| constexpr __host__ __device__ Real3x3 & | addSame (Real3 b) |
| Ajoute b à chaque composante du triplet. | |
| constexpr __host__ __device__ Real3x3 & | subSame (Real3 b) |
| Soustrait b à chaque composante du triplet. | |
| constexpr __host__ __device__ Real3x3 & | operator+= (Real3x3 b) |
| Ajoute b au triplet. | |
| constexpr __host__ __device__ Real3x3 & | operator-= (Real3x3 b) |
| Soustrait b du triplet. | |
| constexpr __host__ __device__ void | operator*= (Real b) |
| Multiplie chaque composante de la matrice par le réel b. | |
| constexpr __host__ __device__ void | operator/= (Real b) |
| Divise chaque composante de la matrice par le réel b. | |
| constexpr __host__ __device__ Real3x3 | operator+ (Real3x3 b) const |
| Crée un triplet qui est égal à ce triplet ajouté à b. | |
| constexpr __host__ __device__ Real3x3 | operator- (Real3x3 b) const |
| Crée un triplet qui est égal à ce triplet moins b. | |
| constexpr __host__ __device__ Real3x3 | operator- () const |
| Crée un tenseur opposé au tenseur actuel. | |
| constexpr __host__ __device__ bool | operator== (Real3x3 b) const |
| Compare l'instance actuelle composante par composante à b. | |
| constexpr __host__ __device__ bool | operator!= (Real3x3 b) const |
| Compare deux triplets. Pour la notion d'égalité, voir operator==(). | |
| __host__ __device__ Real3 | operator[] (Integer i) const |
| Accès en lecture seule à la ligne i-ème (entre 0 et 2 inclus) de l'instance. | |
| __host__ __device__ Real3 | operator() (Integer i) const |
| Accès en lecture seule à la ligne i-ème (entre 0 et 2 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__ Real3 & | operator[] (Integer i) |
| Accès à la ligne i-ème (entre 0 et 2 inclus) de l'instance. | |
| __host__ __device__ Real3 & | operator() (Integer i) |
| Accès à la ligne i-ème (entre 0 et 2 inclus) de l'instance. | |
| __host__ __device__ Real & | operator() (Integer i, Integer j) |
| Accès à la ligne i-ème et à la colonne j-ème. | |
| constexpr __host__ __device__ Real | determinant () const |
| Déterminant de la matrice. | |
| constexpr __host__ __device__ bool | isNearlyZero () const |
Fonctions membres publiques statiques | |
| constexpr __host__ static __device__ Real3x3 | null () |
| Construit le tenseur nul. | |
| constexpr __host__ static __device__ Real3x3 | zero () |
| Construit la matrice nulle. | |
| constexpr __host__ static __device__ Real3x3 | identity () |
| Construit la matrice identité | |
| constexpr __host__ static __device__ Real3x3 | fromColumns (Real ax, Real ay, Real az, Real bx, Real by, Real bz, Real cx, Real cy, Real cz) |
| Construit la matrice ((ax,bx,cx),(ay,by,cy),(az,bz,cz)). | |
| constexpr __host__ static __device__ Real3x3 | fromLines (Real ax, Real bx, Real cx, Real ay, Real by, Real cy, Real az, Real bz, Real cz) |
| Construit la matrice ((ax,bx,cx),(ay,by,cy),(az,bz,cz)). | |
Attributs publics | |
| Real3 | x |
| premier élément du triplet | |
| Real3 | y |
| premier élément du triplet | |
| Real3 | z |
| premier élément du triplet | |
Fonctions membres privées statiques | |
| constexpr __host__ static __device__ bool | _eq (Real a, Real b) |
| Compare les valeurs de a et b avec le comparateur TypeEqualT. | |
Amis | |
| std::ostream & | operator<< (std::ostream &o, Real3x3 t) |
| Écrit le triplet t dans le flux o. | |
| std::istream & | operator>> (std::istream &i, Real3x3 &t) |
| Lit le triplet t depuis le flux o. | |
| constexpr __host__ __device__ Real3x3 | operator* (Real sca, Real3x3 vec) |
| Multiplication par un scalaire. | |
| constexpr __host__ __device__ Real3x3 | operator* (Real3x3 vec, Real sca) |
| Multiplication par un scalaire. | |
| constexpr __host__ __device__ Real3x3 | operator/ (Real3x3 vec, Real sca) |
| Division par un scalaire. | |
| constexpr __host__ __device__ bool | operator< (Real3x3 v1, Real3x3 v2) |
| Opérateur de comparaison. | |
Classe gérant une matrice réelle 3x3.
La matrice comprend trois composantes x, y et z de type Real3. Chaque composante représente une ligne de la matrice. Par conséquent, pour une matrice m, m.y.z représente la 2ème ligne et la 3ème colonne de la matrice.
Il est également possible d'accéder aux éléments de la matrice comme un tableau. Par exemple m[1][2] représente la 2ème ligne et la 3ème colonne de la matrice.
Les matrices peuvent être construites par ligne en spécifiant les valeurs ligne par ligne (fromLines()) ou en spécifiant par colonne (fromColumns()).
Par exemple :
Définition à la ligne 66 du fichier arccore/src/base/arccore/base/Real3x3.h.
|
inlineconstexpr |
Construit la matrice avec tous les coefficients à zéro.
Définition à la ligne 71 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références x, y, z, et zero().
Référencé par add(), addSame(), assign(), assign(), copy(), fromColumns(), fromLines(), identity(), null(), operator!=(), operator*, operator*, operator+(), operator+=(), operator-(), operator-(), operator-=(), operator/, operator<, operator<<, operator=(), operator=(), operator==(), operator>>, Real3x3(), reset(), sub(), subSame(), et zero().
Construit la matrice avec les lignes (ax,ay,az).
Définition à la ligne 78 du fichier arccore/src/base/arccore/base/Real3x3.h.
|
inlineexplicitconstexpr |
Construit un triplet identique à f.
Définition à la ligne 100 du fichier arccore/src/base/arccore/base/Real3x3.h.
|
inlineexplicitconstexpr |
Construit l'instance avec le triplet (v,v,v).
Définition à la ligne 107 du fichier arccore/src/base/arccore/base/Real3x3.h.
|
inlineexplicitconstexpr |
Construit le triplet ((av[0], av[1], av[2]), (av[3], av[4], av[5]), (av[6], av[7], av[8])).
Définition à la ligne 113 du fichier arccore/src/base/arccore/base/Real3x3.h.
|
inlinestaticconstexprprivate |
Compare les valeurs de a et b avec le comparateur TypeEqualT.
| vrai | si a et b sont égaux, |
| faux | sinon. |
Définition à la ligne 432 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Arcane::TypeEqualT< T >::isEqual().
Ajoute b au triplet.
Définition à la ligne 215 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Real3x3(), x, y, et z.
Référencé par operator+=().
|
inlineconstexpr |
Affecte les lignes (ax,ay,az) à l'instance.
Définition à la ligne 171 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Real3x3(), x, y, et z.
Référencé par operator>>.
| std::istream & Arcane::Real3x3::assign | ( | std::istream & | i | ) |
|
inlineconstexpr |
Retourne une vue constante sur les neuf éléments de la matrice. [x.x, x.y, x.z, y.x, y.y, y.z, z.x, z.y, z.z]
Définition à la ligne 197 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références x.
|
inlineconstexpr |
Retourne une copie de la matrice.
Définition à la ligne 161 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Real3x3().
|
inlineconstexpr |
Déterminant de la matrice.
Définition à la ligne 368 du fichier arccore/src/base/arccore/base/Real3x3.h.
Référencé par Arcane::math::inverseMatrix(), et Arcane::math::matrixDeterminant().
|
inlinestaticconstexpr |
Construit la matrice ((ax,bx,cx),(ay,by,cy),(az,bz,cz)).
Définition à la ligne 147 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Real3x3().
Référencé par Arcane::math::matrix3x3Prod(), et Arcane::math::matrix3x3Transp().
|
inlinestaticconstexpr |
Construit la matrice ((ax,bx,cx),(ay,by,cy),(az,bz,cz)).
Définition à la ligne 153 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Real3x3().
Référencé par Arcane::math::matrixProduct().
|
inlinestaticconstexpr |
Construit la matrice identité
Définition à la ligne 144 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Real3x3().
|
inlineconstexpr |
Définition à la ligne 52 du fichier MathReal3x3.h.
|
inlinestaticconstexpr |
Construit le tenseur nul.
Définition à la ligne 138 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Real3x3().
|
inlineconstexpr |
Compare deux triplets. Pour la notion d'égalité, voir operator==().
| vrai | si les deux triplets sont différents, |
| faux | sinon. |
Définition à la ligne 298 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références operator==(), et Real3x3().
Accès à la ligne i-ème (entre 0 et 2 inclus) de l'instance.
| i | numéro de ligne à retourner |
Définition à la ligne 349 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références x.
Accès en lecture seule à la ligne i-ème (entre 0 et 2 inclus) de l'instance.
| i | numéro de ligne à retourner |
Définition à la ligne 317 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références x.
Accès à la ligne i-ème et à la colonne j-ème.
| i | numéro de ligne à retourner |
| j | numéro de colonne à retourner |
Définition à la ligne 360 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références x.
Accès en lecture seule à la ligne i-ème et à la colonne j-ème.
| i | numéro de ligne à retourner |
| j | numéro de colonne à retourner |
Définition à la ligne 328 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références x.
|
inlineconstexpr |
Multiplie chaque composante de la matrice par le réel b.
Définition à la ligne 257 du fichier arccore/src/base/arccore/base/Real3x3.h.
Ajoute b au triplet.
Définition à la ligne 251 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références add(), et Real3x3().
|
inlineconstexpr |
Soustrait b du triplet.
Définition à la ligne 254 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Real3x3(), et sub().
|
inlineconstexpr |
Divise chaque composante de la matrice par le réel b.
Définition à la ligne 265 du fichier arccore/src/base/arccore/base/Real3x3.h.
|
inlineconstexpr |
Compare l'instance actuelle composante par composante à b.
| vrai | si this.x==b.x et this.y==b.y et this.z==b.z. |
| faux | sinon. |
Définition à la ligne 287 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Real3x3(), x, y, et z.
Référencé par operator!=().
Accès à la ligne i-ème (entre 0 et 2 inclus) de l'instance.
| i | numéro de ligne à retourner |
Définition à la ligne 339 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références x.
Accès en lecture seule à la ligne i-ème (entre 0 et 2 inclus) de l'instance.
| i | numéro de ligne à retourner |
Définition à la ligne 307 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références x.
| std::ostream & Arcane::Real3x3::print | ( | std::ostream & | o | ) | const |
| std::ostream & Arcane::Real3x3::printXyz | ( | std::ostream & | o | ) | const |
Écrit le triplet dans le flux o sous la forme (x,y,z).
Définition à la ligne 48 du fichier arccore/src/base/arccore/base/Real3x3.cc.
Référencé par operator<<.
|
inlineconstexpr |
Réinitialise les coefficients de la matrice à zéro.
Définition à la ligne 164 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Real3x3(), et zero().
Soustrait b du triplet.
Définition à la ligne 224 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Real3x3(), x, y, et z.
Référencé par operator-=().
Retourne une vue sur les neuf éléments de la matrice. [x.x, x.y, x.z, y.x, y.y, y.z, z.x, z.y, z.z]
Définition à la ligne 190 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références x.
|
inlinestaticconstexpr |
Construit la matrice nulle.
Définition à la ligne 141 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références Real3x3().
Référencé par Arcane::DataTypeTraitsT< Real3x3 >::defaultValue(), Real3x3(), et reset().
|
friend |
Écrit le triplet t dans le flux o.
Définition à la ligne 374 du fichier arccore/src/base/arccore/base/Real3x3.h.
Références printXyz(), et Real3x3().
|
friend |
Lit le triplet t depuis le flux o.
Définition à la ligne 380 du fichier arccore/src/base/arccore/base/Real3x3.h.
| Real3 Arcane::Real3x3::x |
premier élément du triplet
Définition à la ligne 131 du fichier arccore/src/base/arccore/base/Real3x3.h.
Référencé par add(), Arcane::Real3x3Proxy::add(), addSame(), assign(), assign(), assign(), Arcane::Real3x3Proxy::assign(), Arcane::GeometricUtilities::QuadMapping::cartesianToIso(), constView(), determinant(), Arcane::math::doubleContraction(), Arcane::math::inverseMatrix(), Arcane::math::isNearlyId(), Arcane::math::isNearlyZero(), Arcane::math::matrix3x3Prod(), Arcane::math::matrix3x3Transp(), Arcane::math::matrixProduct(), Arcane::math::matrixTranspose(), Arcane::math::max(), Arcane::math::min(), Arcane::math::multiply(), operator()(), operator()(), operator()(), operator()(), operator*, operator*, operator*=(), operator+(), Arcane::Real3x3Proxy::operator+(), operator-(), operator-(), Arcane::Real3x3Proxy::operator-(), operator/, operator/=(), operator<, operator=(), operator==(), operator[](), operator[](), print(), printXyz(), Arcane::math::prodTensVec(), Arcane::math::prodVecTens(), Real3x3(), Real3x3(), Real3x3(), Real3x3(), Real3x3(), Arcane::math::relativeError(), sub(), Arcane::Real3x3Proxy::sub(), subSame(), Arcane::math::transpose(), et view().
| Real3 Arcane::Real3x3::y |
premier élément du triplet
Définition à la ligne 132 du fichier arccore/src/base/arccore/base/Real3x3.h.
Référencé par add(), Arcane::Real3x3Proxy::add(), addSame(), assign(), assign(), assign(), Arcane::Real3x3Proxy::assign(), Arcane::GeometricUtilities::QuadMapping::cartesianToIso(), determinant(), Arcane::math::doubleContraction(), Arcane::math::inverseMatrix(), Arcane::math::isNearlyId(), Arcane::math::isNearlyZero(), Arcane::math::matrix3x3Prod(), Arcane::math::matrix3x3Transp(), Arcane::math::matrixProduct(), Arcane::math::matrixTranspose(), Arcane::math::max(), Arcane::math::min(), Arcane::math::multiply(), operator*, operator*, operator*=(), operator+(), Arcane::Real3x3Proxy::operator+(), operator-(), operator-(), Arcane::Real3x3Proxy::operator-(), operator/, operator/=(), operator<, operator=(), operator==(), print(), printXyz(), Arcane::math::prodTensVec(), Arcane::math::prodVecTens(), Real3x3(), Real3x3(), Real3x3(), Real3x3(), Real3x3(), Arcane::math::relativeError(), sub(), Arcane::Real3x3Proxy::sub(), subSame(), et Arcane::math::transpose().
| Real3 Arcane::Real3x3::z |
premier élément du triplet
Définition à la ligne 133 du fichier arccore/src/base/arccore/base/Real3x3.h.
Référencé par add(), Arcane::Real3x3Proxy::add(), addSame(), assign(), assign(), assign(), Arcane::Real3x3Proxy::assign(), Arcane::GeometricUtilities::QuadMapping::cartesianToIso(), determinant(), Arcane::math::doubleContraction(), Arcane::math::inverseMatrix(), Arcane::math::isNearlyId(), Arcane::math::isNearlyZero(), Arcane::math::matrix3x3Prod(), Arcane::math::matrix3x3Transp(), Arcane::math::matrixProduct(), Arcane::math::matrixTranspose(), Arcane::math::max(), Arcane::math::min(), Arcane::math::multiply(), operator*, operator*, operator*=(), operator+(), Arcane::Real3x3Proxy::operator+(), operator-(), operator-(), Arcane::Real3x3Proxy::operator-(), operator/, operator/=(), operator<, operator=(), operator==(), print(), printXyz(), Arcane::math::prodTensVec(), Arcane::math::prodVecTens(), Real3x3(), Real3x3(), Real3x3(), Real3x3(), Real3x3(), Arcane::math::relativeError(), sub(), Arcane::Real3x3Proxy::sub(), subSame(), et Arcane::math::transpose().