BAT  0.9.4
The Bayesian analysis toolkit
 All Classes Namespaces Functions Variables Enumerations
BCGraphFitter Class Reference

A class for fitting graphs with functions. More...

#include <BCGraphFitter.h>

Inheritance diagram for BCGraphFitter:
Collaboration diagram for BCGraphFitter:

Public Member Functions

Constructors and destructors
 BCGraphFitter ()
 
 BCGraphFitter (const char *name)
 
 BCGraphFitter (TGraphErrors *graph, TF1 *func)
 
 BCGraphFitter (const char *name, TGraphErrors *graph, TF1 *func)
 
 ~BCGraphFitter ()
 
Member functions (get)
TGraphErrors * GetGraph ()
 
TF1 * GetFitFunction ()
 
TGraph * GetErrorBand ()
 
TGraph * GetGraphFitFunction ()
 
Member functions (set)
int SetGraph (TGraphErrors *graph)
 
int SetFitFunction (TF1 *func)
 
Member functions (miscellaneous methods)
double LogLikelihood (const std::vector< double > &parameters)
 
double FitFunction (const std::vector< double > &x, const std::vector< double > &parameters)
 
int Fit ()
 
int Fit (TGraphErrors *graph, TF1 *func)
 
void DrawFit (const char *options="", bool flaglegend=false)
 
virtual double CDF (const std::vector< double > &parameters, int index, bool lower=false)
 
- Public Member Functions inherited from BCFitter
 BCFitter ()
 
 BCFitter (const char *name)
 
 ~BCFitter ()
 
TGraph * GetErrorBand ()
 
TH2D * GetErrorBandXY () const
 
TH2D * GetErrorBandXY_yellow (double level=.68, int nsmooth=0) const
 
std::vector< double > GetErrorBand (double level) const
 
TGraph * GetErrorBandGraph (double level1, double level2) const
 
TGraph * GetFitFunctionGraph (const std::vector< double > &parameters)
 
TGraph * GetFitFunctionGraph ()
 
TGraph * GetFitFunctionGraph (const std::vector< double > &parameters, double xmin, double xmax, int n=1000)
 
void FixDataAxis (unsigned int index, bool fixed)
 
bool GetFixedDataAxis (unsigned int index) const
 
void SetFillErrorBand (bool flag=true)
 
void SetErrorBandHisto (TH2D *h)
 
void UnsetFillErrorBand ()
 
void SetFitFunctionIndexX (int index)
 
void SetFitFunctionIndexY (int index)
 
void SetFitFunctionIndices (int indexx, int indexy)
 
void SetErrorBandContinuous (bool flag)
 
int ReadErrorBandFromFile (const char *file)
 
void MCMCIterationInterface ()
 
void MarginalizePreprocess ()
 
void MarginalizePostprocess ()
 
void FillErrorBand ()
 
- Public Member Functions inherited from BCModel
 BCModel (const char *name="model")
 
 BCModel (const BCModel &bcmodel)
 
virtual ~BCModel ()
 
BCModeloperator= (const BCModel &bcmodel)
 
const std::string & GetName () const
 
double GetModelAPrioriProbability () const
 
double GetModelAPosterioriProbability () const
 
BCDataSetGetDataSet () const
 
BCDataPointGetDataPointLowerBoundaries () const
 
BCDataPointGetDataPointUpperBoundaries () const
 
double GetDataPointLowerBoundary (unsigned int index) const
 
double GetDataPointUpperBoundary (unsigned int index) const
 
bool GetFlagBoundaries () const
 
unsigned GetNDataPoints () const
 
BCDataPointGetDataPoint (unsigned int index) const
 
void SetName (const char *name)
 
void SetModelAPrioriProbability (double probability)
 
void SetModelAPosterioriProbability (double probability)
 
virtual int AddParameter (BCParameter *parameter)
 
void SetDataSet (BCDataSet *dataset)
 
void SetSingleDataPoint (BCDataPoint *datapoint)
 
void SetSingleDataPoint (BCDataSet *dataset, unsigned int index)
 
void SetDataBoundaries (unsigned int index, double lowerboundary, double upperboundary, bool fixed=false)
 
