Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

CStochasticSensitivityAnalysis Class Reference

#include <StochasticSensitivityAnalysis.h>

Inheritance diagram for CStochasticSensitivityAnalysis:

Inheritance graph
[legend]
Collaboration diagram for CStochasticSensitivityAnalysis:

Collaboration graph
[legend]
List of all members.

Public Methods

 CStochasticSensitivityAnalysis ()
 CStochasticSensitivityAnalysis (bool readFlag, bool hessianFlag, int nEnsembleSize, int seed, CParameterFilter *pFilter, double funcAccuracy, double temperature=1.0)
virtual ~CStochasticSensitivityAnalysis ()
void ComputeApproximateHessian (double *pParameters, NLLSMinimizable *pNLLS)
void ComputeTrueHessian (double *pParameters, NLLSMinimizable *pNLLS)
void ReadHessian ()
void DoAnalysis (double *pFittedParameters, Minimizable *pMinimizable)
double SampleGaussian (double *pParDelta)
double SampleWithoutExplicitHessian (double *pParDelta)
void ConstructTrialMove (double *pParTrial, double *pParCurrent, double *pParDelta)
void AddParametersToEnsemble (double *pParSave, double *resid, double quadratic, double cost)
bool AcceptMove (double quadratic, double deltaCost)
double GetRWValue () const
std::vector< CEnsembleMember * > * GetEnsemble ()
const double ** GetEigenvectorMatrix () const
double GetRescale ()
double * GetSingularValues ()

Private Attributes

bool m_bSVDFlag
bool m_bHessianFlag
bool m_bReadFlag
int m_iNResiduals
int m_iNParameters
int m_iNEnsembleSize
int m_iRNGSeed
double m_dTemperature
double m_dRescale
double m_dAcceptanceRatio
double m_dFuncAccuracy
double m_dRWValue
double m_dMNormSquared
double * m_pdSingularValues
double ** m_pdMatrixV
double ** m_pdHessian
double ** m_pdSamplingMatrix
double ** m_pdJacobian
CParameterFilterm_pFilter
Randm_pRNG
std::vector< CEnsembleMember * > m_vpEnsemble

Constructor & Destructor Documentation

CStochasticSensitivityAnalysis::CStochasticSensitivityAnalysis  
 

Definition at line 11 of file StochasticSensitivityAnalysis.cpp.

CStochasticSensitivityAnalysis::CStochasticSensitivityAnalysis bool    readFlag,
bool    hessianFlag,
int    nEnsembleSize,
int    seed,
CParameterFilter   pFilter,
double    funcAccuracy,
double    temperature = 1.0
 

Definition at line 16 of file StochasticSensitivityAnalysis.cpp.

References m_bHessianFlag, m_bReadFlag, m_bSVDFlag, m_dAcceptanceRatio, m_dFuncAccuracy, m_dMNormSquared, m_dRescale, m_dRWValue, m_dTemperature, m_iNEnsembleSize, m_iRNGSeed, m_pFilter, and m_pRNG.

CStochasticSensitivityAnalysis::~CStochasticSensitivityAnalysis   [virtual]
 

Definition at line 33 of file StochasticSensitivityAnalysis.cpp.

References m_pdSingularValues, m_pRNG, and m_vpEnsemble.


Member Function Documentation

bool CStochasticSensitivityAnalysis::AcceptMove double    quadratic,
double    deltaCost
 

Definition at line 1111 of file StochasticSensitivityAnalysis.cpp.

References m_dTemperature, m_pRNG, and Rand::uniform.

Referenced by DoAnalysis.

void CStochasticSensitivityAnalysis::AddParametersToEnsemble double *    pParSave,
double *    resid,
double    quadratic,
double    cost
 

Definition at line 1134 of file StochasticSensitivityAnalysis.cpp.

References m_iNParameters, m_iNResiduals, and m_vpEnsemble.

Referenced by DoAnalysis.

void CStochasticSensitivityAnalysis::ComputeApproximateHessian double *    pParameters,
NLLSMinimizable   pNLLS
 

Definition at line 297 of file StochasticSensitivityAnalysis.cpp.

References NLLSMinimizable::GetResiduals, m_bSVDFlag, m_dFuncAccuracy, m_iNParameters, m_iNResiduals, m_pdHessian, m_pdJacobian, m_pFilter, NLLSMinimizable::ObjectiveFunction, CParameterFilter::Operator, and CParameterFilter::OperatorInverse.

Referenced by DoAnalysis.

void CStochasticSensitivityAnalysis::ComputeTrueHessian double *    pParameters,
NLLSMinimizable   pNLLS
 

Definition at line 420 of file StochasticSensitivityAnalysis.cpp.

References m_bSVDFlag, m_dFuncAccuracy, m_iNParameters, m_pdHessian, m_pFilter, NLLSMinimizable::ObjectiveFunction, CParameterFilter::Operator, and CParameterFilter::OperatorInverse.

