MADNESS  0.10.1
Public Member Functions | Friends | List of all members
madness::LRFunctorBase< T, NDIM, LDIM > Struct Template Referenceabstract

the low-rank functor is what the LowRankFunction will represent More...

#include <lowrankfunction.h>

Inheritance diagram for madness::LRFunctorBase< T, NDIM, LDIM >:
Inheritance graph
[legend]

Public Member Functions

virtual ~LRFunctorBase ()
 
virtual Function< T, LDIM > inner (const Function< T, LDIM > &rhs, const particle< LDIM > p1, const particle< LDIM > p2) const
 
virtual std::vector< Function< T, LDIM > > inner (const std::vector< Function< T, LDIM >> &rhs, const particle< LDIM > p1, const particle< LDIM > p2) const =0
 
virtual Tensor< T >::scalar_type norm2 () const
 
virtual T operator() (const Vector< T, NDIM > &r) const =0
 
virtual Worldworld () const =0
 

Friends

Function< T, LDIM > inner (const LRFunctorBase &functor, const Function< T, LDIM > &rhs, const particle< LDIM > p1, const particle< LDIM > p2)
 
std::vector< Function< T, LDIM > > inner (const LRFunctorBase &functor, const std::vector< Function< T, LDIM >> &rhs, const particle< LDIM > p1, const particle< LDIM > p2)
 

Detailed Description

template<typename T, std::size_t NDIM, std::size_t LDIM = NDIM/2>
struct madness::LRFunctorBase< T, NDIM, LDIM >

the low-rank functor is what the LowRankFunction will represent

derive from this class : must implement in inner product may implement an operator()(const coord_nd&)

Constructor & Destructor Documentation

◆ ~LRFunctorBase()

template<typename T , std::size_t NDIM, std::size_t LDIM = NDIM/2>
virtual madness::LRFunctorBase< T, NDIM, LDIM >::~LRFunctorBase ( )
inlinevirtual

Member Function Documentation

◆ inner() [1/2]

template<typename T , std::size_t NDIM, std::size_t LDIM = NDIM/2>
virtual Function<T,LDIM> madness::LRFunctorBase< T, NDIM, LDIM >::inner ( const Function< T, LDIM > &  rhs,
const particle< LDIM >  p1,
const particle< LDIM >  p2 
) const
inlinevirtual

◆ inner() [2/2]

template<typename T , std::size_t NDIM, std::size_t LDIM = NDIM/2>
virtual std::vector<Function<T,LDIM> > madness::LRFunctorBase< T, NDIM, LDIM >::inner ( const std::vector< Function< T, LDIM >> &  rhs,
const particle< LDIM >  p1,
const particle< LDIM >  p2 
) const
pure virtual

◆ norm2()

template<typename T , std::size_t NDIM, std::size_t LDIM = NDIM/2>
virtual Tensor<T>::scalar_type madness::LRFunctorBase< T, NDIM, LDIM >::norm2 ( ) const
inlinevirtual

◆ operator()()

template<typename T , std::size_t NDIM, std::size_t LDIM = NDIM/2>
virtual T madness::LRFunctorBase< T, NDIM, LDIM >::operator() ( const Vector< T, NDIM > &  r) const
pure virtual

◆ world()

template<typename T , std::size_t NDIM, std::size_t LDIM = NDIM/2>
virtual World& madness::LRFunctorBase< T, NDIM, LDIM >::world ( ) const
pure virtual

Friends And Related Function Documentation

◆ inner [1/2]

template<typename T , std::size_t NDIM, std::size_t LDIM = NDIM/2>
Function<T,LDIM> inner ( const LRFunctorBase< T, NDIM, LDIM > &  functor,
const Function< T, LDIM > &  rhs,
const particle< LDIM >  p1,
const particle< LDIM >  p2 
)
friend

◆ inner [2/2]

template<typename T , std::size_t NDIM, std::size_t LDIM = NDIM/2>
std::vector<Function<T,LDIM> > inner ( const LRFunctorBase< T, NDIM, LDIM > &  functor,
const std::vector< Function< T, LDIM >> &  rhs,
const particle< LDIM >  p1,
const particle< LDIM >  p2 
)
friend

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