Metadata-Version: 2.4
Name: opatio
Version: 0.1
Summary: A python module for handling OPAT files
Author: 4D-STAR Collaboration
Author-email: "Emily M. Boudreaux" <emily.boudreaux@dartmouth.edu>
Maintainer-email: "Emily M. Boudreaux" <emily.boudreaux@dartmouth.edu>
Project-URL: Homepage, https://github.com/4D-STAR/opat-core/tree/main/opatIO-py
Project-URL: Issues, https://github.com/4D-STAR/opat-core/issues
Project-URL: 4D-STAR, https://4d-star.org/
Keywords: astrophysics,OPAT,opatcity
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Astronomy
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: numpy>=1.21.1

# opatIO python module
This module defines a set of tools to build, write, and read OPAT files. 
The OPAT fileformat is a custom file format designed to efficiently store
opacity information for a variety of compositions. 

## Installation
You can install this module with pip
```bash
git clone <repo>
cd 4DSSE/utils/opat
pip install .
```

## General Usage
The general way that this module is mean to be used is to first build a schema for the opacity table and then save that to disk. The module will handle all the byte aligment and lookup table construction for you. 

A simple example might look like the following

```python
from opatio import OpatIO

opacityFile = OpatIO()
opacityFile.set_comment("This is a sample opacity file")
opaticyFile.set_source("OPLIB")

# some code to get a logR, logT, and logKappa table
# where logKappa is of size (n,m) if logR is size n and
# logT is size m

opacityFile.add_table((X, Z), logR, logT, logKappa)
opacityFile.save("opacity.opat")
opaticyFile.save_as_ascii("opacity.txt")
```

You can also read opat files which have been generated with the loadOpat function

```python
from opatio import loadOpat

opacityFile = loadOpat("opacity.opat")

print(opacityFile.header)
print(opaticyFile.tables[0])
```

## Problems
If you have problems feel free to either submit an issue to the root github repo (tagged as utils/opatio) or email Emily Boudreaux at emily.boudreaux@dartmouth.edu
