![]() |
AliPhysics
97a96ce (97a96ce)
|
EMCAL trigger maker task. More...
#include <AliEmcalTriggerMakerTask.h>
Public Types | |
enum | TriggerMakerBitConfig_t { kOldConfig = 0, kNewConfig = 1 } |
enum | Exception_t { kInvalidChannelException = 1 } |
Definition of various exception codes used in the trigger maker. More... | |
![]() | |
enum | BeamType { kNA = -1, kpp = 0, kAA = 1, kpA = 2 } |
Switch for the beam type. More... | |
enum | TriggerType { kND = -1, kJ1 = 0, kJ2 = 1, kG1 = 2, kG2 = 3, kL0 = 4 } |
Switch for EMCAL trigger types. More... | |
enum | TriggerCategory { kTriggerLevel0 = 0, kTriggerLevel1Jet = 1, kTriggerLevel1Gamma = 2, kTriggerRecalcJet = 3, kTriggerRecalcGamma = 4 } |
Online trigger categories. More... | |
enum | EMCalTriggerMode_t { kNoSpecialTreatment, kOverlapWithLowThreshold } |
Handling of the EMCAL trigger thresholds. More... | |
Protected Member Functions | |
std::function< int(unsigned int, unsigned int)> | GetMaskHandler () const |
void | FillQAHistos (const TString &patchtype, const AliEMCALTriggerPatchInfo &recpatch) |
virtual void | RunChanged () |
void | InitializeBadFEEChannels () |
void | InitializeFastORMaskingFromOCDB () |
![]() | |
void | LoadPythiaInfo (AliVEvent *event) |
void | SetRejectionReasonLabels (TAxis *axis) |
Bool_t | AcceptCluster (AliVCluster *clus, Int_t c=0) const |
Bool_t | AcceptTrack (AliVParticle *track, Int_t c=0) const |
void | AddObjectToEvent (TObject *obj, Bool_t attempt=kFALSE) |
AliVParticle * | GetAcceptParticleFromArray (Int_t p, Int_t c=0) const |
AliVCluster * | GetAcceptClusterFromArray (Int_t cl, Int_t c=0) const |
TClonesArray * | GetArrayFromEvent (const char *name, const char *clname=0) |
BeamType | GetBeamType () |
TClonesArray * | GetParticleArray (Int_t i=0) const |
TClonesArray * | GetClusterArray (Int_t i=0) const |
Int_t | GetNParticles (Int_t i=0) const |
Int_t | GetNClusters (Int_t i=0) const |
AliEMCALTriggerPatchInfo * | GetMainTriggerPatch (TriggerCategory triggersel=kTriggerLevel1Jet, Bool_t doOfflinSimple=kFALSE) |
Bool_t | HasTriggerType (TriggerType triggersel) |
ULong_t | GetTriggerList () |
Bool_t | PythiaInfoFromFile (const char *currFile, Float_t &fXsec, Float_t &fTrials, Int_t &pthard) |
Bool_t | IsTrackInEmcalAcceptance (AliVParticle *part, Double_t edges=0.9) const |
void | GeneratePythiaInfoObject (AliMCEvent *mcEvent) |
Bool_t | CheckMCOutliers () |
void | UserCreateOutputObjects () |
void | UserExec (Option_t *option) |
Bool_t | UserNotify () |
virtual Bool_t | FillGeneralHistograms () |
virtual Bool_t | IsEventSelected () |
virtual Bool_t | RetrieveEventObjects () |
virtual void | UserExecOnce () |
virtual Bool_t | FillHistograms () |
Protected Attributes | |
AliEmcalTriggerMakerKernel * | fTriggerMaker |
The actual trigger maker kernel. More... | |
AliVVZERO * | fV0 |
! VZERO data More... | |
TString | fCaloTriggersOutName |
name of output track array More... | |
TString | fV0InName |
name of output track array More... | |
TString | fBadFEEChannelOADB |
name of the OADB container containing channels to be masked inside the trigger maker More... | |
Bool_t | fUseL0Amplitudes |
Use L0 amplitudes instead of L1 time sum (useful for runs where STU was not read) More... | |
Bool_t | fLoadFastORMaskingFromOCDB |
Load FastOR masking from the OCDB. More... | |
TClonesArray * | fCaloTriggersOut |
! trigger array out More... | |
Bool_t | fDoQA |
Fill QA histograms. More... | |
THistManager * | fQAHistos |
! Histograms for QA More... | |
![]() | |
TString | fPythiaInfoName |
name of pythia info object More... | |
BeamType | fForceBeamType |
forced beam type More... | |
Bool_t | fGeneralHistograms |
whether or not it should fill some general histograms More... | |
Bool_t | fInitialized |
whether or not the task has been already initialized More... | |
Bool_t | fCreateHisto |
whether or not create histograms More... | |
TString | fCaloCellsName |
name of calo cell collection More... | |
TString | fCaloTriggersName |
name of calo triggers collection More... | |
TString | fCaloTriggerPatchInfoName |
trigger patch info array name More... | |
Double_t | fMinCent |
min centrality for event selection More... | |
Double_t | fMaxCent |
max centrality for event selection More... | |
Double_t | fMinVz |
min vertex for event selection More... | |
Double_t | fMaxVz |
max vertex for event selection More... | |
Double_t | fTrackPtCut |
cut on track pt in event selection More... | |
Int_t | fMinNTrack |
minimum nr of tracks in event with pT>fTrackPtCut More... | |
Double_t | fZvertexDiff |
upper limit for distance between primary and SPD vertex More... | |
Bool_t | fUseAliAnaUtils |
used for LHC13* data: z-vtx, Ncontributors, z-vtx resolution cuts More... | |
Bool_t | fRejectPileup |
Reject pilup using function AliAnalysisUtils::IsPileUpEvent() More... | |
Bool_t | fTklVsClusSPDCut |
Apply tracklet-vs-cluster SPD cut to reject background events in pp. More... | |
UInt_t | fOffTrigger |
offline trigger for event selection More... | |
TString | fTrigClass |
trigger class name for event selection More... | |
TriggerType | fTriggerTypeSel |
trigger type to select based on trigger patches More... | |
Int_t | fNbins |
no. of pt bins More... | |
Double_t | fMinBinPt |
min pt in histograms More... | |
Double_t | fMaxBinPt |
max pt in histograms More... | |
Double_t | fMinPtTrackInEmcal |
min pt track in emcal More... | |
Double_t | fEventPlaneVsEmcal |
select events which have a certain event plane wrt the emcal More... | |
Double_t | fMinEventPlane |
minimum event plane value More... | |
Double_t | fMaxEventPlane |
maximum event plane value More... | |
TString | fCentEst |
name of V0 centrality estimator More... | |
Bool_t | fIsEmbedded |
trigger, embedded signal More... | |
Bool_t | fIsPythia |
trigger, if it is a PYTHIA production More... | |
Int_t | fSelectPtHardBin |
select one pt hard bin for analysis More... | |
Int_t | fMinMCLabel |
minimum MC label value for the tracks/clusters being considered MC particles More... | |
Int_t | fMCLabelShift |
if MC label > fMCLabelShift, MC label -= fMCLabelShift More... | |
Int_t | fNcentBins |
how many centrality bins More... | |
Bool_t | fNeedEmcalGeom |
whether or not the task needs the emcal geometry More... | |
TObjArray | fParticleCollArray |
particle/track collection array More... | |
TObjArray | fClusterCollArray |
cluster collection array More... | |
ULong_t | fTriggers |
list of fired triggers More... | |
EMCalTriggerMode_t | fEMCalTriggerMode |
EMCal trigger selection mode. More... | |
Bool_t | fUseNewCentralityEstimation |
Use new centrality estimation (for 2015 data) More... | |
Bool_t | fGeneratePythiaInfoObject |
Generate Pythia info object. More... | |
Bool_t | fUsePtHardBinScaling |
Use pt hard bin scaling in merging. More... | |
Bool_t | fMCRejectFilter |
enable the filtering of events by tail rejection More... | |
Float_t | fPtHardAndJetPtFactor |
Factor between ptHard and jet pT to reject/accept event. More... | |
Float_t | fPtHardAndClusterPtFactor |
Factor between ptHard and cluster pT to reject/accept event. More... | |
Float_t | fPtHardAndTrackPtFactor |
Factor between ptHard and track pT to reject/accept event. More... | |
Int_t | fRunNumber |
!run number (triggering RunChanged() More... | |
AliAnalysisUtils * | fAliAnalysisUtils |
!vertex selection (optional) More... | |
Bool_t | fIsEsd |
!whether it's an ESD analysis More... | |
AliEMCALGeometry * | fGeom |
!emcal geometry More... | |
TClonesArray * | fTracks |
!tracks More... | |
TClonesArray * | fCaloClusters |
!clusters More... | |
AliVCaloCells * | fCaloCells |
!cells More... | |
AliVCaloTrigger * | fCaloTriggers |
!calo triggers More... | |
TClonesArray * | fTriggerPatchInfo |
!trigger patch info array More... | |
Double_t | fCent |
!event centrality More... | |
Int_t | fCentBin |
!event centrality bin More... | |
Double_t | fEPV0 |
!event plane V0 More... | |
Double_t | fEPV0A |
!event plane V0A More... | |
Double_t | fEPV0C |
!event plane V0C More... | |
Double_t | fVertex [3] |
!event vertex More... | |
Double_t | fVertexSPD [3] |
!event Svertex More... | |
Int_t | fNVertCont |
!event vertex number of contributors More... | |
Int_t | fNVertSPDCont |
!event SPD vertex number of contributors More... | |
BeamType | fBeamType |
!event beam type More... | |
AliGenPythiaEventHeader * | fPythiaHeader |
!event Pythia header More... | |
Double_t | fPtHard |
!event pt hard More... | |
Int_t | fPtHardBin |
!event pt hard bin More... | |
Int_t | fNTrials |
!event trials More... | |
Float_t | fXsection |
!x-section from pythia header More... | |
AliEmcalPythiaInfo * | fPythiaInfo |
!event parton info More... | |
AliEmcalList * | fOutput |
!output list More... | |
TH1 * | fHistEventCount |
!incoming and selected events More... | |
TH1 * | fHistTrialsAfterSel |
!total number of trials per pt hard bin after selection More... | |
TH1 * | fHistEventsAfterSel |
!total number of events per pt hard bin after selection More... | |
TProfile * | fHistXsectionAfterSel |
!x section from pythia header More... | |
TH1 * | fHistTrials |
!trials from pyxsec.root More... | |
TH1 * | fHistEvents |
!total number of events per pt hard bin More... | |
TProfile * | fHistXsection |
!x section from pyxsec.root More... | |
TH1 * | fHistPtHard |
!pt hard distribution More... | |
TH1 * | fHistCentrality |
!event centrality distribution More... | |
TH1 * | fHistZVertex |
!z vertex position More... | |
TH1 * | fHistEventPlane |
!event plane distribution More... | |
TH1 * | fHistEventRejection |
!book keep reasons for rejecting event More... | |
TH1 * | fHistTriggerClasses |
!number of events in each trigger class More... | |
Private Member Functions | |
AliEmcalTriggerMakerTask (const AliEmcalTriggerMakerTask &) | |
AliEmcalTriggerMakerTask & | operator= (const AliEmcalTriggerMakerTask &) |
Additional Inherited Members | |
![]() | |
static void | GetEtaPhiDiff (const AliVTrack *t, const AliVCluster *v, Double_t &phidiff, Double_t &etadiff) |
static Byte_t | GetTrackType (const AliVTrack *t) |
static Byte_t | GetTrackType (const AliAODTrack *aodTrack, UInt_t filterBit1, UInt_t filterBit2) |
static Double_t | DeltaPhi (Double_t phia, Double_t phib, Double_t rMin=-TMath::Pi()/2, Double_t rMax=3 *TMath::Pi()/2) |
static Double_t * | GenerateFixedBinArray (Int_t n, Double_t min, Double_t max) |
static void | GenerateFixedBinArray (Int_t n, Double_t min, Double_t max, Double_t *array) |
static Double_t | GetParallelFraction (AliVParticle *part1, AliVParticle *part2) |
static Double_t | GetParallelFraction (const TVector3 &vect1, AliVParticle *part2) |
![]() | |
static Double_t | fgkEMCalDCalPhiDivide = 4. |
phi value used to distinguish between DCal and EMCal More... | |
EMCAL trigger maker task.
The EMCAL trigger maker task steers the process building trigger patches, performed via the trigger maker kernel, and provides the interface to the user. As this, it forwards necessary data like FASTor amplitudes and time sums as well as cell data to the trigger maker kernel and reads out the patches. The patches as type of raw patches are converted into full patches (AliEMCALTriggerPatchInfo) and stored in a TClonesArray which is added to the input event. On user request it can also fill QA histograms which are added to the common root file.
Definition at line 37 of file AliEmcalTriggerMakerTask.h.
Definition of various exception codes used in the trigger maker.
Collection of all possible error codes issued in the trigger maker task class.
Enumerator | |
---|---|
kInvalidChannelException |
kInvalidChannelException |
Definition at line 59 of file AliEmcalTriggerMakerTask.h.
Enumerator | |
---|---|
kOldConfig |
Old configuration, no distinction between high and low threshold. |
kNewConfig |
New configuration, distinction between high and low threshold. |
Definition at line 47 of file AliEmcalTriggerMakerTask.h.
AliEmcalTriggerMakerTask::AliEmcalTriggerMakerTask | ( | ) |
Dummy constructor
Definition at line 44 of file AliEmcalTriggerMakerTask.cxx.
AliEmcalTriggerMakerTask::AliEmcalTriggerMakerTask | ( | const char * | name, |
Bool_t | doQA = kFALSE |
||
) |
Main constructor, initializing also AliAnalysisTaskEmcal and Create the Kernel.
name | Name of the task |
doQA | If true we switch on QA |
Definition at line 60 of file AliEmcalTriggerMakerTask.cxx.
|
virtual |
Destructor
Definition at line 76 of file AliEmcalTriggerMakerTask.cxx.
|
private |
|
virtual |
Initialize the trigger maker kernel. This function is called for the first event in order to obtain the run number from it. Also initialises AliAnalysisTaskEmcal.
Initializes the trigger maker kernel
Reimplemented from AliAnalysisTaskEmcal.
Definition at line 140 of file AliEmcalTriggerMakerTask.cxx.
|
protected |
Filling basic QA histograms implemented in the trigger maker task for a given trigger patch which is of a certain patch type. Note that the patchtype provided here defines the histograms to be filled (a trigger patch can be of multiple types).
[in] | patchtype | Patchtype of the histograms to be filled |
[in] | recpatch | Patch to be monitored |
Definition at line 309 of file AliEmcalTriggerMakerTask.cxx.
Referenced by Run().
|
protected |
Closure producing a handler converting a set of mask / bit number into a channel ID. In case the mask / bit number is invalid the function will return -1
Definition at line 287 of file AliEmcalTriggerMakerTask.cxx.
Referenced by InitializeFastORMaskingFromOCDB().
|
inline |
Definition at line 177 of file AliEmcalTriggerMakerTask.h.
|
protected |
Initialize bad channels from the OADB container. Called by the RunChanged() method.
Definition at line 219 of file AliEmcalTriggerMakerTask.cxx.
Referenced by RunChanged().
|
protected |
Initialize the FastOR masking from the OCDB
Definition at line 232 of file AliEmcalTriggerMakerTask.cxx.
Referenced by RunChanged().
|
private |
|
virtual |
Run trigger patch finding.
As the patch finding is implemented in the class AliEmcalTriggerMakerKernel, the analysis task only takes care about propagating necessary information to the kernel (ADCs, cell energy, V0 amplitudes), steering the patch finder, and appending the output to the ESD event.
Run the trigger maker Move patches found by the trigger maker to the output clones array Fill QA histograms if requested
Reimplemented from AliAnalysisTaskEmcal.
Definition at line 173 of file AliEmcalTriggerMakerTask.cxx.
|
protectedvirtual |
RunChanged method of the trigger maker: In case of a bad channel container provided, initialize bad channel map for the new run.
Reimplemented from AliAnalysisTaskEmcal.
Definition at line 214 of file AliEmcalTriggerMakerTask.cxx.
|
inline |
Apply online bad channels (FastOR masking) to offline FEE energies. Using this the same acceptance which was available online can be applied to offline patches. The masking is handled inside the trigger maker kernel.
[in] | doApply | If true the online FastOR masking is applied to offline energies |
Definition at line 160 of file AliEmcalTriggerMakerTask.h.
|
inline |
Set the name of the output container
[in] | name | Name of the output container |
Definition at line 125 of file AliEmcalTriggerMakerTask.h.
Set range for L0 time
[in] | min | Minimum L0 time (default is 7) |
[in] | max | Maximum L0 time (default is 10) |
Definition at line 118 of file AliEmcalTriggerMakerTask.h.
|
inline |
Defining whether to use the FastOR masking from the OCDB. Attention: In case the option is set to true the CDBconnect task is required to run before the trigger maker task.
[in] | doLoad | If true the FastOR masking is obtained from the OCDB |
Definition at line 152 of file AliEmcalTriggerMakerTask.h.
|
inline |
Set the name of the OADB container providing a list of absolute IDs of FEE channels to be masked (TObjArray of TParameter<int>)
[in] | name | Name of the container providing masked channel abs IDs |
Definition at line 138 of file AliEmcalTriggerMakerTask.h.
|
inline |
Switch on basic QA of the trigger maker
[in] | doQA | If true QA is switched on. |
Definition at line 111 of file AliEmcalTriggerMakerTask.h.
Definition at line 173 of file AliEmcalTriggerMakerTask.h.
Definition at line 170 of file AliEmcalTriggerMakerTask.h.
Definition at line 167 of file AliEmcalTriggerMakerTask.h.
Definition at line 164 of file AliEmcalTriggerMakerTask.h.
|
inline |
Definition at line 179 of file AliEmcalTriggerMakerTask.h.
void AliEmcalTriggerMakerTask::SetUseTriggerBitConfig | ( | TriggerMakerBitConfig_t | bitConfig | ) |
Trigger bit configuration to be used in the trigger patch maker.
[in] | bitConfig | Type of the trigger bit config (old - 3 bit, new - 5 bit) |
Definition at line 123 of file AliEmcalTriggerMakerTask.cxx.
|
inline |
Set the name of the V0 input object
[in] | name | Name of the V0 input object |
Definition at line 131 of file AliEmcalTriggerMakerTask.h.
|
virtual |
Initializing output objects. Kernel is initialized in ExecOnce as geometry - which depends on the run number - is needed for this.
Initialize output objets
Definition at line 83 of file AliEmcalTriggerMakerTask.cxx.
|
protected |
name of the OADB container containing channels to be masked inside the trigger maker
Definition at line 224 of file AliEmcalTriggerMakerTask.h.
Referenced by InitializeBadFEEChannels(), RunChanged(), and SetMaskedFEEChannelOADBContainer().
|
protected |
! trigger array out
Definition at line 227 of file AliEmcalTriggerMakerTask.h.
Referenced by ExecOnce(), and Run().
|
protected |
name of output track array
Definition at line 222 of file AliEmcalTriggerMakerTask.h.
Referenced by ExecOnce(), and SetCaloTriggersOutName().
|
protected |
Fill QA histograms.
Definition at line 229 of file AliEmcalTriggerMakerTask.h.
Referenced by Run(), SetRunQA(), and UserCreateOutputObjects().
|
protected |
Load FastOR masking from the OCDB.
Definition at line 226 of file AliEmcalTriggerMakerTask.h.
Referenced by RunChanged(), and SetLoadFastORMaskingFromOCDB().
|
protected |
! Histograms for QA
Definition at line 230 of file AliEmcalTriggerMakerTask.h.
Referenced by FillQAHistos(), InitializeFastORMaskingFromOCDB(), Run(), and UserCreateOutputObjects().
|
protected |
The actual trigger maker kernel.
Definition at line 219 of file AliEmcalTriggerMakerTask.h.
Referenced by AliEmcalTriggerMakerTask(), ExecOnce(), GetTriggerMaker(), InitializeBadFEEChannels(), InitializeFastORMaskingFromOCDB(), Run(), SetApplyTRUMaskingToFEE(), SetL0TimeRange(), SetTriggerThresholdGammaHigh(), SetTriggerThresholdGammaLow(), SetTriggerThresholdJetHigh(), SetTriggerThresholdJetLow(), SetUseTriggerBitConfig(), and ~AliEmcalTriggerMakerTask().
|
protected |
Use L0 amplitudes instead of L1 time sum (useful for runs where STU was not read)
Definition at line 225 of file AliEmcalTriggerMakerTask.h.
Referenced by Run(), and SetUseL0Amplitudes().
|
protected |
! VZERO data
Definition at line 220 of file AliEmcalTriggerMakerTask.h.
Referenced by ExecOnce(), and Run().
|
protected |
name of output track array
Definition at line 223 of file AliEmcalTriggerMakerTask.h.
Referenced by ExecOnce(), and SetV0InName().