Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PowerFlows.jl unified develop branch #53

Draft
wants to merge 124 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
124 commits
Select commit Hold shift + click to select a range
223ce57
add raw psy -> psse exporter code
HaleyRoss Mar 19, 2024
0abb144
Run formatter
GabrielKS Jul 12, 2024
aa6a54a
Code cleanup: remove machine-specific paths, add dependencies
GabrielKS Jul 15, 2024
2e2bb91
Code cleanup: minor edits to make `Write_Sienna2PSSE` run
GabrielKS Jul 15, 2024
e60b2d9
Add prefixes, adjust imports to make standalone scripts work
GabrielKS Jul 15, 2024
27ad5ab
Add `DISABLED_TEST_FILES` option like in PowerSimulations
GabrielKS Jul 16, 2024
4ac4f80
Add compat for new dependencies
GabrielKS Jul 19, 2024
56ae962
Begin work on a formal exporter interface
GabrielKS Jul 19, 2024
7d97dd4
Add rough draft tests for exporter interface
GabrielKS Jul 19, 2024
551f967
Add `update_exporter!(..., System)`, extensively refactor tests
GabrielKS Jul 19, 2024
2cc024f
PSSE exporter: test AC powerflow on reimport, minor test refactor
GabrielKS Jul 19, 2024
cafb173
Begin implementing routine to update a `System` from a `PowerFlowData`
GabrielKS Jul 22, 2024
241df46
Finish first draft of `update_system!`
GabrielKS Jul 22, 2024
35dac75
Exporter: add round trip generator name remapping
GabrielKS Jul 23, 2024
9e4620d
Exporter: add round trip *bus* name remapping
GabrielKS Jul 23, 2024
d9fcdbe
Add round trip branch name remapping, RTS_GMLC tests, more test tweaks
GabrielKS Jul 24, 2024
939472e
Add load zone name mapping, test verbosity; make RTS_GMLC tests pass
GabrielKS Jul 25, 2024
164d7b4
Implement `update_exporter!` for `PowerFlowData`, build out RTS tests
GabrielKS Jul 25, 2024
6794ee5
Reimplement Case Identification Data and Bus Data export (untested)
GabrielKS Jul 26, 2024
e5ea4da
Reimplement Load Data and Fixed Bus Shunt Data export (untested)
GabrielKS Jul 29, 2024
cea6fe0
Reimplement Generator Data and Non-Transformer Branch Data export
GabrielKS Jul 29, 2024
f430098
Reimplement Transformer Data export (first draft, untested)
GabrielKS Jul 31, 2024
8f5a8a8
Implement Zone Data export, keep track of unimplemented sections
GabrielKS Jul 31, 2024
a61d39f
Add option for customary comments at end of group, etc.
GabrielKS Jul 31, 2024
7793f1a
Support `PowerLoad`s
GabrielKS Aug 7, 2024
fdefe08
Use new `IS.compare_values` interface
GabrielKS Aug 7, 2024
8d7bea8
Revamp reimport remappers, etc. so tests fully pass with both systems
GabrielKS Aug 9, 2024
b0a4b6b
Remove old exporter implementation
GabrielKS Aug 9, 2024
5287862
Address minor PR comments, migrate from JSON.jl to JSON3.jl
GabrielKS Aug 9, 2024
464c1b0
Minor `end_group` refactor
GabrielKS Aug 11, 2024
275e86c
Multiply dispatch on export groups: part 1
GabrielKS Aug 11, 2024
2e6f167
Multiply dispatch on export groups: part 2
GabrielKS Aug 11, 2024
15f9075
Add `write_comments` test
GabrielKS Aug 11, 2024
759d79c
Remove more old code
GabrielKS Aug 11, 2024
e452c07
Fix power limits units, fix redistribution calls, power flow is broken
GabrielKS Aug 13, 2024
67c176e
Remove old dependency and TODOs, fix some power flow testing
GabrielKS Aug 19, 2024
56a5e99
add abstract type
jd-lara Jan 9, 2024
676d43b
add branch types for the PowerFlowData
jd-lara Jan 9, 2024
2a3b7ff
time_step clean up
jd-lara Jan 9, 2024
9a64af7
add methods and types
jd-lara Jan 23, 2024
e149d70
add clear method
jd-lara Jan 25, 2024
89e95c5
Do not copy time series when `deepcopy`ing for PSS/E export
GabrielKS Aug 26, 2024
15020d6
Reduce arguments to `write_export`
GabrielKS Sep 4, 2024
fd003c2
Add optional extra data to `PowerFlowData`
GabrielKS Sep 4, 2024
cd97fd1
Factor out egregious `PowerFlowData` constructor code duplication
GabrielKS Sep 4, 2024
a22457f
Add overwrite option to PSS/E export
GabrielKS Oct 15, 2024
d32cedf
Create a `PSSEExportPowerFlow` `PowerFlowData` using `extra_data`
GabrielKS Oct 15, 2024
3ad809f
Fix `clear_injection_data!` bug, other minor code cleanup
GabrielKS Oct 15, 2024
1a84753
Create `PowerFlowContainer` type hierarchy, supporting infrastructure
GabrielKS Oct 15, 2024
80ef570
Remove `extra_data` from `PowerFlowData`
GabrielKS Oct 15, 2024
8eadc6d
Make `PowerFlowData` tests actually test something
GabrielKS Oct 15, 2024
87849d9
`PSSEExporter`: Add `name`, `step`, and `overwrite` fields
GabrielKS Oct 17, 2024
3a28778
Better accommodate multi period in PSS/E export
GabrielKS Oct 28, 2024
c19399b
Misc code cleanup following self-review
GabrielKS Oct 28, 2024
528d012
Minor test fixes
GabrielKS Nov 1, 2024
b8b7bff
Implement `get_total_p`, `q` for `InterruptiblePowerLoad`
GabrielKS Nov 4, 2024
ccb27a5
Exporter: allow for null area, load zone
GabrielKS Nov 4, 2024
dd0f482
Strictly specify `vPTDFPowerFlowData`, fix bug 50
GabrielKS Nov 5, 2024
dc74bfd
Add detail to `deepcopy_system_no_time_series`
GabrielKS Nov 5, 2024
1d9e398
Gracefully skip tests when file is missing
GabrielKS Nov 5, 2024
613a28a
Refactor test data path
GabrielKS Nov 5, 2024
7f1b6c4
Exporter: tighten test comparisons, remove unused helper functions
GabrielKS Nov 5, 2024
152418a
Refactor test export directory
GabrielKS Nov 5, 2024
da593f7
PSSE reimport: add `shunt_name_formatter`
GabrielKS Nov 6, 2024
f31a0e1
PSSE exporter: remove rest of old testing
GabrielKS Nov 6, 2024
454d7f6
Make exporter more flexible
GabrielKS Nov 19, 2024
291b6b8
PERF: reuse export buffer, cache component lists
GabrielKS Nov 22, 2024
1a712c4
PERF: cache serialized exporter metadata
GabrielKS Nov 22, 2024
560f486
PERF: use existing buffer for `show(::IOBuffer, ::Float64)`
GabrielKS Nov 26, 2024
f00e73b
Fix `show` optimization compatibility
GabrielKS Nov 26, 2024
465e92f
PERF: unroll `joinln` loops by hand (ugh)
GabrielKS Nov 26, 2024
198a4fe
WIP: implement NR power flow function, rename ACPowerFlow to NLSolveA…
Dec 5, 2024
d4a443a
WIP: some bugfixes in the PF function
Dec 5, 2024
f2ad409
small changes
Dec 5, 2024
251f1b3
KLU PF: use correct V0; return x in expected format; write results fu…
Dec 6, 2024
210937c
reformat code
Dec 6, 2024
c699556
formatting
Dec 6, 2024
b0bc565
Addressed review comments except for using functor
Dec 16, 2024
42f02ab
formatter
Dec 16, 2024
e6a0364
small fix ACPowerFlow type; add test for results consistency for 2000…
Dec 17, 2024
da200a1
small change
Dec 17, 2024
b385c65
optimize NR code to reduce memory allocations
Dec 19, 2024
d7f7c88
trying to reduce memory allocation
Dec 19, 2024
7b50501
Use PSY's `with_units_base`
GabrielKS Dec 24, 2024
f7e5fce
Use PSY's `fast_deepcopy_system`
GabrielKS Dec 26, 2024
d147e7b
PERF: remove try/catch in tight loop, cache more
GabrielKS Dec 27, 2024
9d3b099
NR PF non-allocating
Jan 8, 2025
d688b58
vectorized update for dSbus_dV
Jan 8, 2025
11d86a1
fixes Add `solve_powerflow!` for AC power flow #49
Jan 9, 2025
2214214
formatting
Jan 9, 2025
b700bc4
WIP: multiperiod AC PF
Jan 9, 2025
0f1545e
adrressing comments
Jan 10, 2025
d067275
wip: multiperiod ac pf
Jan 13, 2025
c3f3b45
Merge branch 'main' into hrgks/psse_exporter_psy4
GabrielKS Jan 14, 2025
cd8c8dd
Modify `PowerFlowData` fields for multi-period AC PF
GabrielKS Jan 13, 2025
bc6c9c8
Add `to_from` vs. `from_to` distinction to `PowerFlowData`
GabrielKS Jan 14, 2025
3ad7195
Modify `PowerFlowData` constructors given new fields
GabrielKS Jan 14, 2025
ddbc662
Make tests pass with new `PowerFlowData` fields
GabrielKS Jan 15, 2025
7582e6d
Merge pull request #78 from NREL-Sienna/gks/update_pfd_for_ac_multipe…
rbolgaryn Jan 15, 2025
d198c2e
wip: solve_powerflow!
Jan 15, 2025
a121ff1
Merge branch 'hrgks/psse_exporter_psy4' into feature/nr_pf_solver
Jan 15, 2025
994123b
integrate previous changes to powersystemdata
Jan 15, 2025
09189c3
remove a println
Jan 16, 2025
691a73a
small change to _update_system!
Jan 16, 2025
a080b9b
Implement power flow-specific (re)active power limits proxies (#79)
GabrielKS Jan 16, 2025
3c0ccd7
Merge pull request #54 from NREL-Sienna/feature/nr_pf_solver
GabrielKS Jan 16, 2025
17b0423
Fix `ACPowerFlow` method overwriting
GabrielKS Jan 16, 2025
a882db9
Remove old/obsolete TODOs
GabrielKS Jan 16, 2025
2f90d82
add field "converged" to PowerFlowData, return NaN when not converged
Jan 16, 2025
4be46d8
Fix typing of empty vector from `get_name.`
GabrielKS Jan 16, 2025
f0b1566
Merge branch 'hrgks/psse_exporter_psy4' into feature/nr_pf2
GabrielKS Jan 16, 2025
685a6b0
wip: SolverData, penalty factors
Jan 17, 2025
d2fb7b6
fix penalty factors function
Jan 17, 2025
2106c0c
bugfix shape penalty factors
Jan 17, 2025
235135d
Update dependencies
GabrielKS Jan 21, 2025
f29b2c7
Merge pull request #83 from NREL-Sienna/gks/update_deps
GabrielKS Jan 21, 2025
5a1f97b
Merge pull request #82 from NREL-Sienna/feature/nr_pf2
GabrielKS Jan 21, 2025
315748b
Comment out broken tests
GabrielKS Jan 21, 2025
3827995
Add fields to `PowerFlowEvaluationModel`s
GabrielKS Jan 21, 2025
3125858
Merge pull request #84 from NREL-Sienna/gks/expand_psi_integration
GabrielKS Jan 22, 2025
01b5852
Address some exporter TODOs, misc cleanup
GabrielKS Jan 28, 2025
9d59232
implement yft, ytf calculations in solve_powerflow!
Jan 30, 2025
4ea859f
adjust for the changes in PNM
Jan 30, 2025
a46510e
formatter
Jan 30, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
test_simulation_results/*
test/test_exports
#Files generated by invoking Julia with --code-coverage
*.jl.cov
*.jl.*.cov
Expand Down
16 changes: 13 additions & 3 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,29 @@ version = "0.7.2"

[deps]
DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
DataStructures = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
Dates = "ade2ca70-3891-5945-98fb-dc099432e06a"
InfrastructureSystems = "2cd47ed4-ca9b-11e9-27f2-ab636a7671f1"
JSON3 = "0f8b85d8-7281-11e9-16c2-39a750bddbf1"
KLU = "ef3ab10e-7fda-4108-b977-705223b18434"
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
Logging = "56ddb016-857b-54e1-b83d-db4d58db5568"
NLsolve = "2774e3e8-f4cf-5e23-947b-6d7e65073b56"
PowerNetworkMatrices = "bed98974-b02a-5e2f-9fe0-a103f5c450dd"
PowerSystems = "bcd98974-b02a-5e2f-9ee0-a103f5c450dd"
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"

[compat]
DataFrames = "1"
InfrastructureSystems = "2"
DataStructures = "0.18"
Dates = "1"
InfrastructureSystems = "^2.4"
JSON3 = "1"
KLU = "^0.6"
LinearAlgebra = "1"
Logging = "1"
NLsolve = "4"
PowerNetworkMatrices = "^0.11"
PowerSystems = "^4"
PowerNetworkMatrices = "^0.12"
PowerSystems = "^4.5"
SparseArrays = "1"
julia = "^1.6"
Loading
Loading