Releases: GridOPTICS/GridPACK
GridPACK v3.4 Release
Release Notes for GridPACK v3.4
Version 3.4 contains no major revisions to the version requirements for building GridPACK. Libraries and tools that could successfully build version 3.3 should continue to work for version 3.4
A summary of updates to GridPACK is given below:
• A real-time path rating application based on power flow and dynamic simulation modules has been created. This application defines source and destination areas and evaluates the stability of the tie-lines between the source and destination against contingencies as the power generation in the source area and loads in the destination area are scaled up or down. More documentation on algorithm and details of running the code are available in the README file in the GridPACK src/application/rtpr directory or from the Github repository at https://github.com/GridOPTICS/GridPACK/blob/release/3.4/src/applications/rtpr/README.md.
• The Environment module was extended to support the addition of a “help” capability that can be used to add help documentation to individual applications at runtime. These can be accessed invoking the application with a traditional –h or –help option.
• A power system stabilizer model was added to the dynamic simulation module. This corresponds to the PSSSIM model in standard .dyr files.
• Additional improvements in the build system have been made. The build documentation has been updated to reflect more widespread use of pre-built modules containing many of the libraries used by GridPACK. These can be installed relatively easily using utilities like yum or apt-get instead of users having to download and build them by hand. The build system has also been modified to automatically detect some libraries that may be needed by the build that previously needed to be added by hand.
• The downloading and building of the global Global Arrays libraries has be incorporated as an option in the build, which eliminates the need for downloading and building the library externally. However, we have found that this does not work on some platforms so we are still including documentation on using an external GA library. The automatic download and build can be accessed by including the option ‘-D BUILD_GA:BOOL=ON’ in the cmake configuration invocation.
• The requirement that the PETSc libraries linked to GridPACK be built with the C++ interface was removed. This enables most pre-built PETSc modules to be used with GridPACK instead of having to build them by hand. We have found that many prebuilt modules are built with real instead of complex variables and that the real builds have introduced some failures in the GridPACK test suite on some platforms for higher versions of PETSc (greater than about 8.0). For this reason, we recommend that users link to older versions of PETSc if using a build based on real variables. We have tested GridPACK up to PETSc version 11 but have seen some failures in some tests in the GridPACK test suite at the higher version numbers.
• A network level data collection object has been added to the network. This enables additional annotations that apply to the network as a whole to be added to the network object. The main reason for doing this was to provide a mechanism for storing information from network configuration files (PSS/E raw files describing the network topology and parameters) that did not describe individual buses or branches.
• An input stream object has been developed and used to replace the standard ifstream object used in the PSS/E parsers. This will enable GridPACK to switch between different input sources (file systems, data bases, etc.) seamlessly.
GridPACK v3.3 Release
As of GridPACK release 3.3, the minimal allowable version of CMake that is necessary to build GridPACK is CMake 3.3.0. Please update to a version of CMake greater than 3.3.0 on any platform that you are using to build GridPACK. On some platforms, newer versions of CMake are accessed using the command “cmake3” instead of “cmake”. This is discussed further in the build documentation.
A summary of updates to GridPACK is given below:
• The build documentation has been completely reviewed and revamped to make it simpler to build GridPACK. On most platforms, explicitly building libraries such as boost and MPI has been replaced by downloading modules using tools such as yum or get apt-get. We have made every effort to clarify the build process and reduce the number of steps required to get a working installation of GridPACK up and running. If you encounter any problems, feel free to contact us directly, either by emailing us at [email protected] or by creating an issue at https://github.com/GridOPTICS/GridPACK/issues. Some of the improvements in the build system have required us to move to CMake 3.3.0 or greater so users should plan on upgrading their version of CMake. This should only require minimal changes to existing build scripts.
• We have added a new StatBlock module to GridPACK that is designed to gather the results of contingency analysis calculations into a single large distributed arrays and to perform elementary analyses on the results. The power flow contingency analysis application has been extended to use this functionality and now provides statistics that have been gathered over all contingencies in the system. For large power grid networks, this can represent 10’s of thousands of separate calculations. The European Open Model, which is included as a test case for the current contingency analysis application, has over 20,000 contingencies for a network with over 10,000 buses. Users can get a complete description of the available output for the contingency analysis application by looking at the README.md file in the contingency analysis application directory. Data that is collected from contingency analysis calculations includes
o A performance index calculation of the severity of each contingency
o RMS fluctuations of the voltage magnitude and phase angle for each bus across all contingencies
o The maximum and minimum voltage magnitude and phase angle for each bus across all contingencies
o RMS fluctuations in the real and reactive power for each generator, as well as the maximum and minimum values, across all contingencies
o The total number of faults found on each line across all contingencies
• New instructions for building GridPACK on MacOS High Sierra have been added to the web page.
• Static libraries are no longer required for GridPACK builds. This may be useful for interfacing with other languages or libraries, such as Python.
Bug Fixes:
• Isolated buses in contingency calculation were not getting properly reset for the next calculation (if the isolation was caused by removing a line from the network). This has been fixed so that all lines are reset to the same status as in the base case after each contingency.
• Matrix operations on complex matrices using an underlying build of PETSc based on real matrices were failing because the partitioning of the rows and columns of the real and imaginary parts was not necessarily the same. This has been fixed.
• Several problems with the dense matrix multiply were fixed, including unnecessary replication of communicators and a significant memory leak. This lead to improved performance and more robustness in the Kalman filter application.
GridPACK v3.2 Release
Release Notes for Version 3.2
Instructions for building GridPACK can be found at https://www.gridpack.org/wiki/index.php/How_to_Build_GridPACK.
The GridPACK applications directory was significantly restructured to eliminate
duplicate codes. The power grid applications now serve as test codes for the
corresponding application modules. There are no separate test codes for the
application modules. The online user manual has also been restructured to
reflect the changes in directory structure. More test problems have been
included with the existing applications so that users have a ready-made set of
test calculations reflecting a range of problem sizes. These are automatically
installed in the application directories when GridPACK is built. GridPACK still
runs only small test cases if the test suite is run.
The PTI33 parser for parsing PSS/E version 33 formatted files has been updated
to include more v33 parameters. It has also been verified against simulations
based on the v23 formatted input. The v33 parser has also been updated so that
it handles composite loads correctly. A command is available that can be used to
decompose a composite load into extra buses and branches used in dynamic
simulation.
The dynamic simulation module has been modified to handle composite loads
correctly.
The Kalman filter dynamic state estimation module has been added to the GridPACK
applications directory. This module is still poorly scaling and slows down
significantly for large problem sizes. However, it is available for users that
are interested in trying it out.
A new directory called "scripts" has been added to the source directory. This
contains build scripts that have been used to build the third-party libraries
used in GridPACK on different platforms. These scripts can serve as a starting
point for builds on users systems.
A new build using Personal Package Archives (PPA) has been added to the
GridPACK build. This build can be used on Ubuntu systems to create a working
copy of the entire GridPACK framework (including third-party library
dependencies) with just a few commands.
In addition to the above changes, minor bug fixes and performance improvements
have been added to the GridPACK framework.
GridPACK 3.1 Release
GridPACK™ version 3.1 includes several new features as well as bug fixes and improved documentation. These are enumerated below.
• A new implementation of the dynamic simulation application based on inversion of the full Y-matrix has been included in GridPACK. This implementation also supports several generator models beyond the classical generator as well as models for exciters and governors. Models for relays and dynamic loads have also been included. The new implementation has been set up as a mini-framework, so the additional models can be added relatively easily, as needed. The PSS/E parser modules have been modified as well to read in parameters for the new models.
• A GlobalStore module has been added to GridPACK to enable task-based simulations to exchange data easily. Results from one simulation can be accessed by another simulation, even if the second simulation is running on another processor. This functionality is useful for contingency- or scenario-based calculations that are being distributed to processors on the basis of availability.
• A BusTable module has been created to support vectors of data that are associated with busses. The original input is a CVS-style file that has a string of data associated with a particular device on a bus (e.g. a generator). Examples of this type of data are time series measurements on on generators for Kalman Filter simulations and scenarios for outputs from wind generators.The BusTable module reads in this data and then makes it available to particular bus devices on any processors that might own the device.
• The overview documentation has been thoroughly revised to reflect new functionality in GridPACK as well as reviewing it for clarity and readability. New documents describing the validation of the GridPACK modules has also been added to the GridPACK website.
• Documentation on doing a native build of GridPACK on Windows has been added to the GridPACK webpage. This build is still highly problematic, particularly with newer versions of Visual Studios, but users that are interested in trying to build GridPACK on Windows can find some information on how to do it.