Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
/*!
<!-- Substitute CalibMuon and DTCalibration with the proper names! -->

\page CalibMuon_DTCalibration Package CalibMuon/DTCalibration
<center>
<small>
<a href=http://cmsdoc.cern.ch/swdev/viewcvs/viewcvs.cgi/CMSSW/CalibMuon/DTCalibration/?cvsroot=CMSSW>CVS head for this package</a> - 
<a href=http://cmsdoc.cern.ch/swdev/viewcvs/viewcvs.cgi/CMSSW/CalibMuon/DTCalibration/.admin/developers?rev=HEAD&cvsroot=CMSSW&content-type=text/vnd.viewcvs-markup>Administrative privileges</a>
</small>
</center>


\section desc Description
<!-- Short description of what this package is supposed to provide -->
This package contains the code for the DT calibration.




\subsection interface Public interface
<!-- List the classes that are provided for use in other packages (if any) -->

- DTCalibDBUtils: class for write in a DB through the PoolDBESource interface
- DTTimeBoxFitter: class for the fit of the rising edge of the time box with the integral of a gaussian.
This class is designed also for ROOT interactive usage throught the <i>stubs</i> library provided with the package.
- DTMeanTimerFitter: class for the fit of the meantimer histograms with a gaussian.


\subsection modules Modules
<!-- Describe modules implemented in this package and their parameter set -->

\subsubsection  sync TDC Time Synchronization
- DTTTrigCalibration: EDAnalyzer for the computation of the ttrig from the time box fit.
It can write the results into DB or simply write the time box histograms in a root file.
- DTTTrigWriter: EDAnalyzer for the computation of the ttrig from the time box fit, it needs a root file
of time box histograms as input and it writes the results into DB.
 
\subsubsection  meantimer Drift velocity calibration
- DTVDriftCalibration: EDAnalyzer for the computation of the drift velocity and hit resolution from the meantimer fit 
(the meantimers are computed from 4D segments with different formulas for different pattern).
It can write the results into DB or simply write the meantimer histograms in a root file.
- DTVDriftWriter: EDAnalyzer for the computation of the drift velocity and hit resolution from the meantimer fit, 
it needs a root file of meantimer histograms as input.

\subsection tests Unit tests and examples
<!-- Describe cppunit tests and example configuration files -->

Examples of configuration files for the ttrig computation from the fit of
the rising edge of the time box are:
- <b>DTTTrigCalibration.cfg</b>: ttrig computation from simulated digis.
- <b>DTTTrigCalibration_fromData.cfg</b>: ttrig computation from real data.

Examples of configuration files for the vdrift and hit resolution computation from the fit of the 
meantimer histograms
- <b>DTVDriftCalibration.cfg</b>: vdrift and hit resolution computation from simulated digis.
- <b>DTTTrigCalibration_fromData.cfg</b>: vdrift and hit resolution computation from real data.

A stubs library is available with the package for interactive plot and fit of the time boxes and the meantimer histograms.
It provides the following classes:
- DTTimeBoxPlotter: for interactive plot of time boxes
- DTTimeBoxFitter: for the fit of the time box rising edge using exactly the same code used by DTTTrigCalibration module.
- DTMeanTimerPlotter: for interactive plot of meantimer histograms
- DTMeanTimerBoxFitter: for the fit of the meantimer histograms using exactly the same code used by DTVDriftCalibration module.

Some utilities are available to manage and analyze the DB content
- DumpDBToFile and DumpFileToDB can manage channels map, noise, t0, ttrig and vdrift databases. 
They use the DTCalibrationMap class to manage calibration constants with different <br>
granularity (by wire, by SL, by chamber)
- ProduceFakeDB produce t0, ttrig and vdrift DB with everywhere the same values set in the cfg
- DTT0Analyzer make plots of the t0 contained in a DB and it saved them in a root file

\section status Status and planned development
<!-- e.g. completed, stable, missing features -->

- The calibration of the k factor will be added

<hr>
Last updated:
JANUARY-2007 S. Bolognesi
*/