Referenced by DoAnalysis.

void CStochasticSensitivityAnalysis::ConstructTrialMove double *    pParTrial,
double *    pParCurrent,
double *    pParDelta
 

Definition at line 1139 of file StochasticSensitivityAnalysis.cpp.

References CParameterFilter::BackwardTransformation, CParameterFilter::ForwardTransformation, m_iNParameters, and m_pFilter.

Referenced by DoAnalysis.

void CStochasticSensitivityAnalysis::DoAnalysis double *    pFittedParameters,
Minimizable   pMinimizable
 

Definition at line 43 of file StochasticSensitivityAnalysis.cpp.

References AcceptMove, AddParametersToEnsemble, ComputeApproximateHessian, ComputeTrueHessian, ConstructTrialMove, NLLSMinimizable::F, Minimizable::GetNParameters, NLLSMinimizable::GetNResiduals, NLLSMinimizable::GetResiduals, m_dAcceptanceRatio, m_dMNormSquared, m_dRescale, m_dRWValue, m_dTemperature, m_iNEnsembleSize, m_iNParameters, m_iNResiduals, m_pdHessian, m_pdJacobian, m_pdMatrixV, m_pdSamplingMatrix, m_pdSingularValues, m_vpEnsemble, Subject::Notify, ReadHessian, and SampleGaussian.

Referenced by main.

const double** CStochasticSensitivityAnalysis::GetEigenvectorMatrix   const [inline]
 

Definition at line 55 of file StochasticSensitivityAnalysis.h.

References m_pdMatrixV.

Referenced by GnuPlotterParameterScatterPlot::Update.

std::vector<CEnsembleMember *>* CStochasticSensitivityAnalysis::GetEnsemble   [inline]
 

Definition at line 54 of file StochasticSensitivityAnalysis.h.

References m_vpEnsemble.

Referenced by GnuPlotterResidualScatterPlot::Update, GnuPlotterParameterScatterPlot::Update, and GnuPlotterCostObserver::Update.

double CStochasticSensitivityAnalysis::GetRescale   [inline]
 

Definition at line 56 of file StochasticSensitivityAnalysis.h.

References m_dRescale.

double CStochasticSensitivityAnalysis::GetRWValue   const [inline]
 

Definition at line 53 of file StochasticSensitivityAnalysis.h.

References m_dRWValue.

Referenced by main, and GnuPlotterParameterScatterPlot::Update.

double* CStochasticSensitivityAnalysis::GetSingularValues   [inline]
 

Definition at line 57 of file StochasticSensitivityAnalysis.h.

References m_pdSingularValues.

void CStochasticSensitivityAnalysis::ReadHessian  
 

Definition at line 537 of file StochasticSensitivityAnalysis.cpp.

References m_bSVDFlag, m_iNParameters, and m_pdHessian.

Referenced by DoAnalysis.

double CStochasticSensitivityAnalysis::SampleGaussian double *    pParDelta
 

Definition at line 909 of file StochasticSensitivityAnalysis.cpp.

References DBDSQR, DGEBRD, DORGBR, Rand::gaussian, m_bSVDFlag, m_dMNormSquared, m_dRescale, m_iNParameters, m_pdHessian, m_pdMatrixV, m_pdSamplingMatrix, m_pdSingularValues, and m_pRNG.

Referenced by DoAnalysis.

double CStochasticSensitivityAnalysis::SampleWithoutExplicitHessian double *    pParDelta
 

Definition at line 565 of file StochasticSensitivityAnalysis.cpp.

References __max, __min, DBDSQR, DGEBRD, DORGBR, Rand::gaussian, m_bSVDFlag, m_dRescale, m_iNParameters, m_iNResiduals, m_pdJacobian, m_pdMatrixV, m_pdSamplingMatrix, m_pdSingularValues, and m_pRNG.


Member Data Documentation

bool CStochasticSensitivityAnalysis::m_bHessianFlag [private]
 

Definition at line 62 of file StochasticSensitivityAnalysis.h.

Referenced by CStochasticSensitivityAnalysis.

bool CStochasticSensitivityAnalysis::m_bReadFlag [private]
 

Definition at line 64 of file StochasticSensitivityAnalysis.h.

Referenced by CStochasticSensitivityAnalysis.

bool CStochasticSensitivityAnalysis::m_bSVDFlag [private]
 

Definition at line 60 of file StochasticSensitivityAnalysis.h.

Referenced by ComputeApproximateHessian, ComputeTrueHessian, CStochasticSensitivityAnalysis, ReadHessian, SampleGaussian, and SampleWithoutExplicitHessian.

double CStochasticSensitivityAnalysis::m_dAcceptanceRatio [private]
 

Definition at line 77 of file StochasticSensitivityAnalysis.h.

Referenced by CStochasticSensitivityAnalysis, and DoAnalysis.

