Jpp Python Package
Project description
The jppy Python package
This software provides Python access to functionalities in Jpp, like accessing PDF functions.
It currently depends on a few Jpp headers (no Jpp compilation needed) and on ROOT TMath (a compiled ROOT installation is needed).
Note: Beware that this package is WIP!
Installation
If you work on the Lyon CC, you can load the jpp/master module which contains the latest release of jppy:
module load jpp/master
The package can be installed via pip:
pip install jppy
or directly from the Git repository to get the latest stable from the master branch:
pip install git+https://git.km3net.de/km3py/jppy
or from a local clone:
git clone https://git.km3net.de/km3py/jppy pip install jppy/
Example - Using PDFs
Here is an example how to play around with muon PDFs using the jppy module in Lyon. Notice that jppy is already installed in the jpp/master module:
░ tgal@cca010:~
░ 13:22:51 > module load jpp/master
░ tgal@cca010:~
░ 13:22:54 > module list
Currently Loaded Modulefiles:
1) xrootd/4.8.1 5) tools/tig/2.4.1
2) km3net_env/1.1 6) tools/the_silver_searcher/2.2.0
3) python/3.7.5 7) root/6.18.04
4) tools/neovim/0.5.0 8) jpp/master
░ tgal@cca010:~
░ 13:22:56 > ipython
Python 3.7.5 (default, Nov 1 2019, 21:18:20)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.9.0 -- An enhanced Interactive Python. Type '?' for help.
In [1]: import jppy
In [2]: jppy.version
Out[2]: '3.0.0a6'
In [3]: jppy.pdf.JMuonPDF?
Docstring: <no docstring>
Init docstring: __init__(self: jppy.pdf.JMuonPDF, file_descriptor: str, TTS: float, number_of_points: int = 25, epsilon: float = 1e-10) -> None
File: /pbs/throng/km3net/software/python/3.7.5/lib/python3.7/site-packages/jppy/pdf.cpython-37m-x86_64-linux-gnu.so
Type: pybind11_type
Subclasses:
In [4]: muon_pdf = jppy.pdf.JMuonPDF("/pbs/throng/km3net/src/Jpp/master/data/J%p
...: .dat", 0)
loading input from file /pbs/throng/km3net/src/Jpp/master/data/J1p.dat... OK
loading input from file /pbs/throng/km3net/src/Jpp/master/data/J2p.dat... OK
loading input from file /pbs/throng/km3net/src/Jpp/master/data/J3p.dat... OK
loading input from file /pbs/throng/km3net/src/Jpp/master/data/J4p.dat... OK
loading input from file /pbs/throng/km3net/src/Jpp/master/data/J5p.dat... OK
loading input from file /pbs/throng/km3net/src/Jpp/master/data/J6p.dat... OK
adding PDFs... OK
In [5]: muon_pdf.calculate?
Docstring: calculate(self: jppy.pdf.JMuonPDF, E: float, R: float, theta: float, phi: float, t1: float) -> JTOOLS::JResultPDF<double>
Type: method
In [6]: result = muon_pdf.calculate(10, 5, 0, 0, 23)
In [7]: result?
Type: JResultPDF
String form: <jppy.pdf.JResultPDF object at 0x7f735b5ca770>
File: /pbs/throng/km3net/software/python/3.7.5/lib/python3.7/site-packages/jppy/pdf.cpython-37m-x86_64-linux-gnu.so
Docstring: <no docstring>
Init docstring: __init__(self: jppy.pdf.JResultPDF, f: float, fp: float, v: float, V: float) -> None
In [8]: result.f
Out[8]: 0.0015357848280127355
In [9]: result.fp
Out[9]: -2.228096911939611e-05
In [10]: result.v
Out[10]: 0.02490276362751662
In [11]: result.V
Out[11]: 0.1164929687159807
In [12]: %timeit muon_pdf.calculate(10, 5, 0, 0, 23)
2.47 µs ± 293 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file jppy-3.0.1.tar.gz.
File metadata
- Download URL: jppy-3.0.1.tar.gz
- Upload date:
- Size: 64.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.20.1 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cce039006d9d78476e8eddb8561000dbbf207c1e35016b704816cab60d0f6407
|
|
| MD5 |
d2d65ca472918377b411acbd4ef68625
|
|
| BLAKE2b-256 |
b1b77b58e32066cb852dbea520b003a62a0616f964fa14a80dfbddd4ea950094
|