Eigen::internal::equalspaced_op< Scalar > Struct Template Reference

#include <NullaryFunctors.h>

Public Types

typedef NumTraits< Scalar >::Real RealScalar
 

Public Member Functions

EIGEN_DEVICE_FUNC equalspaced_op (const Scalar &start, const Scalar &step)
 
template<typename IndexType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Scalar operator() (IndexType i) const
 
template<typename Packet , typename IndexType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet packetOp (IndexType i) const
 

Public Attributes

const Scalar m_start
 
const Scalar m_step
 

Member Typedef Documentation

◆ RealScalar

template<typename Scalar >
typedef NumTraits<Scalar>::Real Eigen::internal::equalspaced_op< Scalar >::RealScalar

Constructor & Destructor Documentation

◆ equalspaced_op()

template<typename Scalar >
EIGEN_DEVICE_FUNC Eigen::internal::equalspaced_op< Scalar >::equalspaced_op ( const Scalar start,
const Scalar step 
)
inline
175 : m_start(start), m_step(step) {}
void start(const unsigned &i)
(Re-)start i-th timer
Definition: oomph_utilities.cc:243
const Scalar m_step
Definition: NullaryFunctors.h:191
const Scalar m_start
Definition: NullaryFunctors.h:190

Member Function Documentation

◆ operator()()

template<typename Scalar >
template<typename IndexType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE const Scalar Eigen::internal::equalspaced_op< Scalar >::operator() ( IndexType  i) const
inline
177  {
178  return m_start + m_step * static_cast<Scalar>(i);
179  }
int i
Definition: BiCGSTAB_step_by_step.cpp:9
SCALAR Scalar
Definition: bench_gemm.cpp:45

References i, Eigen::internal::equalspaced_op< Scalar >::m_start, and Eigen::internal::equalspaced_op< Scalar >::m_step.

◆ packetOp()

template<typename Scalar >
template<typename Packet , typename IndexType >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Packet Eigen::internal::equalspaced_op< Scalar >::packetOp ( IndexType  i) const
inline
181  {
182  const Packet cst_start = pset1<Packet>(m_start);
183  const Packet cst_step = pset1<Packet>(m_step);
184  const Packet cst_lin0 = plset<Packet>(Scalar(0));
185  const Packet cst_offset = pmadd(cst_lin0, cst_step, cst_start);
186 
187  Packet i_packet = pset1<Packet>(static_cast<Scalar>(i));
188  return pmadd(i_packet, cst_step, cst_offset);
189  }
EIGEN_STRONG_INLINE Packet4f pmadd(const Packet4f &a, const Packet4f &b, const Packet4f &c)
Definition: AltiVec/PacketMath.h:1218

References i, Eigen::internal::equalspaced_op< Scalar >::m_start, Eigen::internal::equalspaced_op< Scalar >::m_step, and Eigen::internal::pmadd().

Member Data Documentation

◆ m_start

◆ m_step


The documentation for this struct was generated from the following file: