Skip to content

Commit c37a3be

Browse files
committed
Prepare v0.1 release (#81)
* Update documentation for v0.1 release.
1 parent fb338c2 commit c37a3be

File tree

21 files changed

+114
-891
lines changed

21 files changed

+114
-891
lines changed
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
## Description
2+
3+
_Please describe the issue that is addressed (bug, new feature,
4+
documentation, enhancement, etc.). Please also include relevant motivation and
5+
context. List any dependencies that are required for this change._
6+
7+
_Closes # (issue)_
8+
9+
10+
## Proposed changes
11+
12+
_Describe how your changes here address the issue and why the proposed changes
13+
should be accepted._
14+
15+
## Checklist
16+
17+
_Put an `x` in the boxes that apply. You can also fill these out after creating
18+
the PR. If you're unsure about any of them, don't hesitate to ask. We're here
19+
to help! This is simply a reminder of what we are going to look for before
20+
merging your code._
21+
22+
- [ ] I have read the [Contributing Guide](CONTRIBUTING.md)
23+
- [ ] Functionality and unit tests pass locally with my changes
24+
- [ ] The code builds with flags `-Wall -Wconversion -Wextra` without any
25+
compiler warnings
26+
- [ ] I have added regression tests that prove my fix is effective.
27+
- [ ] I have updated the documentation (if appropriate)
28+
29+
## Further comments
30+
31+
_If this is a relatively large or complex change, kick off the discussion by explaining
32+
why you chose the solution you did and what alternatives you considered, etc..._

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,14 @@
11
# Release Changelog
22

3+
## v0.1
4+
5+
- Refactored code to support adding different model families.
6+
- Added PowerElectronics family of models.
7+
- Prototype for sparse system matrix assembly (for PowerElectronics only).
8+
- Added PhasorDynamics family of models.
9+
- Unit testing framework.
10+
- GridKit now depends on Sundials >= 7.0.
11+
312
## v0.0.7
413

514
- Added parser for Matpower files.

CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@ cmake_minimum_required(VERSION 3.12)
1111
project(gridkit)
1212

1313
set(PACKAGE_NAME "GRIDKIT")
14-
set(PACKAGE_STRING "GRIDKIT 0.0.7")
14+
set(PACKAGE_STRING "GRIDKIT 0.1.0")
1515
set(PACKAGE_TARNAME "gridkit")
1616

1717
set(PACKAGE_VERSION_MAJOR "0")
18-
set(PACKAGE_VERSION_MINOR "0")
19-
set(PACKAGE_VERSION_PATCH "7")
18+
set(PACKAGE_VERSION_MINOR "1")
19+
set(PACKAGE_VERSION_PATCH "0")
2020

2121
set(PACKAGE_VERSION "${PACKAGE_VERSION_MAJOR}.${PACKAGE_VERSION_MINOR}.${PACKAGE_VERSION_PATCH}")
2222

CONTRIBUTING.md

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,64 @@
11
# Developer Guidelines
22

3+
## Git workflows
4+
5+
### Keeping your local repository updated
6+
7+
Main development branch is `develop`. The `main` branch is used for stable,
8+
ready-to-release code. Use `git pull` to keep `develop` branch in your local
9+
repo updated. If you get conflicts when pulling from upstream reset your
10+
local `develop` to the upstream:
11+
```
12+
git fetch
13+
git checkout develop
14+
git reset --hard origin/develop
15+
```
16+
Here `origin` is the name of the remote upstream repository in your local
17+
repository. If you set custom name for your remote, replace `origin` with
18+
that name.
19+
20+
21+
### Feature branches
22+
23+
For each new feature feature create a new branch from `develop`. Name your
24+
feature branch `<developer name>/<short_feature_description>_dev. Bug fix
25+
branches should follow similar pattern, only ending with `_fix`. Always
26+
use underscores to separate different words.
27+
```
28+
git checkout -b shaked/sparse_matrix_transpose_dev
29+
```
30+
In some instances you also might want to branch off a feature branch, for
31+
example to fix a bug or suggest significant changes.
32+
33+
34+
### Merging your feature branch
35+
36+
Feature branches should be merged back to the branch from where they were
37+
branched off (typically `develop`). All merging should be done through
38+
GutHub pull request. Before creating a pull request make sure:
39+
- All tests pass.
40+
- Code compiles cleanly with flags `-Wall -Wpedantic -Wconversion -Wextra`.
41+
- The new code follows GridKit™ style guidelines.
42+
- There are unit tests for the new code.
43+
- The new code is documented.
44+
- The feature branch is rebased with respect to the target branch.
45+
46+
To rebase your feature branch, first ensure the target branch is up-to-date.
47+
Then use
48+
```
49+
git checkout <feature branch>
50+
git rebase -i <target branch>
51+
```
52+
to rebase your branch to the target branch. Follow the instructions on the
53+
screen. You may need to resolve rebase conflicts.
54+
55+
Once your branch is ready, create pull request using the template provided
56+
in the GridKit™ repository. There has to be at least one approval before
57+
the pull request can be merged.
58+
59+
60+
61+
362
## Code Style
463

564
### Existing non-compliant code

Doxyfile

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,3 @@
1-
# Doxyfile 1.8.18
2-
#
3-
# Lawrence Livermore National Laboratory is operated by Lawrence Livermore
4-
# National Security, LLC, for the U.S. Department of Energy, National
5-
# Nuclear Security Administration under Contract DE-AC52-07NA27344.
6-
#
7-
# This document was prepared as an account of work sponsored by an agency
8-
# of the United States government. Neither the United States government nor
9-
# Lawrence Livermore National Security, LLC, nor any of their employees
10-
# makes any warranty, expressed or implied, or assumes any legal liability
11-
# or responsibility for the accuracy, completeness, or usefulness of any
12-
# information, apparatus, product, or process disclosed, or represents that
13-
# its use would not infringe privately owned rights. Reference herein to
14-
# any specific commercial product, process, or service by trade name,
15-
# trademark, manufacturer, or otherwise does not necessarily constitute or
16-
# imply its endorsement, recommendation, or favoring by the United States
17-
# government or Lawrence Livermore National Security, LLC. The views and
18-
# opinions of authors expressed herein do not necessarily state or reflect
19-
# those of the United States government or Lawrence Livermore National
20-
# Security, LLC, and shall not be used for advertising or product
21-
# endorsement purposes.
22-
#
23-
241
# This file describes the settings to be used by the documentation system
252
# doxygen (www.doxygen.org) for a project.
263
#

README.md

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
# GridKit™
22

3-
This is experimental code for prototyping interfaces for dynamic
4-
simulations, sensitivity analysis and optimization. Target applications
5-
are power grids, but the methodology and the framework could be used
6-
in other areas without major modifications.
3+
The objective of GridKit™ is to provide a modeling framework for power
4+
systems simulations and analysis that can support multiple advanced
5+
analysys methods, such as dynamic constrained optimization and partitioned
6+
numerical integrators for systems of differential and algebraic equations.
7+
While target applications are power grids, but the methodology and the
8+
framework could be used in other areas without major modifications.
79

810
## Installation Guide
911

@@ -48,5 +50,8 @@ as functionality test and executed by running `ctest` in the build directory.
4850

4951
## Contributors
5052

51-
GridKit™ is written by Slaven Peles (peless@ornl.gov) and has received contributions
52-
from Tamara Becejac (Avangrid), R. Cameron Rutherford (PNNL), Asher J. Mancinelli (NVIDIA), and Reid Gomillion (Virginia Tech).
53+
GridKit™ is written by Slaven Peles (peless@ornl.gov) and has received
54+
contribution from Abdourahman Barry (Virginia Tech), Tamara Becejac (Avangrid),
55+
Adam Birchfield (Texas A&M), Reid Gomillion (Virginia Tech), Nicholson
56+
Koukpaizan (ORNL), Asher J. Mancinelli (NVIDIA), Alex Novotny (Virginia Tech),
57+
Shaked Regev (ORNL), and R. Cameron Rutherford (PNNL).

cmake/FindEnzyme.cmake

Lines changed: 0 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,4 @@
11
#
2-
# Copyright (c) 2017, Lawrence Livermore National Security, LLC.
3-
# Produced at the Lawrence Livermore National Laboratory.
4-
# Written by Slaven Peles <peles2@llnl.gov>.
5-
# LLNL-CODE-718378.
6-
# All rights reserved.
7-
#
8-
# This file is part of GridKit™. For details, see github.com/LLNL/GridKit
9-
# Please also read the LICENSE file.
10-
#
11-
# Redistribution and use in source and binary forms, with or without
12-
# modification, are permitted provided that the following conditions are met:
13-
# - Redistributions of source code must retain the above copyright notice,
14-
# this list of conditions and the disclaimer below.
15-
# - Redistributions in binary form must reproduce the above copyright notice,
16-
# this list of conditions and the disclaimer (as noted below) in the
17-
# documentation and/or other materials provided with the distribution.
18-
# - Neither the name of the LLNS/LLNL nor the names of its contributors may
19-
# be used to endorse or promote products derived from this software without
20-
# specific prior written permission.
21-
#
22-
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
23-
# CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
24-
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25-
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26-
# DISCLAIMED. IN NO EVENT SHALL LAWRENCE LIVERMORE NATIONAL
27-
# SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE
28-
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
29-
# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
30-
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31-
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
32-
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33-
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISINGIN ANY
34-
# WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
35-
# THE POSSIBILITY OF SUCH DAMAGE.
36-
#
37-
# Lawrence Livermore National Laboratory is operated by Lawrence Livermore
38-
# National Security, LLC, for the U.S. Department of Energy, National
39-
# Nuclear Security Administration under Contract DE-AC52-07NA27344.
40-
#
41-
# This document was prepared as an account of work sponsored by an agency
42-
# of the United States government. Neither the United States government nor
43-
# Lawrence Livermore National Security, LLC, nor any of their employees
44-
# makes any warranty, expressed or implied, or assumes any legal liability
45-
# or responsibility for the accuracy, completeness, or usefulness of any
46-
# information, apparatus, product, or process disclosed, or represents that
47-
# its use would not infringe privately owned rights. Reference herein to
48-
# any specific commercial product, process, or service by trade name,
49-
# trademark, manufacturer, or otherwise does not necessarily constitute or
50-
# imply its endorsement, recommendation, or favoring by the United States
51-
# government or Lawrence Livermore National Security, LLC. The views and
52-
# opinions of authors expressed herein do not necessarily state or reflect
53-
# those of the United States government or Lawrence Livermore National
54-
# Security, LLC, and shall not be used for advertising or product
55-
# endorsement purposes.
56-
#
57-
582
#[[
593
604
Finds Enzyme Clang plugin

cmake/FindIpopt.cmake

Lines changed: 0 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,4 @@
11
#
2-
# Copyright (c) 2017, Lawrence Livermore National Security, LLC.
3-
# Produced at the Lawrence Livermore National Laboratory.
4-
# Written by Slaven Peles <peles2@llnl.gov>.
5-
# LLNL-CODE-718378.
6-
# All rights reserved.
7-
#
8-
# This file is part of GridKit™. For details, see github.com/LLNL/GridKit
9-
# Please also read the LICENSE file.
10-
#
11-
# Redistribution and use in source and binary forms, with or without
12-
# modification, are permitted provided that the following conditions are met:
13-
# - Redistributions of source code must retain the above copyright notice,
14-
# this list of conditions and the disclaimer below.
15-
# - Redistributions in binary form must reproduce the above copyright notice,
16-
# this list of conditions and the disclaimer (as noted below) in the
17-
# documentation and/or other materials provided with the distribution.
18-
# - Neither the name of the LLNS/LLNL nor the names of its contributors may
19-
# be used to endorse or promote products derived from this software without
20-
# specific prior written permission.
21-
#
22-
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
23-
# CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
24-
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25-
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26-
# DISCLAIMED. IN NO EVENT SHALL LAWRENCE LIVERMORE NATIONAL
27-
# SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE
28-
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
29-
# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
30-
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31-
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
32-
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33-
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISINGIN ANY
34-
# WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
35-
# THE POSSIBILITY OF SUCH DAMAGE.
36-
#
37-
# Lawrence Livermore National Laboratory is operated by Lawrence Livermore
38-
# National Security, LLC, for the U.S. Department of Energy, National
39-
# Nuclear Security Administration under Contract DE-AC52-07NA27344.
40-
#
41-
# This document was prepared as an account of work sponsored by an agency
42-
# of the United States government. Neither the United States government nor
43-
# Lawrence Livermore National Security, LLC, nor any of their employees
44-
# makes any warranty, expressed or implied, or assumes any legal liability
45-
# or responsibility for the accuracy, completeness, or usefulness of any
46-
# information, apparatus, product, or process disclosed, or represents that
47-
# its use would not infringe privately owned rights. Reference herein to
48-
# any specific commercial product, process, or service by trade name,
49-
# trademark, manufacturer, or otherwise does not necessarily constitute or
50-
# imply its endorsement, recommendation, or favoring by the United States
51-
# government or Lawrence Livermore National Security, LLC. The views and
52-
# opinions of authors expressed herein do not necessarily state or reflect
53-
# those of the United States government or Lawrence Livermore National
54-
# Security, LLC, and shall not be used for advertising or product
55-
# endorsement purposes.
56-
#
57-
582
#[[
593
604
Finds Ipopt include directory and libraries and exports target `Ipopt`

cmake/FindSuiteSparse.cmake

Lines changed: 0 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,4 @@
11
#
2-
# Copyright (c) 2017, Lawrence Livermore National Security, LLC.
3-
# Produced at the Lawrence Livermore National Laboratory.
4-
# Written by Slaven Peles <peles2@llnl.gov>.
5-
# LLNL-CODE-718378.
6-
# All rights reserved.
7-
#
8-
# This file is part of GridKit™. For details, see github.com/LLNL/GridKit
9-
# Please also read the LICENSE file.
10-
#
11-
# Redistribution and use in source and binary forms, with or without
12-
# modification, are permitted provided that the following conditions are met:
13-
# - Redistributions of source code must retain the above copyright notice,
14-
# this list of conditions and the disclaimer below.
15-
# - Redistributions in binary form must reproduce the above copyright notice,
16-
# this list of conditions and the disclaimer (as noted below) in the
17-
# documentation and/or other materials provided with the distribution.
18-
# - Neither the name of the LLNS/LLNL nor the names of its contributors may
19-
# be used to endorse or promote products derived from this software without
20-
# specific prior written permission.
21-
#
22-
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
23-
# CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
24-
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25-
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26-
# DISCLAIMED. IN NO EVENT SHALL LAWRENCE LIVERMORE NATIONAL
27-
# SECURITY, LLC, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE
28-
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
29-
# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
30-
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31-
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
32-
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33-
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISINGIN ANY
34-
# WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
35-
# THE POSSIBILITY OF SUCH DAMAGE.
36-
#
37-
# Lawrence Livermore National Laboratory is operated by Lawrence Livermore
38-
# National Security, LLC, for the U.S. Department of Energy, National
39-
# Nuclear Security Administration under Contract DE-AC52-07NA27344.
40-
#
41-
# This document was prepared as an account of work sponsored by an agency
42-
# of the United States government. Neither the United States government nor
43-
# Lawrence Livermore National Security, LLC, nor any of their employees
44-
# makes any warranty, expressed or implied, or assumes any legal liability
45-
# or responsibility for the accuracy, completeness, or usefulness of any
46-
# information, apparatus, product, or process disclosed, or represents that
47-
# its use would not infringe privately owned rights. Reference herein to
48-
# any specific commercial product, process, or service by trade name,
49-
# trademark, manufacturer, or otherwise does not necessarily constitute or
50-
# imply its endorsement, recommendation, or favoring by the United States
51-
# government or Lawrence Livermore National Security, LLC. The views and
52-
# opinions of authors expressed herein do not necessarily state or reflect
53-
# those of the United States government or Lawrence Livermore National
54-
# Security, LLC, and shall not be used for advertising or product
55-
# endorsement purposes.
56-
#
57-
582
#[[
593
604
Finds Sutiesparse include directory and libraries and exports target `Suitesparse`

0 commit comments

Comments
 (0)