This commit has two major parts:
authorcholm <cholm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 3 Jul 2013 12:59:40 +0000 (12:59 +0000)
committercholm <cholm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 3 Jul 2013 12:59:40 +0000 (12:59 +0000)
commitbfab35d94e823140c5bf53716516993b3ac7e505
tree6816d09efdbf789c669209d916286888eeb01908
parent22d2221a43690b0d40805e81f758706f86c5b1f4
This commit has two major parts:

     1: Updates to previous large commit to fix various problems and
      to solidify those changes
     2: Additions to be able to reproduce the published dN/deta from
       satellite (displaced vertices) events.

In more details:
================

Changes in PWGLF/FORWARD/analysis2
----------------------------------
liteAnalysis.sh gridAnalysis.sh:
Addition of shell script to drive the full analysis on
ProofLite, and fixes to the same but for Grid.

AddTaskForwardMultDists.C AliForwardMultDists.cxx
AliForwardMultDists.h trains/MakeMultDistsTrain.C
scripts/SummaryMultDistsDrawer.C scripts/UnfoldMultDists.C:
New task to make the multiplicity distributions and
accompanying scripts.  This is a base-line implementation, and
does not take care of variable trigger bias, vertex bias,
etc. The script UnfoldMultDists.C relies on RooUnfold being
present.  RooUnfold is not part of ROOT (yet) nor is it in
AliROOT.  We will have to come up with some plan for that.

scripts/getGridData.sh:
Some fixes

scripts/SummaryAODDrawer.C scripts/SummaryDrawer.C
scripts/SummaryMCCorrDrawer.C scripts/SummarydNdetaDrawer.C:
DrawMCCorrSummary.C DrawdNdetaSummary.C:
Various updates to summary drawers to take into account
changes in the stored diagnostics histograms and to simplify
the code.

corrs/CorrDrawer.C corrs/DrawCorrELoss.C corrs/ExtractAcceptance.C
corrs/ForwardOADBGui.C corrs/MigrateOADB.C corrs/SPDAcceptance.C:
Various updates to the correction handlers.  SPDAcceptance.C
is an attempt to get the SPD acceptance from the OCDB objects.
It doesn't work yet.

trains/MakeAODTrain.C trains/MakeFMDELossTrain.C
trains/MakeMCCorrTrain.C trains/MakedNdetaTrain.C:
Various fixes, and more helper scripts generated. For example
in MakeAODTrain, when run over pp data, we now produce three
scripts - one for each of the trigger types INEL, INEL>0, and
NSD.  Also we add the possibility to pass the trigger
efficiency to the Draw.C script to correct for that
after-the-fact.

DrawdNdeta.C:
add the possibility to pass the trigger efficiency to the
      Draw.C script to correct for that after-the-fact.

OtherData.C:
Various updates.

AliFMDHistCollector.h AliFMDHistCollector.cxx tests/RingBits.C:
New options to for merging in overlaps - prefer inners/outers.
New bit patterns for ignoring some rings (Alexander).

