Skip to content

feat: support shunt and non PV injection reassignments for jax code#49

Open
BenjPetr wants to merge 4 commits into
mainfrom
feat/add_shunt_to_bsdf
Open

feat: support shunt and non PV injection reassignments for jax code#49
BenjPetr wants to merge 4 commits into
mainfrom
feat/add_shunt_to_bsdf

Conversation

@BenjPetr

Copy link
Copy Markdown
Collaborator

Checklist

Please check if the PR fulfills these requirements:

  • PR Title follows conventional commit messages
  • Tests for the changes have been added (for bug fixes / features)
  • Docs have been added / updated (for bug fixes / features)
  • All commits in this PR are DCO signed-off (see CONTRIBUTING.md)

Does this PR already have an issue describing the problem?

Fixes #

What is the new behavior (if this is a feature change)?

support shunt and non PV injection reassignments

Does this PR introduce a breaking change?

  • Yes
  • No

Copilot AI review requested due to automatic review settings April 16, 2026 08:47

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds BSDF test and kernel support for bus-split scenarios where shunts and non-regulating injections are reassigned, and updates tests to be robust to bus ID ordering and dangling-bus handling.

Changes:

  • Extend BSDF test helpers to select branches/shunts/injections by string IDs, validate selections, and recompute aggregated bus injections after reassignment.
  • Update NumPy + JAX BSDF tests to derive bus reordering from bus IDs and to compare dangling-bus voltages with relaxed tolerances.
  • Extend BSDF full-rank update implementations (NumPy + JAX) to include shunt reassignment deltas; expose injection IDs via StringNetworkInformation.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
tests/test_helper/bsdf_helper.py Adds richer BSDF test case definitions (by asset IDs), reassignment helpers, and reference one-step loadflow helpers returning string info.
tests/numpy/test_bsdf.py Uses derived bus ordering + dangling-bus masking/tolerances for reference comparisons.
tests/jax/test_bsdf_jax.py Mirrors NumPy test updates for JAX implementation.
src/dc_plus/preprocess/create_network_data.py Populates StringNetworkInformation.injection_ids from importer data.
src/dc_plus/numpy/bsdf_full_rank.py Refactors full-rank update and adds shunt reassignment contribution support.
src/dc_plus/jax/bsdf.py Adds shunt reassignment contribution support to the dense inverse-transpose updater.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/dc_plus/interfaces/network_information.py
Comment thread src/dc_plus/numpy/bsdf_full_rank.py
Comment thread src/dc_plus/jax/bsdf.py Outdated
Comment thread tests/test_helper/bsdf_helper.py
@sonarqube-mccs

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants