9inline AVXSimdReal operator- (AVXSimdReal a,AVXSimdReal b)
12 _mm256_sub_pd (a.v0,b.v0)
19 _mm256_sub_pd (a.v0,_mm256_set1_pd(b))
26 _mm256_sub_pd (_mm256_set1_pd(b), a.v0)
30inline AVXSimdReal operator+ (AVXSimdReal a,AVXSimdReal b)
33 _mm256_add_pd (a.v0,b.v0)
40 _mm256_add_pd (a.v0,_mm256_set1_pd(b))
47 _mm256_add_pd (_mm256_set1_pd(b), a.v0)
51inline AVXSimdReal operator* (AVXSimdReal a,AVXSimdReal b)
54 _mm256_mul_pd (a.v0,b.v0)
61 _mm256_mul_pd (a.v0,_mm256_set1_pd(b))
68 _mm256_mul_pd (_mm256_set1_pd(b), a.v0)
72inline AVXSimdReal operator/ (AVXSimdReal a,AVXSimdReal b)
75 _mm256_div_pd (a.v0,b.v0)
82 _mm256_div_pd (a.v0,_mm256_set1_pd(b))
89 _mm256_div_pd (_mm256_set1_pd(b), a.v0)
97 _mm256_min_pd (a.v0,b.v0)
104 _mm256_min_pd (a.v0,_mm256_set1_pd(b))
111 _mm256_min_pd (_mm256_set1_pd(b), a.v0)
120 _mm256_max_pd (a.v0,b.v0)
127 _mm256_max_pd (a.v0,_mm256_set1_pd(b))
134 _mm256_max_pd (_mm256_set1_pd(b), a.v0)
156 return AVXSimdReal::fromScalar(math::exp(za[0]),math::exp(za[1]),math::exp(za[2]),math::exp(za[3]));
165 return AVXSimdReal::fromScalar(math::log10(za[0]),math::log10(za[1]),math::log10(za[2]),math::log10(za[3]));
__host__ __device__ Real2 min(Real2 a, Real2 b)
Retourne le minimum de deux Real2.
T max(const T &a, const T &b, const T &c)
Retourne le maximum de trois éléments.
__host__ __device__ double sqrt(double v)
Racine carrée de v.
__host__ __device__ double log10(double v)
Logarithme décimal de v.
__host__ __device__ double exp(double v)
Exponentielle de v.
Real2 operator*(Real sca, const Real2Proxy &vec)
Multiplication par un scalaire.
AVXSimdX4Real AVXSimdReal
Vecteur de 'double' en implémentation par SSE.
Real2 operator/(const Real2Proxy &vec, Real sca)
Division par un scalaire.
double Real
Type représentant un réel.