AliPhysics  3337bb0 (3337bb0)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PWG::EMCAL::AliEmcalCellMonitorTask Class Reference

Simple monitoring task for cell related quantities. More...

#include <AliEmcalCellMonitorTask.h>

Inheritance diagram for PWG::EMCAL::AliEmcalCellMonitorTask:

Classes

class  AliEmcalCellMonitorAmplitudeBinning
 Defining binning in amplitude direction. More...
 

Public Member Functions

 AliEmcalCellMonitorTask ()
 
 AliEmcalCellMonitorTask (const char *name)
 
virtual ~AliEmcalCellMonitorTask ()
 
void SetMinCellAmplitudeForCellTime (Double_t minAmp)
 
void SetRequestTrigger (ULong_t triggerbits, TString triggerstring="")
 
void SetRun2 ()
 
void SetBadCell (Int_t cellId)
 
void SetNameClusterContainer (const TString &nameclusters)
 
void InitBadChannelsFromContainer (const TString &containername)
 

Protected Member Functions

virtual void UserCreateOutputObjects ()
 
virtual void UserExec (Option_t *)
 
virtual void ExecOnce ()
 
virtual void RunChanged ()
 
void CreateHistograms ()
 
bool IsCellMasked (Int_t cellId) const
 
void LoadCellMasking ()
 

Private Member Functions

 AliEmcalCellMonitorTask (const AliEmcalCellMonitorTask &ref)
 
AliEmcalCellMonitorTaskoperator= (const AliEmcalCellMonitorTask &ref)
 

Private Attributes

Bool_t fLocalInitialized
 Check whether task is initialized (for ExecOnce) More...
 
THistManagerfHistManager
 ! Histogram handler More...
 
AliEMCALGeometry * fGeometry
 ! EMCAL geometry More...
 
Double_t fMinCellAmplitude
 Min. cell amplitude requested for cell time and frequency. More...
 
ULong_t fRequestTrigger
 Trigger selection. More...
 
TString fTriggerString
 Trigger string in addition to trigger selection. More...
 
TString fBadChannelContainer
 Bad channel container name. More...
 
TString fNameClusters
 Name of the cluster container (as TClonesArray) More...
 
Int_t fNumberOfCells
 Number of cells. More...
 
Int_t fOldRun
 ! Old Run number (for run change check) More...
 
std::vector< Int_tfMaskedCells
 Vector of masked cells. More...
 

Detailed Description

Simple monitoring task for cell related quantities.

Author
Markus Fasel marku.nosp@m.s.fa.nosp@m.sel@c.nosp@m.ern..nosp@m.ch, Lawrence Berkeley National Laboratory
Since
May 19, 2016

This task monitors simple cell quantities like

  • Amplitude distribution
  • Time distribution
  • Count rate in col-row space
  • Integrated amplitude in col-row space In addition, in case the task has access to reconstructed clusters, it plots
  • Frequency of a cell contributing to clusters
  • Summed cell amplitude fraction in a cluster In order to switch on cluster handling a cluster input container needs to be provided:
...
task->SetNameClusterContainer("caloClusters");

Note: When working with the default branches the names are:

  • caloClusters for ESDs
  • CaloClusters for AODs

The task should run separately for different trigger classes. This is handled in the event selection provided from outside:

...
// Selecting EMCAL gamma triggered events, high threshold
task->SetRequestTrigger(AliVEvent::kEGA, "EG1");

It can be added to the train using the add macro

$ALICE_PHYSICS/PWG/EMCAL/AddEmcalCellMonitorTask.C

Definition at line 95 of file AliEmcalCellMonitorTask.h.

Constructor & Destructor Documentation

AliEmcalCellMonitorTask::AliEmcalCellMonitorTask ( )

Dummy constructor, for ROOT I/O only

Definition at line 54 of file AliEmcalCellMonitorTask.cxx.

AliEmcalCellMonitorTask::AliEmcalCellMonitorTask ( const char *  name)

Default constructor, setting also the name and defining the output type

Parameters
nameName of the task

Definition at line 70 of file AliEmcalCellMonitorTask.cxx.

