Upload
brina
View
36
Download
0
Embed Size (px)
DESCRIPTION
TOF: Online calibration news and something more. Chiara Zampolli for the ALICE-TOF. TOF Online Calibration – Principle. TOF online calibration procedure is aimed at defining the status and a rough estimation of the delay in time measurement of each TOF channel. - PowerPoint PPT Presentation
Citation preview
TOF: ONLINE CALIBRATION NEWS
AND SOMETHING MORE
Chiara Zampolli for the ALICE-TOF
TOF Online Calibration – Principle
TOF online calibration procedure is aimed at defining the status and a rough estimation of the delay in time measurement of each TOF channel.TOF online calibration is performed on three different sources:
PHYSICS runs ↔ TOFda, DAQ, MONPULSER runs ↔ TOFpulserda, DAQ, LDCNOISE runs ↔ TOFnoiseda, DAQ, LDC
with additional information coming from DCS:TOFFEE map, extracted every run ↔ DCS script
8th July 2008 Chiara Zampolli Offl Week - TOF
TOF Online Calibration – Strategy
At every end of PHYSICS/PULSER/NOISE run, the TOF preprocessor retrieves the output from the corresponding DA + the output from the DCS DA and processes the data → Preprocessors’ Phylosophy within the SHUTTLE frameworkThe status of the channel is defined processing the output of the TOFpulserda, TOFnoiseda and processing the FEE map coming from DCS......while the rough delays are determined on the basis of the output of the TOFda.The output is then stored in the OCDB, ready to be used in reconstruction.
8th July 2008 Chiara Zampolli
This is still valid, but the format of the TOF
calibration objects has been modified
Offl Week - TOF
How it was before.......for hystorical reasons....
Two main objects were implemented in AliRoot:AliTOFChannelOnline → to store delays: Float_tAliTOFChannelOnlineStatus → to store status(es): Char_t
embedded in TObjArrays to store calibration parameters.In total, 4 TObjArrays read in reconstruction (ӿ):
TObjArray(AliTOFChannelOnlineStatus): FEE statusTObjArray(AliTOFChannelOnlineStatus): Pulser statusTObjArray(AliTOFChannelOnlineStatus): Noise statusTObjArray(AliTOFChannelOnline): rough delay
(ӿ) only online calibration objs considered here
8th July 2008 Chiara Zampolli
Drawback:TObject overhead, to be multiplied by 157248 for
every TObjArrayOffl Week - TOF
...it was also like this...Every object was stored in a dedicated folder in the OCDB:
TOF/Calib/ParOnlineTOF/Calib/PulserTOF/Calib/NoiseTOF/Calib/FEE
each of which was accessed during reconstruction.
8th July 2008 Chiara Zampolli
AliTOFReconstructor::AliTOFReconstructor() : AliReconstructor(), fTOFcalib(0) {
// // ctor // //Retrieving the TOF calibration info fTOFcalib = new AliTOFcalib(); fTOFcalib->CreateCalArrays(); if(!fTOFcalib->ReadParOnlineFromCDB("TOF/Calib",-1))
{AliFatal("Exiting, no CDB object found!!!");exit(0);}
if(!fTOFcalib->ReadParOfflineFromCDB("TOF/Calib",-1)) {AliFatal("Exiting, no CDB object
found!!!");exit(0);}}
Offl Week - TOF
How it is now...
Two new objects implemented:AliTOFChannelOnlineArray → to store delays: Float_t*AliTOFChannelOnlineStatusArray → to store status: Char_t*
to store the calibration parameters in simpler arrays of basic types.During reconstruction, acces to 2 objects is done (ӿ)
AliTOFChannelOnlineArrayAliTOFChannelOnlineStatusArray
(ӿ) only online calibration objs considered here
8th July 2008 Chiara Zampolli Offl Week - TOF
...and it also like this...
Two new folders created in the OCDB:/TOF/Calib/ParOnlineDelay → containing the computed delays, embedded in the AliTOFChannelOnlineArray/TOF/Calib/Status → containing the status information combining all the sources (FEE, PULSER, NOISE), embedded in the AliTOFChannelOnlineStatusArray
8th July 2008 Chiara Zampolli
AliTOFReconstructor::AliTOFReconstructor() : AliReconstructor(), fTOFcalib(0) {
fTOFcalib = new AliTOFcalib(); fTOFcalib->CreateCalObjects(); if(!fTOFcalib->ReadParOnlineDelayFromCDB("TOF/Calib",-1))
{AliFatal("Exiting, no CDB object found!!!");exit(0);} if(!fTOFcalib->ReadParOnlineStatusFromCDB("TOF/Calib",-1))
{AliFatal("Exiting, no CDB object found!!!");exit(0);} if(!fTOFcalib->ReadParOfflineFromCDB("TOF/Calib",-1))
{AliFatal("Exiting, no CDB object found!!!");exit(0);} }
Offl Week - TOF
...and this.
An additional entry has been introduced in OCDB/TOF/Calib/Config: Tmap to configure preprocessor:
8th July 2008 Chiara Zampolli Offl Week - TOF
root [0] TFile *file = new TFile("$ALICE_ROOT/TOF/Calib/Config/Run0_999999999_v0_s0.root","READ")
root [1] AliCDBEntry *e = (AliCDBEntry*)file->Get("AliCDBEntry")root [2] TMap *m = (TMap*) e->GetObject()root [3] m->Print()Key: TObjString = IntegralThrValue: TObjString = 100Key: TObjString = ComputingDelaysValue: TObjString = kFALSEKey: TObjString = ThrParValue: TObjString = 0.013Key: TObjString = StartingRunValue: TObjString = 0Key: TObjString = BinRangeAveValue: TObjString = 13root [4]
Cern, July 19, 2007 OFFLINE Weekly meeting
Managing the OCDB during reco
Run validity0 ∞1 2 3 54 101 102 103 104100
Onlin
eOffl
ine
Run 01234
100101102103104
Run 01234
100101102103104
Reset!Offline Calib obj
no more valid
Not valid
Not valid
Valid
Valid
Offline Calib obj validOffline Calib obj not validOffline Calib
obj valid
Alberto, Jan Fiete
from Offl Week, Oct ‘07
Updating the Channel Status – How?
Channel status is stored in a Char_t → 8 bits:X X X X X X X X
8th July 2008 Chiara Zampolli Offl Week - TOF
spareNOISE PULSE
R
FEE
First, update of the FEE bits, if different from what was previously stored – N.B.: OCDB obj validity = [current_run, AliCDBRunRange::Infinity()] Object stored in /TOF/Calib/Status only in case of PHYSICS runs, otherwise, waiting for PULSER/NOISE bits to be updated, first.FEE status is checked both before computing delays in PHYSICS runs, and before updating PULSER/NOISE bits
TOF Preprocessor Flow
8th July 2008 Chiara Zampolli Offl Week - TOF
1 channel FEE st != previous?
Retrieval of previosly stored Status entry (if any)
yes noupdate = kTRUE update = kFALSE
PHYSICS NOISEPULSER
if (update) store status in OCDB
/TOF/CALIB/Statuswait to
store in OCDB
RUN TYPE
process DAQ PHYSICS data according to Config Tmap
(TOFda)
process DAQ PULSER data, update pulser bits
(TOFpulserda)
update FEE bits
store status in OCDB
/TOF/CALIB/Status
store delays in OCDB
/TOF/CALIB/ParOnlineDelay
wait tostore in OCDB
process DAQ NOISE data, update noise bits
(TOFnoiseda)
store status in OCDB
/TOF/CALIB/Status
ProcessFEEData
ProcessOnlineDelay
ProcessPulserData
ProcessNoiseData
TOF Trigger at P2 – BACKtoBACKE. Scapparone, Physics Forum, 2nd July 2008
TOF Trigger at P2 – TOFforTRDE. Scapparone, Physics Forum, 2nd July 2008
TOF Trigger at P2 – TOFforHMPIDE. Scapparone, Physics Forum, 2nd July 2008
TOF Preprocessor at P2 – some numbers
From run 36356 (“Mon, 09 Jun 2008 06:23:01 GMT”):424 runs in SHUTTLE logbook (“DONE”+”FAILED”) 33 runs successfully processed by SHUTTLE (either PHYSICS or PULSER) 128 failed runs (DAs missing, mainly, FEE file not copied to the DCS FXS at the beginning)263 STANDALONE/COSMICS runs → not processed by SHUTTLE, but set as DONE180 files in the DAQ FXS319 files in the DCS FXS
Many runs with 0 or very few values for DPs → to be checked with DCS experts whether “bonus value” storing has been implemented.
8th July 2008 Chiara Zampolli Offl Week - TOF
NB: so far, no calibration performed
TOF QA – Reference Data
Reference data created, and used in the TOFQAChecker
8th July 2008 Chiara Zampolli Offl Week - TOF
if (fRefSubDir) { // should not be needed anymore!!! AliInfo("Found a histo in the reference in the subdir!"); href = static_cast<TH1*>(fRefSubDir->Get(hdata->GetName())) ; } else if (fRefOCDBSubDir) { AliInfo("Found a histo in the reference in the OCDB!"); href = static_cast<TH1*>(fRefOCDBSubDir->FindObject(hdata->GetName())); }...Double_t rv=0; If (hdata->GetEntries()>=href->GetEntries())
{ rv=1; }AliInfo(Form("%s -> %f", hdata->GetName(), rv)) ;test += rv ;count++ ;...return test/count;
TOF QA – Reference Data
A macro to build reference data for Hits/Digits/Sdigits/RAW/RecPoints/ESD writtenSo far, just empty histograms, trivial solution waiting for reasonable reference dataCode not yet committed:
Run-type folders for reference data?PULSER/NOISE runs won’t be reconstructed – will they go through the QA, anyway?
8th July 2008 Chiara Zampolli Offl Week - TOF
AliTOFRecoParam
Inheritance from AliDetectorRecoParam implemented, to be committed after cross-checking with PH on its backward compatibilty – should be OK
8th July 2008 Chiara Zampolli Offl Week - TOF
Summary
TOF Online Calibration objects changedBackward compatibilty guaranteed by creation of new folders for the new objectsTOF preprocessor @ P2 validated in the whole chain, not running often thoughQA framework almost completed – just minor details to be definedAliTOFRecoParam in place, to be committed soon.
8th July 2008 Chiara Zampolli Offl Week - TOF