Umrigar2CorrelationFunction Class Reference

This 2 body Jastrow function is based on the version described by Filippi and Umrigar in "Multiconfiguration wave functions for quantum Monte Carlo calculations of first-row diatomic molecules" in JCP 105, pg 213 1996. More...

#include <Umrigar2CorrelationFunction.h>

Inheritance diagram for Umrigar2CorrelationFunction:

FixedCuspPadeCorrelationFunction QMCCorrelationFunction

List of all members.

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 $r$.
double get_p_a (int ai)
 Partial derivative of function with respect to parameter ai.
double get_p2_xa (int ai)
 Second Partial derivative of function with respect to parameters x and ai.
double get_p3_xxa (int ai)
 Third Partial derivative of function with respect to parameters x, x, and ai.
bool isSingular ()
 Returns $true$ if the correlation function has a singularity in the domain $r\geq0$, and false otherwise.
void print (ostream &strm)
 Override this function if there's some Jastrow specific message you want to print.
Array1D< ComplexgetPoles ()
 Returns all of the poles of the correlation function.
double getFunctionValue ()
 Gets the value of the correlation function for the last evaluated $r$.
double getFunctionValue (double r)
 Evaluate the function as fast as possible by skipping the evaluation of the derivatives.
double getFirstDerivativeValue ()
 Gets the value of the first derivative of the correlation function for the last evaluated $r$.
double getSecondDerivativeValue ()
 Gets the value of the second derivative of the correlation function for the last evaluated $r$.
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.

Protected Attributes

double FunctionValue
double dFunctionValue
double d2FunctionValue

Private Attributes

double U
double dU_dr
double dU_drr
double dU_dk
double dU_dkr
double dU_dkrr
double k
double g
double a
double b
double B
double dB
double r
double den
double iden
double iden2
bool optimizeG


Detailed Description

This 2 body Jastrow function is based on the version described by Filippi and Umrigar in "Multiconfiguration wave functions for quantum Monte Carlo calculations of first-row diatomic molecules" in JCP 105, pg 213 1996.

Definition at line 14 of file Umrigar2CorrelationFunction.h.


Member Function Documentation

void Umrigar2CorrelationFunction::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.

Reimplemented from FixedCuspPadeCorrelationFunction.

Definition at line 4 of file Umrigar2CorrelationFunction.cpp.

References a, B, b, dB, Array1D< T >::dim1(), g, k, and optimizeG.

void Umrigar2CorrelationFunction::evaluate ( double  r  )  [virtual]

double Umrigar2CorrelationFunction::get_p_a ( int  ai  )  [virtual]

Partial derivative of function with respect to parameter ai.

Reimplemented from FixedCuspPadeCorrelationFunction.

Definition at line 85 of file Umrigar2CorrelationFunction.cpp.

References dB, dU_dk, g, iden, iden2, optimizeG, and U.

double Umrigar2CorrelationFunction::get_p2_xa ( int  ai  )  [virtual]

Second Partial derivative of function with respect to parameters x and ai.

Reimplemented from FixedCuspPadeCorrelationFunction.

Definition at line 120 of file Umrigar2CorrelationFunction.cpp.

References B, dB, den, dU_dk, dU_dkr, dU_dr, g, iden, iden2, optimizeG, and U.

double Umrigar2CorrelationFunction::get_p3_xxa ( int  ai  )  [virtual]

Third Partial derivative of function with respect to parameters x, x, and ai.

Reimplemented from FixedCuspPadeCorrelationFunction.

Definition at line 157 of file Umrigar2CorrelationFunction.cpp.

References B, dB, den, dU_dk, dU_dkr, dU_dkrr, dU_dr, dU_drr, g, iden, iden2, optimizeG, and U.

bool Umrigar2CorrelationFunction::isSingular (  )  [virtual]

Returns $true$ if the correlation function has a singularity in the domain $r\geq0$, and false otherwise.

Reimplemented from FixedCuspPadeCorrelationFunction.

Definition at line 225 of file Umrigar2CorrelationFunction.cpp.

References B, and k.

Referenced by evaluate().

void Umrigar2CorrelationFunction::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 FixedCuspPadeCorrelationFunction.

Definition at line 208 of file Umrigar2CorrelationFunction.cpp.

References B, b, g, k, and optimizeG.

Array1D< Complex > FixedCuspPadeCorrelationFunction::getPoles (  )  [virtual, inherited]

Returns all of the poles of the correlation function.

Implements QMCCorrelationFunction.

Definition at line 71 of file FixedCuspPadeCorrelationFunction.cpp.

