QMCPACK
OTCDot< T1, T2, 3 > Struct Template Reference
+ Collaboration diagram for OTCDot< T1, T2, 3 >:

Public Types

using Type_t = typename BinaryReturn< T1, T2, OpMultiply >::Type_t
 

Static Public Member Functions

static Type_t apply (const TinyVector< std::complex< T1 >, 3 > &lhs, const TinyVector< std::complex< T2 >, 3 > &rhs)
 
static std::complex< Type_tcplx_apply (const TinyVector< std::complex< T1 >, 3 > &lhs, const TinyVector< std::complex< T2 >, 3 > &rhs)
 

Detailed Description

template<class T1, class T2>
struct qmcplusplus::OTCDot< T1, T2, 3 >

Definition at line 78 of file ParticleAttribOps.h.

Member Typedef Documentation

◆ Type_t

using Type_t = typename BinaryReturn<T1, T2, OpMultiply>::Type_t

Definition at line 80 of file ParticleAttribOps.h.

Member Function Documentation

◆ apply()

static Type_t apply ( const TinyVector< std::complex< T1 >, 3 > &  lhs,
const TinyVector< std::complex< T2 >, 3 > &  rhs 
)
inlinestatic

Definition at line 81 of file ParticleAttribOps.h.

82  {
83  return lhs[0].real() * rhs[0].real() - lhs[0].imag() * rhs[0].imag() + lhs[1].real() * rhs[1].real() -
84  lhs[1].imag() * rhs[1].imag() + lhs[2].real() * rhs[2].real() - lhs[2].imag() * rhs[2].imag();
85  }

◆ cplx_apply()

static std::complex<Type_t> cplx_apply ( const TinyVector< std::complex< T1 >, 3 > &  lhs,
const TinyVector< std::complex< T2 >, 3 > &  rhs 
)
inlinestatic

Definition at line 87 of file ParticleAttribOps.h.

89  {
90  return lhs[0] * rhs[0] + lhs[1] * rhs[1] + lhs[2] * rhs[2];
91  }

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