AliEmcalCellMonitorTask::~AliEmcalCellMonitorTask ( )
virtual

Destructor

Definition at line 86 of file AliEmcalCellMonitorTask.cxx.

PWG::EMCAL::AliEmcalCellMonitorTask::AliEmcalCellMonitorTask ( const AliEmcalCellMonitorTask ref)
private

Member Function Documentation

void AliEmcalCellMonitorTask::CreateHistograms ( )
protected

Create the output histograms

For all supermodules the following histograms will be created:

  • cellAmplitude with the cell amplitude distribution
  • cellTime with the cell time distribution

For each supermodule the following histograms will be created:

  • cellAmpSM with the integrated amplitude for cells within a supermodule in col and row
  • cellCountSM with the count rate for cells within a supermodule in col and row

Function is called in ExecOnce

Definition at line 177 of file AliEmcalCellMonitorTask.cxx.

Referenced by ExecOnce().

void AliEmcalCellMonitorTask::ExecOnce ( )
protectedvirtual

Perform initializations of the task which require a run number (only available as soon as the first event is available). This contains:

  • Loading EMCAL geometry
  • Creating histograms As the dimension for most of the histograms is based on the amount of cells, which is obtained from the EMCAL geometry, the histograms are not initialized in UserCreateOutputObjects but in ExecOnce.

Definition at line 97 of file AliEmcalCellMonitorTask.cxx.

Referenced by UserExec().

void PWG::EMCAL::AliEmcalCellMonitorTask::InitBadChannelsFromContainer ( const TString containername)
inline

Read bad channels from OADB container and set the cell with the ID as bad.

Parameters
[in]containernameName of the OADB container.

Definition at line 158 of file AliEmcalCellMonitorTask.h.

bool AliEmcalCellMonitorTask::IsCellMasked ( Int_t  cellId) const
protected

Check whether cell with a given ID is masked by the user

Parameters
cellIdCell ID to be checked
Returns
True if the cell is masked, false otherwise

Definition at line 218 of file AliEmcalCellMonitorTask.cxx.

Referenced by UserExec().

void AliEmcalCellMonitorTask::LoadCellMasking ( )
protected

Load the cell masking from the OADB container into the task

Definition at line 198 of file AliEmcalCellMonitorTask.cxx.

Referenced by RunChanged().

AliEmcalCellMonitorTask& PWG::EMCAL::AliEmcalCellMonitorTask::operator= ( const AliEmcalCellMonitorTask ref)
private
void AliEmcalCellMonitorTask::RunChanged ( )
protectedvirtual

Perform tasks necessary when the run number changes. In this case a new masked cell map is loaded and masked cells are marked in a historgam.

Definition at line 104 of file AliEmcalCellMonitorTask.cxx.

Referenced by UserExec().

void AliEmcalCellMonitorTask::SetBadCell ( Int_t  cellId)

Mark cell as bad (i.e) exclude from running

Parameters
cellIdCell to be masked

Definition at line 213 of file AliEmcalCellMonitorTask.cxx.

Referenced by LoadCellMasking().

void PWG::EMCAL::AliEmcalCellMonitorTask::SetMinCellAmplitudeForCellTime ( Double_t  minAmp)
inline

Set the minimum amplitude requested for a cell in order to use the cell time in the cell time plot

Parameters
minAmpMin. cell amplitude

Definition at line 119 of file AliEmcalCellMonitorTask.h.

void PWG::EMCAL::AliEmcalCellMonitorTask::SetNameClusterContainer ( const TString nameclusters)
inline

Set the name of the cluster container. If provided the following additional histograms will be provided:

  • Occurrency of a cell inside clusters: cellClusterOccurrency
  • Summed energy distribution of a cell in clusters: cellSumAmplitudeCluster In case of the summed energy the value is calculated summing up the energy of all occurrences within one cluster
    Parameters
    [in]nameclustersName of the cluster container

Definition at line 151 of file AliEmcalCellMonitorTask.h.

void PWG::EMCAL::AliEmcalCellMonitorTask::SetRequestTrigger ( ULong_t  triggerbits,
TString  triggerstring = "" 
)
inline

