1 / 19

TOF: Online calibration news and something more

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.

brina
Download Presentation

TOF: Online calibration news and something more

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TOF: Online calibration newsand something more Chiara Zampolli for the ALICE-TOF

  2. 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, MON • PULSER runs ↔ TOFpulserda, DAQ, LDC • NOISE runs ↔ TOFnoiseda, DAQ, LDC with additional information coming from DCS: • TOFFEE map, extracted every run ↔ DCS script Chiara Zampolli

  3. 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 framework • The 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. This is still valid, but the format of the TOF calibration objects has been modified Chiara Zampolli

  4. How it was before... ....for hystorical reasons.... • Two main objects were implemented in AliRoot: • AliTOFChannelOnline → to store delays: Float_t • AliTOFChannelOnlineStatus → to store status(es): Char_t embedded in TObjArrays to store calibration parameters. • In total, 4 TObjArraysread in reconstruction (ӿ): • TObjArray(AliTOFChannelOnlineStatus): FEE status • TObjArray(AliTOFChannelOnlineStatus): Pulser status • TObjArray(AliTOFChannelOnlineStatus): Noise status • TObjArray(AliTOFChannelOnline): rough delay (ӿ) only online calibration objs considered here • Drawback: • TObject overhead, to be multiplied by 157248 for every TObjArray Chiara Zampolli

  5. ...it was also like this... • Every object was stored in a dedicated folder in the OCDB: • TOF/Calib/ParOnline • TOF/Calib/Pulser • TOF/Calib/Noise • TOF/Calib/FEE each of which was accessed during reconstruction. 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);} } Chiara Zampolli

  6. 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 (ӿ) • AliTOFChannelOnlineArray • AliTOFChannelOnlineStatusArray (ӿ) only online calibration objs considered here Chiara Zampolli

  7. ...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 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);} } Chiara Zampolli

  8. ...and this. • An additional entry has been introduced in OCDB/TOF/Calib/Config: Tmap to configure preprocessor: • 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 = IntegralThr • Value: TObjString = 100 • Key: TObjString = ComputingDelays • Value: TObjString = kFALSE • Key: TObjString = ThrPar • Value: TObjString = 0.013 • Key: TObjString = StartingRun • Value: TObjString = 0 • Key: TObjString = BinRangeAve • Value: TObjString = 13 • root [4] Chiara Zampolli

  9. Managing the OCDB during reco from Offl Week, Oct ‘07 Run validity ∞ 0 1 2 3 4 5 100 101 102 103 104 Run 0 1 2 3 Online 4 Offline Calib obj not valid Reset! Offline Calibobj no more valid 100 Offline Calib obj valid Offline Calib obj valid 101 102 103 104 Not valid Run 0 1 Valid 2 3 Offline 4 Not valid 100 101 Valid 102 103 104 OFFLINE Weekly meeting Alberto, Jan Fiete

  10. Updating the Channel Status – How? • Channel status is stored in a Char_t → 8 bits: X X X XX XX X spare FEE NOISE PULSER 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 Chiara Zampolli

  11. TOF Preprocessor Flow Retrieval of previosly stored Status entry (if any) ProcessFEEData update FEE bits 1 channel FEE st != previous? yes no update = kTRUE update = kFALSE RUN TYPE PHYSICS PULSER NOISE if (update) store status in OCDB /TOF/CALIB/Status wait to store in OCDB wait to store in OCDB process DAQ PHYSICS data according to Config Tmap (TOFda) process DAQ PULSER data, update pulser bits (TOFpulserda) process DAQ NOISE data, update noise bits (TOFnoiseda) ProcessNoiseData ProcessOnlineDelay ProcessPulserData store status in OCDB /TOF/CALIB/Status store status in OCDB /TOF/CALIB/Status store delays in OCDB /TOF/CALIB/ParOnlineDelay Chiara Zampolli

  12. TOF Trigger at P2 – BACKtoBACK E. Scapparone, Physics Forum, 2nd July 2008

  13. TOF Trigger at P2 – TOFforTRD E. Scapparone, Physics Forum, 2nd July 2008

  14. TOF Trigger at P2 – TOFforHMPID E. Scapparone, Physics Forum, 2nd July 2008

  15. 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 DONE • 180 files in the DAQ FXS • 319 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. NB: so far, no calibration performed Chiara Zampolli

  16. TOF QA – Reference Data • Reference data created, and used in the TOFQAChecker • 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; Chiara Zampolli

  17. TOF QA – Reference Data • A macro to build reference data for Hits/Digits/Sdigits/RAW/RecPoints/ESD written • So far, just empty histograms, trivial solution waiting for reasonable reference data • Code not yet committed: • Run-type folders for reference data? • PULSER/NOISE runs won’t be reconstructed – will they go through the QA, anyway? Chiara Zampolli

  18. AliTOFRecoParam • Inheritance from AliDetectorRecoParam implemented, to be committed after cross-checking with PH on its backward compatibilty – should be OK Chiara Zampolli

  19. Summary • TOF Online Calibration objects changed • Backward compatibilty guaranteed by creation of new folders for the new objects • TOF preprocessor @ P2 validated in the whole chain, not running often though • QA framework almost completed – just minor details to be defined • AliTOFRecoParam in place, to be committed soon. Chiara Zampolli

More Related