#include <PadeCorrelationFunction.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. | |
virtual void | print (ostream &strm) |
Override this function if there's some Jastrow specific message you want to print. | |
Private Attributes | |
Polynomial | Numerator |
QMCPolynomial | Denominator |
double | FunctionValue |
double | dFunctionValue |
double | d2FunctionValue |
All parameters will be adjusted during an optimization.
Definition at line 26 of file PadeCorrelationFunction.h.
void PadeCorrelationFunction::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 15 of file PadeCorrelationFunction.cpp.
References Denominator, Array1D< T >::dim1(), Polynomial::initialize(), and Numerator.
void PadeCorrelationFunction::evaluate | ( | double | r | ) | [virtual] |
Evaluates the correlation function and it's first two derivatives at .
Implements QMCCorrelationFunction.
Definition at line 64 of file PadeCorrelationFunction.cpp.
References d2FunctionValue, Denominator, dFunctionValue, Polynomial::evaluate(), FunctionValue, Polynomial::getFirstDerivativeValue(), Polynomial::getFunctionValue(), Polynomial::getSecondDerivativeValue(), and Numerator.
bool PadeCorrelationFunction::isSingular | ( | ) | [virtual] |
Returns if the correlation function has a singularity in the domain , and false otherwise.
Implements QMCCorrelationFunction.
Definition at line 54 of file PadeCorrelationFunction.cpp.
References Denominator, and QMCPolynomial::hasNonNegativeZeroes().
Returns all of the poles of the correlation function.
Implements QMCCorrelationFunction.
Definition at line 59 of file PadeCorrelationFunction.cpp.
References Denominator, and Polynomial::getRoots().
double PadeCorrelationFunction::getFunctionValue | ( | ) | [virtual] |
Gets the value of the correlation function for the last evaluated .
Implements QMCCorrelationFunction.
Definition at line 85 of file PadeCorrelationFunction.cpp.
References FunctionValue.
double PadeCorrelationFunction::getFunctionValue | ( | double | r | ) | [virtual] |
Evaluate the function as fast as possible by skipping the evaluation of the derivatives.
Implements QMCCorrelationFunction.
Definition at line 90 of file PadeCorrelationFunction.cpp.
References Denominator, Polynomial::getFunctionValue(), and Numerator.
double PadeCorrelationFunction::get_p_a | ( | int | ai | ) | [virtual] |
Partial derivative of function with respect to parameter ai.
Implements QMCCorrelationFunction.
Definition at line 95 of file PadeCorrelationFunction.cpp.
double PadeCorrelationFunction::getFirstDerivativeValue | ( | ) | [virtual] |
Gets the value of the first derivative of the correlation function for the last evaluated .
Implements QMCCorrelationFunction.
Definition at line 101 of file PadeCorrelationFunction.cpp.
References dFunctionValue.
double PadeCorrelationFunction::get_p2_xa | ( | int | ai | ) | [virtual] |
Second Partial derivative of function with respect to parameters x and ai.
Implements QMCCorrelationFunction.
Definition at line 106 of file PadeCorrelationFunction.cpp.
double PadeCorrelationFunction::getSecondDerivativeValue | ( | ) | [virtual] |
Gets the value of the second derivative of the correlation function for the last evaluated .
Implements QMCCorrelationFunction.
Definition at line 112 of file PadeCorrelationFunction.cpp.
References d2FunctionValue.
double PadeCorrelationFunction::get_p3_xxa | ( | int | ai | ) | [virtual] |
Third Partial derivative of function with respect to parameters x, x, and ai.
Implements QMCCorrelationFunction.
Definition at line 117 of file PadeCorrelationFunction.cpp.
Array1D< double > PadeCorrelationFunction::getNumeratorCoeffs | ( | ) | [virtual] |
Returns the coefficients for the numerator of the Jastrow's function.
Implements QMCCorrelationFunction.
Definition at line 123 of file PadeCorrelationFunction.cpp.
References Polynomial::getCoefficients(), and Numerator.
Array1D< double > PadeCorrelationFunction::getDenominatorCoeffs | ( | ) | [virtual] |
Returns the coefficients for the denominator of the Jastrow's function.
Implements QMCCorrelationFunction.
Definition at line 128 of file PadeCorrelationFunction.cpp.
References Denominator, and Polynomial::getCoefficients().
virtual void QMCCorrelationFunction::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 Anderson2CorrelationFunction, Cambridge2CorrelationFunction, FixedCuspPadeCorrelationFunction, Umrigar2CorrelationFunction, Williamson2CorrelationFunction, and Yukawa2CorrelationFunction.
Definition at line 117 of file QMCCorrelationFunction.h.
Referenced by QMCJastrowParameters::print(), and QMCJastrowParameters::read().
Polynomial PadeCorrelationFunction::Numerator [private] |
Definition at line 29 of file PadeCorrelationFunction.h.
Referenced by evaluate(), getFunctionValue(), getNumeratorCoeffs(), and initializeParameters().
Definition at line 30 of file PadeCorrelationFunction.h.
Referenced by evaluate(), getDenominatorCoeffs(), getFunctionValue(), getPoles(), initializeParameters(), and isSingular().
double PadeCorrelationFunction::FunctionValue [private] |
Definition at line 31 of file PadeCorrelationFunction.h.
Referenced by evaluate(), and getFunctionValue().
double PadeCorrelationFunction::dFunctionValue [private] |
Definition at line 32 of file PadeCorrelationFunction.h.
Referenced by evaluate(), and getFirstDerivativeValue().
double PadeCorrelationFunction::d2FunctionValue [private] |
Definition at line 33 of file PadeCorrelationFunction.h.
Referenced by evaluate(), and getSecondDerivativeValue().