MADNESS  version 0.9
Macros | Typedefs | Functions
helium_exact.cc File Reference

Solves the two-particle system exactly. More...

#include <madness/mra/mra.h>
#include <madness/mra/operator.h>
#include <madness/mra/funcplot.h>
#include <madness/mra/lbdeux.h>
#include <iostream>
#include <chem/SCF.h>
#include <chem/nemo.h>
#include <chem/correlationfactor.h>
Include dependency graph for helium_exact.cc:

Macros

#define WITH_G12
 

Typedefs

typedef std::shared_ptr
< NuclearCorrelationFactor > 
ncf_ptr
 

Functions

real_function_6d apply_U_mix (World &world, const real_function_6d &psi, const CorrelationFactor2 &ecf, const ncf_ptr &ncf)
 
real_function_6d apply_U_ncf (World &world, const real_function_6d &psi, const ncf_ptr &ncf)
 
real_function_6d apply_V (World &world, const real_function_6d &psi, const SCF &calc)
 
real_function_6d apply_U_ecf (World &world, const real_function_6d &psi, const CorrelationFactor2 &ecf)
 
real_function_6d reconstruct_psi (World &world, const real_function_6d &psi, const CorrelationFactor2 &ecf, const ncf_ptr &ncf)
 reconstruct the full wave function More...
 
real_function_6d compute_R2f2_psi (World &world, const real_function_6d &psi, const CorrelationFactor2 &ecf, const ncf_ptr &ncf)
 compute R_12^2f_12^2|psi> More...
 
double compute_energy_with_U (World &world, const real_function_6d &psi, const CorrelationFactor2 &ecf, const ncf_ptr &ncf, const real_function_6d &twoVpsi)
 compute the energy using the regularization More...
 
double compute_energy (World &world, const real_function_6d &psi, const CorrelationFactor2 &ecf, const ncf_ptr &ncf, const real_function_3d &vnuc)
 compute the energy using the reconstructed wave function More...
 
void save (World &world, const real_function_6d &f, std::string filename)
 
void load (World &world, real_function_6d &f, std::string filename)
 
void test_U_el (World &world, const real_function_6d &psi, const CorrelationFactor2 &ecf)
 the electronic U potential is U -1/r12 = f^-1 [T, f] = f^-1 T f - T More...
 
int main (int argc, char **argv)
 

Detailed Description

Solves the two-particle system exactly.

Macro Definition Documentation

#define WITH_G12

Referenced by compute_energy().

Typedef Documentation

typedef std::shared_ptr<NuclearCorrelationFactor> ncf_ptr

Function Documentation

real_function_6d apply_U_ecf ( World world,
const real_function_6d psi,
const CorrelationFactor2 &  ecf 
)

Referenced by main(), and test_U_el().

real_function_6d apply_U_mix ( World world,
const real_function_6d psi,
const CorrelationFactor2 &  ecf,
const ncf_ptr ncf 
)
real_function_6d apply_U_ncf ( World world,
const real_function_6d psi,
const ncf_ptr ncf 
)
real_function_6d apply_V ( World world,
const real_function_6d psi,
const SCF calc 
)
double compute_energy ( World world,
const real_function_6d psi,
const CorrelationFactor2 &  ecf,
const ncf_ptr ncf,
const real_function_3d vnuc 
)
double compute_energy_with_U ( World world,
const real_function_6d psi,
const CorrelationFactor2 &  ecf,
const ncf_ptr ncf,
const real_function_6d twoVpsi 
)

compute the energy using the regularization

Returns
the energy expectation value <E> = < psi | R2f2 (T+U) | psi >

References compute_R2f2_psi(), energy(), madness::inner(), madness::norm(), madness::print(), and madness::World::rank().

Referenced by main().

real_function_6d compute_R2f2_psi ( World world,
const real_function_6d psi,
const CorrelationFactor2 &  ecf,
const ncf_ptr ncf 
)
void load ( World world,
real_function_6d f,
std::string  filename 
)

References madness::f.

Referenced by main().

int main ( int  argc,
char **  argv 
)
real_function_6d reconstruct_psi ( World world,
const real_function_6d psi,
const CorrelationFactor2 &  ecf,
const ncf_ptr ncf 
)

reconstruct the full wave function

Psi from the regularized wave function and the correlation factors

References madness::copy(), madness::Function< T, NDIM >::fill_tree(), madness::inner(), madness::CompositeFactory< T, NDIM, MDIM >::ket(), madness::SeparatedConvolution< Q, NDIM >::modified(), madness::print(), and sqrt().

Referenced by compute_energy().

void save ( World world,
const real_function_6d f,
std::string  filename 
)

References madness::f.

Referenced by madness::SCF::initial_guess(), and main().

void test_U_el ( World world,
const real_function_6d psi,
const CorrelationFactor2 &  ecf 
)