![]() |
AliPhysics
vAN-20151016 (8d2b0e8)
|
EMCAL trigger patch maker. More...
#include <AliEmcalTriggerMaker.h>
Classes | |
struct | AliEmcalTriggerChannelContainer |
Structure for position of trigger channels. More... | |
struct | AliEmcalTriggerChannelPosition |
2D position of a trigger channel on the EMCAL surface More... | |
Public Types | |
enum | TriggerMakerTriggerType_t { kTMEMCalJet = 0, kTMEMCalGamma = 1, kTMEMCalLevel0 = 2, kTMEMCalRecalcJet = 3, kTMEMCalRecalcGamma = 4 } |
Definition of different trigger patch types. More... | |
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 } |
enum | TriggerCategory { kTriggerLevel0 = 0, kTriggerLevel1Jet = 1, kTriggerLevel1Gamma = 2, kTriggerRecalcJet = 3, kTriggerRecalcGamma = 4 } |
Public Member Functions | |
AliEmcalTriggerMaker () | |
AliEmcalTriggerMaker (const char *name, Bool_t doQA=kFALSE) | |
virtual | ~AliEmcalTriggerMaker () |
void | SetRunQA (Bool_t doQA=kTRUE) |
void | SetCaloTriggersOutName (const char *name) |
void | SetCaloTriggerSetupOutName (const char *name) |
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) |
void | SetDebugLevel (Int_t debugLevel) |
void | SetV0InName (const char *name) |
void | AddHotFastor (int col, int row) |
void | SetRunTriggerType (TriggerMakerTriggerType_t type, Bool_t doTrigger=kTRUE) |
void | SetUseTriggerBitConfig (TriggerMakerBitConfig_t bitConfig) |
void | SetTriggerBitConfig (const AliEmcalTriggerBitConfig *conf) |
void | SetRejectOffAcceptancePatches (Bool_t doReject=kTRUE) |
Bool_t | IsEJE (Int_t tBits) const |
Bool_t | IsEGA (Int_t tBits) const |
Bool_t | IsLevel0 (Int_t tBits) const |
![]() | |
AliAnalysisTaskEmcal () | |
AliAnalysisTaskEmcal (const char *name, Bool_t histo=kFALSE) | |
virtual | ~AliAnalysisTaskEmcal () |
AliParticleContainer * | AddParticleContainer (const char *n) |
AliClusterContainer * | AddClusterContainer (const char *n) |
AliParticleContainer * | GetParticleContainer (Int_t i=0) const |
AliClusterContainer * | GetClusterContainer (Int_t i=0) const |
AliParticleContainer * | GetParticleContainer (const char *name) const |
AliClusterContainer * | GetClusterContainer (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) |
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) |
Protected Member Functions | |
void | UserCreateOutputObjects () |
void | ExecOnce () |
Bool_t | Run () |
void | RunSimpleOfflineTrigger () |
Bool_t | NextTrigger (Bool_t &isOfflineSimple) |
AliEmcalTriggerPatchInfo * | ProcessPatch (TriggerMakerTriggerType_t type, Bool_t isOfflineSimple) |
Bool_t | CheckForL0 (const AliVCaloTrigger &trg) const |
![]() | |
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) |
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) |
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 | |
AliEmcalTriggerChannelContainer | fBadChannels |
Container of bad channels. More... | |
TString | fCaloTriggersOutName |
name of output track array More... | |
TString | fCaloTriggerSetupOutName |
name of output track array More... | |
TString | fV0InName |
name of output track array More... | |
TriggerMakerBitConfig_t | fUseTriggerBitConfig |
type of trigger config More... | |
Int_t | fThresholdConstants [4][3] |
simple offline trigger thresholds constants More... | |
const AliEmcalTriggerBitConfig * | fTriggerBitConfig |
Trigger bit configuration, aliroot-dependent. More... | |
TClonesArray * | fCaloTriggersOut |
! trigger array out More... | |
AliEmcalTriggerSetupInfo * | fCaloTriggerSetupOut |
! trigger setup More... | |
AliAODCaloTrigger * | fSimpleOfflineTriggers |
! simple offline trigger More... | |
AliVVZERO * | fV0 |
! V0 object More... | |
AliEmcalTriggerDataGrid< float > * | fPatchAmplitudes |
! TRU Amplitudes (for L0) More... | |
AliEmcalTriggerDataGrid< double > * | fPatchADCSimple |
! patch map for simple offline trigger More... | |
AliEmcalTriggerDataGrid< int > * | fPatchADC |
! ADC values map More... | |
AliEmcalTriggerDataGrid< char > * | fLevel0TimeMap |
! Map needed to store the level0 times More... | |
Int_t | fITrigger |
! trigger counter More... | |
Bool_t | fRunTriggerType [5] |
Run patch maker for a given trigger type. More... | |
Bool_t | fDoQA |
Fill QA histograms. More... | |
Bool_t | fRejectOffAcceptancePatches |
Switch for rejection of patches outside the acceptance. More... | |
THistManager * | fQAHistos |
! Histograms for QA More... | |
Int_t | fDebugLevel |
Debug lebel;. More... | |
![]() | |
BeamType | fForceBeamType |
Bool_t | fGeneralHistograms |
Bool_t | fInitialized |
Bool_t | fCreateHisto |
TString | fCaloCellsName |
TString | fCaloTriggersName |
TString | fCaloTriggerPatchInfoName |
Double_t | fMinCent |
Double_t | fMaxCent |
Double_t | fMinVz |
Double_t | fMaxVz |
Double_t | fTrackPtCut |
Int_t | fMinNTrack |
Bool_t | fUseAliAnaUtils |
Bool_t | fRejectPileup |
Bool_t | fTklVsClusSPDCut |
UInt_t | fOffTrigger |
TString | fTrigClass |
TriggerType | fTriggerTypeSel |
Int_t | fNbins |
Double_t | fMinBinPt |
Double_t | fMaxBinPt |
Double_t | fMinPtTrackInEmcal |
Double_t | fEventPlaneVsEmcal |
Double_t | fMinEventPlane |
Double_t | fMaxEventPlane |
TString | fCentEst |
Bool_t | fIsEmbedded |
Bool_t | fIsPythia |
Int_t | fSelectPtHardBin |
Int_t | fMinMCLabel |
Int_t | fMCLabelShift |
Int_t | fNcentBins |
Bool_t | fNeedEmcalGeom |
TObjArray | fParticleCollArray |
TObjArray | fClusterCollArray |
ULong_t | fTriggers |
AliAnalysisUtils * | fAliAnalysisUtils |
Bool_t | fIsEsd |
vertex selection (optional) More... | |
AliEMCALGeometry * | fGeom |
whether it's an ESD analysis More... | |
TClonesArray * | fTracks |
emcal geometry More... | |
TClonesArray * | fCaloClusters |
tracks More... | |
AliVCaloCells * | fCaloCells |
clusters More... | |
AliVCaloTrigger * | fCaloTriggers |
cells More... | |
TClonesArray * | fTriggerPatchInfo |
calo triggers More... | |
Double_t | fCent |
trigger patch info array More... | |
Int_t | fCentBin |
event centrality More... | |
Double_t | fEPV0 |
event centrality bin More... | |
Double_t | fEPV0A |
event plane V0 More... | |
Double_t | fEPV0C |
event plane V0A More... | |
Double_t | fVertex [3] |
event plane V0C More... | |
Int_t | fNVertCont |
event vertex More... | |
BeamType | fBeamType |
event vertex number of contributors More... | |
AliGenPythiaEventHeader * | fPythiaHeader |
event beam type More... | |
Double_t | fPtHard |
event Pythia header More... | |
Int_t | fPtHardBin |
event pt hard More... | |
Int_t | fNTrials |
event pt hard bin More... | |
Float_t | fXsection |
event trials More... | |
TList * | fOutput |
x-section from pythia header More... | |
TH1 * | fHistEventCount |
output list More... | |
TH1 * | fHistTrialsAfterSel |
incoming and selected events More... | |
TH1 * | fHistEventsAfterSel |
total number of trials per pt hard bin after selection More... | |
TProfile * | fHistXsectionAfterSel |
total number of events per pt hard bin after selection More... | |
TH1 * | fHistTrials |
x section from pythia header More... | |
TH1 * | fHistEvents |
trials from pyxsec.root More... | |
TProfile * | fHistXsection |
total number of events per pt hard bin More... | |
TH1 * | fHistPtHard |
x section from pyxsec.root More... | |
TH1 * | fHistCentrality |
pt hard distribution More... | |
TH1 * | fHistZVertex |
event centrality distribution More... | |
TH1 * | fHistEventPlane |
z vertex position More... | |
TH1 * | fHistEventRejection |
event plane distribution More... | |
Static Protected Attributes | |
static const TString | fgkTriggerTypeNames [5] = {"EJE", "EGA", "EL0", "REJE", "REGA"} |
Histogram name tags. More... | |
static const int | kColsEta = 48 |
Number of columns in eta direction. More... | |
Private Member Functions | |
AliEmcalTriggerMaker (const AliEmcalTriggerMaker &) | |
AliEmcalTriggerMaker & | operator= (const AliEmcalTriggerMaker &) |
Additional Inherited Members | |
![]() | |
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) |
EMCAL trigger patch maker.
This class creates EMCAL trigger patches found in reconstructed events. Two methods can be applied.
For reconstructed trigger patches, an object AliEmcalTriggerPatchInfo which stores all relevant information of the trigger patch is created and stored in a TClonesArray. This TClonesArray is appended to the ESD or AOD event, and can be retrieved in other analysis tasks in the same train by the container name, defined in the function SetCaloTriggerOutName.
Definition at line 60 of file AliEmcalTriggerMaker.h.
Enumerator | |
---|---|
kOldConfig |
Old configuration, no distinction between high and low threshold. |
kNewConfig |
New configuration, distiction between high and low threshold. |
Definition at line 87 of file AliEmcalTriggerMaker.h.
Definition of different trigger patch types.
This enumeration defines the different trigger patch types processed by the trigger maker. Each trigger patch type has a certain patch size and therefore a certain length and geometric center
Definition at line 71 of file AliEmcalTriggerMaker.h.
AliEmcalTriggerMaker::AliEmcalTriggerMaker | ( | ) |
Dummy constructor
Definition at line 50 of file AliEmcalTriggerMaker.cxx.
AliEmcalTriggerMaker::AliEmcalTriggerMaker | ( | const char * | name, |
Bool_t | doQA = kFALSE |
||
) |
Named constructor.
name | Name of the trigger maker task |
doQA | Switch on/off QA |
Definition at line 84 of file AliEmcalTriggerMaker.cxx.
|
virtual |
Destructor
Definition at line 117 of file AliEmcalTriggerMaker.cxx.
|
private |
|
inline |
Definition at line 193 of file AliEmcalTriggerMaker.h.
|
protected |
Accept trigger patch as Level0 patch. Level0 patches are identified as 2x2 FASTOR patches in the same TRU
trg | Triggers object with the pointer set to the patch to inspect |
Definition at line 944 of file AliEmcalTriggerMaker.cxx.
Referenced by ProcessPatch().
|
protectedvirtual |
Init the analysis.
Reimplemented from AliAnalysisTaskEmcal.
Definition at line 125 of file AliEmcalTriggerMaker.cxx.
|
inline |
Check whether trigger is gamma patch trigger according to trigger bits
tBits | Trigger bits of the fastor |
Definition at line 301 of file AliEmcalTriggerMaker.h.
Referenced by ProcessPatch().
|
inline |
Check whehter trigger is jet patch trigger according to trigger bits
tBits | Trigger bits of the fastor |
Definition at line 289 of file AliEmcalTriggerMaker.h.
Referenced by ProcessPatch().
|
inline |
Check whether trigger is level0 trigger according to trigger bits
tBits | Trigger bits of the fastor |
Definition at line 313 of file AliEmcalTriggerMaker.h.
|
protected |
Get next trigger. Forwards the pointer of the trigger object inside the trigger maker
isOfflineSimple | Switch between online and ofline patches |
Definition at line 926 of file AliEmcalTriggerMaker.cxx.
Referenced by Run().
|
private |
|
protected |
Process and fill trigger patch. check if jet trigger low or high
type | Type of the patch (Jet, gamma, Level0) |
isOfflineSimple | Switch between online and offline patches |
Definition at line 482 of file AliEmcalTriggerMaker.cxx.
Referenced by Run().
|
protectedvirtual |
Create and fill the patch array.
Reimplemented from AliAnalysisTaskEmcal.
Definition at line 224 of file AliEmcalTriggerMaker.cxx.
|
protected |
Runs a simple algorithm to calculate patch energies based on the offline/FEE ADC values (useOffline = kTRUE) or the online/trigger values (useOffline = kFALSE.
It creates separate patches for jet and gamma triggers on the same positions (different from STU reconstruction behavior)
Definition at line 784 of file AliEmcalTriggerMaker.cxx.
Referenced by Run().
|
inline |
Definition at line 186 of file AliEmcalTriggerMaker.h.
|
inline |
Definition at line 185 of file AliEmcalTriggerMaker.h.
|
inline |
Definition at line 191 of file AliEmcalTriggerMaker.h.
|
inline |
Switch on rejection of patches which leave the EMCAL acceptance in \( \eta \) and \( \phi \)
doReject | If true we reject patches outside the EMCAL acceptance |
Definition at line 203 of file AliEmcalTriggerMaker.h.
|
inline |
Definition at line 184 of file AliEmcalTriggerMaker.h.
|
inline |
Definition at line 195 of file AliEmcalTriggerMaker.h.
|
inline |
Definition at line 197 of file AliEmcalTriggerMaker.h.
|
inline |
Definition at line 190 of file AliEmcalTriggerMaker.h.
|
inline |
Definition at line 189 of file AliEmcalTriggerMaker.h.
|
inline |
Definition at line 188 of file AliEmcalTriggerMaker.h.
|
inline |
Definition at line 187 of file AliEmcalTriggerMaker.h.
|
inline |
Definition at line 196 of file AliEmcalTriggerMaker.h.
|
inline |
Definition at line 192 of file AliEmcalTriggerMaker.h.
|
protected |
Do basic QA monitoring (if requested)
Definition at line 192 of file AliEmcalTriggerMaker.cxx.
|
protected |
Container of bad channels.
Definition at line 221 of file AliEmcalTriggerMaker.h.
Referenced by AddHotFastor(), and Run().
|
protected |
! trigger setup
Definition at line 229 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), Run(), and RunSimpleOfflineTrigger().
|
protected |
name of output track array
Definition at line 223 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), and SetCaloTriggerSetupOutName().
|
protected |
! trigger array out
Definition at line 228 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), and Run().
|
protected |
name of output track array
Definition at line 222 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), and SetCaloTriggersOutName().
|
protected |
Debug lebel;.
Definition at line 242 of file AliEmcalTriggerMaker.h.
Referenced by ProcessPatch(), and SetDebugLevel().
|
protected |
Fill QA histograms.
Definition at line 238 of file AliEmcalTriggerMaker.h.
Referenced by ProcessPatch(), SetRunQA(), and UserCreateOutputObjects().
|
staticprotected |
Histogram name tags.
Definition at line 210 of file AliEmcalTriggerMaker.h.
Referenced by ProcessPatch(), and UserCreateOutputObjects().
|
protected |
! trigger counter
Definition at line 236 of file AliEmcalTriggerMaker.h.
Referenced by ProcessPatch(), and Run().
|
protected |
! Map needed to store the level0 times
Definition at line 235 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), Run(), and UserCreateOutputObjects().
|
protected |
! ADC values map
Definition at line 234 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), Run(), and UserCreateOutputObjects().
|
protected |
! patch map for simple offline trigger
Definition at line 233 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), Run(), and UserCreateOutputObjects().
|
protected |
! TRU Amplitudes (for L0)
Definition at line 232 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), Run(), and UserCreateOutputObjects().
|
protected |
! Histograms for QA
Definition at line 240 of file AliEmcalTriggerMaker.h.
Referenced by ProcessPatch(), and UserCreateOutputObjects().
|
protected |
Switch for rejection of patches outside the acceptance.
Definition at line 239 of file AliEmcalTriggerMaker.h.
Referenced by ProcessPatch(), and SetRejectOffAcceptancePatches().
|
protected |
Run patch maker for a given trigger type.
Definition at line 237 of file AliEmcalTriggerMaker.h.
Referenced by AliEmcalTriggerMaker(), Run(), and SetRunTriggerType().
|
protected |
! simple offline trigger
Definition at line 230 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), NextTrigger(), ProcessPatch(), Run(), and RunSimpleOfflineTrigger().
|
protected |
simple offline trigger thresholds constants
Definition at line 226 of file AliEmcalTriggerMaker.h.
Referenced by AliEmcalTriggerMaker(), Run(), SetTriggerThresholdGammaHigh(), SetTriggerThresholdGammaLow(), SetTriggerThresholdJetHigh(), and SetTriggerThresholdJetLow().
|
protected |
Trigger bit configuration, aliroot-dependent.
Definition at line 227 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), IsEGA(), IsEJE(), IsLevel0(), ProcessPatch(), RunSimpleOfflineTrigger(), SetTriggerBitConfig(), and ~AliEmcalTriggerMaker().
|
protected |
type of trigger config
Definition at line 225 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), and SetUseTriggerBitConfig().
|
protected |
! V0 object
Definition at line 231 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), and Run().
|
protected |
name of output track array
Definition at line 224 of file AliEmcalTriggerMaker.h.
Referenced by ExecOnce(), Run(), and SetV0InName().
|
staticprotected |
Number of columns in eta direction.
Definition at line 211 of file AliEmcalTriggerMaker.h.
Referenced by CheckForL0(), and ProcessPatch().