Metadata-Version: 2.1
Name: corsika-panama
Version: 0.1.0
Summary: PArallel ruN of corsikA on MAny cores and other python utils to work with CORSIKA
Home-page: https://github.com/The-Ludwig/PANAMA
License: MIT
Author: Ludwig Neste
Author-email: ludwig.neste@tu-dortmund.de
Requires-Python: >=3.10,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: click (>=8.1.3,<9.0.0)
Requires-Dist: corsikaio (>=0.2.6.post1,<0.3.0)
Requires-Dist: crflux (>=1.0.6,<2.0.0)
Requires-Dist: numpy (>=1.23.4,<2.0.0)
Requires-Dist: pandas (>=1.5.1,<2.0.0)
Requires-Dist: particle (>=0.21.0,<0.22.0)
Requires-Dist: tqdm (>=4.64.1,<5.0.0)
Project-URL: Documentation, https://github.com/The-Ludwig/PANAMA#readme
Project-URL: Repository, https://github.com/The-Ludwig/PANAMA
Description-Content-Type: text/markdown

PANAMA
===
**PAN**das **A**nd **M**ulticore utils for corsik**A**7

Thanks [@Jean1995](https://github.com/Jean1995) for the silly naming idea.

# What this is

## CORSIKA7 parallelization
This started a little while ago while I was looking into the `EHIST` option
of corsika.
I wanted a way of conveniently running CORSIKA7 on more than 1 core.
I ended in the same place where most CORSIKA7 users end (see e.g. [fact-project/corsika_wrapper](https://github.com/fact-project/corsika_wrapper))
and wrote a small wrapper. Once this package is installed, you can use it with the `panama` command (see `panama --help` for options).

This wrapper has a nice progress bar, so you get an estimate for how long your simulation needs.

### Pitfalls
- The whole `run` folder of CORSIKA7 must be copied for each proccess, so very high parallel runs have high overhead
- If you simulate to low energies, python can't seem to hold up with the corsika output to `stdin` and essentially slows down corsika this is still a bug in investigation #1

## CORSIKA7 DAT files to pandas dataframe with working EHIST
Made possible by [cta-observatory/pycorsikaio](https://github.com/cta-observatory/pycorsikaio).

# What this is not
Bug-free or stable

# Installation
To install this module, clone it
```
git clone git@github.com:The-Ludwig/PANAMA.git
```
and run
```
pip install ./PANAMA
```

A future PyPi release is planned.

