This code performs staged BDT analyses using root files as in- and output format.
ROOT
version ≥ 6.05.02 compiled withTMVA
andMathMore
FastJet
FastJet Contrib
(must be compiled withCXXFLAGS=-fPIC
)Boost
version ≥ 1.56 (Optional
,Range
,Units
,Operators
,Iterators
)
The BoCA
code makes heavy use of modern C++ features.
The limiting factor for the minimal supportet compiler version is given by the use of generic lambda functions.
Therefore the compiler version must be
GCC
version ≥ 4.9Clang
version ≥ 3.4 (which might rely on a recent GCC version)
The configuration process depends on CMake
≥ 3.1.
For the build process you can use
-
the following is tested on recent ubuntu, scientific linux and mac installations
mkdir build cd build cmake .. make -j
-
for quicker compilation install ccache and ninja-build and use
mkdir build cd build cmake -G Ninja .. ninja
-
for mac you can also use (still install ccache)
mkdir build cd build cmake -G Xcode .. xcodebuild
-
if you have trouble installing
ROOT
≥ 6 withGCC
≥ 5 you can configure it withcmake -DCMAKE_CXX_FLAGS=-D_GLIBCXX_USE_CXX11_ABI=0 -Dmathmore=ON -Dbuiltin_gsl=ON -GNinja ..
unfortunately this means that all other dependencies also have to be compiled with the cxx11 abi switched off e.g. for
FastJet
you have to use./configure CXXFLAGS=-D_GLIBCXX_USE_CXX11_ABI=0
and for
FastJet Contrib
./configure CXXFLAGS="-fPIC -D_GLIBCXX_USE_CXX11_ABI=0"
Examples are listed here.
Each analysis needs a dedicated Analysis
class, a set of Tagger
classess and a main.cpp
file.
The Analysis
class contains the global information of the analysis, such as file names, path names, variables names etc.
Every Tagger
class tags or reconstructs one specific particle or signature. Each analysis needs at least one dedicated Tagger
.
The main.cpp
defines the order in which each Tagger
is passed to the Analysis
.
The source code documentation including all classes and functions can be found here.
The acceptances for Standard model particles at a future 100 TeV collider are presented here. These plots represent some examples of the power of this code.
If you use this code to publish analyses please cite:
- Jan Hajer, Ying-Ying Li, Tao Liu, John F. H. Shiu: Heavy Higgs Bosons at 14 TeV and 100 TeV, April 2015
- Nathaniel Craig, Jan Hajer, Ying-Ying Li, Tao Liu, Hao Zhang: Heavy Higgs Bosons at Low tan β: from the LHC to 100 TeV, May 2016
BoCa is licenced under the GPL 3.