Code Monkey home page Code Monkey logo

hgctpgperformance's Introduction

HGCAL TPG performance utilities

This is a Python package used to produce various performance plots for the HGCAL trigger prmitive generation studies.

Installation

First clone the package:

git clone [email protected]:PFCal-dev/HGCTPGPerformance.git HGCTPGPerformance

This package depends on several python packages, listed in requirements.txt:

  • attrs
  • scipy
  • numpy
  • pandas
  • root-numpy
  • rootpy

In general it is better to encapsulate these packages inside a virtual environment (using for instance virtualenvwrapper).

On SLC6 lxplus, the default versions of python and ROOT are antique, so a couple of setup commands are needed to have a working environment. The following script should be sourced each time to setup Python, ROOT, and the virtual environment (outside a CMSSW environment).

source init_env_lxplus.sh

The first time it is called, it will install everything so it might take some time (in particular with the installation of root-numpy). Then, once everything is already installed it will just activate the virtual environment.

If it worked correctly the terminal prompt should be prefixed with (hgc_tpg), meaning that you are inside the virtual environment. To leave the virtual environment, just type deactivate.

On machines other than lxplus, the same thing can be done, just the Python and ROOT setup at the beginning of the script would need to be modified.

Usage

The package code is located in hgc_tpg. It is divided in sub-directories corresponding to different performance studies:

  • resolution: study of energy and position resolutions
  • efficiency: study of efficiencies (including turn-ons)
  • rate: study of trigger rates
  • bandwidth: study of the bandwidth between layers of the TPG system
  • utilities: general utility functions
  • plotting: plotting functions and style definitions

This code is used from scripts located in the scripts directory. The scripts currently available are:

  • runResolution.py: energy and position resolution plots
  • turnon.py: turnon plot
  • rate.py: rate plot

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.