MADNESS  0.10.1
Public Member Functions | Private Attributes | Friends | List of all members
madness::pg_operator Class Reference

This class implements the symmetry operations (not the point groups) More...

#include <pointgroupoperator.h>

Collaboration diagram for madness::pg_operator:
Collaboration graph
[legend]

Public Member Functions

 pg_operator (std::string symbol, std::string name, const std::vector< long > mm, const std::vector< long > md)
 ctor with explicit mirror maps More...
 
std::string name () const
 return the name of the symmetry operator More...
 
template<typename T , std::size_t NDIM>
Function< T, NDIMoperator() (const Function< T, NDIM > &f, bool fence=true) const
 apply the operator on an n-dimensional MRA function More...
 
template<typename T , std::size_t NDIM>
std::vector< Function< T, NDIM > > operator() (const std::vector< Function< T, NDIM > > &vf, bool fence=true) const
 apply the operator on an n-dimensional MRA function More...
 
std::string symbol () const
 

Private Attributes

std::vector< long > mapdim_
 
std::vector< long > mirrormap
 
std::string name_
 
std::string symbol_
 

Friends

std::ostream & operator<< (std::ostream &s, const pg_operator &pg_op)
 

Detailed Description

This class implements the symmetry operations (not the point groups)

Constructor & Destructor Documentation

◆ pg_operator()

madness::pg_operator::pg_operator ( std::string  symbol,
std::string  name,
const std::vector< long >  mm,
const std::vector< long >  md 
)
inline

ctor with explicit mirror maps

Member Function Documentation

◆ name()

std::string madness::pg_operator::name ( ) const
inline

return the name of the symmetry operator

References name_.

Referenced by main(), and test_projector().

◆ operator()() [1/2]

template<typename T , std::size_t NDIM>
Function<T,NDIM> madness::pg_operator::operator() ( const Function< T, NDIM > &  f,
bool  fence = true 
) const
inline

apply the operator on an n-dimensional MRA function

References madness::copy(), madness::f, madness::map_and_mirror(), mapdim_, madness::mirror(), mirrormap, name_, and NDIM.

◆ operator()() [2/2]

template<typename T , std::size_t NDIM>
std::vector<Function<T,NDIM> > madness::pg_operator::operator() ( const std::vector< Function< T, NDIM > > &  vf,
bool  fence = true 
) const
inline

apply the operator on an n-dimensional MRA function

References madness::WorldGopInterface::fence(), and madness::World::gop.

◆ symbol()

std::string madness::pg_operator::symbol ( ) const
inline

References symbol_.

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  s,
const pg_operator pg_op 
)
friend

Member Data Documentation

◆ mapdim_

std::vector<long> madness::pg_operator::mapdim_
private

Referenced by operator()().

◆ mirrormap

std::vector<long> madness::pg_operator::mirrormap
private

Referenced by operator()().

◆ name_

std::string madness::pg_operator::name_
private

Referenced by name(), and operator()().

◆ symbol_

std::string madness::pg_operator::symbol_
private

Referenced by symbol().


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