MADNESS 0.10.1
Public Types | Public Member Functions | Public Attributes | List of all members
madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT > Struct Template Reference

#include <funcimpl.h>

Collaboration diagram for madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >:
Collaboration graph
[legend]

Public Types

typedef FunctionImpl< T, LDIM > implL
 
typedef FunctionImpl< T, NDIMimplT
 

Public Member Functions

 hartree_convolute_leaf_op ()=default
 
 hartree_convolute_leaf_op (const implT *f, const implL *g, const opT *op)
 
bool do_error_leaf_op () const
 
bool operator() (const Key< NDIM > &key) const
 no pre-determination
 
bool operator() (const Key< NDIM > &key, const GenTensor< T > &coeff) const
 no post-determination
 
bool operator() (const Key< NDIM > &key, const Tensor< T > &fcoeff, const Tensor< T > &gcoeff) const
 post-determination: true if f is a leaf and the result is well-represented
 
template<typename Archive >
void serialize (Archive &ar)
 

Public Attributes

const FunctionImpl< T, NDIM > * f
 
const implLg
 
const opT * op
 

Detailed Description

template<typename T, size_t NDIM, size_t LDIM, typename opT>
struct madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >

returns true if the result of a hartree_product is a leaf node criteria are error, norm and its effect on a convolution operator

Member Typedef Documentation

◆ implL

template<typename T , size_t NDIM, size_t LDIM, typename opT >
typedef FunctionImpl<T,LDIM> madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::implL

◆ implT

template<typename T , size_t NDIM, size_t LDIM, typename opT >
typedef FunctionImpl<T,NDIM> madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::implT

Constructor & Destructor Documentation

◆ hartree_convolute_leaf_op() [1/2]

template<typename T , size_t NDIM, size_t LDIM, typename opT >
madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::hartree_convolute_leaf_op ( )
default

◆ hartree_convolute_leaf_op() [2/2]

template<typename T , size_t NDIM, size_t LDIM, typename opT >
madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::hartree_convolute_leaf_op ( const implT f,
const implL g,
const opT *  op 
)
inline

Member Function Documentation

◆ do_error_leaf_op()

template<typename T , size_t NDIM, size_t LDIM, typename opT >
bool madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::do_error_leaf_op ( ) const
inline

◆ operator()() [1/3]

template<typename T , size_t NDIM, size_t LDIM, typename opT >
bool madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::operator() ( const Key< NDIM > &  key) const
inline

no pre-determination

◆ operator()() [2/3]

template<typename T , size_t NDIM, size_t LDIM, typename opT >
bool madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::operator() ( const Key< NDIM > &  key,
const GenTensor< T > &  coeff 
) const
inline

no post-determination

References MADNESS_EXCEPTION.

◆ operator()() [3/3]

template<typename T , size_t NDIM, size_t LDIM, typename opT >
bool madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::operator() ( const Key< NDIM > &  key,
const Tensor< T > &  fcoeff,
const Tensor< T > &  gcoeff 
) const
inline

post-determination: true if f is a leaf and the result is well-represented

Parameters
[in]keythe hi-dimensional key (breaks into keys for f and g)
[in]fcoeffcoefficients of f of its appropriate key in NS form
[in]gcoeffcoefficients of g of its appropriate key in NS form

References d, madness::error(), madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::f, madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::g, madness::Key< NDIM >::level(), norm(), madness::Tensor< T >::normf(), madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::op, and thresh.

◆ serialize()

template<typename T , size_t NDIM, size_t LDIM, typename opT >
template<typename Archive >
void madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::serialize ( Archive &  ar)
inline

Member Data Documentation

◆ f

template<typename T , size_t NDIM, size_t LDIM, typename opT >
const FunctionImpl<T,NDIM>* madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::f

◆ g

template<typename T , size_t NDIM, size_t LDIM, typename opT >
const implL* madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::g

◆ op

template<typename T , size_t NDIM, size_t LDIM, typename opT >
const opT* madness::hartree_convolute_leaf_op< T, NDIM, LDIM, opT >::op

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