- Added 3, 10, 37, and 39 bus test cases.
- Updated documentation.
- Added JSON parsing.
- Automatic differentiation with enzyme (w.r.t. internal and external variables).
- Added PR and issue templates.
- Added Genrou class unit test and example.
- Added Dev container.
- Added back removed tests.
- Added the ability to print matrices to matrix market files for later analysis.
- Added input format specifications.
- Improved IDA interface.
- SUNDIALS interface updates.
- Refactored and reorganized examples.
- Updated variable names and function signatures to follow conventions.
- Added classical generator model.
- Added clang formatting pre-commit.
- CMake fixes.
- Fixed warnings, memory leaks, and failed asserts.
- Added Tgov1 example.
- Added 10 generator example.
- Improved data structures.
- Removed dead code.
- Added signal node connectivity tools.
- Upgraded to Spack 1.0.0.
- Added
GenClassicalas supported device class in JSON parser. - Added more context information to JSON parser errors.
- Added
Loggerclass. - Added
CliOptionsfor simple command-line parsing. - Added public function to encapsulate use of nlohmann/json and magic_enum from users.
- Added complete basic consumer example project used for testing installation
- Added
CsrMatrixclass. - Added
verifystep for signal node links in system model components - Added support for DependencyTracking::Variable in PowerElectronics models.
- Updated Jacobian value storage from
ScalarTtoRealT. - Added a header file defining constants to be used throughout the code.
- Added
GridKitDocstarget for Doxygen documentation. - Added a header file defining common math functions (e.g., sigmoid) to be used throughout the code.
- Added capability to print monitored variables in multiple formats, triggered from
Ida::runSimulation. - Added IDA statistics object which can be accumulated over multiple simulations.
- Minor performance improvements to residual evaluation in PowerElectronics module.
- Added full support for sparse Jacobians obtained with Enzyme in PhasorDynamics.
- Added
Nodeclass to the PowerElectronics module to separate nodes from circuit components. - Refactored Jacobian assembly in
PowerElectronicsmodule to reuse the CSR pattern. - Refactored Jacobian assembly in
PhasorDyanmcicsmodule to reuse the CSR pattern.
- Refactored code to support adding different model families.
- Added PowerElectronics family of models.
- Prototype for sparse system matrix assembly (for PowerElectronics only).
- Added PhasorDynamics family of models.
- Unit testing framework.
- GridKit now depends on Sundials >= 7.0.
- Added parser for Matpower files.
- Added system composer, which assembles power flow models from components based on input from Matpower file.
- Updated bus and created generator factory.
- GridKit now depends on Sundials >= 6.0.
- GridKit now requires C++17 compliant compiler.
- Bug fixes.
- Refactored CMake to use and export targets
- Bug fixes
- Parameter estimation example
- Power flow model composer with test example
- Improved CMake build
- Updated documentation
- Add branch component model.
- Add generator with governor component model.
- Add generator connected to infinite bus example.
- Add basic system composer.
- Make GridKit forward compatible with Sundials >= 4.0
- Add dynamic constraint Ipopt interface and usage example.
- Add Generator 4 component model to the library.
- Require CMake >= 3.0 to build GridKit
- Initial release. Skeleton of the library to be developed.