Tips and tricks
Running old DaVinci on the GRID
The run 1 \(R(D^{(*)})\) analysis used DaVinci/v36r1p2. To run that on lxplus7 nodes:
-
Export the following environmental variables to use old runtime:
export CMTCONFIG=x86_64-slc6-gcc48-opt
-
Run old DaVinci with
lb-run
:lb-run DaVinci/v36r1p2 gaudirun.py
About GaudiSequencer
GaudiSequencer
is an per-event algorithm, such as DecayTreeTuple
, in the
sense that Gaudi
knows that it should run on every event.
GaudiSequencer
is used to chain related algorithms, and it's default behavior
is to only run an algorithm if the preceding algorithm passed (this is done
in the c++
class for the algorithm by returning StatusCode::SUCCESS
).
This default can be overridden by setting GaudiSequencer.IgnoreFilterPassed
to True
, which will run all the algorithms regardless of whether the preceding
one passed or failed. The list of algorithms to run is defined by the
GaudiSequencer.Members
list.
Difference between MainSequence
and UserAlgorithms
-
MainSequence
: UseDaVinci().addToMainSequence([<a list of algorithms>])
to customize the initialization ofDaVinci
. This should be used to provide custom functions/TESs1 that will be visible to all selection algorithms. -
UserAlgorithms
: Actual selection algorithms. This is always appended at the end of theMainSequence
of aDaVinci
session.
Difference CC
and cc
in a decay descriptor
LoKi
andDecayTreeTuple
use uppercaseCC
for charge conjugation.CombineParticles
uses lowercasecc
.
This is just an inconsistency in the DaVinci
code base and there's nothing we
can do as a user.
-
TES: Transient Event Storage. ↩