Log of /trunk/math/mathcore/inc/TVirtualFitter.h
Parent Directory
Revision
25529 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Sep 25 09:53:11 2008 UTC (6 years, 3 months ago) by
moneta
File length: 6911 byte(s)
Diff to
previous 25490
- fix support for option "U" in Fit() method. Add in Fitter class method to fit FCN with Minuit-like type FCN.
Add method to retrieve FCN function pointer from static instance of TVirtualFitter.
Revision
17996 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Sun Feb 18 14:56:42 2007 UTC (7 years, 11 months ago) by
brun
Original Path:
trunk/base/inc/TVirtualFitter.h
File length: 6854 byte(s)
Diff to
previous 15950
For abstract interfaces, generate the CINT stub functions only for
the strict minimum of functions.
Keep only one pure function known to CINT such that CINT can
recognize that the class is abstract and has pure functions.
This optimization gains about one megabyte of generated code.
Revision
15134 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue May 23 04:47:42 2006 UTC (8 years, 8 months ago) by
brun
Original Path:
trunk/base/inc/TVirtualFitter.h
File length: 6854 byte(s)
Diff to
previous 14310
From Federico Carminati:
"I have implemented all copy and equal operators needed to silence all
warnings in AliRoot, as requested. I have implemented shallow copies as
would do the default operators synthetized by the compiler.
Most operators are protected. If users complain, you just have to move
them into the public area, but class derivation is of course supported.
It has been a terrible job, I have modified 278 files, but the changes
are backward compabile, and this goes a long way to permitting user to
use the effc++ flag with root headers."
Revision
13399 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Nov 29 14:43:59 2005 UTC (9 years, 1 month ago) by
brun
Original Path:
trunk/base/inc/TVirtualFitter.h
File length: 6666 byte(s)
Diff to
previous 13364
From Anna:
Implement new functions in the TVirtualFitter and corresponding
implementations to compute the confidence intervals.
Two kinds of interfaces are implemented, eg
void TFitter::GetConfidenceIntervals(Int_t n, Int_t ndim, Double_t *x, Double_t *ci, Double_t cl)
//Computes point-by-point confidence intervals for the fitted function
//Parameters:
//n - number of points
//ndim - dimensions of points
//x - points, at which to compute the intervals, for ndim > 1
// should be in order: (x0,y0, x1, y1, ... xn, yn)
//ci - computed intervals are returned in this array
//cl - confidence level, default=0.95
//NOTE, that the intervals are approximate for nonlinear(in parameters) models
void TFitter::GetConfidenceIntervals(TObject *obj, Double_t cl)
//Computes confidence intervals at level cl. Default is 0.95
//The TObject parameter can be a TGraphErrors, a TGraph2DErrors or a TH1,2,3.
//For Graphs, confidence intervals are computed for each point,
//the value of the graph at that point is set to the function value at that
//point, and the graph y-errors (or z-errors) are set to the value of
//the confidence interval at that point.
//For Histograms, confidence intervals are computed for each bin center
//The bin content of this bin is then set to the function value at the bin
//center, and the bin error is set to the confidence interval value.
//NOTE: confidence intervals are approximate for nonlinear models!
//
//Allowed combinations:
//Fitted object Passed object
//TGraph TGraphErrors, TH1
//TGraphErrors, AsymmErrors TGraphErrors, TH1
//TH1 TGraphErrors, TH1
//TGraph2D TGraph2DErrors, TH2
//TGraph2DErrors TGraph2DErrors, TH2
//TH2 TGraph2DErrors, TH2
//TH3 TH3
Revision
13364 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Sat Nov 26 15:03:07 2005 UTC (9 years, 1 month ago) by
brun
Original Path:
trunk/base/inc/TVirtualFitter.h
File length: 6478 byte(s)
Diff to
previous 10397
Implement a cache facility in TVirtualFitter.
The class has a new function TVirtualFitter::SetCache that creates
an internal structure where the information about histogram bins
is stored (bin position, size, content and error).
The cache is used during fitting and speeds up (factor 2) TH1::Fit
when called with the default TMinuit. Only the points included in
the fit are stored in the cache.
Currently the cache is set and filled only in TH1::Fit.
The TFitter and TFumili classes have been changed to take into account
the information in the cache.
The free functions called by Minuit have been rewritten.
They are now only an interface calling the fitter member functions.
Revision
9608 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jul 28 08:02:04 2004 UTC (10 years, 5 months ago) by
brun
Original Path:
trunk/base/inc/TVirtualFitter.h
File length: 5922 byte(s)
Diff to
previous 7638
In TVirtualFitter make the following functions const
Double_t Chisquare(Int_t npar, Double_t *params) const = 0;
Double_t *GetCovarianceMatrix() const = 0;
Int_t GetErrors(Int_t ipar,Double_t &eplus, Double_t &eminus, Double_t &eparab, Double_t &globcc) const = 0;
Int_t GetParameter(Int_t ipar,char *name,Double_t &value,Double_t &verr,Double_t &vlow, Double_t &vhigh) const = 0;
Int_t GetStats(Double_t &amin, Double_t &edm, Double_t &errdef, Int_t &nvpar, Int_t &nparx) const = 0;
Add a new function
Double_t GetCovarianceMatrixElement(Int_t i, Int_t j) const;
Similar changes in TFitter and TFumili.
Revision
7638 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Nov 24 14:11:02 2003 UTC (11 years, 2 months ago) by
brun
Original Path:
trunk/base/inc/TVirtualFitter.h
File length: 5806 byte(s)
Diff to
previous 7067
Add a new static member fgErrorDef and the corresponding getter/Setter
static Double_t GetErrorDef();
static void SetErrorDef(Double_t errdef=1);
The parameter errorDef can be set before fitting via
TVirtualFitter::SetErrorDef(errdef)
Revision
6537 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon May 5 16:38:02 2003 UTC (11 years, 8 months ago) by
brun
Original Path:
trunk/base/inc/TVirtualFitter.h
File length: 5440 byte(s)
Diff to
previous 4934
The TVirtualFitter interface has been substantially changed
to accomodate more fitters (like Fumili).
New static functions:
TVirtualFiytter::SetDefaultFitter(const char *name);
const char *TVirtualFitter::GetDefaultFitter();
The default fitter name is "Minuit". A new alternative is "Fumili"
New functons:
virtual void SetFCN(void *fcn);
virtual void SetFCN(void (*fcn)(Int_t &, Double_t *, Double_t &f, Double_t *, Int_t));
virtual void SetFitMethod(const char *name) = 0;
virtual void SetFitOption(Foption_t option) {fOption = option;}
virtual void SetObjectFit(TObject *obj) {fObjectFit = obj;}
virtual void SetUserFunc(TObject *userfunc) {fUserFunc = userfunc;}
virtual void SetXfirst(Int_t first) {fXfirst = first;}
virtual void SetXlast (Int_t last) {fXlast = last;}
virtual void SetYfirst(Int_t first) {fYfirst = first;}
virtual void SetYlast (Int_t last) {fYlast = last;}
virtual void SetZfirst(Int_t first) {fZfirst = first;}
virtual void SetZlast (Int_t last) {fZlast = last;}
+ the corresponding getters
The class has new data members:
Foption_t fOption; //struct with the fit options
Int_t fXfirst; //first bin on X axis
Int_t fXlast; //last bin on X axis
Int_t fYfirst; //first bin on Y axis
Int_t fYlast; //last bin on Y axis
Int_t fZfirst; //first bin on Z axis
Int_t fZlast; //last bin on Z axis
TObject *fObjectFit; //pointer to object being fitted
TObject *fUserFunc; //pointer to user theoretical function (a TF1*)
TMethodCall *fMethodCall; //Pointer to MethodCall in case of interpreted function
void (*fFCN)(Int_t &npar, Double_t *gin, Double_t &f, Double_t *u, Int_t flag);
static TString fgDefault; //name of the default fitter ("Minuit","Fumili",etc)
Revision
1205 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Dec 13 15:13:57 2000 UTC (14 years, 1 month ago) by
brun
Original Path:
trunk/base/inc/TVirtualFitter.h
File length: 3179 byte(s)
Diff to
previous 3
W A R N I N G !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
==================================================================
A very long list of changes in this pre-release of version 3.00.
We have modified the signature of many functions (in particular TObject)
to introduce more constness in the system.
You must change your code if your class derives from TObject and uses
one of the modified functions such as ls, Print, Compare, Hash, etc.
The modified functions in TObject have the following signature:
virtual TObject *Clone() const;
virtual Int_t Compare(const TObject *obj) const;
virtual void Delete(Option_t *option=""); // *MENU*
virtual void DrawClass() const; // *MENU*
virtual void DrawClone(Option_t *option="") const; // *MENU*
virtual void Dump() const; // *MENU*
virtual TObject *FindObject(const TObject *obj) const;
virtual char *GetObjectInfo(Int_t px, Int_t py) const;
virtual ULong_t Hash() const;
virtual void Inspect() const; // *MENU*
virtual Bool_t IsEqual(const TObject *obj) const;
virtual void ls(Option_t *option="") const;
virtual void Print(Option_t *option="") const;
A similar operation has been done with classes such as TH1, TVirtualPad,
TTree, etc.
This form allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
enter a numeric revision.