#include <JuliusCorrelationFunction.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 |
double | type |
double | params [10] |
All parameters will be adjusted during an optimization.
Definition at line 26 of file JuliusCorrelationFunction.h.
void JuliusCorrelationFunction::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 17 of file JuliusCorrelationFunction.cpp.
References Array1D< T >::dim1(), Polynomial::initialize(), Numerator, params, and type.
void JuliusCorrelationFunction::evaluate | ( | double | r | ) | [virtual] |
Evaluates the correlation function and it's first two derivatives at .
Implements QMCCorrelationFunction.
Definition at line 77 of file JuliusCorrelationFunction.cpp.
References a0, d2FunctionValue, dFunctionValue, Polynomial::evaluate(), FunctionValue, Polynomial::getFirstDerivativeValue(), Polynomial::getFunctionValue(), Polynomial::getSecondDerivativeValue(), Numerator, params, and type.
bool JuliusCorrelationFunction::isSingular | ( | ) | [virtual] |
Returns if the correlation function has a singularity in the domain , and false otherwise.
Implements QMCCorrelationFunction.
Definition at line 66 of file JuliusCorrelationFunction.cpp.
Returns all of the poles of the correlation function.
Implements QMCCorrelationFunction.
Definition at line 71 of file JuliusCorrelationFunction.cpp.
double JuliusCorrelationFunction::getFunctionValue | ( | ) | [virtual] |
Gets the value of the correlation function for the last evaluated .
Implements QMCCorrelationFunction.
Definition at line 118 of file JuliusCorrelationFunction.cpp.
References FunctionValue.
double JuliusCorrelationFunction::getFunctionValue | ( | double | r | ) | [virtual] |
Evaluate the function as fast as possible by skipping the evaluation of the derivatives.
Implements QMCCorrelationFunction.
Definition at line 123 of file JuliusCorrelationFunction.cpp.
References a0, Polynomial::getFunctionValue(), Numerator, params, and type.
double JuliusCorrelationFunction::get_p_a | ( | int | ai | ) | [virtual] |
Partial derivative of function with respect to parameter ai.
Implements QMCCorrelationFunction.
Definition at line 148 of file JuliusCorrelationFunction.cpp.
double JuliusCorrelationFunction::getFirstDerivativeValue | ( | ) | [virtual] |
Gets the value of the first derivative of the correlation function for the last evaluated .
Implements QMCCorrelationFunction.
Definition at line 154 of file JuliusCorrelationFunction.cpp.
References dFunctionValue.
double JuliusCorrelationFunction::get_p2_xa | ( | int | ai | ) | [virtual] |
Second Partial derivative of function with respect to parameters x and ai.
Implements QMCCorrelationFunction.
Definition at line 159 of file JuliusCorrelationFunction.cpp.
double JuliusCorrelationFunction::getSecondDerivativeValue | ( | ) | [virtual] |
Gets the value of the second derivative of the correlation function for the last evaluated .
Implements QMCCorrelationFunction.
Definition at line 165 of file JuliusCorrelationFunction.cpp.
References d2FunctionValue.
double JuliusCorrelationFunction::get_p3_xxa | ( | int | ai | ) | [virtual] |
Third Partial derivative of function with respect to parameters x, x, and ai.
Implements QMCCorrelationFunction.
Definition at line 170 of file JuliusCorrelationFunction.cpp.
Array1D< double > JuliusCorrelationFunction::getNumeratorCoeffs | ( | ) | [virtual] |
Returns the coefficients for the numerator of the Jastrow's function.
Implements QMCCorrelationFunction.
Definition at line 176 of file JuliusCorrelationFunction.cpp.
References Polynomial::getCoefficients(), and Numerator.
Array1D< double > JuliusCorrelationFunction::getDenominatorCoeffs | ( | ) | [virtual] |
Returns the coefficients for the denominator of the Jastrow's function.
Implements QMCCorrelationFunction.
Definition at line 181 of file JuliusCorrelationFunction.cpp.
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().
Definition at line 29 of file JuliusCorrelationFunction.h.
Referenced by evaluate(), getFunctionValue(), getNumeratorCoeffs(), and initializeParameters().
Definition at line 30 of file JuliusCorrelationFunction.h.
double JuliusCorrelationFunction::FunctionValue [private] |
Definition at line 31 of file JuliusCorrelationFunction.h.
Referenced by evaluate(), and getFunctionValue().
double JuliusCorrelationFunction::dFunctionValue [private] |
Definition at line 32 of file JuliusCorrelationFunction.h.
Referenced by evaluate(), and getFirstDerivativeValue().
double JuliusCorrelationFunction::d2FunctionValue [private] |
Definition at line 33 of file JuliusCorrelationFunction.h.
Referenced by evaluate(), and getSecondDerivativeValue().
double JuliusCorrelationFunction::type [private] |
Definition at line 35 of file JuliusCorrelationFunction.h.
Referenced by evaluate(), getFunctionValue(), and initializeParameters().
double JuliusCorrelationFunction::params[10] [private] |
Definition at line 36 of file JuliusCorrelationFunction.h.
Referenced by evaluate(), getFunctionValue(), and initializeParameters().