43 #ifndef __BASEFITOBJECT_H
44 #define __BASEFITOBJECT_H
160 virtual bool setCov (
int ilocal,
178 {
return fixParam (ilocal,
false); }
189 )
const {
return "???";}
192 virtual const char *
getName ()
const;
194 virtual void setName (
const char * name_);
202 virtual double getCov (
int ilocal,
206 virtual double getRho (
int ilocal,
227 virtual double getChi2()
const;
239 virtual std::ostream&
printParams (std::ostream& os
255 virtual std::ostream&
print (std::ostream& os
261 virtual void updateCache()
const=0;
293 virtual void addTo1stDerivatives (
double M[],
300 virtual void addTo2ndDerivatives (
double der2[],
int idim,
double factor[],
int metaSet)
const;
301 virtual void addTo2ndDerivatives (
double M[],
int idim,
double lambda,
double der[],
int metaSet)
const;
306 virtual double getFirstDerivative_Meta_Local(
int iMeta ,
311 virtual double getSecondDerivative_Meta_Local(
int iMeta,
317 virtual void initCov();
319 virtual double getError2 (
double der[],
int metaset)
const;
321 virtual void getDerivatives (
double der[],
int idim)
const = 0;
326 const static double eps2;
336 double par[BaseDefs::MAXPAR];
346 double cov [BaseDefs::MAXPAR][BaseDefs::MAXPAR];
348 mutable double covinv [BaseDefs::MAXPAR][BaseDefs::MAXPAR];
363 return bfo.
print(os);
366 #endif // __BASEFITOBJECT_H
virtual void addToGlobalChi2DerMatrix(double *M, int idim) const
Add 2nd derivatives of chi squared to global derivative matrix.
Definition: BaseFitObject.cc:480
virtual bool setError(int ilocal, double err_)
Set error of parameter ilocal; return: success.
Definition: BaseFitObject.cc:349
virtual BaseFitObject * copy() const =0
Return a new copy of itself.
virtual int getNFixed() const
Get number of fixed parameters of this FitObject.
Definition: BaseFitObject.cc:125
virtual std::ostream & print2ndDerivatives(std::ostream &os) const
print the 2nd derivatives wrt metaSet 0 (E, px, py, pz)
Definition: BaseFitObject.cc:169
virtual bool isParamMeasured(int ilocal) const
Get measured flag for parameter ilocal.
Definition: BaseFitObject.cc:418
virtual double getCov(int ilocal, int jlocal) const
Get covariance between parameters ilocal and jlocal.
Definition: BaseFitObject.cc:407
virtual int getNFree() const
Get number of free parameters of this FitObject.
Definition: BaseFitObject.cc:120
virtual bool setGlobalParNum(int ilocal, int iglobal)
Set number of parameter ilocal in global list return true signals OK.
Definition: BaseFitObject.cc:377
virtual bool isParamFixed(int ilocal) const
Returns whether parameter is fixed.
Definition: BaseFitObject.cc:424
BaseFitObject & operator=(const BaseFitObject &rhs)
Assignment.
Definition: BaseFitObject.cc:62
std::ostream & operator<<(std::ostream &os, const BaseConstraint &bc)
Prints out a BaseConstraint, using its print method.
Definition: BaseConstraint.h:128
virtual bool updateParams(double p[], int idim)
Read values from global vector, readjust vector; return: significant change.
Definition: BaseFitObject.cc:186
virtual std::ostream & print(std::ostream &os) const =0
print object to ostream
virtual void invalidateCache() const
invalidate any cached quantities
Definition: BaseFitObject.h:260
virtual std::ostream & print1stDerivatives(std::ostream &os) const
print the 1st derivatives wrt metaSet 0 (E, px, py, pz)
Definition: BaseFitObject.cc:156
virtual std::ostream & printParams(std::ostream &os) const
print the parameters and errors
Definition: BaseFitObject.cc:131
virtual int getGlobalParNum(int ilocal) const
Get global parameter number of parameter ilocal.
Definition: BaseFitObject.cc:384
bool measured[BaseDefs::MAXPAR]
measured flag
Definition: BaseFitObject.h:340
virtual double getMParam(int ilocal) const
Get measured value of parameter ilocal.
Definition: BaseFitObject.cc:396
virtual double getRho(int ilocal, int jlocal) const
Get correlation coefficient between parameters ilocal and jlocal.
Definition: BaseFitObject.cc:413
virtual bool setParam(int ilocal, double par_, bool measured_, bool fixed_=false)
Set value and measured flag of parameter i; return: significant change.
Definition: BaseFitObject.cc:317
virtual bool calculateCovInv() const
Calculate the inverse of the covariance matrix.
Definition: BaseFitObject.cc:224
virtual double getChi2() const
Get chi squared from measured and fitted parameters.
Definition: BaseFitObject.cc:430
virtual ~BaseFitObject()
Virtual destructor.
Definition: BaseFitObject.cc:90
bool cachevalid
flag for valid cache
Definition: BaseFitObject.h:352
virtual void addToGlobalChi2DerVector(double *y, int idim) const
Add derivatives of chi squared to global derivative vector.
Definition: BaseFitObject.cc:502
virtual bool releaseParam(int ilocal)
Release a parameter.
Definition: BaseFitObject.h:176
virtual int getNPar() const =0
Get total number of parameters of this FitObject.
double mpar[BaseDefs::MAXPAR]
measured parameters
Definition: BaseFitObject.h:338
virtual bool setCov(int ilocal, int jlocal, double cov_)
Set covariance of parameters ilocal and jlocal; return: success.
Definition: BaseFitObject.cc:359
virtual const char * getParamName(int ilocal) const
Get name of parameter ilocal.
Definition: BaseFitObject.h:188
virtual void addToGlobCov(double *glcov, int idim) const
Add covariance matrix elements to global covariance matrix of size idim x idim.
Definition: BaseFitObject.cc:206
double cov[BaseDefs::MAXPAR][BaseDefs::MAXPAR]
local covariance matrix
Definition: BaseFitObject.h:346
virtual double getD2Chi2DParam2(int ilocal, int jlocal) const
Get second derivative of chi squared w.r.t. parameters ilocal1 and ilocal2.
Definition: BaseFitObject.cc:466
BaseFitObject()
Default constructor.
Definition: BaseFitObject.cc:42
virtual double getError(int ilocal) const
Get error of parameter ilocal.
Definition: BaseFitObject.cc:402
double par[BaseDefs::MAXPAR]
fit parameters
Definition: BaseFitObject.h:336
virtual double getDChi2DParam(int ilocal) const
Get derivative of chi squared w.r.t. parameter ilocal.
Definition: BaseFitObject.cc:453
int globalParNum[BaseDefs::MAXPAR]
global paramter number for each parameter
Definition: BaseFitObject.h:344
virtual double getParam(int ilocal) const
Get current value of parameter ilocal.
Definition: BaseFitObject.cc:390
virtual const char * getName() const
Get object's name.
Definition: BaseFitObject.cc:106
virtual void setName(const char *name_)
Set object's name.
Definition: BaseFitObject.cc:98
bool fixed[BaseDefs::MAXPAR]
fixed flag
Definition: BaseFitObject.h:342
Abstract base class for particle objects of kinematic fits.
Definition: BaseFitObject.h:110
virtual BaseFitObject & assign(const BaseFitObject &source)
Assign from anther object, if of same type.
Definition: BaseFitObject.cc:70
virtual int getNMeasured() const
Get number of measured parameters of this FitObject.
Definition: BaseFitObject.cc:110
double covinv[BaseDefs::MAXPAR][BaseDefs::MAXPAR]
inverse pf local covariance matrix
Definition: BaseFitObject.h:348
virtual std::ostream & printRhoValues(std::ostream &os) const
print the correlation coefficients
Definition: BaseFitObject.cc:144
bool covinvvalid
flag for valid inverse covariance matrix
Definition: BaseFitObject.h:350
virtual int getNUnmeasured() const
Get number of unmeasured parameters of this FitObject.
Definition: BaseFitObject.cc:115
virtual bool setMParam(int ilocal, double mpar_)
Set measured value of parameter ilocal; return: success.
Definition: BaseFitObject.cc:339
virtual bool fixParam(int ilocal, bool fix=true)
Fix a parameter (fix=true), or release it (fix=false)
Definition: BaseFitObject.cc:371