[root] / trunk / math / mathcore / src / TVirtualFitter.cxx Repository:
ViewVC logotype

Log of /trunk/math/mathcore/src/TVirtualFitter.cxx

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 48043 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Dec 14 12:20:32 2012 UTC (2 years, 1 month ago) by rdm
File length: 10263 byte(s)
Diff to previous 37531
change gCint -> gCling (and not the generic gInterpreter as we'll stay for a
while with cling ;-) ).

Revision 37531 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Dec 10 20:38:06 2010 UTC (4 years, 1 month ago) by pcanal
File length: 10262 byte(s)
Diff to previous 34995
Fix several memory leaks (TSchemaRuleSet, TClass, TFolder, stress, TStreamerInfo, TFile, TFree)

Introduce a new preprocessor symbol (R__COMPLETE_MEM_TERMINATION) that allows for
better tracking of memory leak.   When ROOT is compiled with this symbols is defined,
globally held objects will be deleted at the time of the process termination.

With this symbol defined, some tests (root.exe -b -l -q ; test/stress ;) run under
'valgrind --leak-check=yes' with no memory leak reports (but still a few still
reacheable blocks).   However, this does not yet support (i.e. segfault at termination) 
the case where TFunctions are created on the 'CINT' stack (and thus fails roottest) and
some uses of CINT functions for fitting ...  and probably also fails on Windows.

Revision 34995 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Aug 25 10:54:30 2010 UTC (4 years, 5 months ago) by moneta
File length: 10046 byte(s)
Diff to previous 31490
apply fixes for un-initialized variables in constructors

Revision 31490 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 1 17:57:07 2009 UTC (5 years, 1 month ago) by moneta
File length: 9940 byte(s)
Diff to previous 26235
update the documentation for the SetPrecision, SetMaxIterations methods

Revision 26235 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 17 14:28:07 2008 UTC (6 years, 2 months ago) by moneta
File length: 9471 byte(s)
Diff to previous 25927
fix a bug in the destructor of TVirtualFitter. 
Set to zero the static instance (fgFitter) only if it is the same being 
deleted. 
This fix the problem reported at http://root.cern.ch/phpBB2/viewtopic.php?t=7627 where when deleting the TLinearFitter the static instance of the TBackCompFitter was set to zero.

Revision 25927 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Oct 22 23:42:01 2008 UTC (6 years, 3 months ago) by rdm
File length: 9430 byte(s)
Diff to previous 25501
correct svn tag line after files have moved from base to mathcore.

Revision 25501 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Sep 22 20:55:57 2008 UTC (6 years, 4 months ago) by moneta
File length: 9439 byte(s)
Diff to previous 25490
- fix a problem in using gMinuit after having called TH1::Fit. Now in the class TMinuitMinimizer a static TMinuit is not deleted and the static instance is used. 
- for Minuit provide printing of results in the old way
- use MinimizerOptions class for default parameter of TVirtualFitter

Revision 25490 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Sep 22 13:19:07 2008 UTC (6 years, 4 months ago) by brun
File length: 8823 byte(s)
Copied from: trunk/core/base/src/TVirtualFitter.cxx revision 25489
Diff to previous 24077
Move TVirtualFitter to mathcore

Revision 24077 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat May 31 19:39:09 2008 UTC (6 years, 7 months ago) by brun
Original Path: trunk/core/base/src/TVirtualFitter.cxx
File length: 8823 byte(s)
Diff to previous 22961
Extend the TInterpreter class to support the CINT API used so far by ROOT.
The concrete implementation of the class is in TCint.
The new functions are essentially interfaces to the existing CINT C++ classes
like G__ClassInfo, G__CallFunc, G__DataMemberInfo, G__MethodInfo, G__TypeInfo
and G__TypedefInfo. Most of these functions will call the Reflex interface
once the CINT/Reflex interface will be available later this year.
All direct calls to CINT are replaced by calls like gCint->ClassInfo_xxx where gCint
points to the TCint implementation.
The existing calls to TCint via gInterpreter are kept because on Windows
gInterpreter does not call directly TCint, but instead call TWin32InterpreterProxy
that in turns call TCint.
On Linux and Mac, gInterpreter and gCint are equivalent.

Once the transformation using gCint will be completed, it will be possible
to specify at startup time which version of CINT (CINT or CINT7) by loading
dynamically TCint or TCint7.--This line, and those below, will be ignored--

M    core/meta/src/TStreamerElement.cxx
M    core/meta/src/TCint.cxx
M    core/meta/src/TGlobal.cxx
M    core/meta/src/TBaseClass.cxx
M    core/meta/src/TDataMember.cxx
M    core/meta/src/TInterpreter.cxx
M    core/meta/src/TClass.cxx
M    core/meta/src/TMethodArg.cxx
M    core/meta/src/TDataType.cxx
M    core/meta/src/TMethodCall.cxx
M    core/meta/src/TIsAProxy.cxx
M    core/meta/src/TMethod.cxx
M    core/meta/src/TFunction.cxx
M    core/meta/inc/TClass.h
M    core/meta/inc/TDictionary.h
M    core/meta/inc/TMethodArg.h
M    core/meta/inc/TDataType.h
M    core/meta/inc/TMethodCall.h
M    core/meta/inc/TMethod.h
M    core/meta/inc/TFunction.h
M    core/meta/inc/TCint.h
M    core/meta/inc/TGlobal.h
M    core/meta/inc/TBaseClass.h
M    core/meta/inc/TDataMember.h
M    core/meta/inc/TInterpreter.h
M    core/thread/src/TThread.cxx
M    core/base/src/TVirtualFitter.cxx
M    core/base/src/TStorage.cxx
M    core/base/src/TQConnection.cxx
M    core/base/src/TROOT.cxx
M    core/base/src/TSystem.cxx
M    core/base/src/TQObject.cxx
M    core/rint/src/TRint.cxx
M    core/rint/src/TTabCom.cxx
M    math/foam/src/TFoam.cxx
M    math/minuit2/src/TFitterMinuit.cxx
M    math/mathcore/src/FunctorCint.cxx
M    math/minuit/src/TMinuit.cxx
M    tree/tree/src/TTree.cxx
M    tree/tree/src/TSelectorCint.cxx
M    tree/tree/src/TSelector.cxx
M    tree/tree/inc/TSelectorCint.h
M    roofit/roofitcore/src/RooGenCategory.cxx
M    roofit/roofitcore/src/RooWorkspace.cxx
M    hist/hist/src/TF1.cxx
M    gui/guibuilder/src/TGuiBldDragManager.cxx
M    net/alien/inc/TAlienSystem.h

