Skip to content

PowNet v2.1 (Refactoring and Feature Release)

Latest
Compare
Choose a tag to compare
@phumthep phumthep released this 26 Oct 03:57
· 7 commits to master since this release

This release of PowNet introduces major refactoring for improved code organization and maintainability, along with several new features to enhance functionality and user experience.

**Key changes: **

  • **Simplified Modeling Workflow: ** All modules have been refactored to streamline the modeling process and make the codebase easier to understand and extend. This includes:
    • Reduce the number of function calls required by a user
    • Streamlined solver selection
    • Simplified user inputs by switching from config files to direct arguments in functions and classes
  • **Enhanced Modeling/Solver Capabilities: **
    • Enabled model updating at every simulation step instead of building an instance from scratch
    • Added rounding heuristics to improve the optimization problem-solving process
  • **New Analysis Features: **
    • Fixed modeling in a rolling horizon fashion
    • Allowed aggregation of generators at a node
    • Added the stochastic module for generating synthetic time series
    • Added locational marginal price (LMP) calculation and plotting functionality
    • Separated shortfall and curtailment penalty factors for more granular control over penalties
  • **Improved User Experience: **
    • Increased flexibility in selecting input and output folders. This allows users to install PowNet as a package and work within their own project directories
    • Added input checking to help users identify and correct potential errors in their input data

**Other improvements: **

  • **Increased Code Reliability: ** Added unit tests to ensure code quality
  • **Bug Fixes: ** Fixed the handling of line loss calculations.
  • **Improved Codebase: ** Revised folder structure for better organization.
  • **Enhanced Documentation: **
    • Revised CSV field descriptions for clarity
    • Added API documentation
  • **Code Cleanup: ** Deleted unused files to reduce clutter.