15 amrex::GpuArray<T, 9>
vv = {Traits::zero(), Traits::zero(), Traits::zero(),
16 Traits::zero(), Traits::zero(), Traits::zero(),
17 Traits::zero(), Traits::zero(), Traits::zero()};
15 amrex::GpuArray<T, 9>
vv = {Traits::zero(), Traits::zero(), Traits::zero(), {
…};
27 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
constexpr TensorT() =
default;
29 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
constexpr TensorT(
29 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
constexpr TensorT( {
…}
42 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
TensorT(
46 const bool transpose =
false);
56 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
static constexpr TensorT<T>
59 return TensorT<T>{Traits::zero(), Traits::zero(), Traits::zero(),
60 Traits::zero(), Traits::zero(), Traits::zero(),
61 Traits::zero(), Traits::zero(), Traits::zero()};
64 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
static constexpr TensorT<T>
67 return TensorT{Traits::one(), Traits::zero(), Traits::zero(),
68 Traits::zero(), Traits::one(), Traits::zero(),
69 Traits::zero(), Traits::zero(), Traits::one()};
72 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
void rows(
74 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
void cols(
77 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
VectorT<T> x() const noexcept;
78 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
VectorT<T>
y() const noexcept;
79 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
VectorT<T>
z() const noexcept;
81 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
VectorT<T>
cx() const noexcept;
82 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
VectorT<T>
cy() const noexcept;
83 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
VectorT<T>
cz() const noexcept;
85 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
xx() & noexcept
85 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
xx() & noexcept {
…}
89 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
xy() &
noexcept
89 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
xy() &
noexcept {
…}
93 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
xz() &
noexcept
93 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
xz() &
noexcept {
…}
98 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
yx() &
noexcept
98 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
yx() &
noexcept {
…}
102 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
yy() &
noexcept
102 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
yy() &
noexcept {
…}
106 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
yz() &
noexcept
106 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
yz() &
noexcept {
…}
111 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
zx() &
noexcept
111 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
zx() &
noexcept {
…}
115 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
zy() &
noexcept
115 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
zy() &
noexcept {
…}
119 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
zz() &
noexcept
119 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T&
zz() &
noexcept {
…}
124 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
xx() const& noexcept
124 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
xx() const& noexcept {
…}
128 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
xy() const& noexcept
128 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
xy() const& noexcept {
…}
132 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
xz() const& noexcept
132 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
xz() const& noexcept {
…}
137 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
yx() const& noexcept
137 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
yx() const& noexcept {
…}
141 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
yy() const& noexcept
141 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
yy() const& noexcept {
…}
145 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
yz() const& noexcept
145 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
yz() const& noexcept {
…}
150 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
zx() const& noexcept
150 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
zx() const& noexcept {
…}
154 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
zy() const& noexcept
154 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
zy() const& noexcept {
…}
158 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
zz() const& noexcept
158 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
zz() const& noexcept {
…}
167 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T&
173 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T*
data() noexcept
173 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T*
data() noexcept {
…}
177 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T*
data() const noexcept
177 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
const T*
data() const noexcept {
…}
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE const T & xz() const &noexcept
Definition tensor.H:132
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE const T * data() const noexcept
Definition tensor.H:177
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE constexpr TensorT< T > identity() noexcept
Definition tensor.H:65
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T & zy() &noexcept
Definition tensor.H:115
const T * const_iterator
Definition tensor.H:24
TensorT(const TensorT &)=default
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE VectorT< T > y() const noexcept
Definition tensorI.H:56
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T & zz() &noexcept
Definition tensor.H:119
const_iterator cbegin() const noexcept
Definition tensor.H:184
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T & zx() &noexcept
Definition tensor.H:111
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T & yy() &noexcept
Definition tensor.H:102
TensorT & operator=(TensorT &&) &=default
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE const T & yz() const &noexcept
Definition tensor.H:145
int size_type
Definition tensor.H:20
static constexpr int ncomp
Definition tensor.H:19
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE constexpr TensorT()=default
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE VectorT< T > z() const noexcept
Definition tensorI.H:63
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE VectorT< T > cz() const noexcept
Definition tensorI.H:84
T & reference
Definition tensor.H:22
iterator end() noexcept
Definition tensor.H:183
TensorT & operator=(const TensorT &) &&=delete
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE const T & zx() const &noexcept
Definition tensor.H:150
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE VectorT< T > x() const noexcept
Definition tensorI.H:49
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void cols(const VectorT< T > &x, const VectorT< T > &y, const VectorT< T > &z) noexcept
Definition tensorI.H:36
TensorT & operator=(TensorT &&) &&=delete
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T & xx() &noexcept
Definition tensor.H:85
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE const T & zz() const &noexcept
Definition tensor.H:158
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE VectorT< T > cy() const noexcept
Definition tensorI.H:77
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T & yx() &noexcept
Definition tensor.H:98
iterator begin() noexcept
Definition tensor.H:182
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void rows(const VectorT< T > &x, const VectorT< T > &y, const VectorT< T > &z) noexcept
Definition tensorI.H:25
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE const T & xy() const &noexcept
Definition tensor.H:128
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE const T & zy() const &noexcept
Definition tensor.H:154
T * iterator
Definition tensor.H:23
TensorT & operator=(const TensorT &) &=default
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE constexpr TensorT(const T &xx, const T &xy, const T &xz, const T &yx, const T &yy, const T &yz, const T &zx, const T &zy, const T &zz)
Definition tensor.H:29
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE const T & xx() const &noexcept
Definition tensor.H:124
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T & xz() &noexcept
Definition tensor.H:93
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE VectorT< T > cx() const noexcept
Definition tensorI.H:70
amrex::GpuArray< T, 9 > vv
Definition tensor.H:15
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE const T & yy() const &noexcept
Definition tensor.H:141
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE const T & yx() const &noexcept
Definition tensor.H:137
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE const T & operator[](size_type pos) const &
Definition tensor.H:168
TensorT(TensorT &&)=default
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T * data() noexcept
Definition tensor.H:173
AMREX_GPU_HOST_DEVICE static AMREX_FORCE_INLINE constexpr TensorT< T > zero() noexcept
Definition tensor.H:57
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T & operator[](size_type pos) &
Definition tensor.H:163
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T & xy() &noexcept
Definition tensor.H:89
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T & yz() &noexcept
Definition tensor.H:106
size_type size() const noexcept
Definition tensor.H:186
const_iterator cend() const noexcept
Definition tensor.H:185
T value_type
Definition tensor.H:21