Revision 22961 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 3 13:32:57 2008 UTC (6 years, 9 months ago) by rdm
Original Path: trunk/core/base/src/TVirtualFitter.cxx
File length: 8801 byte(s)
Diff to previous 21391
move the directories:
  base clib cont meta metautils newdelete pcre rint thread unix utils
  winnt zip
under the new core meta directory.

Revision 21391 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Dec 17 08:38:54 2007 UTC (7 years, 1 month ago) by brun
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 8801 byte(s)
Diff to previous 20877
Implement class header doc.

Revision 20877 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 19 11:17:07 2007 UTC (7 years, 2 months ago) by rdm
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 8669 byte(s)
Diff to previous 19826
Set property svn:eol-style LF on all source and Makefiles. This should avoid
problems with Win32 line endings ending up in the repository. All MS tools
support LF eols fine.

Revision 19826 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:56:11 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 8669 byte(s)
Diff to previous 19825
imported svn:keywords Id property

Revision 19825 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:49:10 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 8726 byte(s)
Diff to previous 15742
remove :$ from tag line

Revision 15742 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Jul 9 05:27:55 2006 UTC (8 years, 6 months ago) by brun
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 8736 byte(s)
Diff to previous 15176
From Eddy:
Fix many typos in comments

Revision 15176 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri May 26 09:27:12 2006 UTC (8 years, 8 months ago) by brun
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 8731 byte(s)
Diff to previous 15134
Fix coding conventions violations

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/src/TVirtualFitter.cxx
File length: 8650 byte(s)
Diff to previous 13412
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 13412 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 29 19:02:58 2005 UTC (9 years, 1 month ago) by brun
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 7497 byte(s)
Diff to previous 13399
From Anna:
 I was a little careless with memory in TF1::GradientPar, and now
I've changed it. There are also the "constness" changes.

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/src/TVirtualFitter.cxx
File length: 7483 byte(s)
Diff to previous 13365
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 13365 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Nov 26 15:25:38 2005 UTC (9 years, 1 month ago) by brun
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 6908 byte(s)
Diff to previous 13364
Remove unused variables

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/src/TVirtualFitter.cxx
File length: 6890 byte(s)
Diff to previous 13258
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 13258 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 16 20:11:59 2005 UTC (9 years, 2 months ago) by pcanal
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 6124 byte(s)
Diff to previous 13133
White spaces and comments update

Revision 13133 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 4 15:07:16 2005 UTC (9 years, 2 months ago) by rdm
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 6098 byte(s)
Diff to previous 12045
add comment explaining not to delete the returned fitter object since
it will be re-used.

Revision 12045 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jun 14 13:28:41 2005 UTC (9 years, 7 months ago) by brun
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 6030 byte(s)
Diff to previous 7954
n TVirtualFitter::SetErrorDef store also the error definition in the final fitter.

Revision 7954 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jan 20 17:59:38 2004 UTC (11 years ago) by rdm
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 5900 byte(s)
Diff to previous 7638
handle "*" as wildcard matching every uri (before it was just a placeholder
and not checked).

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/src/TVirtualFitter.cxx
File length: 5918 byte(s)
Diff to previous 6575
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 6575 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu May 8 09:08:19 2003 UTC (11 years, 8 months ago) by brun
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 5411 byte(s)
Diff to previous 6553
Use the default fitter as possibly setr in teh resource file system.rootrc.
The default fitter is Minuit

Revision 6553 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 6 09:24:30 2003 UTC (11 years, 8 months ago) by brun
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 5312 byte(s)
Diff to previous 6537
Move destructor of the fMethodCall object to TVirtualFitter destructor.
Sert some unitialized variables.
Many style changes.

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/src/TVirtualFitter.cxx
File length: 5262 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 4934 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jul 16 13:59:19 2002 UTC (12 years, 6 months ago) by rdm
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 2904 byte(s)
Diff to previous 3
mods related to using the new features of the plugin manager. The plugin
manager can be used in more places, this is coming.

Revision 3 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 16 17:00:58 2000 UTC (14 years, 8 months ago) by rdm
Original Path: trunk/base/src/TVirtualFitter.cxx
File length: 3092 byte(s)
Copied from: branches/rdm/base/src/TVirtualFitter.cxx revision 2
Diff to previous 2
This commit was generated by cvs2svn to compensate for changes in r2,
which included commits to RCS files with non-trunk default branches.

Revision 2 - (view) (download) (as text) (annotate) - [select for diffs]
Added Tue May 16 17:00:58 2000 UTC (14 years, 8 months ago) by rdm
Original Path: branches/rdm/base/src/TVirtualFitter.cxx
File length: 3092 byte(s)
Initial import of ROOT into CVS

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.

  Diffs between and
  Type of Diff should be a

Sort log by:

Subversion Admin
ViewVC Help
Powered by ViewVC 1.0.9