120 likes | 257 Views
Calorimeter commissioning meeting 17/01/08. Online Software & CondDB. Olivier Deschamps Université Blaise Pascal/IN2P3/CNRS Clermont-Ferrand. Outline : - DAQ software status - Online software status - condDB discussion. 0. DAQ software status. CaloDAQ software
E N D
Calorimeter commissioning meeting 17/01/08 Online Software & CondDB Olivier Deschamps Université Blaise Pascal/IN2P3/CNRS Clermont-Ferrand Outline : - DAQ software status - Online software status - condDB discussion 0
DAQ software status • CaloDAQ software • New version (v4r3) released before Xmas available with LHCb v23r2 • new tool CaloL0DataProvider added • same as the fast decoding tool CaloDataProvider but for 8bits L0-ADC • Fix small bug in decoding Prs/Spd TELL1 format • related to half-FEB (i.e. 32 valid among 64 channels) • Add mechanism to handle corrupted/incomplete banks (see next slide) • Minor improvement in print-out • Head revision available in CVS • add protection (+ warning) against multi-events pile-up in the same rawEvent • such events have been observed by Patrick in the latest cosmics data • Due to confused Event Builder (may be due to different Packing Factors) • In case of several banks with same sourceID is present in the rawEvent only the 1st one is decoded and warning message is printed 1
Handling readout errors Ecal & Hcal 26 + 8 Tell1 banks Prs (incl. Spd) 8 Tell1 banks TELL1 rawBank::E/HcalPackedrawBank::PrsPacked rawBank::E/HcalPackedError rawBank::PrsPackedError Processing sequence : unpack ‘packed’ rawBank caloDigits on TES apply 0-suppression Online reco (HLT) kill ‘packed’ banks (BankKiller) produce ‘short’ (0-sup) banks for HLT-yes HLT ::EcalE & ::HcalE 1+1 banks ::EcalTrig & ::HcalTrig 1 +1 banks ::PrsE 1 bank ::PrsTrig 1 bank DST • Error banks for Ecal, Hcal & Prs/Spd packed data: produced in case of an error is detected in TELL1 processing • Problem : in case of TELL1 desynchonisation or corrupted data, the initial Tell1 format (including the error flags) are lost for a full offline debugging. • Solution : keep the TELL1 format when an error is detected (hopefully never) • No problem with offline decoding (can run transparently on both formats) 2
Handling readout errors • New class in DAQEvent : RawBankReadoutStatus • Generic class to handle the decoding errors • Status enum : • Associated filter alg. : RawBankReadoutStatusFilter • Used to not convert the TELL1 ‘packed’ format to 0-sup ‘short’ format in case of error • FilterPassed == true when RawBankReadoutStatus::status() & mask == 0 • Possibility to mask the error type via options • OK = 0 • Corrupted = 1 • Incomplete = 2 • Missing = 4 • Empty = 8 • Tell1Sync = 16 • Tell1Link = 32 • Tell1Gen = 64 • Other = 128 • Next to implement • Add tools to decode the error bank format • Implement algorithm to monitor the decoding errors (status histogramming) 3
Online software status • ORWELL project status • new version (v1r3) in the pipeline • CaloCalib package • add L0-ADC (8bit) in monitoring ntuple • few minor improvement + few bug fixes in histogram producing • add Yasmine’s TAE analysis code • add small algorithm producing a single 2D view of Calo : ADC(x,y) • Possibility to accumulate over events or pick up a single event • Online display of 2D view of individual calo events • Orwell application • add dependency to LBCOM project • Needed by Marie-Hélène/Patrick to run L0Calo within Orwell framework • adapt to changes in latest ONLINE project release (v4r5 available this week) • To be committed soon (beg. next week) and installed on online system • More and more Orwell users • Patrick, Marie-Hélène, Marie-Noelle, Irina, Iouri,Anatoli • if you wan to join, instructions are available at : • https://twiki.cern.ch/twiki/bin/view/LHCb/LHCbCaloDAQ 4
Online software status • Online environment • set of useful scripts installed on /group/calo/sw/scripts/ • to setup environment, launch EventBuilder, launch presenter, run Orwell … • see https://twiki.cern.ch/twiki/bin/view/LHCb/LHCbCaloDAQ • Online histogramming • First experience with full Online mode using Presenter • Also some experience with online Panoramix display at pit • To-do : provide commissioning tools • set-up online histograming display • quick detection of problems • set-up histogram analyser : • gain/pedestal follower, • detect dead, noisy, hot channels alarm provider • Mechanism to update channel parameters (gain/dead channels/…) in condDB • Some informal discussions with Irina, Marie-Noelle, Iouri (see Irina’s talk) 5
condition DataBase • Current condDB content : • Readout scheme : • Readout relations (large arrays of int) Channel <-> FE <-> Tell1 • see : https://twiki.cern.ch/twiki/bin/view/LHCb/LHCbCaloReadout • includes also the monitoring system : Channel <-> LED <-> Pin <-> FE • final cabling from Irina available with the last release (DBase v3r1) • see : https://twiki.cern.ch/twiki/bin/view/LHCb/LHCbCaloLEDMonitoring • and more recently L0Calo connections : FE<->Hadron selection board • available with LHCb v23r2 • see : https://twiki.cern.ch/twiki/bin/view/LHCb/SelectionConnections • Readout parameters : • gain parameters : • Etmax = EtInCenter+EtSlope*sin(theta), ADCmax , PedShift,… • Recently added : pedestal shift for PIN-diode (PinPedShift = 5.9 from Hcal) • L0 ADC/Et conversion : L0EtBin 6
condition DataBase • Nominal gain definition • with the existing conditions we can define the nominal gain • used in Boole to convert G4 MeVADC and CaloDAQ to convert back ADC MeV • this description works with all calo : • to do : implement the possibility to have different parameter value per calo area • Energy (MeV) = G * (ADC-PedShift) • with G =Etmax/sin(theta)/ADCmax • and Etmax = EtInCenter+EtSlope*sin(theta), XCal ADC is 256-subtracted here This defines the Spd threshold ADC= floor(energy/Gain) Threshold = 1.6 MeV ~ 0/7 MIP 7
Implementing channel calibration : proposal • 2 calibration sources : • ‘Absolute’ gain per channel • obtained « offline » from calibration procedure (pi0, e/p, …) • ‘Relative’ gain variation per channel from LED monitoring • Obtained online in Calibration farm from <PMT/PIN> following • Proposal (after discussion with Marie-Noelle, Irina, Iouri) • ‘Relative’ gain condition • is provided as 2 parameters per channel : <PIN>(T) , <PMT>(T) • NB : Hcal has 2 LED per channel : use only one for calibration purpose • ‘Absolute’ gain condition • is given per channel relative to the nominal gain : δg • is provided wrt a reference <PIN>/<PMT> : <PIN>(ref), <PMT>(ref) • i.e. if the ‘offline’ calibration is obtained from a data sample • with different PIN(T)/PMT(T) conditions, a reference has to be chosen (e.g. the one of the first analysed data in the sample) and δg computed accordingly • The relative gain variation is obtained as rg = • The overall gain is given byGglob = rg * δg * Gnominal 8
Implementing gain calibration parameters • Channel Quality parameter • single parameter == Q : bit-stream value • come with LED data analysis (with ‘relative’ gain condition) • condDB scheme : • As ‘absolute’ and ‘relative’ calibration parameters have different Interval Of Validities better to have 2 separate conditions • Also better to have conditions per channel to allow updating single channel without re-storing identical values for all other channels • 2x6016 new conditions for Ecal with several parameters 9
Implementing gain calibration parameters • Proposal summary • 2 conditions per channel with several parameters T Interval Of Validity : weeks/monthes • Interval Of Validity : hours/days • The ‘relative gain’ condition is updated with new<PIN>(T) , <PMT>(T)values only when rg has changed significantly (to be quantified) or when quality has changed (do we need to separate ?) • The ‘relative gain’ condition is reset with <PIN>(ref), <PMT>(ref) each time the ‘absolute gain’ calibration condition is updated. • Is there other parameters to add ? • parameters of the LED signal fit (mean/RMS/skewness) proposed by Irina • TAE parameter (which) ? NO from previous discussion in December Soft. meeting • specific parameters for Prs / Spd calibration ? 10
Summary • condition DB : To-do list • Deployment of condDB • update manager mechanism to be implemented in DeCalorimeter • should come with the next CaloDet release • To be added in condDB • Different gain parameters per Calo area • Channel calibration and quality parameters • if everybody agree with the model presented today I will implement it quickly • Alignment parameters (in the pipeline) • reconstruction parameters (CaloReco, CaloPIDs ref. histo, …) currently distributed via options files could also go in condDB.