Metadata-Version: 2.4
Name: pylandau
Version: 3.0.0
Summary: A Landau PDF definition to be used in Python.
Author-email: David-Leon Pohl <pohl@physik.uni-bonn.de>, Christian Bespin <cbespin@uni-bonn.de>
Maintainer-email: Christian Bespin <cbespin@uni-bonn.de>, Pascal Wolf <wolf@physik.uni-bonn.de>
Project-URL: repository, https://github.com/SiLab-Bonn/pyLandau
Keywords: Landau,Langau,PDF
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Physics
Classifier: Topic :: Scientific/Engineering :: Mathematics
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numba>=0.53
Requires-Dist: numpy>=1.21
Requires-Dist: scipy>=1.7
Dynamic: license-file

# pylandau
![example branch parameter](https://github.com/Silab-Bonn/pylandau/actions/workflows/tests.yml/badge.svg?branch=master)

A simple [Landau](http://en.wikipedia.org/wiki/Landau_distribution) definition to be used in Python, since no common package (Scipy, Numpy, ...) provides this. Also a fast Landau + Gauss convolution is offered, that is usefull for fitting energy losses of charged particles in matter. The Landau is approximated according to  [Computer Phys. Comm. 31 (1984) 97-111](http://dx.doi.org/10.1016/0010-4655(84)90085-7) and the implementation is from [CERN ROOT Mathlibs](https://root.cern/doc/master/PdfFuncMathCore_8cxx_source.html).

## Installation
The project is hosted at [PyPI](https://pypi.org/project/pylandau). For installation just type:
```
pip install pylandau
```

If you want to change the code or start contributing, download it and put it into a directory of your choice. From the project root folder run:
```
pip install -e .
```
## Usage

```python
import numpy as np
import pylandau

x = np.arange(0, 100, 0.01)
y_landau = pylandau.landau(x)
y_langau = pylandau.langau(x)
```
