MADNESS  0.10.1
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Friends | List of all members
madness::CC_vecfunction Struct Reference

A helper structure which holds a map of functions. More...

#include <CCStructures.h>

Inheritance diagram for madness::CC_vecfunction:
Inheritance graph
[legend]
Collaboration diagram for madness::CC_vecfunction:
Collaboration graph
[legend]

Public Types

typedef std::map< std::size_t, CCFunction< double, 3 > > CC_functionmap
 

Public Member Functions

 CC_vecfunction ()
 
 CC_vecfunction (const CC_vecfunction &other)
 copy ctor (shallow) More...
 
 CC_vecfunction (const FuncType type_)
 
 CC_vecfunction (const std::vector< CCFunction< double, 3 >> &v)
 
 CC_vecfunction (const std::vector< CCFunction< double, 3 >> &v, const FuncType type_)
 
 CC_vecfunction (const vector_real_function_3d &v)
 
 CC_vecfunction (const vector_real_function_3d &v, const FuncType &type)
 
 CC_vecfunction (const vector_real_function_3d &v, const FuncType &type, const size_t &freeze)
 
vector_real_function_3d get_vecfunction () const
 Returns all the functions of the map as vector. More...
 
hashT hash () const
 
void insert (const size_t &i, const CCFunction< double, 3 > &f)
 setter More...
 
bool is_converged (const double econv, const double dconv) const
 
std::string name (const int ex) const
 excitation irrep (direct product of x function and corresponding orbital) More...
 
CCFunction< double, 3 > & operator() (const CCFunction< double, 3 > &i)
 getter More...
 
const CCFunction< double, 3 > & operator() (const CCFunction< double, 3 > &i) const
 getter More...
 
CCFunction< double, 3 > & operator() (const size_t &i)
 getter More...
 
const CCFunction< double, 3 > & operator() (const size_t &i) const
 getter More...
 
CC_vecfunction operator* (const double &fac) const
 scalar multiplication More...
 
bool operator< (const CC_vecfunction &b) const
 operator needed for sort operation (sorted by omega values) More...
 
CC_vecfunctionoperator= (const CC_vecfunction &other)
 assignment operator, shallow wrt the functions More...
 
void plot (const std::string &msg="") const
 
void print_size (const std::string &msg="!?not assigned!?") const
 Print the memory of which is used by all the functions in the map. More...
 
void save_restartdata (World &world, std::string filename) const
 
void scale (const double &factor)
 scaling (inplace) More...
 
template<typename Archive >
void serialize (const Archive &ar)
 
void set_functions (const vector_real_function_3d &v, const FuncType &type, const size_t &freeze)
 setter More...
 
size_t size () const
 Get the size vector (number of functions in the map) More...
 

Static Public Member Functions

static CC_vecfunction load_restartdata (World &world, std::string filename)
 

Public Attributes

double current_error
 excitation energy More...
 
double delta
 
CC_functionmap functions
 
std::string irrep = "null"
 
double omega
 
FuncType type
 

Friends

CC_vecfunction copy (const CC_vecfunction &other)
 returns a deep copy (void shallow copy errors) More...
 

Detailed Description

A helper structure which holds a map of functions.

Member Typedef Documentation

◆ CC_functionmap

typedef std::map<std::size_t, CCFunction<double,3> > madness::CC_vecfunction::CC_functionmap

Constructor & Destructor Documentation

◆ CC_vecfunction() [1/8]

madness::CC_vecfunction::CC_vecfunction ( )
inline

Referenced by operator*().

◆ CC_vecfunction() [2/8]

madness::CC_vecfunction::CC_vecfunction ( const FuncType  type_)
inline

◆ CC_vecfunction() [3/8]

madness::CC_vecfunction::CC_vecfunction ( const vector_real_function_3d v)
inline

References functions, type, and v.

◆ CC_vecfunction() [4/8]

madness::CC_vecfunction::CC_vecfunction ( const std::vector< CCFunction< double, 3 >> &  v)
inline

References functions, and v.

◆ CC_vecfunction() [5/8]

madness::CC_vecfunction::CC_vecfunction ( const vector_real_function_3d v,
const FuncType type 
)
inline

References functions, type, and v.

◆ CC_vecfunction() [6/8]

madness::CC_vecfunction::CC_vecfunction ( const vector_real_function_3d v,
const FuncType type,
const size_t &  freeze 
)
inline

References functions, type, and v.

◆ CC_vecfunction() [7/8]

madness::CC_vecfunction::CC_vecfunction ( const std::vector< CCFunction< double, 3 >> &  v,
const FuncType  type_ 
)
inline

References functions, and v.

◆ CC_vecfunction() [8/8]

madness::CC_vecfunction::CC_vecfunction ( const CC_vecfunction other)
inline

copy ctor (shallow)

Member Function Documentation

◆ get_vecfunction()

vector_real_function_3d madness::CC_vecfunction::get_vecfunction ( ) const
inline

◆ hash()

hashT madness::CC_vecfunction::hash ( ) const
inline

◆ insert()

void madness::CC_vecfunction::insert ( const size_t &  i,
const CCFunction< double, 3 > &  f 
)
inline

setter

References madness::f, and functions.

Referenced by madness::CC2::initialize_singles().

◆ is_converged()

bool madness::CC_vecfunction::is_converged ( const double  econv,
const double  dconv 
) const
inline

References current_error, and delta.

Referenced by madness::TDHF::solve_cis().

◆ load_restartdata()

static CC_vecfunction madness::CC_vecfunction::load_restartdata ( World world,
std::string  filename 
)
inlinestatic

◆ name()

std::string madness::CC_vecfunction::name ( const int  ex) const
inline

excitation irrep (direct product of x function and corresponding orbital)

References madness::name(), and type.

Referenced by madness::CC2::iterate_singles().

◆ operator()() [1/4]

CCFunction<double,3>& madness::CC_vecfunction::operator() ( const CCFunction< double, 3 > &  i)
inline

◆ operator()() [2/4]

const CCFunction<double,3>& madness::CC_vecfunction::operator() ( const CCFunction< double, 3 > &  i) const
inline

◆ operator()() [3/4]

CCFunction<double,3>& madness::CC_vecfunction::operator() ( const size_t &  i)
inline

getter

References functions.

◆ operator()() [4/4]

const CCFunction<double,3>& madness::CC_vecfunction::operator() ( const size_t &  i) const
inline

getter

References functions.

◆ operator*()

CC_vecfunction madness::CC_vecfunction::operator* ( const double &  fac) const
inline

scalar multiplication

References CC_vecfunction(), functions, get_vecfunction(), and type.

◆ operator<()

bool madness::CC_vecfunction::operator< ( const CC_vecfunction b) const
inline

operator needed for sort operation (sorted by omega values)

References b, and omega.

◆ operator=()

CC_vecfunction& madness::CC_vecfunction::operator= ( const CC_vecfunction other)
inline

assignment operator, shallow wrt the functions

References current_error, delta, functions, irrep, omega, and type.

◆ plot()

void madness::CC_vecfunction::plot ( const std::string &  msg = "") const
inline

References functions.

Referenced by madness::TDHF::solve_cis().

◆ print_size()

void madness::CC_vecfunction::print_size ( const std::string &  msg = "!?not assigned!?") const

Print the memory of which is used by all the functions in the map.

References functions.

◆ save_restartdata()

void madness::CC_vecfunction::save_restartdata ( World world,
std::string  filename 
) const
inline

References madness::filename.

Referenced by madness::CC2::solve_cc2().

◆ scale()

void madness::CC_vecfunction::scale ( const double &  factor)
inline

scaling (inplace)

References functions.

◆ serialize()

template<typename Archive >
void madness::CC_vecfunction::serialize ( const Archive &  ar)
inline

◆ set_functions()

void madness::CC_vecfunction::set_functions ( const vector_real_function_3d v,
const FuncType type,
const size_t &  freeze 
)
inline

setter

References functions, type, and v.

Referenced by madness::TDHF::transform().

◆ size()

size_t madness::CC_vecfunction::size ( ) const
inline

Friends And Related Function Documentation

◆ copy

CC_vecfunction copy ( const CC_vecfunction other)
friend

returns a deep copy (void shallow copy errors)

Member Data Documentation

◆ current_error

double madness::CC_vecfunction::current_error

excitation energy

Referenced by is_converged(), operator=(), and serialize().

◆ delta

double madness::CC_vecfunction::delta

Referenced by is_converged(), operator=(), and serialize().

◆ functions

CC_functionmap madness::CC_vecfunction::functions

◆ irrep

std::string madness::CC_vecfunction::irrep = "null"

Referenced by operator=(), and serialize().

◆ omega

double madness::CC_vecfunction::omega

◆ type

FuncType madness::CC_vecfunction::type

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