Update of the TRD PID Response:
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 3 May 2011 10:14:01 +0000 (10:14 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 3 May 2011 10:14:01 +0000 (10:14 +0000)
commit51a0ce2598beaccb57bcaf5821301bb0ba580f56
treeb1906ddf7905cc9e6193872e70073243a9fa3614
parentf0f3d4a141a46cdad6914f336bb0586bb7a229b0
Update of the TRD PID Response:

- New reference distributions covering a momentum range from 1 to 10 GeV/c with an additional step at 1.5GeV/c. The reference in the OCDB up to now are going up to 6 GeV/c in integer momentum steps. With the change we increase the pt reach for the TRD up to 10GeV/c.

- The container type has changed: Before the references were stored in a TObjArray and associated to momentum steps and species  via the name. Momentum steps were hardcoded in the PID Response, adapted to the old TRD PID code. With the new references having a different momentum binning we have seen that this is difficult to handle. A new class AliTRDPIDReference stores the reference objects together with the reference object container. The new container can handle references for all TRD PID methods.

- To keep backward compatibility the OCDB object contains the TObjArray containing the old reference objects and the reference container with the new references. In the code currently implemented the Load function checks the name of the TObject, and if it is not valid it will be neglected. In the new code we explicitly expect the new container, and all objects of a different type will be ignored. So backward compatibility is not an issue. One file in the TRD code is affected by the change, which has to be updated the same time  commit is done.

- The TRD tender was also adapted to the change and the configuration was updated.

Concerning the OCDB entry since the TRD PID Response is now used in the reconstruction to calculate the TRD PID Probabilities we were concerned that we would cause problems there if we provide only the corresponding object for the new code while the reconstruction is still running with the old code. For this since the current OCDB entry stores the reference object in a simple TObjArray, we considered to be compatible with both versions of the code we add the new object to the old references. Since in the old code references which are not compatible with the name convention for the old objects are rejected, and in the new code we require the reference object to be of the new type, both versions should work with the new code.

Markus
12 files changed:
ANALYSIS/CMakelibTENDERSupplies.pkg
ANALYSIS/TenderSupplies/AddTaskTender.C
ANALYSIS/TenderSupplies/AliTRDTenderSupply.cxx
ANALYSIS/TenderSupplies/AliTRDTenderSupply.h
OCDB/TRD/Calib/PIDLQ1D/Run0_999999999_v1_s0.root [new file with mode: 0644]
STEER/AliTRDPIDReference.cxx [new file with mode: 0644]
STEER/AliTRDPIDReference.h [new file with mode: 0644]
STEER/AliTRDPIDResponse.cxx
STEER/AliTRDPIDResponse.h
STEER/CMakelibSTEERBase.pkg
STEER/STEERBaseLinkDef.h
TRD/AliTRDcalibDB.cxx