[root] / trunk / hist / hist / inc / TUnfold.h Repository:
ViewVC logotype

Log of /trunk/hist/hist/inc/TUnfold.h

Parent Directory Parent Directory


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

Revision 47094 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 7 10:34:35 2012 UTC (2 years, 2 months ago) by moneta
File length: 15774 byte(s)
Diff to previous 37440
from S. Schmitt: new version of TUnfold (version 17)

Revision 37440 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Dec 9 15:13:46 2010 UTC (4 years, 1 month ago) by moneta
File length: 13091 byte(s)
Diff to previous 37400
fix Coverity issues in TUnfold. 
- add also top  line with svn Id

Revision 37400 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Dec 8 15:23:47 2010 UTC (4 years, 1 month ago) by moneta
File length: 13072 byte(s)
Diff to previous 33476
new version of TUnfold (V16) and TUnfoldSys from S. Schmitt fixing the const 
(do in the nomal order)

Revision 33476 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 12 10:02:31 2010 UTC (4 years, 8 months ago) by moneta
File length: 12240 byte(s)
Diff to previous 33379
fix a compilation warning on Solaris

Revision 33379 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 5 07:20:09 2010 UTC (4 years, 8 months ago) by moneta
File length: 12240 byte(s)
Diff to previous 33374
fix warnings reported by the nightly on gcc 4.3 slc5 and icc

Revision 33374 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 4 15:48:38 2010 UTC (4 years, 8 months ago) by moneta
File length: 12273 byte(s)
Diff to previous 30119
new version (version 15) of TUnfold from S. Schmitt
   with some bug fixes a  simplified L-curve scan, new tau definition, new eror calc.

add also two new tutorials (3 and 4)

Revision 30119 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Sep 11 14:41:05 2009 UTC (5 years, 4 months ago) by brun
File length: 10704 byte(s)
Diff to previous 27565
Remove a comma in the last item of an enum

Revision 27565 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Feb 22 15:21:10 2009 UTC (5 years, 11 months ago) by moneta
File length: 10704 byte(s)
Diff to previous 27216
- new version (v. 13) of TUnfold from S. Schmitt
The big change is from including another class "TUnfoldSys"
This class provides support for the propagation of systematic errors.

Revision 27216 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jan 22 15:29:13 2009 UTC (6 years ago) by moneta
File length: 10126 byte(s)
Diff to previous 27114
from Stefan Schmitt: new version (v12) of TUnfold

TUnfold is sensitive to yet another bug in the TMatrixSparse class 
(bug report #45807). 
The multiplication bug is already handled in TUnfold version 11, but the bug with adding two matrices is only fixed in this new version 12

There are some other changes, like improved error handling for those cases where the matrix may get singular and thus the unfolding could give completely wrong results.

Revision 27114 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jan 12 15:34:11 2009 UTC (6 years ago) by moneta
File length: 9841 byte(s)
Diff to previous 26378
new version of TUnfold from S. Schmitt. 
Changes in detail: 


Changes to the TUnfold class from v6 to v11
===========================================

tutorials/math/testUnfold1.C
tutorials/math/testUnfold2.C
----------------------------
 * print-out of both chi**2 contributions and the number of degrees of freedom
 

hist/hist/inc/TUnfold.h
-----------------------
 new or changed functionality:
   * new members
       fNDf
       GetNdf()
       GetNpar()
   * return codes [error count] rather than excessive printout for
       RegularizeSize()
       RegularizeDerivative()
       RegularizeCurvature()
       RegularizeBins()
       RegularizeBins2D()
   * additional argument and return code
       SetInput()

 matrix operation:
   * remove method CreateSparseMatrix and use TMatrixDSparse::SetMatrixArray()
      instead
   * add methods for matrix operations, replacing corresponding calls to
     TMatrixD or TMatrixDSparse methods for any of the following reasons
      (a) better performance (multiple matrix operations required when using
                              TMatrixDSparse or TMatrixD)
         MultiplyMSparseTranspMSparse()
         MultiplyMSparseM()
         MultiplyMSparseMSparse()
         MultiplyVecMSparseVec()
      (b) work-around for a bug in TMatrixDSparse (bug #45415)
         MultiplyMSparseTranspMSparse()
         MultiplyMSparseM()
         MultiplyMSparseMSparse()
         MultiplyVecMSparseVec()
      (c) improved performance for matrices with a certain structure
         InvertMSparse()

hist/hist/inc/TUnfold.cxx
-------------------------
changes to existing methods

 Double_t TUnfold::DoUnfold(void)
  * use internal matrix manipulation methods
  * try to avoid TMatrixDSparse::operator+=(TMatrixDSparse const &)
     because it creates a memory leak (bug #45502)

 void TUnfold::CalculateChi2Rho(void)
  * use internal matrix manipulation methods

 TUnfold::TUnfold(TH2 const *hist_A, EHistMap histmap, ERegMode regmode)
  * reduce the amount of printout for rejected bins
  * use TMatrixDSparse::SetMatrixArray()
       instead of TUnfold::CreateSparseMatrix()

 Int_t TUnfold::RegularizeSize()
 Int_t TUnfold::RegularizeDerivative()
 Int_t TUnfold::RegularizeCurvature()
  * return the number of errors rather than doing a lot of printout

 Int_t TUnfold::RegularizeBins()
 Int_t TUnfold::RegularizeBins2D()
  * return the number of errors    

 Int_t TUnfold::SetInput()
  * third argument for user specific treatment of bins with zero error.
     By default, bins with zero error are now skipped
     (old version: the error was set to 1)
  * return value: the number of bins which have zero error

 Int_t TUnfold::ScanLcurve()
  * the outermost points of the L-curve may have ill-defined curvature,
     so they are now excluded from the scan

 TH1D *TUnfold::GetOutput()
 TH2D *TUnfold::GetRhoIJ()
 TH2D *TUnfold::GetEmatrix()
  * remove some dead code

 TH1D *TUnfold::GetInput()
  * use internal matrix manipulation methods

 TUnfold::GetLcurveX()
  * bug fix in the definition of chi**2

 new methods
  TUnfold::MultiplyVecMSparseVec()
  TUnfold::MultiplyMSparseMSparse()
  TUnfold::MultiplyMSparseTranspMSparse()
  TUnfold::MultiplyMSparseM()
  TUnfold::InvertMSparse()
  TUnfold::GetNdf(void)
  TUnfold::GetNpar(void)

 removed methods
  TUnfold::CreateSparseMatrix()

Revision 26378 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Nov 22 11:46:21 2008 UTC (6 years, 2 months ago) by moneta
File length: 8760 byte(s)
Copied from: branches/dev/mathDev/hist/hist/inc/TUnfold.h revision 26373
Diff to previous 26360
import TUnfold class from S. Schmitt for unfolding
based on algorithm described by V. Blobel at 
https://indico.desy.de/contributionDisplay.py?contribId=23&confId=1149

fix also a bug printing result when fitting with option "U" with TMinuit

Revision 26360 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 21 17:14:32 2008 UTC (6 years, 2 months ago) by moneta
Original Path: branches/dev/mathDev/hist/hist/inc/TUnfold.h
File length: 8760 byte(s)
Diff to previous 26334
new version of TUnfold from Stefan Schmitt fixing compilation on Windows

Revision 26334 - (view) (download) (as text) (annotate) - [select for diffs]
Added Fri Nov 21 10:08:44 2008 UTC (6 years, 2 months ago) by moneta
Original Path: branches/dev/mathDev/hist/hist/inc/TUnfold.h
File length: 8629 byte(s)
introduce TUnfold class from  Stefan Schmitt
add also two examples in tutorials/math

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