Skip to content

Commit

Permalink
Merge branch 'main' into jd/pf_integration
Browse files Browse the repository at this point in the history
  • Loading branch information
GabrielKS committed Nov 4, 2024
2 parents 958e68d + 01a1bc6 commit 187f473
Show file tree
Hide file tree
Showing 100 changed files with 4,220 additions and 2,180 deletions.
1 change: 0 additions & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ assignees: ''
**If this is a question, something isn't working or an idea please start a Q&A discussion in the [Discussion tab](https://github.com/NREL-Sienna/PowerSimulations.jl/discussions)**
Open a bug report only if you can provide the details below


**Describe the bug**
A clear and concise description of what the bug is.

Expand Down
47 changes: 47 additions & 0 deletions .github/workflows/cross-package-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: CrossPackageTest

on:
push:
branches: [main]
tags: [v*]
pull_request:

jobs:
test:
name: Julia v${{ matrix.julia-version }} - ${{ matrix.package_name }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
julia-version: [1]
os: [ubuntu-latest]
package_name: [HydroPowerSimulations, StorageSystemsSimulations]
continue-on-error: true
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
with:
version: ${{ matrix.julia-version }}
arch: x64
- uses: julia-actions/julia-buildpkg@latest
- name: Clone ${{matrix.package_name}}
uses: actions/checkout@v2
with:
repository: NREL-Sienna/${{matrix.package_name}}.jl
path: downstream
- name: Run the tests
shell: julia --project=downstream {0}
run: |
using Pkg
try
# Force it to use this PR's version of the package
Pkg.develop(PackageSpec(path=".")) # resolver may fail with main deps
Pkg.update()
Pkg.test() # resolver may fail with test time deps
catch err
err isa Pkg.Resolve.ResolverError || rethrow()
# If we can't resolve that means this is incompatible by SemVer, and this is fine.
# It means we marked this as a breaking change, so we don't need to worry about
# mistakenly introducing a breaking change as we have intentionally made one.
@info "Not compatible with this release. No problem." exception=err
exit(0) # Exit immediately, as a success
end
7 changes: 4 additions & 3 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Contributing

Community driven development of this package is encouraged. To maintain code quality standards, please adhere to the following guidelines when contributing:
- To get started, <a href="https://www.clahub.com/agreements/NREL/PowerSimulations.jl">sign the Contributor License Agreement</a>.
- Please do your best to adhere to the lengthy [Julia style guide](https://docs.julialang.org/en/latest/manual/style-guide/).
- To submit code contributions, [fork](https://help.github.com/articles/fork-a-repo/) the repository, commit your changes, and [submit a pull request](https://help.github.com/articles/creating-a-pull-request-from-a-fork/).

- To get started, <a href="https://www.clahub.com/agreements/NREL/PowerSimulations.jl">sign the Contributor License Agreement</a>.
- Please do your best to adhere to the lengthy [Julia style guide](https://docs.julialang.org/en/latest/manual/style-guide/).
- To submit code contributions, [fork](https://help.github.com/articles/fork-a-repo/) the repository, commit your changes, and [submit a pull request](https://help.github.com/articles/creating-a-pull-request-from-a-fork/).
3 changes: 1 addition & 2 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,6 @@ DocStringExtensions = "~v0.9"
HDF5 = "~0.17"
InfrastructureSystems = "2"
InteractiveUtils = "1"
JSON = "0.21"
JSON3 = "1"
JuMP = "1"
LinearAlgebra = "1"
Expand All @@ -48,7 +47,7 @@ MathOptInterface = "1"
PowerModels = "^0.21"
PowerNetworkMatrices = "^0.11"
PowerFlows = "0.7"
PowerSystems = "4"
PowerSystems = "^4.4"
PrettyTables = "2"
ProgressMeter = "^1.5"
Serialization = "1"
Expand Down
21 changes: 11 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,24 +9,23 @@

`PowerSimulations.jl` is a Julia package for power system modeling and simulation of Power Systems operations. The objectives of the package are:

- Provide a flexible modeling framework that can accommodate problems of different complexity and at different time-scales.
- Provide a flexible modeling framework that can accommodate problems of different complexity and at different time-scales.

- Streamline the construction of large scale optimization problems to avoid repetition of work when adding/modifying model details.

- Exploit Julia's capabilities to improve computational performance of large scale power system quasi-static simulations.
- Streamline the construction of large scale optimization problems to avoid repetition of work when adding/modifying model details.
- Exploit Julia's capabilities to improve computational performance of large scale power system quasi-static simulations.

The flexible modeling framework is enabled through a modular set of capabilities that enable scalable power system analysis and exploration of new analysis methods. The modularity of PowerSimulations results from the structure of the simulations enabled by the package:

- _Simulations_ define a set of problems that can be solved using numerical techniques.
- _Simulations_ define a set of problems that can be solved using numerical techniques.

For example, an annual production cost modeling simulation can be created by formulating a unit commitment model against system data to assemble a set of 365 daily time-coupled scheduling problems.

## Simulations enabled by PowerSimulations

- Integrated Resource Planning
- Production Cost Modeling
- Market Simulations
- Integrated Resource Planning
- Production Cost Modeling
- Market Simulations

## Installation

```julia
Expand All @@ -44,10 +43,12 @@ using PowerSimulations
using PowerSystems
```

For information on using the package, see the [stable documentation](https://nrel-sienna.github.io/PowerSimulations.jl/stable/). Use the [in-development documentation](https://nrel-sienna.github.io/PowerSimulations.jl/dev/) for the version of the documentation which contains the unreleased features.

## Development

Contributions to the development and enhancement of PowerSimulations is welcome. Please see [CONTRIBUTING.md](https://github.com/NREL-Sienna/PowerSimulations.jl/blob/main/CONTRIBUTING.md) for code contribution guidelines.

## License

PowerSimulations is released under a BSD [license](https://github.com/NREL-Sienna/PowerSimulations.jl/blob/main/LICENSE). PowerSimulations has been developed as part of the Scalable Integrated Infrastructure Planning (SIIP) initiative at the U.S. Department of Energy's National Renewable Energy Laboratory ([NREL](https://www.nrel.gov/)) Software Record SWR-23-104.
PowerSimulations is released under a BSD [license](https://github.com/NREL-Sienna/PowerSimulations.jl/blob/main/LICENSE). PowerSimulations has been developed as part of the Scalable Integrated Infrastructure Planning (SIIP) initiative at the U.S. Department of Energy's National Renewable Energy Laboratory ([NREL](https://www.nrel.gov/)) Software Record SWR-23-104.
3 changes: 1 addition & 2 deletions docs/Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ PowerSystems = "bcd98974-b02a-5e2f-9ee0-a103f5c450dd"
TimeSeries = "9e3dc215-6440-5c97-bce1-76c03772f85e"

[compat]
Documenter = "0.27"
Documenter = "^1.7"
InfrastructureSystems = "2"
julia = "^1.6"
Latexify = "=0.16.3"
7 changes: 5 additions & 2 deletions docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ pages = OrderedDict(
"Code Base Developer Guide" => Any[
"Developer Guide" => "code_base_developer_guide/developer.md",
"Troubleshooting" => "code_base_developer_guide/troubleshooting.md",
"Internals" => "code_base_developer_guide/internal.md",
],
"Formulation Library" => Any[
"Introduction" => "formulation_library/Introduction.md",
Expand All @@ -47,9 +48,11 @@ pages = OrderedDict(

makedocs(;
modules = [PowerSimulations],
format = Documenter.HTML(; prettyurls = haskey(ENV, "GITHUB_ACTIONS")),
format = Documenter.HTML(;
prettyurls = haskey(ENV, "GITHUB_ACTIONS"),
size_threshold = nothing),
sitename = "PowerSimulations.jl",
authors = "Jose Daniel Lara, Daniel Thom and Clayton Barrows",
authors = "Jose Daniel Lara, Daniel Thom, Kate Doubleday, Rodrigo Henriquez-Auba, and Clayton Barrows",
pages = Any[p for p in pages],
)

Expand Down
Loading

0 comments on commit 187f473

Please sign in to comment.