#include <ZeroThreeBodyCorrelationFunction.h>
Public Member Functions | |
void | initializeParameters (int electron_nucleus, int electron_electron, Array1D< double > &Parameters, int C, double max) |
Initializes the correlation function with a specified set of parameters. | |
bool | setElectron (bool first, Array1D< double > &xyz, double dist) |
void | evaluate (Array1D< double > &xyz12, double r12) |
Evaluates the correlation function and its first two derivatives at . | |
double | getFunctionValue () |
Gets the value of the correlation function for the last evaluated . | |
double | getFunctionValue (double r12, double r1, double r2) |
Evaluate the function as fast as possible by skipping the evaluation of the derivatives. | |
double | get_p_a (int ai) |
Partial derivative of function with respect to parameter ai. | |
Array1D< double > * | getElectron1Gradient () |
Gets the gradient of the correlation function for electron 1 at the last evaluated configuration. | |
Array1D< double > * | getElectron2Gradient () |
Gets the gradient of the correlation function for electron 2 at the last evaluated configuration. | |
double | get_p2_xa (bool e1, int xyz, int ai) |
Second Partial derivative of function with respect to parameters x and ai. | |
double | getLaplacianValue () |
Gets the value of the Laplacian of the correlation function with respect to electrons one and two at the last evaluated configuration. | |
double | get_p3_xxa (int ai) |
Third Partial derivative of function with respect to parameters x, x, and ai. | |
double | getCutoffDist () |
Returns the cutoff for the electron-nucleus distance for this function. | |
virtual void | print (ostream &strm) |
Override this function if there's some Jastrow specific message you want to print. | |
Private Attributes | |
Array1D< double > | grad1 |
Array1D< double > | grad2 |
Definition at line 23 of file ZeroThreeBodyCorrelationFunction.h.
void ZeroThreeBodyCorrelationFunction::initializeParameters | ( | int | electron_nucleus, | |
int | electron_electron, | |||
Array1D< double > & | Parameters, | |||
int | power, | |||
double | max_dist | |||
) | [virtual] |
Initializes the correlation function with a specified set of parameters.
This must be called every time the parameters are changed.
Implements QMCThreeBodyCorrelationFunction.
Definition at line 15 of file ZeroThreeBodyCorrelationFunction.cpp.
References Array1D< T >::allocate(), grad1, and grad2.
bool ZeroThreeBodyCorrelationFunction::setElectron | ( | bool | first, | |
Array1D< double > & | xyz, | |||
double | dist | |||
) | [virtual] |
Implements QMCThreeBodyCorrelationFunction.
Definition at line 25 of file ZeroThreeBodyCorrelationFunction.cpp.
void ZeroThreeBodyCorrelationFunction::evaluate | ( | Array1D< double > & | xyz12, | |
double | r12 | |||
) | [virtual] |
Evaluates the correlation function and its first two derivatives at .
Implements QMCThreeBodyCorrelationFunction.
Definition at line 30 of file ZeroThreeBodyCorrelationFunction.cpp.
double ZeroThreeBodyCorrelationFunction::getFunctionValue | ( | ) | [virtual] |
Gets the value of the correlation function for the last evaluated .
Implements QMCThreeBodyCorrelationFunction.
Definition at line 35 of file ZeroThreeBodyCorrelationFunction.cpp.
double ZeroThreeBodyCorrelationFunction::getFunctionValue | ( | double | r12, | |
double | r1, | |||
double | r2 | |||
) | [virtual] |
Evaluate the function as fast as possible by skipping the evaluation of the derivatives.
Implements QMCThreeBodyCorrelationFunction.
Definition at line 40 of file ZeroThreeBodyCorrelationFunction.cpp.
double ZeroThreeBodyCorrelationFunction::get_p_a | ( | int | ai | ) | [virtual] |
Partial derivative of function with respect to parameter ai.
Implements QMCThreeBodyCorrelationFunction.
Definition at line 45 of file ZeroThreeBodyCorrelationFunction.cpp.
Array1D< double > * ZeroThreeBodyCorrelationFunction::getElectron1Gradient | ( | ) | [virtual] |
Gets the gradient of the correlation function for electron 1 at the last evaluated configuration.
Implements QMCThreeBodyCorrelationFunction.
Definition at line 50 of file ZeroThreeBodyCorrelationFunction.cpp.
References grad1.
Array1D< double > * ZeroThreeBodyCorrelationFunction::getElectron2Gradient | ( | ) | [virtual] |
Gets the gradient of the correlation function for electron 2 at the last evaluated configuration.
Implements QMCThreeBodyCorrelationFunction.
Definition at line 55 of file ZeroThreeBodyCorrelationFunction.cpp.
References grad2.
double ZeroThreeBodyCorrelationFunction::get_p2_xa | ( | bool | e1, | |
int | xyz, | |||
int | ai | |||
) | [virtual] |
Second Partial derivative of function with respect to parameters x and ai.
Implements QMCThreeBodyCorrelationFunction.
Definition at line 60 of file ZeroThreeBodyCorrelationFunction.cpp.
double ZeroThreeBodyCorrelationFunction::getLaplacianValue | ( | ) | [virtual] |
Gets the value of the Laplacian of the correlation function with respect to electrons one and two at the last evaluated configuration.
Implements QMCThreeBodyCorrelationFunction.
Definition at line 65 of file ZeroThreeBodyCorrelationFunction.cpp.
double ZeroThreeBodyCorrelationFunction::get_p3_xxa | ( | int | ai | ) | [virtual] |
Third Partial derivative of function with respect to parameters x, x, and ai.
Implements QMCThreeBodyCorrelationFunction.
Definition at line 70 of file ZeroThreeBodyCorrelationFunction.cpp.
double ZeroThreeBodyCorrelationFunction::getCutoffDist | ( | ) | [virtual] |
Returns the cutoff for the electron-nucleus distance for this function.
Implements QMCThreeBodyCorrelationFunction.
Definition at line 75 of file ZeroThreeBodyCorrelationFunction.cpp.
virtual void QMCThreeBodyCorrelationFunction::print | ( | ostream & | strm | ) | [inline, virtual, inherited] |
Override this function if there's some Jastrow specific message you want to print.
It will be called right after the Jastrow is initialized.
Reimplemented in CambridgeThreeBodyCorrelationFunction.
Definition at line 107 of file QMCThreeBodyCorrelationFunction.h.
Referenced by QMCThreeBodyJastrow::collectForPair(), and QMCJastrowParameters::read().
Array1D<double> ZeroThreeBodyCorrelationFunction::grad1 [private] |
Definition at line 50 of file ZeroThreeBodyCorrelationFunction.h.
Referenced by getElectron1Gradient(), and initializeParameters().
Array1D<double> ZeroThreeBodyCorrelationFunction::grad2 [private] |
Definition at line 51 of file ZeroThreeBodyCorrelationFunction.h.
Referenced by getElectron2Gradient(), and initializeParameters().