Coder Social home page Coder Social logo

dsmiff / analysissoftware Goto Github PK

View Code? Open in Web Editor NEW

This project forked from bristoltopgroup/analysissoftware

0.0 2.0 0.0 75.42 MB

Analysis software for particle physics analysis

License: Other

CMake 0.75% C++ 67.96% Shell 21.46% Python 9.66% C 0.16%

analysissoftware's Introduction

AnalysisSoftware

Analysis software for TTbar+X differential cross section analysis (TOP-12-042)

General Recipe

To setup the stand-alone version of the code:

# this section will be revisited, please use CMSSW setup for now
# get the code from the repository
git clone https://github.com/BristolTopGroup/AnalysisSoftware.git AnalysisSoftware
cd AnalysisSoftware

# on DICE need to source ROOT:
# source /software/root/v5.32.00/bin/thisroot.sh

# create the makefile using cmake (install it if you don't have it: https://github.com/Kitware/CMake)
# minimal cmake version 2.6.0 according to CMakeLists.txt
cmake CMakeLists.txt
#on DICE use cmake28
# cmake28 CMakeLists.txt

# for older versions of boost, e.g. on DICE, you will need to
#sed -i 's/lib64\/lib64/lib64/g' ./CMakeFiles/AnalysisSoftware.dir/build.make
#sed -i 's/lib64\/lib64/lib64/g' ./CMakeFiles/AnalysisSoftware.dir/link.txt
# as the library path is wrong (contains lib64/lib64)

# compile and build
make -j24

# adjust the toolsFolder environment variable
export toolsFolder=$PWD/

# test run the code:
nohup ./AnalysisSoftware python/test_cfg.py &> test.log &

To setup the code using CMSSW:

# on soolin (and other scientific linux 6 machines)
export SCRAM_ARCH=slc6_amd64_gcc491
# This version comes with ROOT 6.02/05
scram p -n CMSSW_7_5_0_pre5_AS CMSSW_7_5_0_pre5
cd CMSSW_7_5_0_pre4_AS/src/
cmsenv
# initialise CMS git
git cms-init

# get the code from the repository
git clone https://github.com/BristolTopGroup/AnalysisSoftware.git BristolAnalysis/Tools
cd BristolAnalysis/Tools

# get submodules:
git submodule init && git submodule update
cd -
ln -s BristolAnalysis/Tools/external/TopQuarkAnalysis TopQuarkAnalysis
# compile
scram b -j2

hash -r #or rehash in case that BAT cannot be found

# test run the code:
#../tmp/slc6_amd64_gcc491/src/BristolAnalysis/Tools/test/BAT_Tests/BAT_Tests
nohup BAT BristolAnalysis/Tools/python/test_cfg.py &> test.log &

Eclipse

If you want like to use Eclipse for the development of the code, initial project files are provided in the eclipse/ folder. You can copy them into the main directory (example for OS X):

# in AnalysisSoftware folder
cp eclipse/.project.osx .project
cp eclipse/.cproject.osx .cproject
cp eclipse/.pydevproject.osx .pydevproject

Code Style

A code style prescription is also available in eclipse/Bristol_C++_CodeStyle.xml. You should import it under Preferences->C/C++->Code Style->Formatter

Notes

More information can be found at Bristol Analysis Tools twiki page

HTCondor

Once the software is set up one can use HTCondor to submit jobs to a cluster. Instructions for this can be found in condor/README.md

Bugs

Please report any problems on our issues page.

Run tests

Boost unit tests

Running all tests

make test
# or
./AnalysisSoftware_test --log_level=message

Running a specific test suite:

./AnalysisSoftware_test --log_level=message --run_test=DataTypeTests

Running a specific test:

./AnalysisSoftware_test --log_level=message --run_test=DataTypeTests/NoAmbiguousMappingHard

Python unit tests

Python tests require nose to be installed:

pip install nose --upgrade

You can then run the tests with:

time nosetests -v test/*.py

analysissoftware's People

Contributors

kreczko avatar emyrclement avatar jjacob avatar senkin avatar

Watchers

James Cloos avatar Dominic Smith avatar

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.