Log of /trunk/hist/hist/src/TUnfold.cxx
Parent Directory
Revision
48420 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Jan 25 09:42:59 2013 UTC (23 months, 4 weeks ago) by
moneta
File length: 116695 byte(s)
Diff to
previous 48409
from Gabriel:
- Fixed Coverity Issues 48902 - 48905
- speedup in TH1::GetAsymmetry (~ 10%) using RetrieveBinContent and GetBinErrorSqUnchecked
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: 91812 byte(s)
Diff to
previous 28849
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
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: 70922 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: 69120 byte(s)
Diff to
previous 27115
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: 62783 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()
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.