3#include <AMReX_Config.H>
19 return a.
x*b.
x + a.
y*b.
y + a.
z*b.
z;
31 return XDim3{.
x = a.
x + b.
x, .y = a.
y + b.
y, .z = a.
z + b.
z};
37 return XDim3{.
x = a.
x - b.
x, .y = a.
y - b.
y, .z = a.
z - b.
z};
41requires (std::same_as<T, Dim3> || std::same_as<T, XDim3>)
42std::ostream&
operator<< (std::ostream& os,
const T& d)
44 os <<
'(' << d.x <<
',' << d.y <<
',' << d.z <<
')';
#define AMREX_FORCE_INLINE
Definition AMReX_Extension.H:119
#define AMREX_GPU_HOST_DEVICE
Definition AMReX_GpuQualifiers.H:20
amrex_real Real
Floating Point Type for Fields.
Definition AMReX_REAL.H:79
Definition AMReX_Amr.cpp:50
__host__ __device__ Real dot_product(XDim3 const &a, XDim3 const &b)
Definition AMReX_Dim3.H:17
__host__ __device__ XDim3 cross_product(XDim3 const &a, XDim3 const &b)
Definition AMReX_Dim3.H:23
__host__ __device__ XDim3 operator-(XDim3 const &a, XDim3 const &b)
Definition AMReX_Dim3.H:35
__host__ __device__ XDim3 operator+(XDim3 const &a, XDim3 const &b)
Definition AMReX_Dim3.H:29
Definition AMReX_Dim3.H:13
int x
Definition AMReX_Dim3.H:13
int z
Definition AMReX_Dim3.H:13
int y
Definition AMReX_Dim3.H:13
Definition AMReX_Dim3.H:14
Real x
Definition AMReX_Dim3.H:14
Real z
Definition AMReX_Dim3.H:14
Real y
Definition AMReX_Dim3.H:14