double CStochasticSensitivityAnalysis::m_dFuncAccuracy [private]
 

Definition at line 79 of file StochasticSensitivityAnalysis.h.

Referenced by ComputeApproximateHessian, ComputeTrueHessian, and CStochasticSensitivityAnalysis.

double CStochasticSensitivityAnalysis::m_dMNormSquared [private]
 

Definition at line 83 of file StochasticSensitivityAnalysis.h.

Referenced by CStochasticSensitivityAnalysis, DoAnalysis, and SampleGaussian.

double CStochasticSensitivityAnalysis::m_dRescale [private]
 

Definition at line 75 of file StochasticSensitivityAnalysis.h.

Referenced by CStochasticSensitivityAnalysis, DoAnalysis, GetRescale, SampleGaussian, and SampleWithoutExplicitHessian.

double CStochasticSensitivityAnalysis::m_dRWValue [private]
 

Definition at line 81 of file StochasticSensitivityAnalysis.h.

Referenced by CStochasticSensitivityAnalysis, DoAnalysis, and GetRWValue.

double CStochasticSensitivityAnalysis::m_dTemperature [private]
 

Definition at line 73 of file StochasticSensitivityAnalysis.h.

Referenced by AcceptMove, CStochasticSensitivityAnalysis, and DoAnalysis.

int CStochasticSensitivityAnalysis::m_iNEnsembleSize [private]
 

Definition at line 70 of file StochasticSensitivityAnalysis.h.

Referenced by CStochasticSensitivityAnalysis, and DoAnalysis.

int CStochasticSensitivityAnalysis::m_iNParameters [private]
 

Definition at line 68 of file StochasticSensitivityAnalysis.h.

Referenced by AddParametersToEnsemble, ComputeApproximateHessian, ComputeTrueHessian, ConstructTrialMove, DoAnalysis, ReadHessian, SampleGaussian, and SampleWithoutExplicitHessian.

int CStochasticSensitivityAnalysis::m_iNResiduals [private]
 

Definition at line 66 of file StochasticSensitivityAnalysis.h.

Referenced by AddParametersToEnsemble, ComputeApproximateHessian, DoAnalysis, and SampleWithoutExplicitHessian.

int CStochasticSensitivityAnalysis::m_iRNGSeed [private]
 

Definition at line 71 of file StochasticSensitivityAnalysis.h.

Referenced by CStochasticSensitivityAnalysis.

double** CStochasticSensitivityAnalysis::m_pdHessian [private]
 

Definition at line 89 of file StochasticSensitivityAnalysis.h.

Referenced by ComputeApproximateHessian, ComputeTrueHessian, DoAnalysis, ReadHessian, and SampleGaussian.

double** CStochasticSensitivityAnalysis::m_pdJacobian [private]
 

Definition at line 93 of file StochasticSensitivityAnalysis.h.

Referenced by ComputeApproximateHessian, DoAnalysis, and SampleWithoutExplicitHessian.

double** CStochasticSensitivityAnalysis::m_pdMatrixV [private]
 

Definition at line 87 of file StochasticSensitivityAnalysis.h.

Referenced by DoAnalysis, GetEigenvectorMatrix, SampleGaussian, and SampleWithoutExplicitHessian.

double** CStochasticSensitivityAnalysis::m_pdSamplingMatrix [private]
 

Definition at line 91 of file StochasticSensitivityAnalysis.h.

Referenced by DoAnalysis, SampleGaussian, and SampleWithoutExplicitHessian.

double* CStochasticSensitivityAnalysis::m_pdSingularValues [private]
 

Definition at line 85 of file StochasticSensitivityAnalysis.h.

Referenced by DoAnalysis, GetSingularValues, SampleGaussian, SampleWithoutExplicitHessian, and ~CStochasticSensitivityAnalysis.

CParameterFilter* CStochasticSensitivityAnalysis::m_pFilter [private]
 

Definition at line 94 of file StochasticSensitivityAnalysis.h.

Referenced by ComputeApproximateHessian, ComputeTrueHessian, ConstructTrialMove, and CStochasticSensitivityAnalysis.

Rand* CStochasticSensitivityAnalysis::m_pRNG [private]
 

Definition at line 95 of file StochasticSensitivityAnalysis.h.

Referenced by AcceptMove, CStochasticSensitivityAnalysis, SampleGaussian, SampleWithoutExplicitHessian, and ~CStochasticSensitivityAnalysis.

std::vector<CEnsembleMember *> CStochasticSensitivityAnalysis::m_vpEnsemble [private]
 

Definition at line 96 of file StochasticSensitivityAnalysis.h.

Referenced by AddParametersToEnsemble, DoAnalysis, GetEnsemble, and ~CStochasticSensitivityAnalysis.


The documentation for this class was generated from the following files:
Generated on Mon Nov 3 10:05:49 2003 by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002