Espace de nom pour les fonctions mathématiques. Plus de détails...
Fonctions | |
__host__ __device__ Real3 | vecMul (Real3 u, Real3 v) |
Produit vectoriel de u par v. dans \(R^3\). | |
__host__ __device__ Real | vecMul2D (Real3 u, Real3 v) |
Produit vectoriel de u par v dans \(R^2\). | |
__host__ __device__ Real | cross2D (Real3 u, Real3 v) |
Produit vectoriel de u par v dans \(R^2\). | |
__host__ __device__ Real | dot (Real2 u, Real2 v) |
Produit scalaire de u par v dans \(R^2\). | |
__host__ __device__ Real | scaMul (Real2 u, Real2 v) |
Produit scalaire de u par v dans \(R^2\). | |
__host__ __device__ Real | dot (Real3 u, Real3 v) |
Produit scalaire de u par v. | |
__host__ __device__ Real | scaMul (Real3 u, Real3 v) |
Produit scalaire de u par v. | |
__host__ __device__ Real | mixteMul (Real3 u, Real3 v, Real3 w) |
Produit mixte de u, v et w. | |
__host__ __device__ Real | matDet (Real3 u, Real3 v, Real3 w) |
Déterminant de la matrice u,v,w. | |
Real3x3 | prodTens (Real3 u, Real3 v) |
Produit tensoriel de deux vecteurs Real3. | |
__host__ __device__ Real3 | prodTensVec (Real3x3 t, Real3 v) |
Produit matrice vecteur entre un tenseur et un vecteur. | |
__host__ __device__ Real2 | prodTensVec (Real2x2 t, Real2 v) |
__host__ __device__ Real3 | prodVecTens (Real3 v, Real3x3 t) |
Produit transposé(vecteur) matrice entre la transposée d'un vecteur et une matrice. | |
__host__ __device__ Real3x3 | matrixProduct (const Real3x3 &t, const Real3x3 &v) |
Produit matrice matrice entre deux tenseurs. | |
__host__ __device__ Real3x3 | transpose (const Real3x3 &t) |
Transpose la matrice. | |
__host__ __device__ Real3x3 | matrixTranspose (const Real3x3 &t) |
Transpose la matrice. | |
__host__ __device__ Real | doubleContraction (const Real3x3 &u, const Real3x3 &v) |
__host__ __device__ Real | doubleContraction (const Real2x2 &u, const Real2x2 &v) |
__host__ __device__ Real2 | min (Real2 a, Real2 b) |
Retourne le minimum de deux Real2. | |
__host__ __device__ Real3 | min (Real3 a, Real3 b) |
Retourne le minimum de deux Real3. | |
__host__ __device__ Real2x2 | min (const Real2x2 &a, const Real2x2 &b) |
Retourne le minimum de deux Real2x2. | |
__host__ __device__ Real3x3 | min (const Real3x3 &a, const Real3x3 &b) |
Retourne le minimum de deux Real3x3. | |
template<class T > | |
T | min (const T &a, const T &b, const T &c) |
Retourne le minimum de trois éléments. | |
template<class T > | |
T | max (const T &a, const T &b, const T &c) |
Retourne le maximum de trois éléments. | |
__host__ __device__ Real2 | max (Real2 a, Real2 b) |
Retourne le maximum de deux Real2. | |
__host__ __device__ Real3 | max (Real3 a, Real3 b) |
Retourne le maximum de deux Real3. | |
__host__ __device__ Real2x2 | max (const Real2x2 &a, const Real2x2 &b) |
Retourne le maximum de deux Real2x2. | |
__host__ __device__ Real3x3 | max (const Real3x3 &a, const Real3x3 &b) |
Retourne le maximum de deux Real3x3. | |
__host__ __device__ Real | min4Real (Real a, Real b, Real c, Real d) |
retourne le min de quatre Real | |
__host__ __device__ Real | max4Real (Real a, Real b, Real c, Real d) |
retourne le max de quatre Real | |
__host__ __device__ Real | min8Real (const Real a[8]) |
retourne le min de huit Real | |
Real | max8Real (const Real a[8]) |
retourne le max de huit Real | |
__host__ __device__ Real | minMod (Real a, Real b, Real c, Real d) |
retourne le Min mod de quatre Real | |
__host__ __device__ Real | minMod2 (Real a, Real b) |
retourne le Min mod de deux Reals | |
__host__ __device__ Real | maxMod2 (Real a, Real b) |
retourne le Max mod de deux Reals | |
Real | relativeError (Real a, Real b) |
Retourne l'erreur relative entre deux scalaires a et b. | |
Real | relativeError (const Real3x3 &T1, const Real3x3 &T2) |
Retourne l'erreur relative entre deux tenseurs T1 et T2. | |
Real | relativeError2 (Real a, Real b) |
Retourne l'erreur relative entre deux scalaires a et b relativement à b. | |
Real | relativeError1 (Real a, Real b) |
Retourne l'erreur relative entre deux scalaires a et b relativement à a. | |
bool | searchExtrema (ConstArrayView< Real2 > array, Real &xmin, Real &xmax, Real &ymin, Real &ymax, bool need_init) |
Recherche les valeurs extrèmes d'un tableau de couple (x,y). | |
__host__ __device__ Real | matrixDeterminant (Real3x3 m) |
Calcul du déterminant d'une matrice 3x3. | |
Real | normeR3 (Real3 v1) |
Norme d'un vecteur. | |
__host__ __device__ Real3x3 | matrix3x3Id () |
Matrice identite. | |
__host__ __device__ Real3x3 | inverseMatrix (const Real3x3 &m, Real d) |
Calcul de l'inverse d'une matrice m en supposant connu son déterminant d. | |
__host__ __device__ Real3x3 | inverseMatrix (const Real3x3 &m) |
Calcul de l'inverse d'une matrice m. | |
Real3 | crossProduct3 (Real3 v1, Real3 v2) |
Produit vectoriel de deux vecteurs à 3 composantes. | |
__host__ __device__ Real3 | cross (Real3 v1, Real3 v2) |
Produit vectoriel de deux vecteurs à 3 composantes. | |
__host__ __device__ Real3 | normalizeReal3 (Real3 v) |
Normalisation d'un Real3. | |
Real3 | normalizedCrossProduct3 (Real3 v1, Real3 v2) |
Produit vectoriel normalisé. | |
Real3x3 | matrix3x3Transp (Real3x3 m) |
Real3x3 | matrix3x3Prod (Real3x3 m1, Real3x3 m2) |
Multiplication de 2 matrices 3x3. | |
__host__ __device__ Real3 | multiply (const Real3x3 &m, Real3 v) |
Produit matrice 3x3 . vecteur. | |
bool | isNearlyId (Real3x3 m, Real epsilon=1.e-10) |
Vérifie qu'une matrice vaut bien la matrice identité. | |
Real3 | planarSymmetric (Real3 u, Real3 n) |
Symétrie d'un vecteur u par rapport à un plan de normale n. | |
Real3 | axisSymmetric (Real3 u, Real3 a) |
Symétrie d'un vecteur u par rapport à un axe de vecteur directeur a . | |
template<typename T > | |
void | add (ArrayView< T > lhs, ConstArrayView< T > copy_array) |
Ajoute le tableau copy_array dans l'instance. | |
template<typename T > | |
void | add (ArrayView< T > lhs, ArrayView< T > copy_array) |
Ajoute le tableau copy_array dans l'instance. | |
template<typename T > | |
void | sub (ArrayView< T > lhs, ConstArrayView< T > copy_array) |
Soustrait le tableau copy_array de l'instance. | |
template<typename T > | |
void | sub (ArrayView< T > lhs, ArrayView< T > copy_array) |
Soustrait le tableau copy_array de l'instance. | |
template<typename T > | |
void | mult (ArrayView< T > lhs, ConstArrayView< T > copy_array) |
Multiplie terme à terme les éléments de l'instance par les éléments du tableau copy_array. | |
template<typename T > | |
void | mult (ArrayView< T > lhs, ArrayView< T > copy_array) |
Multiplie terme à terme les éléments de l'instance par les éléments du tableau copy_array. | |
template<typename T > | |
void | mult (ArrayView< T > lhs, T o) |
Multiplie tous les éléments du tableau par le réel o. | |
template<typename T > | |
void | power (ArrayView< T > lhs, T o) |
Met à la puissance o tous les éléments du tableau. | |
SimdReal3 | cross (const SimdReal3 &u, const SimdReal3 &v) |
Produit vectoriel de u par v dans \(R^3\). | |
SimdReal | cross2D (const SimdReal3 &u, const SimdReal3 &v) |
Produit vectoriel de u par v dans \(R^2\). | |
SimdReal | dot (const SimdReal3 &u, const SimdReal3 &v) |
SimdReal | dot (const SimdReal2 &u, const SimdReal2 &v) |
SimdReal | abs (const SimdReal3 &sr) |
SimdReal | abs (const SimdReal2 &sr) |
SimdReal | normL2 (const SimdReal3 &sr) |
SimdReal | normL2 (const SimdReal2 &sr) |
SimdReal | mixteMul (const SimdReal3 &u, const SimdReal3 &v, const SimdReal3 &w) |
Produit mixte de u, v et w. | |
SimdReal3x3 | prodTens (const SimdReal3 &u, const SimdReal3 &v) |
SimdReal3x3 | matrixProduct (const SimdReal3x3 &t, const SimdReal3x3 &v) |
Produit matrice matrice entre deux tenseurs. | |
SimdReal3x3 | matrixTranspose (const SimdReal3x3 &t) |
Transpose la matrice. | |
__host__ __device__ SimdReal2 | min (const SimdReal2 &a, const SimdReal2 &b) |
Retourne le minimum de deux SimdReal2. | |
__host__ __device__ SimdReal3 | min (const SimdReal3 &a, const SimdReal3 &b) |
Retourne le minimum de deux SimdReal3. | |
SimdReal2x2 | min (const SimdReal2x2 &a, const SimdReal2x2 &b) |
Retourne le minimum de deux SimdReal2x2. | |
SimdReal3x3 | min (const SimdReal3x3 &a, const SimdReal3x3 &b) |
Retourne le minimum de deux SimdReal3x3. | |
__host__ __device__ SimdReal2 | max (const SimdReal2 &a, const SimdReal2 &b) |
Retourne le maximum de deux SimdReal2. | |
__host__ __device__ SimdReal3 | max (const SimdReal3 &a, const SimdReal3 &b) |
Retourne le maximum de deux SimdReal3. | |
SimdReal2x2 | max (const SimdReal2x2 &a, const SimdReal2x2 &b) |
Retourne le maximum de deux SimdReal2x2. | |
SimdReal3x3 | max (const SimdReal3x3 &a, const SimdReal3x3 &b) |
Retourne le maximum de deux SimdReal3x3. | |
__host__ __device__ double | log (double v) |
Logarithme népérien de v. | |
__host__ __device__ long double | log (long double v) |
Logarithme népérien de v. | |
__host__ __device__ double | log10 (double v) |
Logarithme décimal de v. | |
__host__ __device__ long double | log10 (long double v) |
Logarithme décimal de v. | |
__host__ __device__ double | floor (double v) |
Arondir v à l'entier immédiatement inférieur. | |
__host__ __device__ long double | floor (long double v) |
Arondir v à l'entier immédiatement inférieur. | |
__host__ __device__ double | exp (double v) |
Exponentielle de v. | |
__host__ __device__ long double | exp (long double v) |
Exponentielle de v. | |
__host__ __device__ double | sqrt (double v) |
Racine carrée de v. | |
__host__ __device__ long double | sqrt (long double v) |
Racine carrée de v. | |
__host__ __device__ double | pow (double x, double y) |
Fonction puissance. | |
__host__ __device__ long double | pow (long double x, long double y) |
Fonction puissance. | |
__host__ __device__ long double | pow (double x, long double y) |
Fonction puissance. | |
__host__ __device__ long double | pow (long double x, double y) |
Fonction puissance. | |
template<class T > | |
__host__ __device__ T | min (const T &a, const T &b) |
Retourne le minimum de deux éléments. | |
__host__ __device__ long double | min (long double a, long double b) |
Retourne le minimum de deux réels. | |
__host__ __device__ long double | min (double a, long double b) |
Retourne le minimum de deux réels. | |
__host__ __device__ long double | min (long double a, double b) |
Retourne le minimum de deux réels. | |
__host__ __device__ double | min (double a, double b) |
Retourne le minimum de deux réels. | |
__host__ __device__ float | min (float a, float b) |
Retourne le minimum de deux réels. | |
__host__ __device__ int | min (int a, int b) |
Retourne le minimum de deux entiers. | |
template<class T > | |
__host__ __device__ T | max (const T &a, const T &b) |
Retourne le maximum de deux éléments. | |
__host__ __device__ long double | max (long double a, long double b) |
Retourne le maximum de deux réels. | |
__host__ __device__ long double | max (double a, long double b) |
Retourne le maximum de deux réels. | |
__host__ __device__ long double | max (long double a, double b) |
Retourne le maximum de deux réels. | |
__host__ __device__ unsigned long | max (unsigned long a, unsigned long b) |
Retourne le maximum de deux entiers. | |
__host__ __device__ double | max (double a, double b) |
Retourne le maximum de deux réels. | |
__host__ __device__ float | max (float a, float b) |
Retourne le maximum de deux réels. | |
__host__ __device__ Int16 | max (Int16 a, Int16 b) |
Retourne le maximum de deux Int16. | |
__host__ __device__ Int32 | max (Int32 a, Int32 b) |
Retourne le maximum de deux Int32. | |
__host__ __device__ Int64 | max (Int32 a, Int64 b) |
Retourne le maximum de deux Int32. | |
__host__ __device__ Int64 | max (Int64 a, Int32 b) |
Retourne le maximum de deux Int64. | |
__host__ __device__ Int64 | max (Int64 a, Int64 b) |
Retourne le maximum de deux Int64. | |
__host__ __device__ long double | abs (long double a) |
Retourne la valeur absolue d'un réel. | |
__host__ __device__ double | abs (double a) |
Retourne la valeur absolue d'un réel. | |
__host__ __device__ float | abs (float a) |
Retourne la valeur absolue d'un réel. | |
__host__ __device__ short | abs (short a) |
Retourne la valeur absolue d'un 'int'. | |
__host__ __device__ int | abs (int a) |
Retourne la valeur absolue d'un 'int'. | |
__host__ __device__ long | abs (long a) |
Retourne la valeur absolue d'un 'long'. | |
__host__ __device__ long long | abs (long long a) |
Retourne la valeur absolue d'un 'long'. | |
double | truncateDouble (double v, Integer nb_digit) |
Tronque la précision du réel v à nb_digit chiffres significatifs. | |
void | truncateDouble (ArrayView< double > values, Integer nb_digit) |
Tronque la précision du tableau de réels values à nb_digit chiffres significatifs. | |
apfloat | log (apfloat v) |
Logarithme népérien de v. | |
apfloat | floor (apfloat v) |
Arondir v à l'entier immédiatement inférieur. | |
apfloat | exp (apfloat v) |
Exponentielle de v. | |
apfloat | sqrt (apfloat v) |
Racine carrée de v. | |
apfloat | pow (apfloat x, apfloat y) |
Fonction puissance. | |
apfloat | min (apfloat a, apfloat b) |
Retourne le minimum de deux réels. | |
apfloat | max (apfloat a, apfloat b) |
Retourne le maximum de deux réels. | |
apfloat | abs (apfloat a) |
Retourne la valeur absolue d'un réel. | |
template<class _Type > | |
constexpr __host__ __device__ bool | isNearlyEqual (const _Type &a, const _Type &b) |
Teste si deux valeurs sont à un peu près égales. Pour les types entiers, cette fonction est équivalente à IsEqual(). Dans le cas de types réels, les deux nombres sont considérés comme égaux si et seulement si la valeur absolue de leur différence relative est inférieure à un epsilon donné. Cet epsilon est égal à float_info<_Type>::nearlyEpsilon(). | |
constexpr __host__ __device__ bool | isNearlyEqual (Real a, Real b) |
Surcharge pour les reels. | |
template<class _Type > | |
constexpr __host__ __device__ bool | isNearlyEqualWithEpsilon (const _Type &a, const _Type &b, const _Type &epsilon) |
Teste si deux valeurs sont à un peu près égales. Pour les types entiers, cette fonction est équivalente à IsEqual(). Dans le cas de types réels, les deux nombres sont considérés comme égaux si et seulement si la valeur absolue de leur différence relative est inférieure à epsilon. | |
__host__ __device__ constexpr bool | isNearlyEqualWithEpsilon (Real a, Real b, Real epsilon) |
Surcharge pour les reels. | |
template<class _Type > | |
constexpr __host__ __device__ bool | isEqual (const _Type &a, const _Type &b) |
Teste l'égalité bit à bit entre deux valeurs. | |
__host__ __device__ constexpr bool | isEqual (Real a, Real b) |
Surcharge pour les reels. | |
template<class _Type > | |
constexpr __host__ __device__ bool | isNearlyZeroWithEpsilon (const _Type &a, const _Type &epsilon) |
Teste si une valeur est à peu près égale à zéro à un epsilon près. | |
template<class _Type > | |
constexpr __host__ __device__ bool | isNearlyZero (const _Type &a) |
Teste si une valeur est à peu près égale à zéro à l'epsilon standard près. | |
template<class _Type > | |
constexpr __host__ __device__ bool | isZero (const _Type &a) |
Teste si une valeur est exactement égale à zéro. | |
Espace de nom pour les fonctions mathématiques.
Cet espace de nom contient toutes les fonctions mathématiques utilisées par le code.
Définition à la ligne 76 du fichier SimdMathUtils.h.
Définition à la ligne 64 du fichier SimdMathUtils.h.
|
inline |
Ajoute le tableau copy_array dans l'instance.
Comme aucune allocation mémoire n'est effectuée, le nombre d'éléments de copy_array doit être inférieur ou égal au nombre d'éléments courant. S'il est inférieur, les éléments du tableau courant situés à la fin du tableau sont inchangés
Définition à la ligne 904 du fichier MathUtils.h.
Références Arccore::ArrayView< T >::data(), et Arccore::ArrayView< T >::size().
|
inline |
Ajoute le tableau copy_array dans l'instance.
Comme aucune allocation mémoire n'est effectuée, le nombre d'éléments de copy_array doit être inférieur ou égal au nombre d'éléments courant. S'il est inférieur, les éléments du tableau courant situés à la fin du tableau sont inchangés
Définition à la ligne 885 du fichier MathUtils.h.
Références Arccore::ArrayView< T >::data(), Arccore::ConstArrayView< T >::data(), Arccore::ArrayView< T >::size(), et Arccore::ConstArrayView< T >::size().
Produit vectoriel de u par v dans \(R^3\).
Définition à la ligne 32 du fichier SimdMathUtils.h.
Produit vectoriel de u par v dans \(R^2\).
Définition à la ligne 45 du fichier SimdMathUtils.h.
Produit vectoriel de deux vecteurs à 3 composantes.
Définition à la ligne 706 du fichier MathUtils.h.
Références Arcane::Real3POD::x, Arcane::Real3POD::y, et Arcane::Real3POD::z.
Définition à la ligne 57 du fichier SimdMathUtils.h.
Définition à la ligne 51 du fichier SimdMathUtils.h.
|
inline |
} U_{i,j}V_{i,j}
Définition à la ligne 314 du fichier MathUtils.h.
Références Arcane::Real2POD::x, Arcane::Real2x2::x, Arcane::Real2POD::y, et Arcane::Real2x2::y.
|
inline |
} U_{i,j}V_{i,j}
Définition à la ligne 288 du fichier MathUtils.h.
Références Arcane::Real3POD::x, Arcane::Real3x3::x, Arcane::Real3POD::y, Arcane::Real3x3::y, Arcane::Real3POD::z, et Arcane::Real3x3::z.
|
inline |
Exponentielle de v.
Définition à la ligne 54 du fichier MathApfloat.h.
|
inline |
|
inline |
|
inline |
Arondir v à l'entier immédiatement inférieur.
Définition à la ligne 43 du fichier MathApfloat.h.
|
inline |
|
inline |
Calcul de l'inverse d'une matrice m.
Définition à la ligne 692 du fichier MathUtils.h.
Références Arcane::Real3x3::determinant(), et inverseMatrix().
Calcul de l'inverse d'une matrice m en supposant connu son déterminant d.
Définition à la ligne 677 du fichier MathUtils.h.
Références Arcane::Real3POD::x, Arcane::Real3x3::x, Arcane::Real3POD::y, Arcane::Real3x3::y, Arcane::Real3POD::z, et Arcane::Real3x3::z.
Référencé par inverseMatrix().
|
inlineconstexpr |
Teste l'égalité bit à bit entre deux valeurs.
true | si les deux valeurs sont égales, |
false | sinon. |
Définition à la ligne 253 du fichier Numeric.h.
Références Arcane::TypeEqualT< T >::isEqual().
Référencé par Arcane::CaseTable::_findValue(), et Arcane::VariableRefScalarT< DataType >::isEqual().
|
inlineconstexpr |
Surcharge pour les reels.
Définition à la ligne 260 du fichier Numeric.h.
Références Arcane::TypeEqualT< T >::isEqual().
|
inlineconstexpr |
Teste si deux valeurs sont à un peu près égales. Pour les types entiers, cette fonction est équivalente à IsEqual(). Dans le cas de types réels, les deux nombres sont considérés comme égaux si et seulement si la valeur absolue de leur différence relative est inférieure à un epsilon donné. Cet epsilon est égal à float_info<_Type>::nearlyEpsilon().
true | si les deux valeurs sont égales, |
false | sinon. |
Définition à la ligne 212 du fichier Numeric.h.
Références Arcane::TypeEqualT< T >::isNearlyEqual().
Référencé par Arcane::VariableRefScalarT< DataType >::isNearlyEqual().
|
inlineconstexpr |
Surcharge pour les reels.
Définition à la ligne 219 du fichier Numeric.h.
Références Arcane::TypeEqualT< T >::isNearlyEqual().
|
inlineconstexpr |
Teste si deux valeurs sont à un peu près égales. Pour les types entiers, cette fonction est équivalente à IsEqual(). Dans le cas de types réels, les deux nombres sont considérés comme égaux si et seulement si la valeur absolue de leur différence relative est inférieure à epsilon.
true | si les deux valeurs sont égales, |
false | sinon. |
Définition à la ligne 235 du fichier Numeric.h.
Références Arcane::TypeEqualT< T >::isNearlyEqualWithEpsilon().
|
inlineconstexpr |
Surcharge pour les reels.
Définition à la ligne 242 du fichier Numeric.h.
Références Arcane::TypeEqualT< T >::isNearlyEqualWithEpsilon().
|
inline |
Vérifie qu'une matrice vaut bien la matrice identité.
Définition à la ligne 822 du fichier MathUtils.h.
Références Arcane::Real3POD::x, Arcane::Real3x3::x, Arcane::Real3POD::y, Arcane::Real3x3::y, Arcane::Real3POD::z, et Arcane::Real3x3::z.
|
inlineconstexpr |
Teste si une valeur est à peu près égale à zéro à l'epsilon standard près.
L'epsilon standard est celui retourné par FloatInfo<_Type>::nearlyEpsilon().
Définition à la ligne 289 du fichier Numeric.h.
Références Arcane::TypeEqualT< T >::isNearlyZero().
|
inlineconstexpr |
Teste si une valeur est à peu près égale à zéro à un epsilon près.
Pour les types entiers, cette fonction est équivalente à IsZero(). Dans le cas de types réels, la valeur est considérée comme égale à zéro si et seulement si sa valeur absolue est inférieure à un epsilon donné par la fonction float_info<_Type>::nearlyEpsilon().
true | si les deux valeurs sont égales, |
false | sinon. |
|
inlineconstexpr |
Teste si une valeur est exactement égale à zéro.
true | si vaut zéro, |
false | sinon. |
Définition à la ligne 300 du fichier Numeric.h.
Références Arcane::TypeEqualT< T >::isZero().
|
inline |
Logarithme népérien de v.
Définition à la ligne 30 du fichier MathApfloat.h.
Références Arcane::arcaneMathError(), et Arcane::Convert::toDouble().
|
inline |
Logarithme népérien de v.
Définition à la ligne 40 du fichier Math.h.
Références Arcane::arcaneMathError().
|
inline |
Logarithme népérien de v.
Définition à la ligne 53 du fichier Math.h.
Références Arcane::arcaneMathError().
|
inline |
Logarithme décimal de v.
Définition à la ligne 68 du fichier Math.h.
Références Arcane::arcaneMathError().
|
inline |
Logarithme décimal de v.
Définition à la ligne 81 du fichier Math.h.
Références Arcane::arcaneMathError().
Déterminant de la matrice u,v,w.
Définition à la ligne 170 du fichier MathUtils.h.
Références Arcane::Real3POD::x, Arcane::Real3POD::y, et Arcane::Real3POD::z.
|
inline |
Matrice identite.
Définition à la ligne 664 du fichier MathUtils.h.
Multiplication de 2 matrices 3x3.
Définition à la ligne 788 du fichier MathUtils.h.
Références Arcane::Real3x3::fromColumns(), Arcane::Real3POD::x, Arcane::Real3x3::x, Arcane::Real3POD::y, Arcane::Real3x3::y, Arcane::Real3POD::z, et Arcane::Real3x3::z.
|
inline |
Calcul du déterminant d'une matrice 3x3.
Définition à la ligne 640 du fichier MathUtils.h.
Références Arcane::Real3x3::determinant().
|
inline |
retourne le max de quatre Real
Définition à la ligne 457 du fichier MathUtils.h.
Références max().
Référencé par max8Real(), et minMod().
|
inline |
retourne le max de huit Real
Définition à la ligne 478 du fichier MathUtils.h.
Références max(), et max4Real().
|
inline |
retourne le min de quatre Real
Définition à la ligne 446 du fichier MathUtils.h.
Références min().
Référencé par min8Real(), et minMod().
|
inline |
retourne le min de huit Real
Définition à la ligne 468 du fichier MathUtils.h.
Références min(), et min4Real().
|
inline |
Produit mixte de u, v et w.
Définition à la ligne 112 du fichier SimdMathUtils.h.
|
inline |
Multiplie terme à terme les éléments de l'instance par les éléments du tableau copy_array.
Comme aucune allocation mémoire n'est effectuée, le nombre d'éléments de copy_array doit être inférieur ou égal au nombre d'éléments courant. S'il est inférieur, les éléments du tableau courant situés à la fin du tableau sont inchangés
Définition à la ligne 984 du fichier MathUtils.h.
Références Arccore::ArrayView< T >::constView(), et mult().
|
inline |
Multiplie terme à terme les éléments de l'instance par les éléments du tableau copy_array.
Comme aucune allocation mémoire n'est effectuée, le nombre d'éléments de copy_array doit être inférieur ou égal au nombre d'éléments courant. S'il est inférieur, les éléments du tableau courant situés à la fin du tableau sont inchangés
Définition à la ligne 963 du fichier MathUtils.h.
Références Arccore::ArrayView< T >::data(), Arccore::ConstArrayView< T >::data(), Arccore::ArrayView< T >::size(), et Arccore::ConstArrayView< T >::size().
Référencé par mult().
|
inline |
Multiplie tous les éléments du tableau par le réel o.
Définition à la ligne 993 du fichier MathUtils.h.
Références Arccore::ArrayView< T >::data(), et Arccore::ArrayView< T >::size().
Produit matrice 3x3 . vecteur.
Définition à la ligne 809 du fichier MathUtils.h.
Références Arcane::Real3POD::x, Arcane::Real3x3::x, Arcane::Real3POD::y, Arcane::Real3x3::y, Arcane::Real3POD::z, et Arcane::Real3x3::z.
|
inline |
Norme d'un vecteur.
Définition à la ligne 653 du fichier MathUtils.h.
Références sqrt(), Arcane::Real3POD::x, Arcane::Real3POD::y, et Arcane::Real3POD::z.
Définition à la ligne 98 du fichier SimdMathUtils.h.
Définition à la ligne 87 du fichier SimdMathUtils.h.
|
inline |
Fonction puissance.
Calcul x à la puissance y.
Définition à la ligne 84 du fichier MathApfloat.h.
Références Arcane::arcaneMathError(), floor(), et Arcane::Convert::toDouble().
|
inline |
Fonction puissance.
Calcul x à la puissance y.
Définition à la ligne 166 du fichier Math.h.
Références Arcane::arcaneMathError(), et floor().
Référencé par power().
|
inline |
Fonction puissance.
Calcul x à la puissance y.
Définition à la ligne 202 du fichier Math.h.
Références Arcane::arcaneMathError().
|
inline |
Fonction puissance.
Calcul x à la puissance y.
Définition à la ligne 219 du fichier Math.h.
Références Arcane::arcaneMathError(), et floor().
|
inline |
Fonction puissance.
Calcul x à la puissance y.
Définition à la ligne 185 du fichier Math.h.
Références Arcane::arcaneMathError().
|
inline |
Met à la puissance o tous les éléments du tableau.
Définition à la ligne 1004 du fichier MathUtils.h.
Références Arccore::ArrayView< T >::data(), pow(), et Arccore::ArrayView< T >::size().
|
inline |
Définition à la ligne 121 du fichier SimdMathUtils.h.
Définition à la ligne 212 du fichier MathUtils.h.
Retourne l'erreur relative entre deux tenseurs T1 et T2.
L'erreur relative est calculée comme le max des erreurs relatives sur chacune des composantes des tenseurs.
Définition à la ligne 549 du fichier MathUtils.h.
Références max(), relativeError(), Arcane::Real3POD::x, Arcane::Real3x3::x, Arcane::Real3POD::y, Arcane::Real3x3::y, Arcane::Real3POD::z, et Arcane::Real3x3::z.
|
inline |
Retourne l'erreur relative entre deux scalaires a et b.
L'erreur relative est calculée par :
\(\frac{a-b}{|a|+|b|}\)
Définition à la ligne 533 du fichier MathUtils.h.
Référencé par relativeError().
|
inline |
Retourne l'erreur relative entre deux scalaires a et b relativement à a.
L'erreur relative est calculée par :
\(\frac{a-b}{(|b|)}\)
Définition à la ligne 591 du fichier MathUtils.h.
|
inline |
Retourne l'erreur relative entre deux scalaires a et b relativement à b.
L'erreur relative est calculée par :
\(\frac{a-b}{(|b|)}\)
Définition à la ligne 575 du fichier MathUtils.h.
|
inline |
Recherche les valeurs extrèmes d'un tableau de couple (x,y).
Définition à la ligne 603 du fichier MathUtils.h.
Références Arccore::ConstArrayView< T >::size().
|
inline |
Racine carrée de v.
Définition à la ligne 65 du fichier MathApfloat.h.
Références Arcane::arcaneMathError(), et Arcane::Convert::toDouble().
|
inline |
Racine carrée de v.
Définition à la ligne 135 du fichier Math.h.
Références Arcane::arcaneMathError().
Référencé par normalizeReal3(), et normeR3().
|
inline |
Racine carrée de v.
Définition à la ligne 147 du fichier Math.h.
Références Arcane::arcaneMathError().
|
inline |
Soustrait le tableau copy_array de l'instance.
Comme aucune allocation mémoire n'est effectuée, le nombre d'éléments de copy_array doit être inférieur ou égal au nombre d'éléments courant. S'il est inférieur, les éléments du tableau courant situés à la fin du tableau sont inchangés
Définition à la ligne 942 du fichier MathUtils.h.
Références Arccore::ArrayView< T >::data(), et Arccore::ArrayView< T >::size().
|
inline |
Soustrait le tableau copy_array de l'instance.
Comme aucune allocation mémoire n'est effectuée, le nombre d'éléments de copy_array doit être inférieur ou égal au nombre d'éléments courant. S'il est inférieur, les éléments du tableau courant situés à la fin du tableau sont inchangés
Définition à la ligne 923 du fichier MathUtils.h.
Références Arccore::ArrayView< T >::data(), Arccore::ConstArrayView< T >::data(), Arccore::ArrayView< T >::size(), et Arccore::ConstArrayView< T >::size().
Transpose la matrice.
Définition à la ligne 258 du fichier MathUtils.h.
Références Arcane::Real3POD::x, Arcane::Real3x3::x, Arcane::Real3POD::y, Arcane::Real3x3::y, Arcane::Real3POD::z, et Arcane::Real3x3::z.
|
extern |
Tronque la précision du tableau de réels values à nb_digit chiffres significatifs.
En sortie, chaque élément de values est modifié comme après appel à truncateDouble(double v,Integer nb_digit).
Définition à la ligne 86 du fichier Math.cc.
Références Arccore::ArrayView< T >::size().
|
extern |
Tronque la précision du réel v à nb_digit chiffres significatifs.
Pour un réel double précision en IEEE 754, le nombre de bits significatif est de 15 ou 16 suivant la valeur. Il est à noter qu'il n'est possible de manière simple et rapide de tronquer la précision à une valeur donnée. C'est pourquoi nb_digit représente un nombre de chiffre approximatif. Notamment, il n'est pas possible de descendre en dessous de 8 chiffres significatifs.
Si nb_digit est inférieur ou égal à zéro ou supérieur à 15, c'est la valeur v qui est retourné.