Project

General

Profile

Documentation of SBS-offline » History » Version 9

Eric Fuchey, 04/06/2020 12:58 PM

1 1 Eric Fuchey
h1. Documentation of SBS-offline
2 9 Eric Fuchey
{{toc}}
3 2 Eric Fuchey
4
h2. Overview
5
6
This page is maintained by the UConn group (Eric Fuchey + Andrew Puckett) and as of February 14, 2020 is specific to the '''''master''''' branch of SBS-offline on github.
7
8
h2. Purpose
9
10
This page documents the SBS-offline program code, which purpose is to perform the data analysis for the upcoming SBS experiments.
11
12
h2. Getting the code and building the program
13
14
h3. Prerequisites
15
16 4 Eric Fuchey
*Working [https://root.cern.ch/drupal/ ROOT] installation. '''libsbsdig is compatible with ROOT version 5 and ROOT version 6'''. '''''ROOT 6 is strongly recommended'''
17 2 Eric Fuchey
*Working installation of cmake '''version 3.9 minimum'''
18
*Working analyzer '''built with cmake'''. for that purpose, refer to the instruction below.
19
20
h3. Instructions for analyzer cmake installation compatible
21 3 Eric Fuchey
22 2 Eric Fuchey
clone the analyzer repository from:
23
 * git clone git@github.com:JeffersonLab/analyzer.git
24
build it with cmake following the instructions at:
25
 * https://github.com/JeffersonLab/analyzer#compiling-with-cmake
26
2 precisions: 
27
*it seems that in these instructions the "build" directory ''has to be'' in the analyzer directory.
28
*for your environment settings, in addition to the two lines mentionned in the instructions, you still want to define ANALYZER as the path to your install directory e.g.
29
 * setenv ANALYZER $HOME/local/analyzer
30
31
h3. Downloading the repository
32
33
The code is hosted on a github repository owned by JLab. To clone via ssh (preferred method on JLab batch farm), do: 
34 1 Eric Fuchey
35 9 Eric Fuchey
bq. git clone git@github.com:JeffersonLab/SBS-offline.git
36 2 Eric Fuchey
37
For this method to work, the ssh public key on the machine where you want to get the code must be added to your github account (see [https://help.github.com/articles/generating-ssh-keys/ Guide] to generating ssh keys and adding to your github.com account.)
38
39
Cloning the repository defaults to the "master" branch.
40
41
h3. Building and installing the library
42
43
Create a "build" directory that is parallel to the "SBS-offline" source directory (this is not strictly required, but the build directory must be separate from the "SBS-offline" directory in any case). 
44
You also need to have setup an installation path e.g. /path/to/sbs-offline-install
45
'''''NB''''': similarly to the build directory, the /path/to/gsbs-offline-install directory shall '''not''' be the same as the source directory!
46
The following instructions assume that "build" is parallel to "SBS-offline":
47
If successful, the libsbs library and several other files and folders will be created in the "build" and the "install" directory.
48
49
To build and install, the procedure needs to be completed. From scratch:
50 9 Eric Fuchey
51
bq. mkdir build
52
cd build
53
cmake -DCMAKE_INSTALL_PREFIX=/path/to/sbs-offline-install ../SBS-offline
54
make install
55 2 Eric Fuchey
56
57
Then, the following line should be added in the OS login configuration file to take advantage of this functionality:
58
* source /path/to/sbs-offline-install/sbsenv.sh (or source /path/to/g4sbs_install/sbsenv.csh on the batch farm)