Go to the documentation of this file.
10 #ifndef EIGEN_CXX11_TENSOR_TENSOR_FUNCTORS_H
11 #define EIGEN_CXX11_TENSOR_TENSOR_FUNCTORS_H
20 template <
typename Scalar>
26 template <
typename Scalar>
34 template <
typename Scalar>
39 template <
typename Scalar>
43 template <
typename Scalar>
51 template <
typename Scalar>
72 const Packet one = pset1<Packet>(T(1));
87 template<
typename Reducer,
typename Device>
103 *accum =
sum_op(*accum, t);
105 template <
typename Packet>
107 (*accum) = padd<Packet>(*accum, p);
114 template <
typename Packet>
121 template <
typename Packet>
125 template <
typename Packet>
132 template <
typename T,
typename Device>
151 *accum =
sum_op(*accum, t);
154 template <
typename Packet>
156 (*accum) = padd<Packet>(*accum, p);
164 template <
typename Packet>
171 template <
typename Packet>
175 template <
typename Packet>
186 template <
typename T,
typename Device>
195 template <
typename T,
bool IsMax = true,
bool IsInteger = true>
201 template <
typename T>
207 template <
typename T>
213 template <
typename T>
227 if (t > *accum) { *accum = t; }
229 template <
typename Packet>
231 (*accum) = pmax<Packet>(*accum, p);
236 template <
typename Packet>
243 template <
typename Packet>
247 template <
typename Packet>
253 template <
typename T,
typename Device>
268 if (t < *accum) { *accum = t; }
270 template <
typename Packet>
272 (*accum) = pmin<Packet>(*accum, p);
277 template <
typename Packet>
284 template <
typename Packet>
288 template <
typename Packet>
294 template <
typename T,
typename Device>
310 (*accum) = prod_op(*accum, t);
312 template <
typename Packet>
314 (*accum) = pmul<Packet>(*accum, p);
321 template <
typename Packet>
328 template <
typename Packet>
332 template <
typename Packet>
339 template <
typename T,
typename Device>
354 *accum = *accum && t;
364 template <
typename Device>
378 *accum = *accum || t;
388 template <
typename Device>
404 if (t.second > accum->second) { *accum = t; }
414 template <
typename T,
typename Device>
429 if (t.second < accum->second) { *accum = t; }
439 template <
typename T,
typename Device>
448 template <
typename T,
typename Index,
size_t NumDims>
457 for (
size_t i = 0; i < NumDims; ++i) {
464 for (
size_t i = 0; i < NumDims; ++i) {
465 T offset = coordinates[i] -
m_means[i];
476 template <
typename T,
typename Index,
size_t NumDims>
489 #endif // EIGEN_CXX11_TENSOR_TENSOR_FUNCTORS_H
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet initializePacket() const
#define EIGEN_EMPTY_STRUCT_CTOR(X)
EIGEN_DEVICE_FUNC T operator()(const array< Index, NumDims > &coordinates) const
EIGEN_DEVICE_FUNC scalar_mod_op(const Scalar &divisor)
static const bool PacketAccess
static const bool PacketAccess
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE bool initialize() const
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T bottom_value()
static const bool IsStateful
static const bool PacketAccess
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T initialize() const
static const bool PacketAccess
static const bool IsStateful
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T finalizeBoth(const T saccum, const Packet &vaccum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reduce(const T &t, T *accum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reducePacket(const Packet &p, Packet *accum) const
static const bool PacketAccess
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet finalizePacket(const Packet &vaccum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T initialize() const
EIGEN_DEVICE_FUNC unpacket_traits< Packet >::type predux_mul(const Packet &a)
static const bool PacketAccess
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T finalize(const T accum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reduce(const T t, T *accum)
EIGEN_DEVICE_FUNC Packet pdiv(const Packet &a, const Packet &b)
EIGEN_DEVICE_FUNC GaussianGenerator(const array< T, NumDims > &means, const array< T, NumDims > &std_devs)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T initialize() const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Scalar operator()(const Scalar &a, const Scalar &b) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T initialize() const
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T bottom_value()
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reducePacket(const Packet &p, Packet *accum) const
static const bool IsStateful
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE MeanReducer()
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T finalizeBoth(const T saccum, const Packet &vaccum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet finalizePacket(const Packet &vaccum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reduce(const T t, T *accum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T finalizeBoth(const T saccum, const Packet &vaccum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T finalize(const T &accum) const
static const bool IsStateful
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE T exp(const T &x)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet initializePacket() const
static const bool PacketAccess
static const bool IsStateful
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reduce(const T t, T *accum) const
static const bool PacketAccess
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reducePacket(const Packet &p, Packet *accum)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T finalizeBoth(const T saccum, const Packet &vaccum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE bool finalize(bool accum) const
EIGEN_EMPTY_STRUCT_CTOR(scalar_mod2_op)
EIGEN_STRONG_INLINE Packet2cf pnegate(const Packet2cf &a)
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE T mini(const T &x, const T &y)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T initialize() const
EIGEN_DEVICE_FUNC Scalar operator()(const Scalar &a, const Scalar &b) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet finalizePacket(const Packet &vaccum) const
#define EIGEN_STRONG_INLINE
static const bool IsStateful
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T finalizeBoth(const T saccum, const Packet &vaccum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet initializePacket() const
static const bool PacketAccess
static const bool IsStateful
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE T fmod(const T &a, const T &b)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T initialize() const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE bool finalize(bool accum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet finalizePacket(const Packet &vaccum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T initialize() const
EIGEN_DEVICE_FUNC Scalar operator()(const Scalar &a) const
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T bottom_value()
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet initializePacket() const
EIGEN_DECLARE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS Packet pexp(const Packet &a)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet finalizePacket(const Packet &vaccum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet initializePacket() const
EIGEN_DEVICE_FUNC unpacket_traits< Packet >::type predux(const Packet &a)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE bool initialize() const
static const bool PacketAccess
EIGEN_DEFAULT_DENSE_INDEX_TYPE DenseIndex
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reduce(const T t, T *accum) const
array< T, NumDims > m_two_sigmas
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet packetOp(const Packet &x) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reduce(bool t, bool *accum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T finalize(const T accum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T finalize(const T &accum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reducePacket(const Packet &p, Packet *accum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reduce(bool t, bool *accum) const
EIGEN_DEVICE_FUNC Packet padd(const Packet &a, const Packet &b)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T finalize(const T accum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reduce(const T t, T *accum) const
array< T, NumDims > m_means
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reducePacket(const Packet &p, Packet *accum) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void reduce(const T t, T *accum) const
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T bottom_value()
EIGEN_DEVICE_FUNC EIGEN_ALWAYS_INLINE T maxi(const T &x, const T &y)
static const bool IsStateful
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T finalize(const T accum) const
EIGEN_DEVICE_FUNC unpacket_traits< Packet >::type predux_min(const Packet &a)
EIGEN_EMPTY_STRUCT_CTOR(scalar_fmod_op)
static const bool IsStateful
Holds information about the various numeric (i.e. scalar) types allowed by Eigen.
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE T finalize(const T accum) const
EIGEN_DEVICE_FUNC unpacket_traits< Packet >::type predux_max(const Packet &a)
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
control_box_rst
Author(s): Christoph Rösmann
autogenerated on Wed Mar 2 2022 00:06:44