MADNESS 0.10.1
Public Types | Public Member Functions | Public Attributes | List of all members
madness::FunctionImpl< T, NDIM >::do_accumulate_trees< Q, R > Struct Template Reference

merge the coefficent boxes of this into result's tree More...

#include <funcimpl.h>

Collaboration diagram for madness::FunctionImpl< T, NDIM >::do_accumulate_trees< Q, R >:
Collaboration graph
[legend]

Public Types

typedef Range< typename dcT::const_iteratorrangeT
 

Public Member Functions

 do_accumulate_trees ()=default
 
 do_accumulate_trees (FunctionImpl< Q, NDIM > &result, const T alpha)
 
bool operator() (typename rangeT::iterator &it) const
 return the norm of the difference of this node and its "mirror" node
 
template<typename Archive >
void serialize (const Archive &ar)
 

Public Attributes

T alpha =T(1.0)
 
FunctionImpl< Q, NDIM > * result =0
 

Detailed Description

template<typename T, std::size_t NDIM>
template<typename Q, typename R>
struct madness::FunctionImpl< T, NDIM >::do_accumulate_trees< Q, R >

merge the coefficent boxes of this into result's tree

result+= alpha*this this and result don't have to have the same distribution or live in the same world no comm, and the tree should be in an consistent state by virtue

Member Typedef Documentation

◆ rangeT

template<typename T , std::size_t NDIM>
template<typename Q , typename R >
typedef Range<typename dcT::const_iterator> madness::FunctionImpl< T, NDIM >::do_accumulate_trees< Q, R >::rangeT

Constructor & Destructor Documentation

◆ do_accumulate_trees() [1/2]

template<typename T , std::size_t NDIM>
template<typename Q , typename R >
madness::FunctionImpl< T, NDIM >::do_accumulate_trees< Q, R >::do_accumulate_trees ( )
default

◆ do_accumulate_trees() [2/2]

template<typename T , std::size_t NDIM>
template<typename Q , typename R >
madness::FunctionImpl< T, NDIM >::do_accumulate_trees< Q, R >::do_accumulate_trees ( FunctionImpl< Q, NDIM > &  result,
const T  alpha 
)
inline

Member Function Documentation

◆ operator()()

template<typename T , std::size_t NDIM>
template<typename Q , typename R >
bool madness::FunctionImpl< T, NDIM >::do_accumulate_trees< Q, R >::operator() ( typename rangeT::iterator &  it) const
inline

◆ serialize()

template<typename T , std::size_t NDIM>
template<typename Q , typename R >
template<typename Archive >
void madness::FunctionImpl< T, NDIM >::do_accumulate_trees< Q, R >::serialize ( const Archive &  ar)
inline

References MADNESS_EXCEPTION.

Member Data Documentation

◆ alpha

template<typename T , std::size_t NDIM>
template<typename Q , typename R >
T madness::FunctionImpl< T, NDIM >::do_accumulate_trees< Q, R >::alpha =T(1.0)

◆ result

template<typename T , std::size_t NDIM>
template<typename Q , typename R >
FunctionImpl<Q,NDIM>* madness::FunctionImpl< T, NDIM >::do_accumulate_trees< Q, R >::result =0

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