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 theMainSequenceof aDaVincisession.
Difference CC and cc in a decay descriptor
LoKiandDecayTreeTupleuse uppercaseCCfor charge conjugation.CombineParticlesuses 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. ↩