Presentation is loading. Please wait.

Presentation is loading. Please wait.

Time calibration workshop 1517 May 2017, Amsterdam M. de Jong

Similar presentations


Presentation on theme: "Time calibration workshop 1517 May 2017, Amsterdam M. de Jong"— Presentation transcript:

1 Time calibration workshop 1517 May 2017, Amsterdam M. de Jong
Jpp Time calibration workshop 1517 May 2017, Amsterdam M. de Jong

2 Preamble (1/2) TDCs are time synchronised time calibration
central clock is broadcast to TDCs time calibration fixed time offset for each PMT pre-deployment calibration efficient start of data taking in situ calibration “self calibrating detector” during envisaged live time of ten years PMT time over threshold discriminator TDC time of leading edge time over threshold

3 time over threshold [ns]
Preamble (2/2) Rate [a.u.] arrival time [ns] time over threshold [ns]

4 Introduction (1/2) Jpp [yi-pee-pee]
an exclamation used to express joy, exultation, or the like Jpp is a collection of Java inspired C++ interfaces, classes, methods and applications software development platform for various applications Jpp consists of various “packages” organised in corresponding sub-directories and name spaces most packages can be used without prior compilation Applications and libraries can be produced with a standard make procedure

5 Introduction (2/2) Available from SVN server $JPP_DIR/software/JXXX
see KM3NeT wiki $JPP_DIR/software/JXXX source files (estimated value >3 M€) $JPP_DIR/examples/JXXX more than 150 easy-to-read examples $JPP_DIR/documentation/JXXX about 20 short documents Documentation based on Doxygen generated “on the fly” also available from Jenkins server

6 User (1/2) Environment Libraries Applications Scripts
source setenv.[c]sh set PATH and LD_LIBRARY_PATH [source zshlib.sh or cshlib.csh] Libraries predefined symbolic names Applications common command line interface (see next slide) Scripts option -h will print usage

7 User (2/2) JParser applies to all JXXX applications
-h print help & exit -h! print default and possible values & exit -v print SVN revision¶ & exit -- end of options & continue --! print actual values & continue ¶ Recently fixed by Kay G.

8 I/O (1/2) typical command line options -f <input file>
-n [<first event>:]<number of events> -o <output file> -a <detector file> "<trigger parameter>=<value>; …" -P "pmt=<module identifier> <PMT number> <parameter>=value; …"

9 I/O (2/2) data file formats detector file formats
ROOT .root all data types ASCII .evt Monte Carlo data type binary .dat internal (~ DAQ data types) detector file formats ASCII .detx standard gendet .det Monte Carlo, only input binary .dat internal other input file formats ASCII .txt trigger, PMT or other parameters

10 Time information (1/3) JDAQHit { // raw data JPMT_t getPMT() { return pmt; } // index {0, 1, , 30} JTDC_t getT() { return ntohl(tdc); } // [ns] byte swap JTOT_t getToT() { return tot; } // [ns] }; JCalibration { // calibration data : // protected double t0; // [ns]

11 Time information (2/3) // getXXX converts raw data to calibrated data // putXXX converts calibrated data to raw data template< class T> double getTime( const T& t1, const JCalibration& cal); double putTime( const T& t1, const JCalibration& cal); double getToT( const T& t1, const JCalibration& cal); double putToT( const T& t1, const JCalibration& cal);

12 Time information (3/3) detector data structure O(1) lookup tables
JDetector : std::vector<JModule> JModule : std::vector<JPMT> JPMT : JObjectID JAxis3D JCalibration I/O conform KM3NeT standard O(1) lookup tables JModuleRouter::getModule(<module identifier>) JPMTRouter::getPMT(<PMT identifier>)

13 Time slewing (1/3) Finite rise time of analogue pulse from PMT to reach discriminator threshold (L0 hit) simulation JPMTDefaultSignalProcessor::getRiseTime(double npe); -P %.slewing=1/0; // default 1 data analysis JHit::getT(); JHit::setSlewing(true/false); // default true

14 Time slewing (2/3) Bias due to first hit in local coincidence (L1 hit)
Simulation general detector simulation (km3, KM3Sim, JSirene) Processing JHitL1::getT(); // corrected for time slewing JHitL1::begin()->getT(); // first hit

15 time over threshold [ns]
Time slewing (3/3) L0 hit L1 hit Multiplicity Dt [ns] time over threshold [ns] Dt [ns]

16 Applications (1/3) JDetector create detector
JPrintDetector print detector to terminal JConvertDetectorFormat convert file format JCompareDetector compare detector files JEditDetector edit detector file JMergeDetector merge detector files JDrawDetector2D draw footprints (2D) JDrawDetector3D draw detector in 3D

17 Applications (2/3) JHVTuning JMonitorToT/JFitToT JSlewingK40
tuning of HV / gain author Alex C. JMonitorToT/JFitToT determination of gain and gain spread author Karel M. JSlewingK40 determination of time slewing correction author Maarten de J.

18 Applications (3/3) JMonitorK40/JFitK40 JPulsar
determination of t0 (and TTS, QE) of PMTs inside optical module author Maarten de J. and Karel M. JPulsar determination of t0 of optical modules author Mieke B.

19 Notes (1/3) JFitToT JTriggerEfficiency JSlewingK40
determination of gain and gain spread based on a model of time over threshold as a function of number of photo-electrons JTriggerEfficiency same model is used for simulation of time over threshold as well as time slewing JSlewingK40 fit parametrisation of time slewing based on real data result consistent with assumed model

20 Notes (2/3) JPulsar -! "<module ID> <PMT number>; []"
can be used to define which PMT(s) in which optical module should be calibrated e.g. -! "`cat aap.txt`" JFitK40 -! "<module ID> <PMT number>; []" can be used to constrain PMT(s) in fit e.g. -! "`cat aap.txt`“ JFitK40 -r revert constraints (useful in conjunction with two step HV tuning)

21 Notes (3/3) JFitK40 -a <detector file> -A JPulsar -a <detector file> -A updates detector file with fitted t0 values

22 Examples (1/1) JMonitorK40.sh JSlewingK40.sh JFitToT.sh JPulsar.sh
generate data and fit time offsets of PMTs inside optical module JSlewingK40.sh generate data and monitor time slewing JFitToT.sh generate data and fit gain and gain spread JPulsar.sh example script for application to real darkroom data

23 Summary & Outlook Jpp is a versatile platform for software developments Time calibration and time slewing is taken into account in simulation of detector response Various applications exist for time calibration Ultimately, time calibration should be obtained from reconstruction of atmospheric muons


Download ppt "Time calibration workshop 1517 May 2017, Amsterdam M. de Jong"

Similar presentations


Ads by Google