![]() |
AliPhysics
eff0747 (eff0747)
|
EMCAL trigger maker taskThe 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. More...
#include <AliEmcalTriggerMakerTask.h>
Public Types | |
enum | TriggerMakerBitConfig_t { kOldConfig = 0, kNewConfig = 1 } |
![]() | |
enum | BeamType { kNA = -1, kpp = 0, kAA = 1, kpA = 2 } |
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... | |
Public Member Functions | |
AliEmcalTriggerMakerTask () | |
AliEmcalTriggerMakerTask (const char *name, Bool_t doQA=kFALSE) | |
virtual | ~AliEmcalTriggerMakerTask () |
virtual void | UserCreateOutputObjects () |
virtual void | ExecOnce () |
virtual Bool_t | Run () |
void | SetRunQA (Bool_t doQA=kTRUE) |
void | SetL0TimeRange (Int_t min, Int_t max) |
void | SetCaloTriggersOutName (const char *name) |
void | SetV0InName (const char *name) |
void | SetUseTriggerBitConfig (TriggerMakerBitConfig_t bitConfig) |
void | SetTriggerThresholdJetLow (Int_t a, Int_t b, Int_t c) |
void | SetTriggerThresholdJetHigh (Int_t a, Int_t b, Int_t c) |
void | SetTriggerThresholdGammaLow (Int_t a, Int_t b, Int_t c) |
void | SetTriggerThresholdGammaHigh (Int_t a, Int_t b, Int_t c) |
AliEmcalTriggerMakerKernel * | GetTriggerMaker () const |
void | SetJetPatchsize (Int_t jetpatchsize) |
void | SetUseL0Amplitudes (Bool_t b) |
![]() | |
AliAnalysisTaskEmcal () | |
AliAnalysisTaskEmcal (const char *name, Bool_t histo=kFALSE) | |
virtual | ~AliAnalysisTaskEmcal () |
AliParticleContainer * | AddParticleContainer (const char *n) |
AliTrackContainer * | AddTrackContainer (const char *n) |
AliMCParticleContainer * | AddMCParticleContainer (const char *n) |
AliClusterContainer * | AddClusterContainer (const char *n) |
void | AdoptParticleContainer (AliParticleContainer *cont) |
void | AdoptClusterContainer (AliClusterContainer *cont) |
AliParticleContainer * | GetParticleContainer (Int_t i=0) const |
AliParticleContainer * | GetParticleContainer (const char *name) const |
AliClusterContainer * | GetClusterContainer (Int_t i=0) const |
AliClusterContainer * | GetClusterContainer (const char *name) const |
AliMCParticleContainer * | GetMCParticleContainer (Int_t i=0) const |
AliMCParticleContainer * | GetMCParticleContainer (const char *name) const |
AliTrackContainer * | GetTrackContainer (Int_t i=0) const |
AliTrackContainer * | GetTrackContainer (const char *name) const |
void | RemoveParticleContainer (Int_t i=0) |
void | RemoveClusterContainer (Int_t i=0) |
void | SetCaloCellsName (const char *n) |
void | SetCaloTriggerPatchInfoName (const char *n) |
void | SetCaloTriggersName (const char *n) |
void | SetCentRange (Double_t min, Double_t max) |
void | SetCentralityEstimator (const char *c) |
void | SetClusName (const char *n) |
void | SetClusPtCut (Double_t cut, Int_t c=0) |
void | SetClusTimeCut (Double_t min, Double_t max, Int_t c=0) |
void | SetEventPlaneVsEmcal (Double_t ep) |
void | SetForceBeamType (BeamType f) |
void | SetHistoBins (Int_t nbins, Double_t min, Double_t max) |
void | SetIsEmbedded (Bool_t i) |
void | SetIsPythia (Bool_t i) |
void | SetMakeGeneralHistograms (Bool_t g) |
void | SetMCLabelShift (Int_t s) |
void | SetMinMCLabel (Int_t s) |
void | SetMinNTrack (Int_t min) |
void | SetMinPtTrackInEmcal (Double_t min) |
virtual void | SetNCentBins (Int_t n) |
void | SetNeedEmcalGeom (Bool_t n) |
void | SetOffTrigger (UInt_t t) |
void | SetTrackEtaLimits (Double_t min, Double_t max, Int_t c=0) |
void | SetTrackPhiLimits (Double_t min, Double_t max, Int_t c=0) |
void | SetTrackPtCut (Double_t cut, Int_t c=0) |
void | SetTracksName (const char *n) |
void | SetTrigClass (const char *n) |
void | SetTriggerTypeSel (TriggerType t) |
void | SetUseAliAnaUtils (Bool_t b, Bool_t bRejPilup=kTRUE) |
void | SetVzRange (Double_t min, Double_t max) |
void | SetUseSPDTrackletVsClusterBG (Bool_t b) |
void | SetEMCalTriggerMode (EMCalTriggerMode_t m) |
void | SetUseNewCentralityEstimation (Bool_t b) |
void | SetGeneratePythiaInfoObject (Bool_t b) |
void | SetPythiaInfoName (const char *n) |
const TString & | GetPythiaInfoName () const |
const AliEmcalPythiaInfo * | GetPythiaInfo () const |
Protected Member Functions | |
void | FillQAHistos (const TString &patchtype, const AliEMCALTriggerPatchInfo &recpatch) |
![]() | |
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) |
void | UserCreateOutputObjects () |
void | UserExec (Option_t *option) |
Bool_t | UserNotify () |
virtual Bool_t | FillGeneralHistograms () |
virtual Bool_t | IsEventSelected () |
virtual Bool_t | RetrieveEventObjects () |
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... | |
TriggerMakerBitConfig_t | fUseTriggerBitConfig |
type of trigger config More... | |
Int_t | fJetPatchsize |
Size of a jet patch. More... | |
Bool_t | fUseL0Amplitudes |
Use L0 amplitudes instead of L1 time sum (useful for runs where STU was not read) More... | |
Int_t | fL0MinTime |
Minimum L0 time. More... | |
Int_t | fL0MaxTime |
Maximum L0 time. More... | |
TClonesArray * | fCaloTriggersOut |
! trigger array out More... | |
Bool_t | fDoQA |
Fill QA histograms. More... | |
THistManager * | fQAHistos |
! Histograms for QA More... | |
![]() | |
TString | fPythiaInfoName |
phi value used to distinguish between DCal and EMCal More... | |
BeamType | fForceBeamType |
name of pythia info object More... | |
Bool_t | fGeneralHistograms |
forced beam type More... | |
Bool_t | fInitialized |
whether or not it should fill some general histograms More... | |
Bool_t | fCreateHisto |
whether or not the task has been already initialized More... | |
TString | fCaloCellsName |
whether or not create histograms More... | |
TString | fCaloTriggersName |
name of calo cell collection More... | |
TString | fCaloTriggerPatchInfoName |
name of calo triggers collection More... | |
Double_t | fMinCent |
trigger patch info array name More... | |
Double_t | fMaxCent |
min centrality for event selection More... | |
Double_t | fMinVz |
max centrality for event selection More... | |
Double_t | fMaxVz |
min vertex for event selection More... | |
Double_t | fTrackPtCut |
max vertex for event selection More... | |
Int_t | fMinNTrack |
cut on track pt in event selection More... | |
Bool_t | fUseAliAnaUtils |
minimum nr of tracks in event with pT>fTrackPtCut More... | |
Bool_t | fRejectPileup |
used for LHC13* data: z-vtx, Ncontributors, z-vtx resolution cuts More... | |
Bool_t | fTklVsClusSPDCut |
Reject pilup using function AliAnalysisUtils::IsPileUpEvent() More... | |
UInt_t | fOffTrigger |
Apply tracklet-vs-cluster SPD cut to reject background events in pp. More... | |
TString | fTrigClass |
offline trigger for event selection More... | |
TriggerType | fTriggerTypeSel |
trigger class name for event selection More... | |
Int_t | fNbins |
trigger type to select based on trigger patches More... | |
Double_t | fMinBinPt |
no. of pt bins More... | |
Double_t | fMaxBinPt |
min pt in histograms More... | |
Double_t | fMinPtTrackInEmcal |
max pt in histograms More... | |
Double_t | fEventPlaneVsEmcal |
min pt track in emcal More... | |
Double_t | fMinEventPlane |
select events which have a certain event plane wrt the emcal More... | |
Double_t | fMaxEventPlane |
minimum event plane value More... | |
TString | fCentEst |
maximum event plane value More... | |
Bool_t | fIsEmbedded |
name of V0 centrality estimator More... | |
Bool_t | fIsPythia |
trigger, embedded signal More... | |
Int_t | fSelectPtHardBin |
trigger, if it is a PYTHIA production More... | |
Int_t | fMinMCLabel |
select one pt hard bin for analysis More... | |
Int_t | fMCLabelShift |
minimum MC label value for the tracks/clusters being considered MC particles More... | |
Int_t | fNcentBins |
if MC label > fMCLabelShift, MC label -= fMCLabelShift More... | |
Bool_t | fNeedEmcalGeom |
how many centrality bins More... | |
TObjArray | fParticleCollArray |
whether or not the task needs the emcal geometry More... | |
TObjArray | fClusterCollArray |
particle/track collection array More... | |
ULong_t | fTriggers |
cluster collection array More... | |
EMCalTriggerMode_t | fEMCalTriggerMode |
list of fired triggers More... | |
Bool_t | fUseNewCentralityEstimation |
EMCal trigger selection mode. More... | |
Bool_t | fGeneratePythiaInfoObject |
Use new centrality estimation (for 2015 data) More... | |
AliAnalysisUtils * | fAliAnalysisUtils |
Generate Pythia info object. 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... | |
Int_t | fNVertCont |
!event 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... | |
TList * | 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. |
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 31 of file AliEmcalTriggerMakerTask.h.
Enumerator | |
---|---|
kOldConfig |
Old configuration, no distinction between high and low threshold. |
kNewConfig |
New configuration, distiction between high and low threshold. |
Definition at line 41 of file AliEmcalTriggerMakerTask.h.
AliEmcalTriggerMakerTask::AliEmcalTriggerMakerTask | ( | ) |
Dummy constructor
Definition at line 34 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 52 of file AliEmcalTriggerMakerTask.cxx.
|
virtual |
Destructor
Definition at line 70 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 119 of file AliEmcalTriggerMakerTask.cxx.
|
protected |
Definition at line 209 of file AliEmcalTriggerMakerTask.cxx.
Referenced by Run().
|
inline |
Definition at line 135 of file AliEmcalTriggerMakerTask.h.
|
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 168 of file AliEmcalTriggerMakerTask.cxx.
|
inline |
Set the name of the output container
name | Name of the output container |
Definition at line 108 of file AliEmcalTriggerMakerTask.h.
|
inline |
Definition at line 137 of file AliEmcalTriggerMakerTask.h.
|
inline |
Set range for L0 time
min | Minimum L0 time (default is 7) |
max | Maximum L0 time (default is 10) |
Definition at line 101 of file AliEmcalTriggerMakerTask.h.
|
inline |
Switch on basic QA of the trigger maker
doQA | If true QA is switched on. |
Definition at line 94 of file AliEmcalTriggerMakerTask.h.
|
inline |
Definition at line 131 of file AliEmcalTriggerMakerTask.h.
|
inline |
Definition at line 128 of file AliEmcalTriggerMakerTask.h.
|
inline |
Definition at line 125 of file AliEmcalTriggerMakerTask.h.
|
inline |
Definition at line 122 of file AliEmcalTriggerMakerTask.h.
|
inline |
Definition at line 138 of file AliEmcalTriggerMakerTask.h.
|
inline |
Trigger bit configuration to be used in the trigger patch maker.
bitConfig | Type of the trigger bit config (old - 3 bit, new - 5 bit) |
Definition at line 120 of file AliEmcalTriggerMakerTask.h.
|
inline |
Set the name of the V0 input object
name | Name of the V0 input object |
Definition at line 114 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 77 of file AliEmcalTriggerMakerTask.cxx.
|
protected |
! trigger array out
Definition at line 154 of file AliEmcalTriggerMakerTask.h.
Referenced by ExecOnce(), and Run().
|
protected |
name of output track array
Definition at line 147 of file AliEmcalTriggerMakerTask.h.
Referenced by ExecOnce(), and SetCaloTriggersOutName().
|
protected |
Fill QA histograms.
Definition at line 156 of file AliEmcalTriggerMakerTask.h.
Referenced by Run(), SetRunQA(), and UserCreateOutputObjects().
|
protected |
Size of a jet patch.
Definition at line 150 of file AliEmcalTriggerMakerTask.h.
Referenced by ExecOnce(), and SetJetPatchsize().
|
protected |
Maximum L0 time.
Definition at line 153 of file AliEmcalTriggerMakerTask.h.
Referenced by ExecOnce(), and SetL0TimeRange().
|
protected |
Minimum L0 time.
Definition at line 152 of file AliEmcalTriggerMakerTask.h.
Referenced by ExecOnce(), and SetL0TimeRange().
|
protected |
! Histograms for QA
Definition at line 157 of file AliEmcalTriggerMakerTask.h.
Referenced by FillQAHistos(), Run(), and UserCreateOutputObjects().
|
protected |
The actual trigger maker kernel.
Definition at line 144 of file AliEmcalTriggerMakerTask.h.
Referenced by AliEmcalTriggerMakerTask(), ExecOnce(), GetTriggerMaker(), Run(), SetTriggerThresholdGammaHigh(), SetTriggerThresholdGammaLow(), SetTriggerThresholdJetHigh(), SetTriggerThresholdJetLow(), and ~AliEmcalTriggerMakerTask().
|
protected |
Use L0 amplitudes instead of L1 time sum (useful for runs where STU was not read)
Definition at line 151 of file AliEmcalTriggerMakerTask.h.
Referenced by Run(), and SetUseL0Amplitudes().
|
protected |
type of trigger config
Definition at line 149 of file AliEmcalTriggerMakerTask.h.
Referenced by ExecOnce(), and SetUseTriggerBitConfig().
|
protected |
! VZERO data
Definition at line 145 of file AliEmcalTriggerMakerTask.h.
Referenced by ExecOnce(), and Run().
|
protected |
name of output track array
Definition at line 148 of file AliEmcalTriggerMakerTask.h.
Referenced by ExecOnce(), and SetV0InName().