MADNESS  version 0.9
Public Member Functions | List of all members
madness::Projector< T, NDIM > Class Template Reference

simple projector class for 1- and 2-particle projectors More...

#include <projector.h>

Public Member Functions

 Projector ()
 
 Projector (const Function< T, NDIM > &p, const int particle=0)
 simple constructor with only one orbital to project out More...
 
 Projector (const std::vector< Function< T, NDIM > > &p, const int particle=0)
 constructor with a set of orbitals to project out More...
 
int & particle ()
 
const int & particle () const
 
const std::vector< Function< T,
NDIM > > & 
p () const
 get a const reference to the orbitals More...
 
template<std::size_t FDIM>
enable_if_c< NDIM==FDIM,
Function< T, FDIM > >::type 
operator() (const Function< T, FDIM > &f) const
 project f on p: |result> = | p> More...
 
template<std::size_t FDIM>
enable_if_c< 2 *NDIM==FDIM,
Function< T, FDIM > >::type 
operator() (const Function< T, FDIM > &f) const
 project p out of f: |result(1,2)> = sum_p | p(1)><p(1) | f(1,2)> More...
 

Detailed Description

template<typename T, std::size_t NDIM>
class madness::Projector< T, NDIM >

simple projector class for 1- and 2-particle projectors

Constructor & Destructor Documentation

template<typename T, std::size_t NDIM>
madness::Projector< T, NDIM >::Projector ( )
inline
template<typename T, std::size_t NDIM>
madness::Projector< T, NDIM >::Projector ( const Function< T, NDIM > &  p,
const int  particle = 0 
)
inline

simple constructor with only one orbital to project out

template<typename T, std::size_t NDIM>
madness::Projector< T, NDIM >::Projector ( const std::vector< Function< T, NDIM > > &  p,
const int  particle = 0 
)
inline

constructor with a set of orbitals to project out

Member Function Documentation

template<typename T, std::size_t NDIM>
template<std::size_t FDIM>
enable_if_c<NDIM==FDIM, Function<T,FDIM> >::type madness::Projector< T, NDIM >::operator() ( const Function< T, FDIM > &  f) const
inline

project f on p: |result> = | p>

<p | f>

template<typename T, std::size_t NDIM>
template<std::size_t FDIM>
enable_if_c<2*NDIM==FDIM, Function<T,FDIM> >::type madness::Projector< T, NDIM >::operator() ( const Function< T, FDIM > &  f) const
inline

project p out of f: |result(1,2)> = sum_p | p(1)><p(1) | f(1,2)>

template<typename T, std::size_t NDIM>
const std::vector<Function<T,NDIM> >& madness::Projector< T, NDIM >::p ( ) const
inline

get a const reference to the orbitals

template<typename T, std::size_t NDIM>
int& madness::Projector< T, NDIM >::particle ( )
inline
template<typename T, std::size_t NDIM>
const int& madness::Projector< T, NDIM >::particle ( ) const
inline

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