# Installation

OOWL requires Python 3.12 or newer. The package is distributed and imported as
`oowl`.

## With pip

```bash
pip install oowl
```

Or install from a checkout of the repository in editable mode.

```bash
git clone https://gitlab.windenergy.dtu.dk/sys/OOWL.git
cd OOWL
pip install -e .
```

The runtime dependencies are NumPy 2.0, SciPy 1.13, Shapely 2.1, Matplotlib
3.8.4 and PyYAML 6.0.2, or newer.
The optional `dev` extra adds the test and notebook tooling, and the
`windio-compat` and `gwa-compat` extras add windIO and PyWake for the
compatibility tests.

```bash
pip install -e ".[dev]"
```

## With pixi

The repository is set up as a [pixi](https://pixi.sh) workspace. To create the
development environment, which includes Jupyter and the notebook kernel, run
this command.

```bash
pixi install --locked --environment dev
```

Run commands inside the environment with `pixi run --environment dev <command>`.
Use `pixi run --environment dev test` for the current stack and
`pixi run --environment minimum test-minimum` for the supported lower bounds.
