Metadata-Version: 2.4
Name: otex
Version: 0.1.0
Summary: OTEX - Ocean Thermal Energy eXchange: OTEC plant design, simulation, and analysis
Author: OTEX Development Team
License: MIT
Project-URL: Homepage, https://github.com/otex-dev/otex
Project-URL: Documentation, https://otex.readthedocs.io
Project-URL: Repository, https://github.com/otex-dev/otex
Project-URL: Issues, https://github.com/otex-dev/otex/issues
Keywords: OTEC,ocean thermal energy,renewable energy,thermodynamic cycles,power plant,simulation
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Physics
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: numpy>=1.20
Requires-Dist: pandas>=1.3
Requires-Dist: scipy>=1.7
Requires-Dist: matplotlib>=3.4
Requires-Dist: tables>=3.6
Requires-Dist: xarray>=0.19
Requires-Dist: netCDF4>=1.5
Requires-Dist: tqdm>=4.60
Provides-Extra: coolprop
Requires-Dist: CoolProp>=6.4; extra == "coolprop"
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0; extra == "dev"
Requires-Dist: ruff>=0.1; extra == "dev"
Requires-Dist: build>=1.0; extra == "dev"
Requires-Dist: twine>=4.0; extra == "dev"
Provides-Extra: docs
Requires-Dist: sphinx>=5.0; extra == "docs"
Requires-Dist: sphinx-rtd-theme>=1.0; extra == "docs"
Requires-Dist: myst-parser>=0.18; extra == "docs"
Provides-Extra: all
Requires-Dist: CoolProp>=6.4; extra == "all"
Requires-Dist: pytest>=7.0; extra == "all"
Requires-Dist: pytest-cov>=4.0; extra == "all"

![logo](/img/logo.png)
# OTEX - Ocean Thermal Energy eXchange
[![CI](https://github.com/msotocalvo/OTEX/actions/workflows/workflow.yml/badge.svg)](https://github.com/msotocalvo/OTEX/actions/workflows/workflow.yml)
[![DOI](https://zenodo.org/badge/1145581288.svg)](https://doi.org/10.5281/zenodo.18428742)

OTEX is a Python library for Ocean Thermal Energy Conversion (OTEC) plant design, simulation, and techno-economic analysis.

## Features

- **Multiple thermodynamic cycles**: Rankine (closed, open, hybrid), Kalina, Uehara
- **Working fluids**: Ammonia, R134a, R245fa, Propane, Isobutane (with CoolProp)
- **Global analysis**: Integration with CMEMS oceanographic data
- **Economic modeling**: LCOE calculation with configurable cost levels
- **Regional analysis**: Site-specific OTEC potential assessment

## Installation

```bash
pip install otex
```

For high-accuracy fluid properties with CoolProp:

```bash
pip install otex[coolprop]
```

## Quick Start

```python
from otex.config import parameters_and_constants

# Get default configuration for a 136 MW OTEC plant
inputs = parameters_and_constants(
    p_gross=-136000,      # kW (negative = power output)
    cost_level='low_cost',
    cycle_type='rankine_closed',
    fluid_type='ammonia',
    year=2020
)

print(f"Cycle: {inputs['cycle_type']}")
print(f"Working fluid: {inputs['working_fluid']}")
print(f"Year: {inputs['year']}")
```

## Regional Analysis

```bash
# Analyze a specific region
python scripts/regional_analysis.py Philippines --year 2021 --cycle kalina

# Batch analysis for multiple regions
python scripts/regional_batch.py --regions Philippines Jamaica Hawaii
```

## Configuration Options

| Parameter | Values | Default |
|-----------|--------|---------|
| `cycle_type` | `rankine_closed`, `rankine_open`, `rankine_hybrid`, `kalina`, `uehara` | `rankine_closed` |
| `fluid_type` | `ammonia`, `r134a`, `r245fa`, `propane`, `isobutane` | `ammonia` |
| `cost_level` | `low_cost`, `high_cost` | `low_cost` |
| `year` | 1993-2023 | 2020 |

## Requirements

- Python >= 3.9
- NumPy, Pandas, SciPy, Matplotlib
- xarray, netCDF4 (for oceanographic data)
- CoolProp (optional, for additional working fluids)

## Aknowledgments
OTEX is built uppon the basis of a repository called pyOTEC (https://github.com/JKALanger/pyOTEC), read more about it here:
Langer, J., Blok, K. The global techno-economic potential of floating, closed-cycle ocean thermal energy conversion. J. Ocean Eng. Mar. Energy (2023). https://doi.org/10.1007/s40722-023-00301-1

## Citation

If you use OTEX in your research, please cite:

## License

MIT License

<!-- trigger workflow -->