References FixedCuspPadeCorrelationFunction::Denominator, and Polynomial::getRoots().

double FixedCuspPadeCorrelationFunction::getFunctionValue (  )  [virtual, inherited]

Gets the value of the correlation function for the last evaluated $r$.

Implements QMCCorrelationFunction.

Definition at line 101 of file FixedCuspPadeCorrelationFunction.cpp.

References FixedCuspPadeCorrelationFunction::FunctionValue.

double FixedCuspPadeCorrelationFunction::getFunctionValue ( double  r  )  [virtual, inherited]

Evaluate the function as fast as possible by skipping the evaluation of the derivatives.

Implements QMCCorrelationFunction.

Definition at line 106 of file FixedCuspPadeCorrelationFunction.cpp.

References FixedCuspPadeCorrelationFunction::Denominator, Polynomial::getFunctionValue(), and FixedCuspPadeCorrelationFunction::Numerator.

double FixedCuspPadeCorrelationFunction::getFirstDerivativeValue (  )  [virtual, inherited]

Gets the value of the first derivative of the correlation function for the last evaluated $r$.

Implements QMCCorrelationFunction.

Definition at line 131 of file FixedCuspPadeCorrelationFunction.cpp.

References FixedCuspPadeCorrelationFunction::dFunctionValue.

double FixedCuspPadeCorrelationFunction::getSecondDerivativeValue (  )  [virtual, inherited]

Gets the value of the second derivative of the correlation function for the last evaluated $r$.

Implements QMCCorrelationFunction.

Definition at line 165 of file FixedCuspPadeCorrelationFunction.cpp.

References FixedCuspPadeCorrelationFunction::d2FunctionValue.

Array1D< double > FixedCuspPadeCorrelationFunction::getNumeratorCoeffs (  )  [virtual, inherited]

Returns the coefficients for the numerator of the Jastrow's function.

Implements QMCCorrelationFunction.

Definition at line 214 of file FixedCuspPadeCorrelationFunction.cpp.

References Polynomial::getCoefficients(), and FixedCuspPadeCorrelationFunction::Numerator.

Array1D< double > FixedCuspPadeCorrelationFunction::getDenominatorCoeffs (  )  [virtual, inherited]

Returns the coefficients for the denominator of the Jastrow's function.

Implements QMCCorrelationFunction.

Definition at line 219 of file FixedCuspPadeCorrelationFunction.cpp.

References FixedCuspPadeCorrelationFunction::Denominator, and Polynomial::getCoefficients().


Member Data Documentation

Definition at line 17 of file Umrigar2CorrelationFunction.h.

Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), and get_p_a().

Definition at line 18 of file Umrigar2CorrelationFunction.h.

Referenced by evaluate(), get_p2_xa(), and get_p3_xxa().

Definition at line 18 of file Umrigar2CorrelationFunction.h.

Referenced by evaluate(), and get_p3_xxa().

Definition at line 19 of file Umrigar2CorrelationFunction.h.

Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), and get_p_a().

Definition at line 19 of file Umrigar2CorrelationFunction.h.

Referenced by evaluate(), get_p2_xa(), and get_p3_xxa().

Definition at line 19 of file Umrigar2CorrelationFunction.h.

Referenced by evaluate(), and get_p3_xxa().

Definition at line 21 of file Umrigar2CorrelationFunction.h.

Referenced by evaluate(), initializeParameters(), isSingular(), and print().

Definition at line 24 of file Umrigar2CorrelationFunction.h.

Referenced by initializeParameters().

Definition at line 25 of file Umrigar2CorrelationFunction.h.

Referenced by initializeParameters(), and print().

Definition at line 25 of file Umrigar2CorrelationFunction.h.

Referenced by get_p2_xa(), get_p3_xxa(), get_p_a(), and initializeParameters().

Definition at line 27 of file Umrigar2CorrelationFunction.h.

Referenced by evaluate().

Definition at line 29 of file Umrigar2CorrelationFunction.h.

Referenced by evaluate(), get_p2_xa(), and get_p3_xxa().

Definition at line 30 of file Umrigar2CorrelationFunction.h.

Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), and get_p_a().

Definition at line 30 of file Umrigar2CorrelationFunction.h.

Referenced by evaluate(), get_p2_xa(), get_p3_xxa(), and get_p_a().

double FixedCuspPadeCorrelationFunction::FunctionValue [protected, inherited]

double FixedCuspPadeCorrelationFunction::dFunctionValue [protected, inherited]


The documentation for this class was generated from the following files:

Generated on Sat Jul 5 16:14:07 2008 for QMcBeaver by  doxygen 1.5.6