void SetDataPointLowerBoundaries (BCDataPoint *datasetlowerboundaries)
 
void SetDataPointUpperBoundaries (BCDataPoint *datasetupperboundaries)
 
void SetDataPointLowerBoundary (int index, double lowerboundary)
 
void SetDataPointUpperBoundary (int index, double upperboundary)
 
int SetPrior (int index, TF1 *f)
 
int SetPrior (const char *name, TF1 *f)
 
int SetPriorDelta (int index, double value)
 
int SetPriorDelta (const char *name, double value)
 
int SetPriorGauss (int index, double mean, double sigma)
 
int SetPriorGauss (const char *name, double mean, double sigma)
 
int SetPriorGauss (int index, double mean, double sigmadown, double sigmaup)
 
int SetPriorGauss (const char *name, double mean, double sigmadown, double sigmaup)
 
int SetPrior (int index, TH1 *h, bool flag=false)
 
int SetPrior (const char *name, TH1 *h, bool flag=false)
 
int SetPriorConstant (int index)
 
int SetPriorConstant (const char *name)
 
int SetPriorConstantAll ()
 
void Copy (const BCModel &bcmodel)
 
double APrioriProbability (const std::vector< double > &parameters)
 
virtual double LogAPrioriProbability (const std::vector< double > &parameters)
 
virtual double Likelihood (const std::vector< double > &params)
 
double ProbabilityNN (const std::vector< double > &params)
 
double LogProbabilityNN (const std::vector< double > &parameters)
 
double Probability (const std::vector< double > &parameter)
 
double LogProbability (const std::vector< double > &parameter)
 
virtual double SamplingFunction (const std::vector< double > &parameters)
 
double Eval (const std::vector< double > &parameters)
 
virtual double LogEval (const std::vector< double > &parameters)
 
virtual void CorrelateDataPointValues (std::vector< double > &x)
 
double GetPvalueFromChi2 (const std::vector< double > &par, int sigma_index)
 
double GetPvalueFromKolmogorov (const std::vector< double > &par, int index)
 
double GetPvalueFromChi2NDoF (std::vector< double > par, int sigma_index)
 
BCH1DCalculatePValue (std::vector< double > par, bool flag_histogram=false)
 
double GetPValue ()
 
double GetPValueNDoF ()
 
double GetChi2NDoF ()
 
std::vector< double > GetChi2Runs (int dataIndex, int sigmaIndex)
 
void SetGoFNIterationsMax (int n)
 
void SetGoFNIterationsRun (int n)
 
void SetGoFNChains (int n)
 
double HessianMatrixElement (const BCParameter *parameter1, const BCParameter *parameter2, std::vector< double > point)
 
void PrintSummary ()
 
void PrintResults (const char *file)
 
void PrintShortFitSummary (int chi2flag=0)
 
void PrintHessianMatrix (std::vector< double > parameters)
 

Additional Inherited Members

- Protected Attributes inherited from BCFitter
TH2D * fErrorBandXY
 
- Protected Attributes inherited from BCModel
std::string fName
 
double fModelAPriori
 
double fModelAPosteriori
 
BCDataSetfDataSet
 
BCDataPointfDataPointLowerBoundaries
 
BCDataPointfDataPointUpperBoundaries
 
std::vector< bool > fDataFixedValues
 
double fPValue
 
double fChi2NDoF
 
double fPValueNDoF
 
bool flag_discrete
 
int fGoFNIterationsMax
 
int fGoFNIterationsRun
 
int fGoFNChains
 
std::vector< TNamed * > fPriorContainer
 
bool fPriorConstantAll
 
std::vector< bool > fPriorContainerConstant
 
std::vector< bool > fPriorContainerInterpolate
 

Detailed Description

A class for fitting graphs with functions.

Author
Daniel Kollar
Kevin Kröninger
Version
1.0
Date
2008 This class allows fitting of a TGraphErrors using a TF1 function. It doeasn't take the x uncertainties into account. For that look at BCGraphXFitter (not yet implemented).

Definition at line 35 of file BCGraphFitter.h.

