QMCPACK
OTDot< Tensor< T1, 3 >, SymTensor< T2, 3 > > Struct Template Reference
+ Collaboration diagram for OTDot< Tensor< T1, 3 >, SymTensor< T2, 3 > >:

Public Types

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

Static Public Member Functions

static Tensor< Type_t, 3 > apply (const Tensor< T1, 3 > &lhs, const SymTensor< T2, 3 > &rhs)
 

Detailed Description

template<class T1, class T2>
struct qmcplusplus::OTDot< Tensor< T1, 3 >, SymTensor< T2, 3 > >

Definition at line 404 of file TinyVectorTensorOps.h.

Member Typedef Documentation

◆ Type_t

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

Definition at line 406 of file TinyVectorTensorOps.h.

Member Function Documentation

◆ apply()

static Tensor<Type_t, 3> apply ( const Tensor< T1, 3 > &  lhs,
const SymTensor< T2, 3 > &  rhs 
)
inlinestatic

Definition at line 407 of file TinyVectorTensorOps.h.

408  {
409  return Tensor<Type_t, 3>(lhs(0, 0) * rhs(0, 0) + lhs(0, 1) * rhs(1, 0) + lhs(0, 2) * rhs(2, 0),
410  lhs(0, 0) * rhs(0, 1) + lhs(0, 1) * rhs(1, 1) + lhs(0, 2) * rhs(2, 1),
411  lhs(0, 0) * rhs(0, 2) + lhs(0, 1) * rhs(1, 2) + lhs(0, 2) * rhs(2, 2),
412  lhs(1, 0) * rhs(0, 0) + lhs(1, 1) * rhs(1, 0) + lhs(1, 2) * rhs(2, 0),
413  lhs(1, 0) * rhs(0, 1) + lhs(1, 1) * rhs(1, 1) + lhs(1, 2) * rhs(2, 1),
414  lhs(1, 0) * rhs(0, 2) + lhs(1, 1) * rhs(1, 2) + lhs(1, 2) * rhs(2, 2),
415  lhs(2, 0) * rhs(0, 0) + lhs(2, 1) * rhs(1, 0) + lhs(2, 2) * rhs(2, 0),
416  lhs(2, 0) * rhs(0, 1) + lhs(2, 1) * rhs(1, 1) + lhs(2, 2) * rhs(2, 1),
417  lhs(2, 0) * rhs(0, 2) + lhs(2, 1) * rhs(1, 2) + lhs(2, 2) * rhs(2, 2));
418  }

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