Define trigger selection. It can consist of trigger bits and a trigger string

Parameters
triggerbitsTrigger bit selection
triggerstringTrigger string (i.e. EG1, EG2, DG1, ...)

Definition at line 126 of file AliEmcalCellMonitorTask.h.

void PWG::EMCAL::AliEmcalCellMonitorTask::SetRun2 ( )
inline

Set number of Cells in order to match run2 geometry

Definition at line 134 of file AliEmcalCellMonitorTask.h.

void AliEmcalCellMonitorTask::UserCreateOutputObjects ( )
protectedvirtual

Prepare histogram manager for later initialization. As the histograms depend on the number of cells which is available only for after the first event is initialized, the histograms are not created here but in ExecOnce.

Definition at line 90 of file AliEmcalCellMonitorTask.cxx.

void AliEmcalCellMonitorTask::UserExec ( Option_t )
protectedvirtual

Event loop.

Running over all cells and filling the cell-related quantities specified in the class documentation.

Parameters
[in]

Definition at line 109 of file AliEmcalCellMonitorTask.cxx.

Member Data Documentation

TString PWG::EMCAL::AliEmcalCellMonitorTask::fBadChannelContainer
private

Bad channel container name.

Definition at line 262 of file AliEmcalCellMonitorTask.h.

Referenced by InitBadChannelsFromContainer(), LoadCellMasking(), and RunChanged().

AliEMCALGeometry* PWG::EMCAL::AliEmcalCellMonitorTask::fGeometry
private

! EMCAL geometry

Definition at line 257 of file AliEmcalCellMonitorTask.h.

Referenced by ExecOnce(), UserExec(), and ~AliEmcalCellMonitorTask().

THistManager* PWG::EMCAL::AliEmcalCellMonitorTask::fHistManager
private

! Histogram handler

Definition at line 256 of file AliEmcalCellMonitorTask.h.

Referenced by CreateHistograms(), RunChanged(), UserCreateOutputObjects(), and UserExec().

Bool_t PWG::EMCAL::AliEmcalCellMonitorTask::fLocalInitialized
private

Check whether task is initialized (for ExecOnce)

Definition at line 255 of file AliEmcalCellMonitorTask.h.

Referenced by UserExec().

std::vector<Int_t> PWG::EMCAL::AliEmcalCellMonitorTask::fMaskedCells
private

Vector of masked cells.

Definition at line 267 of file AliEmcalCellMonitorTask.h.

Referenced by IsCellMasked(), LoadCellMasking(), RunChanged(), and SetBadCell().

Double_t PWG::EMCAL::AliEmcalCellMonitorTask::fMinCellAmplitude
private

Min. cell amplitude requested for cell time and frequency.

Definition at line 259 of file AliEmcalCellMonitorTask.h.

Referenced by SetMinCellAmplitudeForCellTime(), and UserExec().

TString PWG::EMCAL::AliEmcalCellMonitorTask::fNameClusters
private

Name of the cluster container (as TClonesArray)

Definition at line 263 of file AliEmcalCellMonitorTask.h.

Referenced by SetNameClusterContainer(), and UserExec().

Int_t PWG::EMCAL::AliEmcalCellMonitorTask::fNumberOfCells
private

Number of cells.

Definition at line 264 of file AliEmcalCellMonitorTask.h.

Referenced by CreateHistograms(), ExecOnce(), and SetRun2().

Int_t PWG::EMCAL::AliEmcalCellMonitorTask::fOldRun
private

! Old Run number (for run change check)

Definition at line 265 of file AliEmcalCellMonitorTask.h.

Referenced by UserExec().

ULong_t PWG::EMCAL::AliEmcalCellMonitorTask::fRequestTrigger
private

Trigger selection.

Definition at line 260 of file AliEmcalCellMonitorTask.h.

Referenced by SetRequestTrigger(), and UserExec().

TString PWG::EMCAL::AliEmcalCellMonitorTask::fTriggerString
private

Trigger string in addition to trigger selection.

Definition at line 261 of file AliEmcalCellMonitorTask.h.

Referenced by SetRequestTrigger(), and UserExec().


The documentation for this class was generated from the following files: