Skip to content

Baseclass for Openloop Storage Control Strategies#619

Open
elenya-grant wants to merge 4 commits intoNatLabRockies:developfrom
elenya-grant:dispatch/ol_storage_baseclass
Open

Baseclass for Openloop Storage Control Strategies#619
elenya-grant wants to merge 4 commits intoNatLabRockies:developfrom
elenya-grant:dispatch/ol_storage_baseclass

Conversation

@elenya-grant
Copy link
Collaborator

@elenya-grant elenya-grant commented Mar 23, 2026

Baseclass for Openloop Storage Control Strategies

Introducing a baseclass for open-loop storage control strategies. This is intended to make the addition of new open-loop storage control strategies easier by defining the expected outputs of the storage controller.

Section 1: Type of Contribution

  • Feature Enhancement
    • Framework
    • New Model
    • Updated Model
    • Tools/Utilities
    • Other (please describe):
  • Bug Fix
  • Documentation Update
  • CI Changes
  • Other (please describe):

Section 2: Draft PR Checklist

  • Open draft PR
  • Describe the feature that will be added
  • Fill out TODO list steps
  • [-] Describe requested feedback from reviewers on draft PR
  • [-] Complete Section 7: New Model Checklist (if applicable)

TODO:

  • Step 1
  • Step 2

Type of Reviewer Feedback Requested (on Draft PR)

Structural feedback:

Implementation feedback:

Other feedback:

Section 3: General PR Checklist

  • PR description thoroughly describes the new feature, bug fix, etc.
  • [-] Added tests for new functionality or bug fixes
  • Tests pass (If not, and this is expected, please elaborate in the Section 6: Test Results)
  • Documentation
    • Docstrings are up-to-date
    • Related docs/ files are up-to-date, or added when necessary
    • Documentation has been rebuilt successfully
    • [-] Examples have been updated (if applicable)
  • CHANGELOG.md
    • At least one complete sentence has been provided to describe the changes made in this PR
    • After the above, a hyperlink has been provided to the PR using the following format:
      "A complete thought. [PR XYZ]((https://github.com/NatLabRockies/H2Integrate/pull/XYZ)", where
      XYZ should be replaced with the actual number.

Section 3: Related Issues

A step in issue #564

Section 4: Impacted Areas of the Software

Section 4.1: New Files

  • h2integrate/control/control_strategies/storage/openloop_storage_control_base.py
    • StorageOpenLoopControlBaseConfig: base configuration class for open-loop storage control
    • StorageOpenLoopControlBase: base class for open-loop storage control

Section 4.2: Modified Files

  • h2integrate/control/control_strategies/storage/demand_openloop_storage_controller.py
    • DemandOpenLoopStorageControllerConfig: updated to use StorageOpenLoopControlBaseConfig
    • DemandOpenLoopStorageController: updated to use StorageOpenLoopControlBase
  • h2integrate/control/control_strategies/storage/simple_openloop_controller.py
    • SimpleStorageOpenLoopControllerConfig: updated to use StorageOpenLoopControlBaseConfig
    • SimpleStorageOpenLoopController: StorageOpenLoopControlBase

Section 5: Additional Supporting Information

Section 6: Test Results, if applicable

@elenya-grant elenya-grant added ready for review This PR is ready for input from folks dispatch related to dispatch and control labels Mar 23, 2026
@elenya-grant elenya-grant marked this pull request as ready for review March 23, 2026 20:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dispatch related to dispatch and control ready for review This PR is ready for input from folks

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants