Skip to content

WISDEM/ORBIT

Repository files navigation

ORBIT

Offshore Renewables Balance of system and Installation Tool

PyPI version PyPI downloads Apache 2.0 image

Binder Pre-commit Black isort Ruff

Authors:Jake Nunemaker, Matt Shields, Rob Hammond
Documentation:ORBIT Docs

Installation

As of version 0.5.2, ORBIT is now pip installable with pip install orbit-nrel.

Development Setup

The steps below are for more advanced users that would like to modify and and contribute to ORBIT.

Environment

A couple of notes before you get started:
  • It is assumed that you will be using the terminal on MacOS/Linux or the Anaconda Prompt on Windows. The instructions refer to both as the "terminal", and unless otherwise noted the commands will be the same.
  • To verify git is installed, run git --version in the terminal. If an error occurs, install git using these directions.
  • The listed installation process is intended to be the easiest for any OS to get started. An alternative setup that doesn't rely on Anaconda for setting up an environment can be followed here.

Instructions

  1. Download the latest version of Miniconda for the appropriate OS. Follow the remaining steps for the appropriate OS version.

  2. From the terminal, install pip by running: conda install -c anaconda pip

  3. Next, create a new environment for the project with the following.

    conda create -n <environment_name> python=3.10 --no-default-packages

    To activate/deactivate the environment, use the following commands.

    conda activate <environment_name>
    conda deactivate <environment_name>
  4. Clone the repository: git clone https://github.com/WISDEM/ORBIT.git

  5. Navigate to the top level of the repository (<path-to-ORBIT>/ORBIT/) and install ORBIT as an editable package with following command.

    # Note the "." at the end
    pip install -e .
    
    # OR if you are you going to be contributing to the code or building documentation
    pip install -e '.[dev]'
  6. (Development only) Install the pre-commit hooks to autoformat and lint code.

    pre-commit install

Dependencies

  • Python 3.9+
  • marmot-agents
  • SimPy
  • NumPy
  • Pandas
  • SciPy
  • Matplotlib
  • OpenMDAO (>=3.2)
  • python-benedict
  • statsmodels
  • PyYAML

Development Specific

  • pre-commit
  • black
  • isort
  • ruff
  • pytest
  • pytest-cov
  • sphinx
  • sphinx-rtd-theme

Recommended packages for easy iteration and running of code:

  • jupyterlab