Skip to content

Latest commit

 

History

History
153 lines (133 loc) · 7.05 KB

CHANGELOG.md

File metadata and controls

153 lines (133 loc) · 7.05 KB

Release Changelog

v.03

  • Added BusSignalVoltageOut bus model with voltage signal outlets and current signal inlets.
  • Added BusSignalVoltageIn bus model with voltage signal inlets and current signal outlets.
  • Removed BusToSignalAdapter. Prefer BusSignalVoltageOut or BusSignalVoltageIn.
  • Added Bus::setFault to apply or clear a fault to ground directly at a bus.
  • Removed the BusFault class in favor of Bus::setFault.
  • Added enable and disable solver events that put a branch in or out of service.
  • verify() returns Model::ConfigurationChecks listing every configuration problem instead of an error count.
  • Added Model::ParameterReader
  • Removed legacy PhasorDynamics component constructors in favor of constructors taking model data.

v0.2

  • Added 3, 10, 37, and 39 bus test cases.
  • Updated documentation.
  • Added support for Read the Docs
  • 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 GenClassical as supported device class in JSON parser.
  • Added more context information to JSON parser errors.
  • Added Logger class.
  • 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 CsrMatrix class.
  • Added verify step for signal node links in system model components
  • Added support for DependencyTracking::Variable in PowerElectronics models.
  • Updated Jacobian value storage from ScalarT to RealT.
  • Added a header file defining constants to be used throughout the code.
  • Added GridKitDocs target 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 Node class to the PowerElectronics module to separate nodes from circuit components.
  • Refactored Jacobian assembly in PowerElectronics module to reuse the CSR pattern.
  • Refactored Jacobian assembly in PhasorDynamics module to reuse the CSR pattern.
  • Removed COO_Matrix class use in PowerElectronics module.
  • Added phasor dynamics application to generalize examples
  • Added LoadZIP model component type.
  • Added component model developer checklist to a README file.
  • Added IEEEST Stabilizer Model
  • Added SEXS-PTI Exciter Model
  • Added ESDC1A Exciter Model
  • Added GENSAL Machine Model
  • Added 200 Bus Synthetic Illinois Case
  • Added node objects to PowerElectronics module & updated all examples to make use of them.
  • Separated internal and external residuals of PowerElectronics models.
  • Added CliArgs class for better management of command-line options.
  • Remove data copying between system and components in PowerElectronics models.
  • Added multi-contingency analysis application.
  • Added BusToSignalAdapter component for communicating bus voltages and injection currents.
  • Added cmake-format hooks, including in pre-commit.
  • Added off-nominal tap ratio and phase shift support to the PhasorDynamics Branch model.
  • Added portable Vector class to GridKit
  • Added support for running IDA with fixed time steps
  • Added ConstantSignalSource component as first use case for BusToSignalAdapter.
  • Added IDA option to suppress algebraic variables in local error tests.
  • Added GASTPTI governor model implementation for PhasorDynamics.
  • Removed COO_Matrix class.
  • Added portable Vector class and policy-based memory utilities.
  • Add new LinearSolver interface for linear solvers.
  • Added new Rosenbrock integrator.
  • Clarified naming conventions for macros.
  • Added dt_fixed, rel_tol, abs_tol, max_steps, and max_order options to phasor dynamics solver JSON files and renamed the dt option to dt_monitor.
  • Added EMT model and operator documentation.
  • Added REGCA converter model implementation for PhasorDynamics.
  • Remove unnecessary data copying while evaluating PowerElectronics models, speeding up large simulations by up to 3x
  • Added HYGOV governor model implementation for PhasorDynamics.
  • Added REPCA controller model implementation for PhasorDynamics.
  • Added REECB electrical-control model implementation for PhasorDynamics.
  • Added cases and validation for ACTIVSg10k, ACTIVSg200, ACTIVSg500, and WECC240.
  • Added ACTIVSg2000, Hawaii, and IEEE39 cases and validation.
  • Added IDA option to choose the consistent initial condition calculation type.
  • Implemented tagDifferentiable() for PowerElectronics models.
  • Fixed the TenGenGenrou example to output the correct omega values.
  • Added GridKit_ENABLE_DEVELOPER_MODE CMake option; in developer mode the Logger defaults to EVERYTHING verbosity.
  • Added Logger::raiseVerbosity(), which raises the verbosity without lowering a higher level.
  • Changed most of the core library code outputs to use the Logger instead of std::cout/std::cerr.

v0.1

  • 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.

v0.0.7

  • 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.

v0.0.6

  • Refactored CMake to use and export targets
  • Bug fixes

0.0.5

  • Parameter estimation example
  • Power flow model composer with test example
  • Improved CMake build
  • Updated documentation

0.0.4

  • Add branch component model.
  • Add generator with governor component model.
  • Add generator connected to infinite bus example.

0.0.3

  • Add basic system composer.
  • Make GridKit forward compatible with Sundials >= 4.0

0.0.2

  • Add dynamic constraint Ipopt interface and usage example.
  • Add Generator 4 component model to the library.
  • Require CMake >= 3.0 to build GridKit

0.0.1

  • Initial release. Skeleton of the library to be developed.