Functions | |
| __host__ __device__ Real3 | Arcane::math::vecMul (Real3 u, Real3 v) |
| Vector cross product of u by v in \(R^3\). | |
| __host__ __device__ Real | Arcane::math::vecMul2D (Real3 u, Real3 v) |
| Vector cross product of u by v in \(R^2\). | |
| __host__ __device__ Real | Arcane::math::cross2D (Real3 u, Real3 v) |
| Vector cross product of u by v in \(R^2\). | |
| __host__ __device__ Real | Arcane::math::dot (Real2 u, Real2 v) |
| Dot product of u by v in \(R^2\). | |
| __host__ __device__ Real | Arcane::math::scaMul (Real2 u, Real2 v) |
| Dot product of u by v in \(R^2\). | |
| __host__ __device__ Real | Arcane::math::dot (Real3 u, Real3 v) |
| Dot product of u by v. | |
| __host__ __device__ Real | Arcane::math::scaMul (Real3 u, Real3 v) |
| Dot product of u by v. | |
| __host__ __device__ Real | Arcane::math::mixteMul (Real3 u, Real3 v, Real3 w) |
| Mixed product of u, v and w. | |
| Real3x3 | Arcane::math::prodTens (Real3 u, Real3 v) |
| Tensor product of two Real3 vectors. | |
| __host__ __device__ Real3 | Arcane::math::prodTensVec (Real3x3 t, Real3 v) |
| Matrix-vector product between a tensor and a vector. | |
| __host__ __device__ Real3 | Arcane::math::prodVecTens (Real3 v, Real3x3 t) |
| Transposed(vector) matrix product between the transpose of a vector and a matrix. | |
| __host__ __device__ Real3x3 | Arcane::math::matrixProduct (const Real3x3 &t, const Real3x3 &v) |
| Matrix-matrix product between two tensors. | |
| __host__ __device__ Real3x3 | Arcane::math::matrixTranspose (const Real3x3 &t) |
| Transpose the matrix. | |
| __host__ __device__ Real2 | Arcane::math::min (Real2 a, Real2 b) |
| Returns the minimum of two Real2. | |
| __host__ __device__ Real3 | Arcane::math::min (Real3 a, Real3 b) |
| Returns the minimum of two Real3s. | |
| __host__ __device__ Real2x2 | Arcane::math::min (const Real2x2 &a, const Real2x2 &b) |
| Returns the minimum of two Real2x2s. | |
| __host__ __device__ Real3x3 | Arcane::math::min (const Real3x3 &a, const Real3x3 &b) |
| Returns the minimum of two Real3x3s. | |
| template<class T> | |
| T | Arcane::math::min (const T &a, const T &b, const T &c) |
| Returns the minimum of three elements. | |
| template<class T> | |
| T | Arcane::math::max (const T &a, const T &b, const T &c) |
| Returns the maximum of three elements. | |
| __host__ __device__ Real2 | Arcane::math::max (Real2 a, Real2 b) |
| Returns the maximum of two Real2s. | |
| __host__ __device__ Real3 | Arcane::math::max (Real3 a, Real3 b) |
| Returns the maximum of two Real3s. | |
| __host__ __device__ Real2x2 | Arcane::math::max (const Real2x2 &a, const Real2x2 &b) |
| Returns the maximum of two Real2x2s. | |
| __host__ __device__ Real3x3 | Arcane::math::max (const Real3x3 &a, const Real3x3 &b) |
| Returns the maximum of two Real3x3s. | |
| __host__ __device__ Real | Arcane::math::minMod (Real a, Real b, Real c, Real d) |
| Returns the Min mod of four Reals. | |
| __host__ __device__ Real | Arcane::math::minMod2 (Real a, Real b) |
| Returns the Min mod of two Reals. | |
| __host__ __device__ Real | Arcane::math::maxMod2 (Real a, Real b) |
| Returns the Max mod of two Reals. | |
| __host__ __device__ Real3 | Arcane::math::cross (Real3 v1, Real3 v2) |
| Cross product of two 3-component vectors. | |
| __host__ __device__ Real3 | Arcane::math::normalizeReal3 (Real3 v) |
| Normalization of a Real3. | |
| Real3 | Arcane::math::normalizedCrossProduct3 (Real3 v1, Real3 v2) |
| Normalized cross product. | |
| Real3x3 | Arcane::math::matrix3x3Transp (Real3x3 m) |
| Real3 | Arcane::math::planarSymmetric (Real3 u, Real3 n) |
| Symmetry of a vector u with respect to a normal plane n. | |
| Real3 | Arcane::math::axisSymmetric (Real3 u, Real3 a) |
| Symmetry of a vector u with respect to an axis defined by direction vector a. | |
| SimdReal3x3 | Arcane::math::matrixProduct (const SimdReal3x3 &t, const SimdReal3x3 &v) |
| Matrix-matrix product between two tensors. | |
| SimdReal3x3 | Arcane::math::matrixTranspose (const SimdReal3x3 &t) |
| Transpose the matrix. | |
| __host__ __device__ SimdReal2 | Arcane::math::min (const SimdReal2 &a, const SimdReal2 &b) |
| Returns the minimum of two SimdReal2. | |
| __host__ __device__ SimdReal3 | Arcane::math::min (const SimdReal3 &a, const SimdReal3 &b) |
| Returns the minimum of two SimdReal3. | |
| SimdReal2x2 | Arcane::math::min (const SimdReal2x2 &a, const SimdReal2x2 &b) |
| Returns the minimum of two SimdReal2x2. | |
| SimdReal3x3 | Arcane::math::min (const SimdReal3x3 &a, const SimdReal3x3 &b) |
| Returns the minimum of two SimdReal3x3. | |
| __host__ __device__ SimdReal2 | Arcane::math::max (const SimdReal2 &a, const SimdReal2 &b) |
| Returns the maximum of two SimdReal2. | |
| __host__ __device__ SimdReal3 | Arcane::math::max (const SimdReal3 &a, const SimdReal3 &b) |
| Returns the maximum of two SimdReal3. | |
| SimdReal2x2 | Arcane::math::max (const SimdReal2x2 &a, const SimdReal2x2 &b) |
| Returns the maximum of two SimdReal2x2. | |
| SimdReal3x3 | Arcane::math::max (const SimdReal3x3 &a, const SimdReal3x3 &b) |
| Returns the maximum of two SimdReal3x3. | |
| template<class T> | |
| __host__ __device__ T | Arcane::math::min (const T &a, const T &b) |
| Returns the minimum of two elements. | |
| __host__ __device__ long double | Arcane::math::min (long double a, long double b) |
| Returns the minimum of two real numbers. | |
| __host__ __device__ long double | Arcane::math::min (double a, long double b) |
| Returns the minimum of two real numbers. | |
| __host__ __device__ long double | Arcane::math::min (long double a, double b) |
| Returns the minimum of two real numbers. | |
| __host__ __device__ double | Arcane::math::min (double a, double b) |
| Returns the minimum of two real numbers. | |
| __host__ __device__ float | Arcane::math::min (float a, float b) |
| Returns the minimum of two real numbers. | |
| __host__ __device__ int | Arcane::math::min (int a, int b) |
| Returns the minimum of two integers. | |
| template<class T> | |
| __host__ __device__ T | Arcane::math::max (const T &a, const T &b) |
| Returns the maximum of two elements. | |
| __host__ __device__ long double | Arcane::math::max (long double a, long double b) |
| Returns the maximum of two real numbers. | |
| __host__ __device__ long double | Arcane::math::max (double a, long double b) |
| Returns the maximum of two real numbers. | |
| __host__ __device__ long double | Arcane::math::max (long double a, double b) |
| Returns the maximum of two real numbers. | |
| __host__ __device__ unsigned long | Arcane::math::max (unsigned long a, unsigned long b) |
| Returns the maximum of two integers. | |
| __host__ __device__ double | Arcane::math::max (double a, double b) |
| Returns the maximum of two real numbers. | |
| __host__ __device__ float | Arcane::math::max (float a, float b) |
| Returns the maximum of two real numbers. | |
| __host__ __device__ Int16 | Arcane::math::max (Int16 a, Int16 b) |
| Returns the maximum of two Int16. | |
| __host__ __device__ Int32 | Arcane::math::max (Int32 a, Int32 b) |
| Returns the maximum of two Int32. | |
| __host__ __device__ Int64 | Arcane::math::max (Int32 a, Int64 b) |
| Returns the maximum of two Int32. | |
| __host__ __device__ Int64 | Arcane::math::max (Int64 a, Int32 b) |
| Returns the maximum of two Int64. | |
| __host__ __device__ Int64 | Arcane::math::max (Int64 a, Int64 b) |
| Returns the maximum of two Int64. | |
| __host__ __device__ long double | Arcane::math::abs (long double a) |
| Returns the absolute value of a real number. | |
| __host__ __device__ double | Arcane::math::abs (double a) |
| Returns the absolute value of a real number. | |
| __host__ __device__ float | Arcane::math::abs (float a) |
| Returns the absolute value of a real number. | |
| __host__ __device__ short | Arcane::math::abs (short a) |
| Returns the absolute value of an 'int'. | |
| __host__ __device__ int | Arcane::math::abs (int a) |
| Returns the absolute value of an 'int'. | |
| __host__ __device__ long | Arcane::math::abs (long a) |
| Returns the absolute value of a 'long'. | |
| __host__ __device__ long long | Arcane::math::abs (long long a) |
| Returns the absolute value of a 'long'. | |
| apfloat | Arcane::math::min (apfloat a, apfloat b) |
| Returns the minimum of two real numbers. | |
| apfloat | Arcane::math::max (apfloat a, apfloat b) |
| Returns the maximum of two real numbers. | |
| apfloat | Arcane::math::abs (apfloat a) |
| Returns the absolute value of a real number. | |
Set of mathematical functions.
|
inline |
Returns the absolute value of a real number.
Definition at line 133 of file MathApfloat.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Symmetry of a vector u with respect to an axis defined by direction vector a.
Definition at line 902 of file MathUtils.h.
References Arcane::arcaneMathError(), dot(), Arcane::Real3::normL2(), and Arcane::Convert::toDouble().
Cross product of two 3-component vectors.
Definition at line 759 of file MathUtils.h.
References Arcane::Real3POD::x, Arcane::Real3POD::y, and Arcane::Real3POD::z.
Referenced by mixteMul(), and normalizedCrossProduct3().
Vector cross product of u by v in \(R^2\).
Definition at line 79 of file MathUtils.h.
References Arcane::Real3POD::x, and Arcane::Real3POD::y.
Dot product of u by v in \(R^2\).
This is: \(u{\cdot}v\)
Definition at line 94 of file MathUtils.h.
References Arcane::Real2POD::x, and Arcane::Real2POD::y.
Referenced by axisSymmetric(), Arcane::GeometricUtilities::ProjectionInfo::isInside(), Arcane::GeometricUtilities::ProjectionInfo::isInside(), mixteMul(), mixteMul(), planarSymmetric(), prodTensVec(), prodVecTens(), Arcane::GeometricUtilities::ProjectionInfo::projection(), and Arcane::GeometricUtilities::ProjectionInfo::projection().
Dot product of u by v.
This is: \(u{\cdot}v\).
Definition at line 128 of file MathUtils.h.
References Arcane::Real3POD::x, Arcane::Real3POD::y, and Arcane::Real3POD::z.
Definition at line 809 of file MathUtils.h.
References Arcane::Real3x3::fromColumns(), Arcane::Real3POD::x, Arcane::Real3x3::x, Arcane::Real3POD::y, Arcane::Real3x3::y, Arcane::Real3POD::z, and Arcane::Real3x3::z.
|
inline |
Matrix-matrix product between two tensors.
Definition at line 244 of file MathUtils.h.
References Arcane::Real3x3::fromLines(), Arcane::Real3POD::x, Arcane::Real3x3::x, Arcane::Real3POD::y, Arcane::Real3x3::y, Arcane::Real3POD::z, and Arcane::Real3x3::z.
|
inline |
Matrix-matrix product between two tensors.
Definition at line 137 of file SimdMathUtils.h.
Transpose the matrix.
Definition at line 280 of file MathUtils.h.
References Arcane::Real3POD::x, Arcane::Real3x3::x, Arcane::Real3POD::y, Arcane::Real3x3::y, Arcane::Real3POD::z, and Arcane::Real3x3::z.
|
inline |
Transpose the matrix.
Definition at line 158 of file SimdMathUtils.h.
|
inline |
Returns the maximum of two real numbers.
Definition at line 120 of file MathApfloat.h.
Returns the maximum of two Real2x2s.
Definition at line 440 of file MathUtils.h.
References max(), Arcane::Real2x2::x, and Arcane::Real2x2::y.
Returns the maximum of two Real3x3s.
Definition at line 450 of file MathUtils.h.
References max(), Arcane::Real3x3::x, Arcane::Real3x3::y, and Arcane::Real3x3::z.
Returns the maximum of two SimdReal2.
Definition at line 216 of file SimdMathUtils.h.
References max().
|
inline |
Returns the maximum of two SimdReal2x2.
Definition at line 236 of file SimdMathUtils.h.
References max().
Returns the maximum of two SimdReal3.
Definition at line 226 of file SimdMathUtils.h.
References max().
|
inline |
Returns the maximum of two SimdReal3x3.
Definition at line 246 of file SimdMathUtils.h.
References max().
|
inline |
|
inline |
Returns the maximum of three elements.
Uses the > operator to determine the maximum.
Definition at line 407 of file MathUtils.h.
Referenced by Arcane::CartesianMeshCoarsening2::createCoarseCells(), Arcane::CartesianMeshCoarsening::createCoarseCells(), max(), max(), max(), max(), max(), max(), max(), max(), max4Real(), max8Real(), maxMod2(), minMod(), minMod2(), and relativeError().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Returns the maximum of two Real2s.
Definition at line 420 of file MathUtils.h.
References max(), Arcane::Real2POD::x, and Arcane::Real2POD::y.
Returns the maximum of two Real3s.
Definition at line 430 of file MathUtils.h.
References max(), Arcane::Real3POD::x, Arcane::Real3POD::y, and Arcane::Real3POD::z.
|
inline |
Returns the Max mod of two Reals.
Definition at line 541 of file MathUtils.h.
|
inline |
Returns the minimum of two real numbers.
Definition at line 107 of file MathApfloat.h.
Returns the minimum of two Real2x2s.
Definition at line 366 of file MathUtils.h.
References min(), Arcane::Real2x2::x, and Arcane::Real2x2::y.
Returns the minimum of two Real3x3s.
Definition at line 376 of file MathUtils.h.
References min(), Arcane::Real3x3::x, Arcane::Real3x3::y, and Arcane::Real3x3::z.
Returns the minimum of two SimdReal2.
Definition at line 173 of file SimdMathUtils.h.
References min().
|
inline |
Returns the minimum of two SimdReal2x2.
Definition at line 193 of file SimdMathUtils.h.
References min().
Returns the minimum of two SimdReal3.
Definition at line 183 of file SimdMathUtils.h.
References min().
|
inline |
Returns the minimum of two SimdReal3x3.
Definition at line 203 of file SimdMathUtils.h.
References min().
|
inline |
|
inline |
Returns the minimum of three elements.
Uses the < operator to determine the minimum.
Definition at line 392 of file MathUtils.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Returns the minimum of two Real2.
Definition at line 346 of file MathUtils.h.
References min(), Arcane::Real2POD::x, and Arcane::Real2POD::y.
Referenced by maxMod2(), min(), min(), min(), min(), min(), min(), min(), min(), min4Real(), min8Real(), minMod(), minMod2(), and Arcane::MessagePassing::namedBarrier().
Returns the minimum of two Real3s.
Definition at line 356 of file MathUtils.h.
References min(), Arcane::Real3POD::x, Arcane::Real3POD::y, and Arcane::Real3POD::z.
Returns the Min mod of four Reals.
Definition at line 513 of file MathUtils.h.
References max(), max4Real(), min(), and min4Real().
Returns the Min mod of two Reals.
Definition at line 526 of file MathUtils.h.
Mixed product of u, v and w.
Definition at line 161 of file MathUtils.h.
Normalized cross product.
Definition at line 793 of file MathUtils.h.
References cross(), and normalizeReal3().
Normalization of a Real3.
Definition at line 778 of file MathUtils.h.
References sqrt(), Arcane::Real3POD::x, Arcane::Real3POD::y, and Arcane::Real3POD::z.
Referenced by normalizedCrossProduct3().
Symmetry of a vector u with respect to a normal plane n.
Definition at line 881 of file MathUtils.h.
References Arcane::arcaneMathError(), dot(), Arcane::Real3::normL2(), and Arcane::Convert::toDouble().
Tensor product of two Real3 vectors.
Il s'agit de \(\vec{u}=~^t(u_{x},u_{y},u_{z})\) et \(\vec{v}=~^t(v_{x},v_{y},v_{z})\) et est noté \(\vec{u} \otimes \vec{v}\), et est donné par~:
Ux*Vx Ux*Vy Ux*Vz
U \otimes V = Uy*Vx Uy*Vy Uy*Vz Uz*Vx Uz*Vy Uz*Vz
Definition at line 196 of file MathUtils.h.
References Arcane::Real3POD::x, Arcane::Real3POD::y, and Arcane::Real3POD::z.
Matrix-vector product between a tensor and a vector.
Definition at line 211 of file MathUtils.h.
References dot(), Arcane::Real3x3::x, Arcane::Real3x3::y, and Arcane::Real3x3::z.
Transposed(vector) matrix product between the transpose of a vector and a matrix.
Returns the transposed vector of the result.
Definition at line 231 of file MathUtils.h.
References dot(), Arcane::Real3POD::x, Arcane::Real3x3::x, Arcane::Real3POD::y, Arcane::Real3x3::y, Arcane::Real3POD::z, and Arcane::Real3x3::z.
Dot product of u by v in \(R^2\).
This is: \(u{\cdot}v\).
Definition at line 112 of file MathUtils.h.
References Arcane::Real2POD::x, and Arcane::Real2POD::y.
Referenced by MicroHydroModule::computeGeometricValues().
Dot product of u by v.
This is: \(u{\cdot}v\)
Definition at line 146 of file MathUtils.h.
References Arcane::Real3POD::x, Arcane::Real3POD::y, and Arcane::Real3POD::z.
Vector cross product of u by v in \(R^3\).
Definition at line 48 of file MathUtils.h.
References Arcane::Real3POD::x, Arcane::Real3POD::y, and Arcane::Real3POD::z.
Referenced by mixteMul().
Vector cross product of u by v in \(R^2\).
Definition at line 66 of file MathUtils.h.
References Arcane::Real3POD::x, and Arcane::Real3POD::y.