AliAODForwardMult.cxx AliAODForwardMult.h AliAODCentralMult.h:
Add bits to query what kind of corrections where used when
generating these AOD objects.  Add possibility to make a
`status' histogram which can be passed to
AliAODForwardMult::CheckEvent.  This histogram details why
events where not selected.

AddTaskCentralMCCorr.C AliCentralMCCorrectionsTask.cxx
AliCentralMCCorrectionsTask.h:
New option to calculate the acceptance and the secondary
corrections from MC primary and MC truth rather than from MC
primary and ESD.  This seems to do much better than the old
effective correction.

AddTaskCentralMult.C AliCentralMultiplicityTask.cxx
AliCentralMultiplicityTask.h:
Code to do a simple dN/deta at Terminate - just like in the
forward equivalent.

AliCorrectionManagerBase.cxx:
Better default values

AliFMDDensityCalculator.cxx:
Count number of merged files for better output of cuts etc.

AliFMDMCDensityCalculator.cxx:
Fewer bins in the difference histograms

AliFMDSharingFilter.cxx AliFMDSharingFilter.h:
Add possibility to add dead strips from a script. Count number
of merged files for better output of cuts etc.

AliForwardMCMultiplicityTask.cxx:
Fix a mistake - took the real AOD object, not the MC AOD
object.

AliForwardMultiplicityBase.cxx AliForwardMultiplicityBase.h:
Set bits on output AOD object on what corrections where used.

AliMCTruthdNdetaTask.h AliMCTruthdNdetaTask.cxx:
Update for new signature of CentralityBin::ProcessEvent which
returns a boolean - true if event was accepted.

AliForwarddNdetaTask.h AliForwarddNdetaTask.cxx:
New method CheckEventData to massage the input data.  This is
needed for satellite collisions where we need to take out
certain eta and phi bins due to poor acceptance.  This is a
re-write of what Hans originally did.  Alexander did the
digging and Christian re-wrote.

AliFMDEventInspector.h AliFMDEventInspector.cxx:
Moved check of displaced vertex up front - needed that be sure
things are called in the proper order.  Thanks to Alexander
for spotting this.  Note - since we've moved the MC processing
of AliDisplacedVertices to a separate function which isn't
called at the normal Process time, we always get back the
reconstructed vertex - even for MC.  It should be OK, because
we don't really use it here.

AliFMDMCEventInspector.cxx:
When we initialize the base class AliFMDEventInspector for
data (SetupForData), we temporary disable the displaced
vertices so we can initialize the routine ourselves with the
proper MC flag.  Changed calculation of displaced vertex from
simple smearing to using the service of AliDisplacedVertices.

AliBasedNdetaTask.h AliBasedNdetaTask.cxx AddTaskForwarddNdeta.C:
Many changes - mainly for satellite collision analysis.  Hans
did all the initial work, Alexander did all the hard work of
finding these changes and porting them to trunk, and Christian
changed it a bit to fit the overall design.

- Add flag for satellite-only analysis.
- Added function to massage input data (see AliForwarddNdeta
  comments above)
- Change signature of CentralityBin::ProcessEvent to return a
  boolean. Should return true if the event is taken.
- Added vertex histogram with all types of bins.
- Added event selection status histogram (updated by
  AliAODForwardMult::CheckEvent)
- Updates when doing the final MC correction: For satellite
  events we should always use the rebinned histograms from
  MC.
        - Check analysis to do dN/deta per phi bin.  Currently
  disabled.

AddTaskForwardMult.C:
Added missing MC flag when initializing the correction manager
up-front.

CentralAODConfig.C ForwardAODConfig.C:
Disable acceptance correction by default.  The acceptance
correction is deprecated.  Instead, one should use the phi
acceptance stored in the overflow bin.  This means one should
set corrEmpty=false for the dN/deta tasks.  Note, however, for
satellite collisions, we still rely on the acceptance
correction and corrEmpty=true.  For forward, optimized cuts
introduced (optimized on MC LHC13d4 - pp 900GeV). Also updated
some comments.

AliDisplacedVertexSelection.h AliDisplacedVertexSelection.cxx:
Many changes - mainly for satellite collision analysis.  Hans
did all the initial work, Alexander did all the hard work of
finding these changes and porting them to trunk, and Christian
changed it a bit to fit the overall design.

- New diagnostics histograms (Alexander)
- SetupForData now takes an MC flag (Christian)
- Added separate function to process an MC event (Christian)
- New function to check for out-liers.  The number of SPD
  clusters is checked against the sum V0 signal for rings 4
  and up.  This check de-selects a number of events, and
  cleans up the centrality distribution.  We do not know yet
  the exact motivation for this check - we presume it comes
  from Maxime and/or Cvetan - we should check with them what
  it is.  Perhaps it's similar to what Alberica does for
  normal vertices.
- New function to return ZEM correction factors.
- Modification of the ZDC and ZEM energy deposition for MC.
- Updates to the per-run-range centrality factors.
- Removed obsolete CheckDisplacedVertex and
  CalculateDisplacedVertexCent member functions

Changes in PWGLF/FORWARD/trains:
--------------------------------
GridWatch.C:
Refresh token every 6th hour if possible

MyTrain.C:
Fixes to script par generation call

ChainBuilder.C:
Added possibility to scan a directory for inputs and store the
resulting file collection to a file.  Also enabled the
possibility to use files stored in ZIP files.  Solidified the
MC file check.

TrainSetup.C:
Store the used date/time string.

Option.C:
Introduce the AsString function to parallel the other
As... functions.

ParUtilities.C:
Added ability to make a PAR file of auxiliary data files and
link them to the working directory on the slaves

ProofHelper.C:
Filter out basic pars in when doing LoadLibrary.  We also
filter out PWGLFforward2 - which we shouldn't, but I need to
come up with a better solution.

LocalHelper.C:
Allow specifing a ZIP file pattern, but use `@' as the anchor
specification character - otherwise we may interpret the
over-all URL wrongly.

