QMCObjectiveFunctionResult Class Reference

Results from the evaluation of an objective function during a QMC calculation. More...

#include <QMCObjectiveFunctionResult.h>

List of all members.

Public Member Functions

 QMCObjectiveFunctionResult ()
 Creates a new uninitialized instance of this class.
 ~QMCObjectiveFunctionResult ()
 QMCObjectiveFunctionResult (QMCInput *input, double energyAve, double energyVar, double logWeightAve, double logWeightVar, int numSamples, Array1D< Complex > &poles)
 Creates and initializes a new instance of this class.
 QMCObjectiveFunctionResult (QMCObjectiveFunctionResult &rhs)
 Creates a new instance of this class and makes it equivalent to another instance of this class.
double getLogWeightsAve ()
 Gets the average value of the natural log of the statistical weights for the configurations used in this function evaluation.
double getLogWeightsVar ()
 Gets the variance of the natural log of the statistical weights for the configurations used in this function evaluation.
double getEnergyAve () const
 Gets the calculated average energy value.
double getEnergyVar () const
 Gets the calculated energy variance.
int getNumberSamples () const
double getScore () const
 Gets a score for this function evaluation.
double getDerivativeScore ()
 Gets a score for this function evaluation that is to be used in calculating the derivative in a numerical optimization.
void operator= (const QMCObjectiveFunctionResult &rhs)
 Sets two QMCObjectiveFunctionResult objects equal.

Private Member Functions

void set_log_weights_ave (double wa)
void set_log_weights_var (double wv)
void set_energy_ave (double ea)
void set_energy_var (double ev)
void set_score (Array1D< Complex > &poles)
void set_score_for_derivative (Array1D< Complex > &poles)
double mikes_score_function ()
double mikes_penalty (double x)
double mikes_penalty_scaler (double x)
double calculate_monkey_spank ()
double calculate_umrigar88 ()

Private Attributes

int numSamples
double log_weights_ave
double log_weights_var
double energy_ave
double energy_var
double score
double score_for_derivative
QMCInputInput

Friends

ostream & operator<< (ostream &strm, const QMCObjectiveFunctionResult &rhs)
 Prints the contents of this object in a human readable format.


Detailed Description

Results from the evaluation of an objective function during a QMC calculation.

These results can then be used for numerical optimization or other functions.

Definition at line 29 of file QMCObjectiveFunctionResult.h.


Constructor & Destructor Documentation

QMCObjectiveFunctionResult::QMCObjectiveFunctionResult (  ) 

Creates a new uninitialized instance of this class.

Definition at line 15 of file QMCObjectiveFunctionResult.cpp.

QMCObjectiveFunctionResult::~QMCObjectiveFunctionResult (  ) 

Definition at line 19 of file QMCObjectiveFunctionResult.cpp.

References Input.

QMCObjectiveFunctionResult::QMCObjectiveFunctionResult ( QMCInput input,
double  energyAve,
double  energyVar,
double  logWeightAve,
double  logWeightVar,
int  numSamples,
Array1D< Complex > &  poles 
)

Creates and initializes a new instance of this class.

Parameters:
input data input to control the calculation.
energyAve calculated energy value
energyVar calculated energy variance
logWeightAve average value of the natural log of the statistical weights of the configurations.
logWeightVar variance in the above quantity.
poles of the correlation functions

Definition at line 24 of file QMCObjectiveFunctionResult.cpp.

References Input, set_energy_ave(), set_energy_var(), set_log_weights_ave(), set_log_weights_var(), set_score(), and set_score_for_derivative().

QMCObjectiveFunctionResult::QMCObjectiveFunctionResult ( QMCObjectiveFunctionResult rhs  ) 

Creates a new instance of this class and makes it equivalent to another instance of this class.

Parameters:
rhs object to set this equal to.

Definition at line 42 of file QMCObjectiveFunctionResult.cpp.


Member Function Documentation

double QMCObjectiveFunctionResult::getLogWeightsAve (  ) 

Gets the average value of the natural log of the statistical weights for the configurations used in this function evaluation.

Returns:
average value of the natural log of the statistical weights.

Definition at line 48 of file QMCObjectiveFunctionResult.cpp.

References log_weights_ave.

Referenced by operator<<().

double QMCObjectiveFunctionResult::getLogWeightsVar (  ) 

Gets the variance of the natural log of the statistical weights for the configurations used in this function evaluation.

Returns:
variance of the natural log of the statistical weights.

Definition at line 53 of file QMCObjectiveFunctionResult.cpp.

