Skip to main content

r2x-reeds

ReEDS parser and transforms plugin for the r2x-core plugin framework.

CI Actions Quality Python PyPI License codecov Documentation

r2x-reeds integrates NREL ReEDS model data with r2x-core and infrasys. It provides a parser plugin for building infrasys.System objects from ReEDS data, plus a set of reusable post-parse transforms for common system-modification workflows.

Quickstart · Installation · What It Provides · Usage with r2x-core · Development · License

Quickstart

Install:

pip install r2x-reeds

Parse a ReEDS run directory into an infrasys.System:

from pathlib import Path

from r2x_core import DataStore, PluginContext
from r2x_reeds import ReEDSConfig, ReEDSParser

run_path = Path("path/to/reeds_run")

config = ReEDSConfig(
    solve_year=2030,
    weather_year=2012,
    case_name="test_Pacific",
)
ctx = PluginContext(
    config=config,
    store=DataStore.from_plugin_config(config, path=run_path),
)

system = ReEDSParser.from_context(ctx).run().system
print(system.name)

Installation

From PyPI

Python requirement: >=3.11, <3.14.

pip install r2x-reeds

Using uv:

uv add r2x-reeds

From Source

git clone https://github.com/NREL/r2x-reeds.git
cd r2x-reeds
uv sync --all-groups

What It Provides

  • ReEDSParser: reads ReEDS outputs and inputs (CSV/HDF5-backed mappings) into infrasys.System components and time series.
  • ReEDSUpgrader and run_reeds_upgrades(...): input version-detection and upgrade pipeline run during parser lifecycle.
  • Plugin entry point for r2x-core under the r2x_plugin group:
    • reeds-parser = r2x_reeds:ReEDSParser
  • Transform entry points under r2x.transforms:
    • add-pcm-defaults
    • add-emission-cap
    • add-electrolyzer-load
    • add-purchaser-load
    • add-ccs-credit
    • break-gens
    • add-imports
    • add-optimal-siting

Usage with r2x-core

r2x-reeds follows the r2x-core plugin lifecycle.

  • Build parser instances with PluginContext.
  • Run lifecycle hooks with .run().
  • Configure parsing through ReEDSConfig.
  • Apply optional r2x.transforms after parsing for scenario/system modifiers.

Development

Install dev dependencies:

uv sync --all-groups

Run the same checks used in CI:

uv run prek run --all-files --hook-stage pre-push

Targeted commands:

uv run pytest -q -m "not slow" --maxfail=1 --disable-warnings
uv run ty check ./src/r2x_reeds/

License

BSD 3-Clause. See LICENSE.txt.

Metadata

Release files for r2x-reeds 0.9.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for r2x-reeds 0.9.3
File Size Uploaded
r2x_reeds-0.9.3.tar.gz 79.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for r2x-reeds 0.9.3
File Interpreter ABI Platform
r2x_reeds-0.9.3-py3-none-any.whl Python 3 none any Details

Total release size: 172.6 kB

Release files / r2x_reeds-0.9.3.tar.gz

Download URL r2x_reeds-0.9.3.tar.gz
Size 79.7 kB
Tags Source
SHA-256 checksum
How to use checksums
09d8ccfb421d785f6a97ab4f1c3747a78cfe4a9a5ef0b239b3a14b0bef91736e
BLAKE2b-256 checksum
How to use checksums
3c330641ff02b7925b52f4c13b701a3262377a43b2c82445428c86141eab8590
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release files / r2x_reeds-0.9.3-py3-none-any.whl

Download URL r2x_reeds-0.9.3-py3-none-any.whl
Size 92.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
77cce3848d36d36e294c043bed5af122a41a42f7b5ff69b49a8db154a599a353
BLAKE2b-256 checksum
How to use checksums
15ea2c30bf7a21c28a31214f41027ec32af18bf4ebf6d1988d0c6b15cdd0109f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 15, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.9.3 This release

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page