LiteHelper.C:
Allow specifing a ZIP file pattern, but use `@' as the anchor
specification character - otherwise we may interpret the
over-all URL wrongly.  Give back proper output location.

Changes in PWGLF:
-----------------
PWGLF/CMakelibPWGLFforward2.pkg PWGLF/PWGLFforward2LinkDef.h:
Added new class AliForwardMultDists.
74 files changed:
PWGLF/CMakelibPWGLFforward2.pkg
PWGLF/FORWARD/analysis2/AddTaskCentralMCCorr.C
PWGLF/FORWARD/analysis2/AddTaskCentralMult.C
PWGLF/FORWARD/analysis2/AddTaskForwardMult.C
PWGLF/FORWARD/analysis2/AddTaskForwardMultDists.C [new file with mode: 0644]
PWGLF/FORWARD/analysis2/AddTaskForwarddNdeta.C
PWGLF/FORWARD/analysis2/AliAODCentralMult.h
PWGLF/FORWARD/analysis2/AliAODForwardMult.cxx
PWGLF/FORWARD/analysis2/AliAODForwardMult.h
PWGLF/FORWARD/analysis2/AliBasedNdetaTask.cxx
PWGLF/FORWARD/analysis2/AliBasedNdetaTask.h
PWGLF/FORWARD/analysis2/AliCentralMCCorrectionsTask.cxx
PWGLF/FORWARD/analysis2/AliCentralMCCorrectionsTask.h
PWGLF/FORWARD/analysis2/AliCentralMultiplicityTask.cxx
PWGLF/FORWARD/analysis2/AliCentralMultiplicityTask.h
PWGLF/FORWARD/analysis2/AliCorrectionManagerBase.cxx
PWGLF/FORWARD/analysis2/AliDisplacedVertexSelection.cxx
PWGLF/FORWARD/analysis2/AliDisplacedVertexSelection.h
PWGLF/FORWARD/analysis2/AliFMDDensityCalculator.cxx
PWGLF/FORWARD/analysis2/AliFMDEventInspector.cxx
PWGLF/FORWARD/analysis2/AliFMDEventInspector.h
PWGLF/FORWARD/analysis2/AliFMDHistCollector.cxx
PWGLF/FORWARD/analysis2/AliFMDHistCollector.h
PWGLF/FORWARD/analysis2/AliFMDMCDensityCalculator.cxx
PWGLF/FORWARD/analysis2/AliFMDMCEventInspector.cxx
PWGLF/FORWARD/analysis2/AliFMDSharingFilter.cxx
PWGLF/FORWARD/analysis2/AliFMDSharingFilter.h
PWGLF/FORWARD/analysis2/AliForwardMCMultiplicityTask.cxx
PWGLF/FORWARD/analysis2/AliForwardMultDists.cxx [new file with mode: 0644]
PWGLF/FORWARD/analysis2/AliForwardMultDists.h [new file with mode: 0644]
PWGLF/FORWARD/analysis2/AliForwardMultiplicityBase.cxx
PWGLF/FORWARD/analysis2/AliForwardMultiplicityBase.h
PWGLF/FORWARD/analysis2/AliForwarddNdetaTask.cxx
PWGLF/FORWARD/analysis2/AliForwarddNdetaTask.h
PWGLF/FORWARD/analysis2/AliMCTruthdNdetaTask.cxx
PWGLF/FORWARD/analysis2/AliMCTruthdNdetaTask.h
PWGLF/FORWARD/analysis2/CentralAODConfig.C
PWGLF/FORWARD/analysis2/DrawMCCorrSummary.C [new file with mode: 0644]
PWGLF/FORWARD/analysis2/DrawMultDistsSummary.C [new file with mode: 0644]
PWGLF/FORWARD/analysis2/DrawdNdeta.C
PWGLF/FORWARD/analysis2/DrawdNdetaSummary.C
PWGLF/FORWARD/analysis2/ForwardAODConfig.C
PWGLF/FORWARD/analysis2/OtherData.C
PWGLF/FORWARD/analysis2/corrs/CorrDrawer.C
PWGLF/FORWARD/analysis2/corrs/DrawCorrELoss.C
PWGLF/FORWARD/analysis2/corrs/ExtractAcceptance.C
PWGLF/FORWARD/analysis2/corrs/ForwardOADBGui.C
PWGLF/FORWARD/analysis2/corrs/MigrateOADB.C
PWGLF/FORWARD/analysis2/corrs/SPDAcceptance.C [new file with mode: 0644]
PWGLF/FORWARD/analysis2/gridAnalysis.sh
PWGLF/FORWARD/analysis2/liteAnalysis.sh [new file with mode: 0755]
PWGLF/FORWARD/analysis2/scripts/SummaryAODDrawer.C
PWGLF/FORWARD/analysis2/scripts/SummaryDrawer.C
PWGLF/FORWARD/analysis2/scripts/SummaryMCCorrDrawer.C [new file with mode: 0644]
PWGLF/FORWARD/analysis2/scripts/SummaryMultDistsDrawer.C [new file with mode: 0644]
PWGLF/FORWARD/analysis2/scripts/SummarydNdetaDrawer.C
PWGLF/FORWARD/analysis2/scripts/UnfoldMultDists.C [new file with mode: 0644]
PWGLF/FORWARD/analysis2/scripts/getGridData.sh
PWGLF/FORWARD/analysis2/tests/RingBits.C
PWGLF/FORWARD/analysis2/trains/MakeAODTrain.C
PWGLF/FORWARD/analysis2/trains/MakeFMDELossTrain.C
PWGLF/FORWARD/analysis2/trains/MakeMCCorrTrain.C
PWGLF/FORWARD/analysis2/trains/MakeMultDistsTrain.C [new file with mode: 0644]
PWGLF/FORWARD/analysis2/trains/MakedNdetaTrain.C
PWGLF/FORWARD/trains/ChainBuilder.C
PWGLF/FORWARD/trains/GridWatch.C
PWGLF/FORWARD/trains/LiteHelper.C
PWGLF/FORWARD/trains/LocalHelper.C
PWGLF/FORWARD/trains/MyTrain.C
PWGLF/FORWARD/trains/Option.C
PWGLF/FORWARD/trains/ParUtilities.C
PWGLF/FORWARD/trains/ProofHelper.C
PWGLF/FORWARD/trains/TrainSetup.C
PWGLF/PWGLFforward2LinkDef.h