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

#include <response_functions.h>

Public Member Functions

 response_space ()
 default Construct a new response space object num_states(0) num_orbitals(0) x() default constructor of std::vector More...
 
 response_space (const response_matrix &x)
 Construct a new response space object from vector of functions. More...
 
 response_space (const response_space &y)
 copy construct a new response space object we are using copying defined by std:vector we copy madness functions therefore we are copying pointers to function implementations More...
 
 response_space (World &world, size_t num_states, size_t num_orbitals)
 Construct a new response space with zero functions. More...
 
auto begin ()
 
const auto begin () const
 
void clear ()
 
void compress_rf ()
 
response_space copy () const
 
response_space copy (const std::shared_ptr< WorldDCPmapInterface< Key< 3 >>> &pmap, bool fence=false) const
 
auto end ()
 
const auto end () const
 
Tensor< double > norm2 ()
 
response_space operator* (const Function< double, 3 > &f)
 
response_spaceoperator*= (double a)
 
response_space operator+ (const response_space &rhs_y) const
 
response_spaceoperator+= (const response_space &b)
 
response_space operator- (const response_space &rhs_y) const
 
response_spaceoperator= (const response_matrix &y)
 
response_spaceoperator= (const response_space &y)
 
vector_real_function_3doperator[] (size_t i)
 
const vector_real_function_3doperator[] (size_t i) const
 
void pop_back ()
 
void push_back (const vector_real_function_3d &f)
 
void reconstruct_rf ()
 
void reset_active ()
 
void scale (Tensor< double > &mat)
 
size_t size () const
 
size_t size_orbitals () const
 
void truncate_rf ()
 
void truncate_rf (double tol)
 
void zero ()
 

Public Attributes

std::list< size_t > active
 
size_t num_orbitals
 
size_t num_states
 vector of vector of real 3d functions More...
 
response_matrix x
 

Friends

auto binary_apply (const response_space &A, const response_space &B, const std::function< vector_real_function_3d(vector_real_function_3d, vector_real_function_3d)> &func) -> response_space
 
template<class T >
auto binary_inplace (response_space &A, const response_space &B, const T &func)
 
auto inplace_unary_apply (response_space &A, const std::function< void(vector_real_function_3d &)> &func)
 
auto oop_unary_apply (const response_space &A, const std::function< vector_real_function_3d(const vector_real_function_3d &)> &func) -> response_space
 
response_space operator* (const Function< double, 3 > &f, const response_space &a)
 
response_space operator* (const response_space &a, const Function< double, 3 > &f)
 
response_space operator* (const response_space &a, const Tensor< double > &b)
 
response_space operator* (const response_space &y, double a)
 
response_space operator* (double a, response_space &y)
 
bool operator== (const response_space &a, const response_space &y)
 
Tensor< double > response_space_inner (const response_space &a, const response_space &b)
 
bool same_size (const response_space &a, const response_space &b)
 

Constructor & Destructor Documentation

◆ response_space() [1/4]

madness::response_space::response_space ( )
inline

default Construct a new response space object num_states(0) num_orbitals(0) x() default constructor of std::vector

◆ response_space() [2/4]

madness::response_space::response_space ( const response_space y)
inline

copy construct a new response space object we are using copying defined by std:vector we copy madness functions therefore we are copying pointers to function implementations

Parameters
y

◆ response_space() [3/4]

madness::response_space::response_space ( World world,
size_t  num_states,
size_t  num_orbitals 
)
inline

Construct a new response space with zero functions.

Parameters
world
num_states
num_orbitals

References num_orbitals, reset_active(), and x.

◆ response_space() [4/4]

madness::response_space::response_space ( const response_matrix x)
inlineexplicit

Construct a new response space object from vector of functions.

Parameters
x

References reset_active().

Member Function Documentation

◆ begin() [1/2]

auto madness::response_space::begin ( )
inline

References x.

◆ begin() [2/2]

const auto madness::response_space::begin ( ) const
inline

References x.

◆ clear()

void madness::response_space::clear ( )
inline

References num_orbitals, num_states, and x.

Referenced by madness::X_space::clear().

◆ compress_rf()

void madness::response_space::compress_rf ( )
inline

References x, and xi.

◆ copy() [1/2]

response_space madness::response_space::copy ( ) const
inline

◆ copy() [2/2]

response_space madness::response_space::copy ( const std::shared_ptr< WorldDCPmapInterface< Key< 3 >>> &  pmap,
bool  fence = false 
) const
inline

