Giter Club home page Giter Club logo

sniper's Introduction

SNiPER

The SNiPER is an open-source general purpose software framework for High Energy Physics data processing. It is dedicated for needs of rare-process search experiments, such as neutrino interactions, dark matter, double beta and other.

For more info please visit the SNiPER home at GitHub.

Prerequisities

Required packages:

  • CMT (v1r26 or later) - configuration management environment, main build system;
  • Compiler with C++11 support (GCC 4.8 or LLVM 3.4 or other);
  • Boost (1.53 or later, with Boost.Python) - portable C++ source libraries, used for interface with python scripts;
  • Python (2.7 or later) - interpreted, interactive, object-oriented programming language, used as main script engine for SNiPER modules.

Optional software:

  • git (1.8 or later) - needed to get source code with repository;
  • cmake (2.8 or later) - alternative build system;
  • ROOT (5.18 or later) - needed for ROOT file I/O;
  • Intel TBB - for parallel computing.

Note that in RHEL6 system (and derivatives) an old GCC 4.4.7 is used. To enable C++11 features, we recommend to use devtoolset packages, where GCC 4.8 or better are available.

Build

Using CMT

You need installed and working CMT environment. Also you'll need external packages Boost, Python (and ROOT) available under Externals/.

Get the source gode using git clone https://github.com/SNiPER-Framework/sniper.git or downloading a ZIP file from GitHub and extracting it.

Add source code directory to CMT path:

$ cd sniper
$ export CMTPROJECTPATH=`pwd`:$CMTPROJECTPATH

Actually build SNiPER:

$ cd SniperRelease/cmt
$ cmt br cmt config
$ source setup.sh
$ cmt br cmt make

Using CMake

Get the source gode using git clone https://github.com/SNiPER-Framework/sniper.git or downloading a ZIP file from GitHub and extracting it.

Make build directory and change to it:

$ mkdir build && cd build

Run CMake to configure your build. You can change your settings with ccmake or other tools. CMake has powerful ability to find software, but if it fails to locate yours, you can help it by defining <NAME>_DIR variables. Also it can use available CMT environment for search. By default installation goes to /usr/local.

$ cmake -DCMAKE_INSTALL_PREFIX=<install_dir> ..

Then build and install the result. Default build agent is make and you can call it directly.

$ cmake --build . --target install

Your build is now installed to the directory you provided to CMake. For the best experience one needs to set the proper environment. This can be done with the help of shell script share/sniper/setup.sh, or, a modern solution, using an Environment Modules file share/sniper/modulefiles/sniper. Also provided is a CMT project that allows use of SNiPER in CMT environment.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.