00001 // QMcBeaver 00002 // 00003 // Constructed by 00004 // 00005 // Michael Todd Feldmann 00006 // and 00007 // David Randall "Chip" Kent IV 00008 // 00009 // Copyright 2000. All rights reserved. 00010 // 00011 // drkent@users.sourceforge.net mtfeldmann@users.sourceforge.net 00012 00013 #ifndef ZeroCorrelationFunction_H 00014 #define ZeroCorrelationFunction_H 00015 00016 #include "Array1D.h" 00017 #include "QMCCorrelationFunction.h" 00018 00019 00024 class ZeroCorrelationFunction : public QMCCorrelationFunction 00025 { 00026 public: 00027 00028 void initializeParameters(Array1D<int> & BeginningIndexOfParameterType, 00029 Array1D<double> &Parameters, 00030 Array1D<int> & BeginningIndexOfConstantType, 00031 Array1D<double> & Constants); 00032 00033 void evaluate( double r ); 00034 00035 bool isSingular(); 00036 00037 Array1D<Complex> getPoles(); 00038 00039 double getFunctionValue(); 00040 double getFunctionValue(double r); 00041 00042 double get_p_a(int ai); 00043 00044 double getFirstDerivativeValue(); 00045 double get_p2_xa(int ai); 00046 00047 double getSecondDerivativeValue(); 00048 double get_p3_xxa(int ai); 00049 00050 Array1D<double> getNumeratorCoeffs(); 00051 00052 Array1D<double> getDenominatorCoeffs(); 00053 }; 00054 00055 #endif