References transform(), x, and xi.

◆ end() [1/2]

auto madness::response_space::end ( )
inline

References x.

◆ end() [2/2]

const auto madness::response_space::end ( ) const
inline

References x.

◆ norm2()

Tensor<double> madness::response_space::norm2 ( )
inline

References madness::norm2(), num_states, and x.

Referenced by q_c().

◆ operator*()

response_space madness::response_space::operator* ( const Function< double, 3 > &  f)
inline

◆ operator*=()

response_space& madness::response_space::operator*= ( double  a)
inline

◆ operator+()

response_space madness::response_space::operator+ ( const response_space rhs_y) const
inline

◆ operator+=()

response_space& madness::response_space::operator+= ( const response_space b)
inline

◆ operator-()

response_space madness::response_space::operator- ( const response_space rhs_y) const
inline

◆ operator=() [1/2]

response_space& madness::response_space::operator= ( const response_matrix y)
inline

References size().

◆ operator=() [2/2]

response_space& madness::response_space::operator= ( const response_space y)
inline

References active, num_states, size(), size_orbitals(), and x.

◆ operator[]() [1/2]

vector_real_function_3d& madness::response_space::operator[] ( size_t  i)
inline

References x.

◆ operator[]() [2/2]

const vector_real_function_3d& madness::response_space::operator[] ( size_t  i) const
inline

References x.

◆ pop_back()

void madness::response_space::pop_back ( )
inline

◆ push_back()

void madness::response_space::push_back ( const vector_real_function_3d f)
inline

◆ reconstruct_rf()

void madness::response_space::reconstruct_rf ( )
inline

References x, and xi.

◆ reset_active()

void madness::response_space::reset_active ( )
inline

References active, and num_states.

Referenced by response_space().

◆ scale()

void madness::response_space::scale ( Tensor< double > &  mat)
inline

References num_states, madness::scale(), and x.

◆ size()

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

◆ size_orbitals()

size_t madness::response_space::size_orbitals ( ) const
inline

References num_orbitals.

Referenced by operator=().

◆ truncate_rf() [1/2]

void madness::response_space::truncate_rf ( )
inline

◆ truncate_rf() [2/2]

void madness::response_space::truncate_rf ( double  tol)
inline

References x, and xi.

◆ zero()

void madness::response_space::zero ( )
inline

References x.

Friends And Related Function Documentation

◆ binary_apply

auto binary_apply ( const response_space A,
const response_space B,
const std::function< vector_real_function_3d(vector_real_function_3d, vector_real_function_3d)> &  func 
) -> response_space
friend

Referenced by operator+(), and operator-().

◆ binary_inplace

template<class T >
auto binary_inplace ( response_space A,
const response_space B,
const T func 
)
friend

Referenced by operator+=().

◆ inplace_unary_apply

auto inplace_unary_apply ( response_space A,
const std::function< void(vector_real_function_3d &)> &  func 
)
friend

Referenced by operator*=().

◆ oop_unary_apply

auto oop_unary_apply ( const response_space A,
const std::function< vector_real_function_3d(const vector_real_function_3d &)> &  func 
) -> response_space
friend

Referenced by operator*().

◆ operator* [1/5]

response_space operator* ( const Function< double, 3 > &  f,
const response_space a 
)
friend

◆ operator* [2/5]

response_space operator* ( const response_space a,
const Function< double, 3 > &  f 
)
friend

◆ operator* [3/5]

response_space operator* ( const response_space a,
const Tensor< double > &  b 
)
friend

◆ operator* [4/5]

response_space operator* ( const response_space y,
double  a 
)
friend

◆ operator* [5/5]

response_space operator* ( double  a,
response_space y 
)
friend

◆ operator==

bool operator== ( const response_space a,
const response_space y 
)
friend

◆ response_space_inner

Tensor<double> response_space_inner ( const response_space a,
const response_space b 
)
friend

◆ same_size

bool same_size ( const response_space a,
const response_space b 
)
friend

Referenced by operator+(), operator+=(), and operator-().

Member Data Documentation

◆ active

std::list<size_t> madness::response_space::active

◆ num_orbitals

size_t madness::response_space::num_orbitals

◆ num_states

size_t madness::response_space::num_states

vector of vector of real 3d functions

Referenced by clear(), norm2(), operator=(), pop_back(), push_back(), reset_active(), scale(), and size().

◆ x

response_matrix madness::response_space::x

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