Skip to content

Refactor phasor dynamics bus and system classes #604

Description

@pelesh

Summary

There are a few features that need to be implemented in order to enable PhasorDynamics::SystemModel partitioning and subsequently implementation of an interface to partitioned solvers. See #143 and #323, as well as #463.

@superwhiskers @alexander-novo @nkoukpaizan @abdourahmanbarry @lukelowry @Steven-Roberts

Rationale

Bus (or rather BusBase class) and SystemSolver class need to provide features to support partitioning a system into subsystems. Enabling hierarchical modeling would allow applying different methods from a multimethod solver to different system partitions.

Description

Some thoughts how to proceed:

  • Consider adding feature to the SystemModel to take other SystemModel instances as components.
  • Consider enabling SystemModel to identify buses that are used for external connections so they can be used as components in a larger system.
  • Add subsystem specification to JSON input file format.
  • Remove pointers to buses from component model constructors. Set connection to buses in a similar manner as connections to signal nodes.
  • Consider adding signal-connected buses as proposed in Add BusSignalVoltageOut and BusSignalVoltageIn bus models #602.

Additional information

This issue is to discuss prep work needed for partitioned models. PR #573 illustrates well what support is needed for hierarchical modeling.

Activity

  1. added this to the Release 0.3 milestone on Oct 5, 2026
  2. self-assigned this
    on Oct 5, 2026
  3. added theissue type on Oct 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions