Metadata-Version: 2.1
Name: tunax
Version: 0.1.0
Summary: Differential calibrator of the vertical ocean turbulence closures.
Home-page: https://github.com/meom-group/tunax
License: LICENSE
Keywords: ocean,closure,calibration,differential,turbulence
Author: Gabriel Mouttapa
Author-email: gabriel.mouttapa@univ-grenoble-alpes.fr
Requires-Python: >=3.10,<4.0
Classifier: License :: Other/Proprietary License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: equinox (>=0.11.7,<0.12.0)
Requires-Dist: jax (>=0.4.34,<0.5.0)
Requires-Dist: jaxtyping (>=0.2.34,<0.3.0)
Requires-Dist: netcdf4 (>=1.7.1.post2,<2.0.0)
Requires-Dist: optax (>=0.2.3,<0.3.0)
Requires-Dist: xarray (>=2024.9.0,<2025.0.0)
Project-URL: Repository, https://github.com/meom-group/tunax
Description-Content-Type: text/markdown

![Python](https://img.shields.io/badge/dynamic/yaml?url=https://raw.githubusercontent.com/meom-group/tunax/master/.github/workflows/python-package.yml&label=Python&query=$.jobs.build.strategy.matrix["python-version"])
[![Documentation Status](https://readthedocs.org/projects/tunax/badge/?version=latest)](https://tunax.readthedocs.io/en/latest/?badge=latest)
[![Tests](https://github.com/meom-group/tunax/actions/workflows/run_tests.yaml/badge.svg)](https://github.com/meom-group/tunax/actions/workflows/run_tests.yaml)
[![License: CC-BY-NC](https://img.shields.io/badge/License-CC--BY--NC-saddlebrown.svg)](./LICENSE)

# Description
This package provides a framework for calibrating the parameters of vertical physics schemes of ocean circulation models using variational optimization. The parameters are calibrated through the minimization of an 'objective function' which compares model predictions with 'Large Eddy Simulations' (LES). *Tunax* is written in JAX in order to use automatic differentiation for computing the gradient of the objective function with respect to model parameters.

# Package organisation
The closures are implemented in the folder `tunax/closures/` and they are wrapped by a 'single column model' (SCM) implemented in `tunax/model.py`. The calibration part is in `tunax/fitter.py`. The folder `notebooks/` contains example of usage of this framework. The folder `docs/` is for the documentation configuration which is available [here] (https://tunax.readthedocs.io/en/latest/).

# Installation
## Stable version
*Tunax* is pip installable
```shell
pip install tunax
```
*Tunax* is installed by default with JAX on CPU.

