12#ifndef ARCANE_UTILS_SIMDOPERATION_H
13#define ARCANE_UTILS_SIMDOPERATION_H
28#if defined(ARCANE_HAS_AVX512)
29#include "arcane/utils/SimdAVX512Generated.h"
31#if defined(ARCANE_HAS_AVX)
32#include "arcane/utils/SimdAVXGenerated.h"
34#if defined(ARCANE_HAS_SSE)
35#include "arcane/utils/SimdSSEGenerated.h"
38#include "arcane/utils/SimdEMULGenerated.h"
46 return SimdReal3(a.x + b.x,a.y + b.y,a.z + b.z);
58 return SimdReal3(a.x - b.x,a.y - b.y,a.z - b.z);
64 return SimdReal3(a.x * b,a.y * b,a.z * b);
70 return SimdReal3(a.x * b,a.y * b,a.z * b);
76 return SimdReal3(b * a.x,b * a.y,b * a.z);
82 return SimdReal3(b * a.x,b * a.y,b * a.z);
88 return SimdReal3(a.x * b.x,a.y * b.y,a.z * b.z);
94 return SimdReal3(a.x / b,a.y / b,a.z / b);
100 return SimdReal3(a.x / b,a.y / b,a.z / b);
Représente un Real2 vectoriel.
Représente un Real2x2 vectoriel.
Représente un Real3 vectoriel.
Représente un Real3x3 vectoriel.
SimdInfo::SimdReal SimdReal
Vecteur SIMD de réel.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
Real2 operator*(Real sca, const Real2Proxy &vec)
Multiplication par un scalaire.
double Real
Type représentant un réel.
Real2 operator/(const Real2Proxy &vec, Real sca)
Division par un scalaire.