/copt

Fast Capacity Outage Probability Table (COPT) generator powered by NumPy.

Primary LanguageJupyter NotebookMIT LicenseMIT

Capacity Outage Probability Table (COPT) Maker

Fast Capacity Outage Probability Table (COPT) generator powered by NumPy.

Notebooks

All notebooks are available in Colab.

Open In Colab.

Feature

  1. Calculate Loss of Load Probability (COPT).

    Open In Colab

  2. Calculate Expected Unserved Energy Cost (EUNC).

    Open In Colab

  3. Calculate Capacity Credit (CC).

    Open In Colab

Program structure

Program structure:

Forced Outage Data
└── Individual Generator Capacity Outage Probability Table
    └── Combined Capacity Outage Probability Table
        ├── Loss of Load Probability
        │   └── Loss Of Load Expectation
        └────── Expected Energy Not Served
                ├── Expected Unserved Energy Cost
                └── Capacity Credit

Contributing

  1. We use nb-clean to clean notebook metadata. It should not be added as a filter since Colab metadata will be added later.

    pip install nb-clean
    nb-clean clean notebooks/app_cc.ipynb -m tags cellView skip-ruff -M
    nb-clean clean notebooks/app_copt.ipynb -m tags cellView skip-ruff -M
    nb-clean clean notebooks/app_eunc.ipynb -m tags cellView skip-ruff -M

    Warning

    The -M arguments only available in this PR

  2. To better support Google Colab, add below cell metadata to hide the cell (only on the UI cell):

       "metadata": {
        "cellView": "form",
       },
  3. Autofix using pre-commit (optional):

    To run on all files

    pre-commit run --all-files

    To run on notebooks:

    pre-commit run --files notebooks/app_cc.ipynb
    pre-commit run --files notebooks/app_copt.ipynb
    pre-commit run --files notebooks/app_eunc.ipynb

TODOs

  1. Download templates

  2. Publish package