Quick Start

Last updated: Jan 25th, 2016
For full documentation go to the documentation page
For more detailed examples go to the examples page

Download

Get hold of the code from github (see Installation below for command line instructions). If you want to push changes back to the repository please push to your own fork and submit a pull request to the main project. The most up to date version will usually exist on the development branch which is sporadically merged with the master branch. Our policy is never to push directly to the master

Download GammaCombo from github

Fork on github

Dependencies

GammaCombo has the following package dependencies. It has been tested on both MacOS and Linux platforms. If you are a CERN user running on lxplus then the environment setup can be automatically handled by the scripts/setup_lxplus.sh script, otherwise you will require the following:

  • cmake - available here
  • ROOT (min v5.34.23) - available here - ROOT5 and ROOT6 are both compatible - needs to be compiled with RooFit
  • RooFit (min v3.60) - see above
  • Boost (min 1.57.0) - available here
  • Doxygen - this is OPTIONAL but will build documentation for you - available here

Installation

The following steps will install the code. Note you will need a github user account and will need to setup an ssh key first - see here

git clone git@github.com:gammacombo/gammacombo.git
cd gammacombo
git checkout development
mkdir build
cd build
cmake ..
make # use make -j8 to install on multiple cores
make install 

Running

For each measurement you would like to perform you should make a subdirectory in the top level gammacombo directory. There are some tutorials already provided in the tutorial subdirectory. The majority of the code used for statistical analysis, plotting etc. is kept in the core subdirectory. The following subsections demonstrate how to run two of the tutorials.

Combination Tutorial

A tutorial which combines various measurements of observables which all depend on some common parameters

Follow the installation instructions above to install the software

Get to the right working directory
cd ../tutorial # note you should NOT be in the build subdirectory 
Printing out useful information
bin/tutorial -u               # will print the various usage options
bin/tutorial -c 7 --info      # will print some information about combination number 7
bin/tutorial -c 7 --info -v   # will print detailed information about combination number 7
Scanning (fitting) for common parameters
bin/tutorial -c 7 --var a_gaus                                                 # likelihood scan for parameter "a_gaus"
bin/tutorial -c 4 -c 7 --var a_gaus --var b_gaus                               # 2D scan for combinations 4 and 7
bin/tutorial -c 6 --var a_gaus --var b_gaus --scanrange -3:3 --scanrangey -3:3 # scan in a different range 
Plotting (add the -a plot option)
bin/tutorial -c 4 -c 6 -c 7 --var a_gaus --var b_gaus -a plot        # should produce plot shown below
The very last command should produce the plot shown below.
To see the full list of options (of which there are many) run with the -h option.
Combination Tutorial

Datasets Tutorial

A tutorial which fits a dataset and measures parameters of the fit model

Follow the installation instructions above to install the software

Get to the right working directory
cd ../tutorial # note you should NOT be in the build subdirectory 
Make the workspace for input
bin/tutorial_dataset_build_workspace        # will create the file workspace.root
Scanning (fitting) for parameter in workspace
bin/tutorial_dataset --var branchingRatio --scanrange 0:1.e-6     # likelihood scan for parameter "branchingRatio" 
Plotting (add the -a plot option)
bin/tutorial_dataset --var branchingRatio --scanrange 0:1.e-6 -a plot --cls 1  # add the CLs method as well
The very last command should produce the plot shown below.
To see the full list of options (of which there are many) run with the -h option.
Combination Tutorial

Full Documentation

This was just a quick start guide for the full documentation please go to the documentation page

Examples

To see some real life examples (and step by steps guides on how to produce them) go to the examples page