#include <Cambridge2CorrelationFunction.h>
Public Member Functions | |
void | initializeParameters (Array1D< int > &BeginningIndexOfParameterType, Array1D< double > &Parameters, Array1D< int > &BeginningIndexOfConstantType, Array1D< double > &Constants) |
Initializes the correlation function with a specified set of parameters. | |
void | evaluate (double r) |
Evaluates the correlation function and it's first two derivatives at . | |
bool | isSingular () |
Returns if the correlation function has a singularity in the domain , and false otherwise. | |
Array1D< Complex > | getPoles () |
Returns all of the poles of the correlation function. | |
double | getFunctionValue () |
Gets the value of the correlation function for the last evaluated . | |
double | getFunctionValue (double r) |
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. | |
double | getFirstDerivativeValue () |
Gets the value of the first derivative of the correlation function for the last evaluated . | |
double | get_p2_xa (int ai) |
Second Partial derivative of function with respect to parameters x and ai. | |
double | getSecondDerivativeValue () |
Gets the value of the second derivative of the correlation function for the last evaluated . | |
double | get_p3_xxa (int ai) |
Third Partial derivative of function with respect to parameters x, x, and ai. | |
Array1D< double > | getNumeratorCoeffs () |
Returns the coefficients for the numerator of the Jastrow's function. | |
Array1D< double > | getDenominatorCoeffs () |
Returns the coefficients for the denominator of the Jastrow's function. | |
void | print (ostream &strm) |
Override this function if there's some Jastrow specific message you want to print. | |
Protected Attributes | |
double | FunctionValue |
double | dFunctionValue |
double | d2FunctionValue |
Private Attributes | |
bool | active |
double | g |
int | C |
double | L |
double | f |
double | fL |
bool | optimizeL |
The parameter L is very highly coupled to the other parameters. | |
double | alpha_0 |
double | alpha_1 |
Polynomial | alpha |
double | r |
double | d |
double | d2 |
double | dpc |
double | dpc_r |
double | dpc_rr |
double | dpc_L |
double | dpc_Lr |
double | dpc_Lrr |
double | d_a1_dL |
double | P |
double | dP_r |
double | dP_rr |
double | dP_L |
double | dP_Lr |
double | dP_Lrr |
Friends | |
ostream & | operator<< (ostream &strm, Cambridge2CorrelationFunction &rhs) |
Definition at line 14 of file Cambridge2CorrelationFunction.h.
void Cambridge2CorrelationFunction::initializeParameters | ( | Array1D< int > & | BeginningIndexOfParameterType, | |
Array1D< double > & | Parameters, | |||
Array1D< int > & | BeginningIndexOfConstantType, | |||
Array1D< double > & | Constants | |||
) | [virtual] |
Initializes the correlation function with a specified set of parameters.
This must be called every time the parameters are changed.
Implements QMCCorrelationFunction.
Definition at line 5 of file Cambridge2CorrelationFunction.cpp.
References QMCFlags::a_diag, active, alpha, alpha_0, alpha_1, C, d_a1_dL, Array1D< T >::dim1(), f, fL, QMCInput::flags, g, globalInput, Polynomial::initialize(), L, QMCFlags::optimize_L, and optimizeL.
void Cambridge2CorrelationFunction::evaluate | ( | double | r | ) | [virtual] |
Evaluates the correlation function and it's first two derivatives at .
Implements QMCCorrelationFunction.
Definition at line 106 of file Cambridge2CorrelationFunction.cpp.
References active, alpha, C, QMCFlags::calculate_Derivatives, d, d2FunctionValue, dFunctionValue, dP_L, dP_Lr, dP_Lrr, dP_r, dP_rr, dpc, dpc_L, dpc_Lr, dpc_Lrr, dpc_r, dpc_rr, Polynomial::evaluate(), f, fL, QMCInput::flags, FunctionValue, Polynomial::getFirstDerivativeValue(), Polynomial::getFunctionValue(), Polynomial::getSecondDerivativeValue(), Polynomial::getThirdDerivativeValue(), globalInput, L, P, and r.
bool Cambridge2CorrelationFunction::isSingular | ( | ) | [virtual] |
Returns if the correlation function has a singularity in the domain , and false otherwise.
Implements QMCCorrelationFunction.
Definition at line 95 of file Cambridge2CorrelationFunction.cpp.
References L.
Returns all of the poles of the correlation function.
Implements QMCCorrelationFunction.
Definition at line 100 of file Cambridge2CorrelationFunction.cpp.
double Cambridge2CorrelationFunction::getFunctionValue | ( | ) | [virtual] |
Gets the value of the correlation function for the last evaluated .
Implements QMCCorrelationFunction.
Definition at line 154 of file Cambridge2CorrelationFunction.cpp.
References FunctionValue.
double Cambridge2CorrelationFunction::getFunctionValue | ( | double | r | ) | [virtual] |
Evaluate the function as fast as possible by skipping the evaluation of the derivatives.
Implements QMCCorrelationFunction.
Definition at line 159 of file Cambridge2CorrelationFunction.cpp.
References active, alpha, C, d, dpc, Polynomial::evaluate(), fL, Polynomial::getFunctionValue(), and P.
double Cambridge2CorrelationFunction::get_p_a | ( | int | ai | ) | [virtual] |
double Cambridge2CorrelationFunction::getFirstDerivativeValue | ( | ) | [virtual] |
Gets the value of the first derivative of the correlation function for the last evaluated .
Implements QMCCorrelationFunction.
Definition at line 209 of file Cambridge2CorrelationFunction.cpp.
References dFunctionValue.
double Cambridge2CorrelationFunction::get_p2_xa | ( | int | ai | ) | [virtual] |
Second Partial derivative of function with respect to parameters x and ai.
Implements QMCCorrelationFunction.
Definition at line 214 of file Cambridge2CorrelationFunction.cpp.
References active, alpha, C, d, d_a1_dL, dP_L, dP_Lr, dP_r, dpc, dpc_L, dpc_Lr, dpc_r, fL, Polynomial::get_p2_xa(), Polynomial::get_p_a(), optimizeL, P, and r.
double Cambridge2CorrelationFunction::getSecondDerivativeValue | ( | ) | [virtual] |
Gets the value of the second derivative of the correlation function for the last evaluated .
Implements QMCCorrelationFunction.
Definition at line 250 of file Cambridge2CorrelationFunction.cpp.
References d2FunctionValue.
double Cambridge2CorrelationFunction::get_p3_xxa | ( | int | ai | ) | [virtual] |
Third Partial derivative of function with respect to parameters x, x, and ai.
Implements QMCCorrelationFunction.
Definition at line 255 of file Cambridge2CorrelationFunction.cpp.
References active, alpha, C, d, d_a1_dL, dP_L, dP_Lr, dP_Lrr, dP_r, dP_rr, dpc, dpc_L, dpc_Lr, dpc_Lrr, dpc_r, dpc_rr, fL, Polynomial::get_p2_xa(), Polynomial::get_p3_xxa(), Polynomial::get_p_a(), optimizeL, P, and r.
Array1D< double > Cambridge2CorrelationFunction::getNumeratorCoeffs | ( | ) | [virtual] |
Returns the coefficients for the numerator of the Jastrow's function.
Implements QMCCorrelationFunction.
Definition at line 294 of file Cambridge2CorrelationFunction.cpp.
References alpha, and Polynomial::getCoefficients().
Array1D< double > Cambridge2CorrelationFunction::getDenominatorCoeffs | ( | ) | [virtual] |
Returns the coefficients for the denominator of the Jastrow's function.
Implements QMCCorrelationFunction.
Definition at line 299 of file Cambridge2CorrelationFunction.cpp.
References alpha, and Polynomial::getCoefficients().
void Cambridge2CorrelationFunction::print | ( | ostream & | strm | ) | [virtual] |
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 from QMCCorrelationFunction.
Definition at line 304 of file Cambridge2CorrelationFunction.cpp.
ostream& operator<< | ( | ostream & | strm, | |
Cambridge2CorrelationFunction & | rhs | |||
) | [friend] |
Definition at line 315 of file Cambridge2CorrelationFunction.cpp.
double Cambridge2CorrelationFunction::FunctionValue [protected] |
Definition at line 17 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), and getFunctionValue().
double Cambridge2CorrelationFunction::dFunctionValue [protected] |
Definition at line 18 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), and getFirstDerivativeValue().
double Cambridge2CorrelationFunction::d2FunctionValue [protected] |
Definition at line 19 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), and getSecondDerivativeValue().
bool Cambridge2CorrelationFunction::active [private] |
Definition at line 31 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), get_p_a(), getFunctionValue(), and initializeParameters().
double Cambridge2CorrelationFunction::g [private] |
Definition at line 37 of file Cambridge2CorrelationFunction.h.
Referenced by initializeParameters(), and operator<<().
int Cambridge2CorrelationFunction::C [private] |
Definition at line 40 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), get_p_a(), getFunctionValue(), initializeParameters(), and operator<<().
double Cambridge2CorrelationFunction::L [private] |
Definition at line 43 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), initializeParameters(), isSingular(), and operator<<().
double Cambridge2CorrelationFunction::f [private] |
Definition at line 45 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), initializeParameters(), and operator<<().
double Cambridge2CorrelationFunction::fL [private] |
Definition at line 46 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), get_p_a(), getFunctionValue(), initializeParameters(), and operator<<().
bool Cambridge2CorrelationFunction::optimizeL [private] |
The parameter L is very highly coupled to the other parameters.
If we allow it to be optimized, it will probably mess up the optimization procedure.
Definition at line 53 of file Cambridge2CorrelationFunction.h.
Referenced by get_p2_xa(), get_p3_xxa(), get_p_a(), initializeParameters(), and operator<<().
double Cambridge2CorrelationFunction::alpha_0 [private] |
Definition at line 56 of file Cambridge2CorrelationFunction.h.
Referenced by initializeParameters().
double Cambridge2CorrelationFunction::alpha_1 [private] |
Definition at line 57 of file Cambridge2CorrelationFunction.h.
Referenced by initializeParameters().
Definition at line 62 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), get_p_a(), getDenominatorCoeffs(), getFunctionValue(), getNumeratorCoeffs(), initializeParameters(), and operator<<().
double Cambridge2CorrelationFunction::r [private] |
Definition at line 65 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), and get_p_a().
double Cambridge2CorrelationFunction::d [private] |
Definition at line 68 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), get_p_a(), and getFunctionValue().
double Cambridge2CorrelationFunction::d2 [private] |
Definition at line 68 of file Cambridge2CorrelationFunction.h.
double Cambridge2CorrelationFunction::dpc [private] |
Definition at line 68 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), get_p_a(), and getFunctionValue().
double Cambridge2CorrelationFunction::dpc_r [private] |
Definition at line 69 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), and get_p3_xxa().
double Cambridge2CorrelationFunction::dpc_rr [private] |
Definition at line 69 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), and get_p3_xxa().
double Cambridge2CorrelationFunction::dpc_L [private] |
Definition at line 70 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), and get_p_a().
double Cambridge2CorrelationFunction::dpc_Lr [private] |
Definition at line 70 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), and get_p3_xxa().
double Cambridge2CorrelationFunction::dpc_Lrr [private] |
Definition at line 70 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), and get_p3_xxa().
double Cambridge2CorrelationFunction::d_a1_dL [private] |
Definition at line 71 of file Cambridge2CorrelationFunction.h.
Referenced by get_p2_xa(), get_p3_xxa(), get_p_a(), and initializeParameters().
double Cambridge2CorrelationFunction::P [private] |
Definition at line 73 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), get_p_a(), and getFunctionValue().
double Cambridge2CorrelationFunction::dP_r [private] |
Definition at line 73 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), and get_p3_xxa().
double Cambridge2CorrelationFunction::dP_rr [private] |
Definition at line 73 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), and get_p3_xxa().
double Cambridge2CorrelationFunction::dP_L [private] |
Definition at line 74 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), and get_p_a().
double Cambridge2CorrelationFunction::dP_Lr [private] |
Definition at line 74 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), get_p2_xa(), and get_p3_xxa().
double Cambridge2CorrelationFunction::dP_Lrr [private] |
Definition at line 74 of file Cambridge2CorrelationFunction.h.
Referenced by evaluate(), and get_p3_xxa().