Constructor & Destructor Documentation

BCGraphFitter::BCGraphFitter ( )

Default constructor

Definition at line 27 of file BCGraphFitter.cxx.

BCGraphFitter::BCGraphFitter ( const char *  name)

Constructor

Parameters
namename of the model

Definition at line 40 of file BCGraphFitter.cxx.

BCGraphFitter::BCGraphFitter ( TGraphErrors *  graph,
TF1 *  func 
)

Constructor

Parameters
graphpointer to TGraphErrors
funcpointer to TF1

Definition at line 53 of file BCGraphFitter.cxx.

BCGraphFitter::BCGraphFitter ( const char *  name,
TGraphErrors *  graph,
TF1 *  func 
)

Constructor

Parameters
namename of the model
graphpointer to TGraphErrors
funcpointer to TF1

Definition at line 69 of file BCGraphFitter.cxx.

BCGraphFitter::~BCGraphFitter ( )

The default destructor.

Definition at line 206 of file BCGraphFitter.cxx.

Member Function Documentation

double BCGraphFitter::CDF ( const std::vector< double > &  ,
int  ,
bool  = false 
)
virtual

1dim cumulative distribution function of the probability to get the data f(x_i|param) for a single measurement, assumed to be of identical functional form for all measurements

Parameters
parametersThe parameter values at which point to compute the cdf
indexThe data point index starting at 0,1...N-1
loweronly needed for discrete distributions! Return the CDF for the count one less than actually observed, e.g. in Poisson process, if 3 actually observed, then CDF(2) is returned

Reimplemented from BCModel.

Definition at line 383 of file BCGraphFitter.cxx.

void BCGraphFitter::DrawFit ( const char *  options = "",
bool  flaglegend = false 
)
virtual

Draw the fit in the current pad.

Implements BCFitter.

Definition at line 330 of file BCGraphFitter.cxx.

int BCGraphFitter::Fit ( )
virtual

Performs the fit. The graph and the function has to be set beforehand.

Returns
An error code.

Implements BCFitter.

Definition at line 281 of file BCGraphFitter.cxx.

int BCGraphFitter::Fit ( TGraphErrors *  graph,
TF1 *  func 
)

Performs the fit of the graph with the function.

Parameters
graphpointer to TGraphErrors object
funcpointer to TF1 object
Returns
An error code.

Definition at line 262 of file BCGraphFitter.cxx.

double BCGraphFitter::FitFunction ( const std::vector< double > &  x,
const std::vector< double > &  parameters 
)
virtual

Returns the value of the 1D fit function for a given set of parameters at a given x.

Parameters
xpoint to calculate the function value at
parametersparameters of the function

Reimplemented from BCFitter.

Definition at line 247 of file BCGraphFitter.cxx.

TGraph* BCGraphFitter::GetErrorBand ( )
inline
Returns
pointer to the error band

Definition at line 85 of file BCGraphFitter.h.

TF1* BCGraphFitter::GetFitFunction ( )
inline
Returns
pointer to TF1

Definition at line 80 of file BCGraphFitter.h.

TGraphErrors* BCGraphFitter::GetGraph ( )
inline
Returns
pointer to TGraphErrors

Definition at line 75 of file BCGraphFitter.h.

TGraph* BCGraphFitter::GetGraphFitFunction ( )
inline
Returns
pointer to a graph for the fit function

Definition at line 90 of file BCGraphFitter.h.

double BCGraphFitter::LogLikelihood ( const std::vector< double > &  parameters)
virtual

The log of the prior probability. It is set to be flat in all parameters.

Parameters
parametersvector containing the parameter values The log of the conditional probability.
parametersvector containing the parameter values

Implements BCModel.

Definition at line 213 of file BCGraphFitter.cxx.

int BCGraphFitter::SetFitFunction ( TF1 *  func)
Parameters
funcpointer to TF1 object

Definition at line 162 of file BCGraphFitter.cxx.

int BCGraphFitter::SetGraph ( TGraphErrors *  graph)
Parameters
graphpointer to TGraphErrors object

Definition at line 85 of file BCGraphFitter.cxx.


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