Giter VIP home page Giter VIP logo

parton's Introduction

Build Status Coverage Status

parton โ€“ a Python package for parton distributions and parton luminosities

parton is a Python package providing parton distribution functions and parton luminosities. It uses the PDF data files provided by the LHAPDF project. Its API is partially compatible to LHAPDF's Python API, even though only a subset of its features are implemented.

parton is written in pure Python, i.e. it runs on Linux, Mac OS, and Windows.

Installation

To install the package without administrator privileges, run

python3 -m pip install parton --user

Command-line interface

parton provides a command-line interface that mimicks (and is partially compatible to) LHAPDF's lhapdf command. In particular, it can be used to install PDF grid files. It is accessed by running the package as a script,

python3 -m parton

For instance, to install a specific PDF set, run

python3 -m parton update
python3 -m parton install 'CT10/0'

If you already have a directory with PDF sets (e.g. from LHAPDF), that can be used as well.

Python usage

The API for numerically evaluating PDFs is modeled after LHAPDF's Python API:

from parton import mkPDF
pdf = mkPDF('CT10', 0)
# up quark PDF at x=0.1, Q=1000 GeV
pdf.xfxQ(2, 0.1, 1000)

If the PDF sets are in a non-default location (on Linux, the default location is ~/.local/share/parton/), this directory can be changed through mkPDF's pdfdir argument.

Parton luminosities are accessed similarly through the PLumi class, but the factorization scale has to be fixed on instantiation,

from parton import PLumi
# pdf has been defined above
plumi = PLumi(pdf, Q2=1000)
# u-ubar parton luminosity at shat/s=0.1
plumi.L(2, -2, 0.1)

License

parton is released under the MIT license.

Contributors

parton was originally written by David M. Straub (@DavidMStraub)

Other contributors:

  • Peter Stangl (@peterstangl)

Citation info

parton cannot be cited at present. Please do not forget to also acknowledge the LHAPDF project.

parton's People

Contributors

davidmstraub avatar peterstangl avatar nsmith- avatar alekssmolkovic avatar

Forkers

paradahutauruk

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.