References log_weights_var.

Referenced by operator<<().

double QMCObjectiveFunctionResult::getEnergyAve (  )  const

Gets the calculated average energy value.

Returns:
calculated average energy value.

Definition at line 58 of file QMCObjectiveFunctionResult.cpp.

References energy_ave.

Referenced by calculate_umrigar88(), operator<<(), set_score(), and set_score_for_derivative().

double QMCObjectiveFunctionResult::getEnergyVar (  )  const

Gets the calculated energy variance.

Returns:
calculated energy variance.

Definition at line 63 of file QMCObjectiveFunctionResult.cpp.

References energy_var.

Referenced by calculate_umrigar88(), operator<<(), set_score(), and set_score_for_derivative().

int QMCObjectiveFunctionResult::getNumberSamples (  )  const

Definition at line 68 of file QMCObjectiveFunctionResult.cpp.

References numSamples.

Referenced by operator<<().

double QMCObjectiveFunctionResult::getScore (  )  const

Gets a score for this function evaluation.

Better scores have lower values. The algorithm used for arriving at the scoris is determined by the input data. The convergence of a numerical optimization can be modified by changing the score functions.

Returns:
score for the function evaluation.

Definition at line 73 of file QMCObjectiveFunctionResult.cpp.

References score.

Referenced by QMCWolfeStepLengthSelector::calculateLineSearchObjectiveFunction(), ParameterScorePair::getScore(), operator<<(), and QMCLineSearch::optimize().

double QMCObjectiveFunctionResult::getDerivativeScore (  ) 

Gets a score for this function evaluation that is to be used in calculating the derivative in a numerical optimization.

The algorithm used for arriving at this score is determined by the input data. The convergence of a numerical optimization can be modified by changing the score functions.

Returns:
score for the derivative evaluation.

Definition at line 78 of file QMCObjectiveFunctionResult.cpp.

References score_for_derivative.

Referenced by operator<<().

void QMCObjectiveFunctionResult::operator= ( const QMCObjectiveFunctionResult rhs  ) 

Sets two QMCObjectiveFunctionResult objects equal.

Parameters:
rhs object to set this object equal to.

Definition at line 155 of file QMCObjectiveFunctionResult.cpp.

References energy_ave, energy_var, Input, log_weights_ave, log_weights_var, numSamples, score, and score_for_derivative.

void QMCObjectiveFunctionResult::set_log_weights_ave ( double  wa  )  [private]

void QMCObjectiveFunctionResult::set_log_weights_var ( double  wv  )  [private]

void QMCObjectiveFunctionResult::set_energy_ave ( double  ea  )  [private]

void QMCObjectiveFunctionResult::set_energy_var ( double  ev  )  [private]

void QMCObjectiveFunctionResult::set_score ( Array1D< Complex > &  poles  )  [private]

void QMCObjectiveFunctionResult::set_score_for_derivative ( Array1D< Complex > &  poles  )  [private]

double QMCObjectiveFunctionResult::mikes_score_function (  )  [private]

double QMCObjectiveFunctionResult::mikes_penalty ( double  x  )  [private]

Definition at line 290 of file QMCObjectiveFunctionResult.cpp.

Referenced by mikes_score_function().

double QMCObjectiveFunctionResult::mikes_penalty_scaler ( double  x  )  [private]

Definition at line 302 of file QMCObjectiveFunctionResult.cpp.

References IeeeMath::isNaN().

Referenced by mikes_score_function().

double QMCObjectiveFunctionResult::calculate_monkey_spank (  )  [private]

Definition at line 325 of file QMCObjectiveFunctionResult.cpp.

References mikes_score_function().

Referenced by set_score(), and set_score_for_derivative().

double QMCObjectiveFunctionResult::calculate_umrigar88 (  )  [private]


Friends And Related Function Documentation

ostream& operator<< ( ostream &  strm,
const QMCObjectiveFunctionResult rhs 
) [friend]

Prints the contents of this object in a human readable format.


Member Data Documentation

Definition at line 130 of file QMCObjectiveFunctionResult.h.

Referenced by getNumberSamples(), and operator=().

Definition at line 131 of file QMCObjectiveFunctionResult.h.

Referenced by getLogWeightsAve(), operator=(), and set_log_weights_ave().

Definition at line 133 of file QMCObjectiveFunctionResult.h.

Referenced by getEnergyAve(), operator=(), and set_energy_ave().

Definition at line 136 of file QMCObjectiveFunctionResult.h.

Referenced by getScore(), operator=(), and set_score().


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

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