Skip to content

Commit 188f4a1

Browse files
jd-laraccoffrin
authored andcommitted
Moi julia v0.7 (#396)
* prepare changelog for next release * remove redefinition of InfrastructureModels.ismultinetwork * Discrepancy BIM vs BFM (#286) * found for discrepancy SOC BFM vs BIM * Documentation fix * Looser bounds on square current magnitude variable * added note to changelog on bfm changes * Tidy Matpower Test Cases (#288) * update case names to be consistent with file names * remove areas block from some test cases * add note to change log * ADD: Warning when fields are missing during PTI parse (#294) Adds a warning enumerating the missing data fields when parsing a PTI file. * Update change log for minor release * update to memento v0.7 (#299) removes depreciation warnings. * prepare change log for v0.7.2 release * Core Multiphase Features (#297) * adding multiphase flag to data parsers * adding ismultiphase test to build_generic_model * making network and phase kwargs in constraint templates * making network and phase kwargs in variable constructors * change usage of pm.ref[:nw] to nws() * exporting multinetwork and multiphase helper functions * minor fix to psse test * multi-phase solution nominally working * adding JSON output for multiphase data * making phases optional to support array-based single phase models * adding isapprox so compare_dict works with multi-phase * adding ref file and making data functions work with multiphase * adding MultiPhaseMatrix to support branch parameters * add support for multiphase duals * minor bugfix to apply_func * adding area, zone, and base_kv to phaseless parameters * adding basic multiphase tests * adding multinetwork multiphase tests * adding run_mn_pf formulation for testing * removed multinetwork models defined in tests * fixing dcline cost function unit conversion * replace getstart with getval, closes #252 * ADD: operators for MultiPhaseValues * REF: multiphasevalues operations * ADD: Unit tests for MultiPhaseValue operations * FIX: DistFlow formulation for multiphase (#289) * Adds more `getmpv` variants * ADD: Unit tests for Multphase and Multinetwork (#300) * ADD: Unit tests for Multphase and Multinetwork * REF: Updated Memento log tests * ADD: Missing unit tests for check_connectivity (#301) * ADD: Missing unit tests for check_connectivity * ADD: Missing ismultiphase test * UPD: updates network checks for multiphase networks (#302) * UPD: updates network checks for multiphase networks * update to changelog * fix spelling of LICENSE * adding basic mathmatical model to docs * minor fix to math-model * making objective functions addative over phases (#308) * Matpower export (#309) * Matpower Export Branch Intermediate backup of this branch * Iterative code backup * intermediate backup * Matpower export Complete * removing .project * add .project to .gitignore * Suggested modifications * updated test due to change to case3.m * add note to changelog [skip ci] * adding Matpower export to acknowledgements [ci skip] * minor fix to acknowledgments [skip ci] * File Parser Enhancements (#311) Closes #310 * move `check_network_data` from `parse_file` into the format-specific parsers: `parse_matpower`, `parse_psse` and `parse_json` ref #310 (comment) 87343 * bugfix * parser support for iostream implemented for `parse_json`, `parse_matpower`, `parse_psse`, and `parse_pti`. ref #310 (comment) 82468 * remove filename kwarg there’s a `.name` attribute in IOStream that I wasn’t previously aware of * add explicit return statements * use in memory buffers instead of creating temp files `::IOStream` -> `::IO` * move matpower_export tests from test/data.jl to test/matpower.jl * adding note to changelog * Remove Series Variables from Branch Flow Formulation (#312) * removing series variables * removing dead code and adding pf hvdc test * rename df.jl to bf.jl, consistency * rename SOCDF to SOCBF, consistency * update AbstractDFForm to AbstractBFForm, consistency * Extended QC Model to Asymmetric Ling Charging (#315) * adding test case for asymmetric line charging * adding opf tests for asymmetric line charging * adding ots tests for asymmetric line charging * extending constraint_power_magnitude_link to asymetric line charge, closes #284 * Fix Parser for HVDC lines with PWL Costs (#317) * do not add HVDC line costs when no HVDC lines exist * fix non-increasing domain on default hvdc pwl costs, and added test case * closes #316 * Update VAD BF Constraint (#318) * remove use of getmpv in constraint_voltage_angle_difference * apply complement to vad constraint * bugfix calc_branch_y TPPM#45 (#319) Uses the pseudo-inverse to avoid issues when certain phases are absent in the impedance matrix. Added corresponding unit test * fix MultiPhaseValue isapprox, closes #320 * FIX: Vector and Matrix Operations on MultiPhaseValues (#321) Fixes problems with MultiPhaseVector and MultiPhaseMatrix operations not being symmetrical, e.g. `Number + MultiPhaseValue` might not work whereas `MultiPhaseValue + Number` might. This has been fixed. Added `inv` function for matrices. Added `real` and `imag` functions for MutliPhaseValues Updated `calc_branch_y`, and one OTS test whose objective value changed due to the difference in rounding errors between doing the calculation in complex vs float types. Closes #313 * fix subscripts in mathmatical model doc * FIX: Line splitting in PTI parser (#323) In String fields, like "name", there can be commas, which was causing special cases (e.g. transformers) to split in the wrong places. Switched all cases to use `get_line_elements` function, which relies on RegEx and handles this case where a comma is in a String field surrounded by single quotes. * add note to changelog * FIX: starbus index (#325) Fixes bug in PSSE parser during the creation of a starbus for 3-winding transformers where the starbus number would keep increasing in magnitude due to `find_max_bus_id` running at every iteration and finding a new, higher max bus id. Fixes this by excluding any busname with `starbus` in it, which is added to the name during the creation of any starbus. * REF: Disables some warnings about missing fields in PTI (#326) Specfically excludes warnings about missing fields in the sections "IMPEDANCE CORRECTION, "MULTI-SECTION LINE", and "SWITCHED SHUNT", which all have optional fields at the end, starting with "T#", "DUM#", and "N#", respectively. * adding video links to readme * FIX: Single-quote in busnames (#329) * FIX: Single-quote in busnames Fixes problem where there could be a quotation mark inside of a bus name by taking advantage of the fact that all busnames in PTI v33.3 must be exactly 12 characters long to be valid. * ADD: Update PTI file to test change Changes one of the busnames to `'1' DROP '` to test change to RegEx * Multi-conductor Renaming (#324) * phase to conductor renaming * update MultiPhase datatypes to MultiConductor * add standard ids names to developer docs * updating file names * rename function args and tmp vars to reflect conductor short names * update for info default logging level, closes #296 (#330) * Some Minor Fixes (#331) * update calc_branch_t to use function dispatch instead of map (close #271 ) * rename mp functions to mc functions * rename mpv to mcv and reduce use of getmcv (close #295) * adding doc string to post_tp_opf in mc tests * adding link to network model video * adding con help to exports * update changelog for v0.8 release * adding implicit single phase to support to buspairs * make add_setpoint more flexible with different types * adding atol to check_tnep_status * update changelog for minor release * fix typo in changelog * bus fix TNEP voltage variable definitions * updating tests for numerical stablity * Tightening QCWRTriModel for opf (#332) * update case5 to test non-contiguous bus ids * tightening QC Tri * update changelog * update MINLP solvers used in testing * OBBT functionality (#335) * obbt initial commit * add docs and stats * add utilities to the docs menu * adding kaarthik sundar to acknowledgments * FIX: import_remaining array eltype check (#336) import_remaining! did not check for eltype of arrays, which broke behavior in ThreePhasePowerModels. Now checks to ensure that arrays have Dict elements. Closes ThreePhasePowerModels#51 * FIX: check_thermal_limits was returning NaN (#337) During check thermal limits, `r` or `x` are zero, `rate_{a,b,c}` would get set to NaN. Using complex formulation and `pinv` to solve this problem. * Adding AbstractBFConicForm (#346) * adding AbstractBFConicForm * adding conic variant of BF model for testing * ADD: Error handling for UnicodeError (#347) Adds Unicode Error message that informs user only UTF-8 and ASCII files are supported, and to re-encode file into a supported format. Adds unit test Closes #328 * Adding #328 note to changelog * update changelog for v0.8.2 * Updated wr.jl Removed a rogue + sign in line 811 * fixing bug in conic objtive (#348) * Add Parallel Time Stat to OBBT (#349) * improve update_data warning message * adding sim_parallel_run_time to the obbt stats * add note to changelog * changlog typo fix * Added Simplification for Piecewise Linear Cost Functions (#350) * simplified multiconductor support in check_cost_functions * adding pwl cost simplification code * adding cost functions checks to matpower exporter * add note to changelog * expanding math model + link to constraint template (#351) * Updated docs (#352) * improving math model docs * Adding references for formulations * References for formulations * Following recommendations in #343 * Updated changelog * Updating docs to address #8 (#356) * improving math model docs * Adding references for formulations * References for formulations * Following recommendations in #343 * Updated changelog * quick fixes per feedback * Addressing #8 + tweaking docs * adding Carpentier reference * Add Support for Current Limits (#354) * add current rating to the branch model * making rates optional * fixing tnep test * add note on optional ratings to docs * adding base current constraint implementation * adding tests for current based opf * add note to changelog * adding test for specifying current limits in matpower data * adding ka_base and rescale_ampere and to unit conversions * Improve OBBT Solver Robustness (#358) * converted error to warnings * cosmetic updated to bibtex entries (#367) * OBBT Change more Errors to Warnings (#370) * Conic form of SOC relaxation (#371) * Add SOC conic form * Tests for SOC conic form * adding SOCWRConicPowerModel to changelog * remove soc conic 6 bus test case due to numerics * use InfrastructureModels.relaxation_complex_product_conic, closes #373 (#374) * Basic Network Flow and Copper Plate Models (#365) * adding network flow approximation formulation * fixing bug in case6 so that there are two components * adding optimal power balance problem * Add version number to Project.TOML * add v0.8.3 version number to change log * Update uuid number according to the registry * Add uuid from Registry Repo * adding julia version upper bound * updating publication reference * Obbt exp (#379) * revised obbt bound update criteria * Message updates * Add note to change log * SDP relaxation with constraint decomposition (#333) * working SDP decomposition * add tests (apply existing SDP tests to SDPDecompForm) * explicit generation of voltage vars and linking constraints * move constraint decomp into struct to keep pm.ext clean * no more infeasible cases! Fixes kersulis#1 * keep only the best decomp implementation, fixes kersulis#2 * bools and ints, not ints and floats * broaden signatures for variable_voltage and constraint_voltage * store graph ordering (suff. to reconstruct minimal chordal ext, cliques) * do not store full adjacency matrix * Minor Tidying of WRM Forms (#380) * rename sdp decomp to sparse * reorg SDP WRM functions * adding sparse sdp to docs * add note to change log * add sdp thanks to readme * adding indentation to ACR doc string * Update Manifest.TOML to newer versions * Citations for sparsity-exploiting SDP OPF (#385) * fix indentation of sparse sdp docstring * update change log for v0.8.4 release * update jump constructor * updating ipopt constructor * update to MOI 0.6 and JuMP master * omit newly broken tests * add link to power flow forms docs to readme * restor power flow tests * adding explicit starting points to variables, restored pwl and qc tri models * Typo fix [ci skip] Fixed a spelling error * WIP, SDP support * minor fix to subscripts in math model docs * update to latest scs version, v0.4.0 * update SCS settings * remove comment * removing extra square from polynomial cost function * update base to use optimization factories * small sdp models working * Update Testing to load default packages * Update testing * update travis.yml * update travis.yml * Fix LinearAlgebra deprecations * fix deprecation of assert to @Assert * Enable testing of Matpower to find deprecations * Update to MOI * Update CI * Update Manifest * Fix typo * add SparseArrays * remove Base.var overloading * Update overloading from Base. to LinearAlgebra. * Remove more deprecated syntax * Remove whitespace deprecations
1 parent e0eebdf commit 188f4a1

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

79 files changed

+7320
-2416
lines changed

.gitignore

+2
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,5 @@ deps/deps.jl
66
docs/build/
77
docs/site/
88
docs/.documenter
9+
.project
10+
.tags

.travis.yml

+2-7
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,11 @@ addons:
1616
- gfortran
1717

1818
before_install:
19-
# don't keep an old version of the code in the cache
20-
- julia -e 'using Pkg; if "PowerModels" in keys(Pkg.installed()) Pkg.rm("PowerModels"); Pkg.rm("PowerModels") end'
21-
- julia -e 'using Pkg; Pkg.update()' #make sure we get the latest version of METADATA
22-
- julia -e 'using Pkg; if !("Coverage" in keys(Pkg.installed())) Pkg.add("Coverage") end'
23-
- julia -e 'using Pkg; if !("Documenter" in keys(Pkg.installed())) Pkg.add("Documenter") end'
19+
- julia --project --color=yes -e "import Pkg; Pkg.instantiate(); Pkg.build();" #make sure the depedencies are working properly
2420

2521
script:
2622
- if [[ -a .git/shallow ]]; then git fetch --unshallow; fi
27-
- julia -e 'using Pkg; Pkg.clone(pwd())'
28-
- julia -e 'using Pkg; Pkg.test("PowerModels", coverage=true)'
23+
- julia --check-bounds=yes --depwarn=no --color=yes --project -e "import Pkg; Pkg.test(coverage=true);"
2924

3025
after_success:
3126
- julia -e 'using PowerModels; using Coverage; cd(pathof(PowerModels)); LCOV.writefile("lcov.info", process_folder(".")); run(pipeline(`curl -s https://codecov.io/bash`, `bash`))'

CHANGELOG.md

+52-4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,57 @@
11
PowerModels.jl Change Log
2-
=================
2+
=========================
33

44
### Staged
55
- nothing
66

7+
### v0.8.4
8+
- Added SparseSDPWRMPowerModel model (thanks to @kersulis)
9+
- Added Julia version upper bound
10+
- Improved OBBT bound update logic
11+
12+
### v0.8.3
13+
- Added support for current limits, issue #342
14+
- Added a optimal power balance problem specification
15+
- Added a network flow approximation formulation, NFAPowerModel
16+
- Added conic variant of the SOCWRPowerModel model, SOCWRConicPowerModel (thanks to @kersulis)
17+
- Added data simplification for piecewise linear cost functions
18+
- Added sim_parallel_run_time to OBBT stats
19+
- Made thermal limits optional in the data model
20+
- Fixed a bug in quadratic conic objective functions
21+
- Fixed a bug where dcline reactive variables entered active power only formulations
22+
- Expanded documentation (mathematical model, formulations, references for formulations)
23+
24+
### v0.8.2
25+
- Added optimality-based bound tightening (OBBT) functionality for the QC relaxations
26+
- Added branch flow conic forms, e.g. AbstractBFConicForm, SOCBFConicPowerModel
27+
- Update MINLP solvers used in testing
28+
- Minor issues closed #328
29+
30+
### v0.8.1
31+
- Strengthened the QCWRTri Power Flow formulation
32+
- Added support for implicit single conductor to buspairs data
33+
- Made add_setpoint more flexible when working with a mixture of data types
34+
- Fixed a bug in TNEP voltage variable definitions
35+
36+
### v0.8.0
37+
- Added support for asymmetric line charging in all formulations
38+
- Added Matpower data file export function
39+
- Added mathematical model to documentation
40+
- Added parsing string data from IO objects
41+
- Added support for network data with multiple conductors (breaking)
42+
- Removed explicit series variables from branch flow model
43+
- Improved helper functions ref, var, con to work with multiple networks and multiple conductors
44+
- Minor robustness improvements to parsing PTI files
45+
- Minor issues closed #316
46+
47+
### v0.7.2
48+
- Removed Memento depreciation warnings
49+
50+
### v0.7.1
51+
- Added warning when data is missing in a PTI file
52+
- Minor tidying of matpower test cases
53+
- Relaxed variable bounds in BFM to be consistent with BIM
54+
755
### v0.7.0
856
- Added component_table function for building matrices from component data
957
- Added "source_id" to uniquely identify each component imported from a PTI file
@@ -77,7 +125,7 @@ PowerModels.jl Change Log
77125
- Made index_name an optional parameter in add_setpoint (breaking)
78126
- Moved check_cost_models into the objective building function
79127
- Fixed out of range bug in calc_theta_delta_bounds
80-
- Fixed bug in phase angle differences in AbstractACPForms
128+
- Fixed bug in voltage angle differences in AbstractACPForms
81129
- Fixed bugs in AbstractDCPLLForm and added OPF test
82130

83131
### v0.3.4
@@ -88,7 +136,7 @@ PowerModels.jl Change Log
88136
- Added w-theta formulation of AC-OPF
89137
- Added data units checks to update_data
90138
- Made branch flow parameter names consistent with Matpower
91-
- Fixed bug in constants for w-space phase angle difference constraints
139+
- Fixed bug in constants for w-space voltage angle difference constraints
92140
- Fixed bug when no reference bus was specified
93141
- Fixed dcline parsing bug
94142

@@ -122,7 +170,7 @@ PowerModels.jl Change Log
122170
- Strengthened convex formulations with Lifted Nonlinear Cuts (LNCs)
123171
- Added ability to easily inspect the JuMP model produced by PowerModels
124172
- Added constraint templates to provide an abstraction layer between the network data and network constraint definitions
125-
- Moved system wide phase angle difference bounds to the "ref" dictionary
173+
- Moved system wide voltage angle difference bounds to the "ref" dictionary
126174
- Refactored model definitions to be based on complex numbers
127175

128176
### v0.2.3

LICENCE.md LICENSE.md

File renamed without changes.

Manifest.toml

+22-16
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ version = "0.8.10"
99

1010
[[BinaryProvider]]
1111
deps = ["Libdl", "Pkg", "SHA", "Test"]
12-
git-tree-sha1 = "b530fbeb6f41ab5a83fbe3db1fcbe879334bcd2d"
12+
git-tree-sha1 = "38be61810f280c3c478f5c38aaf387f8f9199275"
1313
uuid = "b99e7846-7c00-51b0-8f62-c81ae34c0232"
14-
version = "0.4.2"
14+
version = "0.5.1"
1515

1616
[[Calculus]]
1717
deps = ["Compat"]
@@ -27,15 +27,15 @@ version = "0.2.0"
2727

2828
[[Compat]]
2929
deps = ["Base64", "Dates", "DelimitedFiles", "Distributed", "InteractiveUtils", "LibGit2", "Libdl", "LinearAlgebra", "Markdown", "Mmap", "Pkg", "Printf", "REPL", "Random", "Serialization", "SharedArrays", "Sockets", "SparseArrays", "Statistics", "Test", "UUIDs", "Unicode"]
30-
git-tree-sha1 = "ae262fa91da6a74e8937add6b613f58cd56cdad4"
30+
git-tree-sha1 = "ff2595695fc4f14427358ce2593f867085c45dcb"
3131
uuid = "34da2185-b29b-5c13-b0c7-acf172513d20"
32-
version = "1.1.0"
32+
version = "1.2.0"
3333

3434
[[DataStructures]]
35-
deps = ["InteractiveUtils", "REPL", "Random", "Serialization", "Test"]
36-
git-tree-sha1 = "2afbbd0294306b0b74a753c196be50b35edb625c"
35+
deps = ["InteractiveUtils", "OrderedCollections", "REPL", "Random", "Serialization", "Test"]
36+
git-tree-sha1 = "8fc6e166e24fda04b2b648d4260cdad241788c54"
3737
uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
38-
version = "0.11.1"
38+
version = "0.14.0"
3939

4040
[[Dates]]
4141
deps = ["Printf"]
@@ -63,9 +63,9 @@ uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b"
6363

6464
[[EzXML]]
6565
deps = ["BinaryProvider", "Libdl", "Pkg", "Printf", "Test"]
66-
git-tree-sha1 = "0080045a5ce51180a704d67074c0f15a41b9427a"
66+
git-tree-sha1 = "5623d1486bfaadd815f5c4ca501adda02b5337f1"
6767
uuid = "8f5d6c58-4d21-5cfd-889c-e3ad7ee6a615"
68-
version = "0.8.0"
68+
version = "0.9.0"
6969

7070
[[ForwardDiff]]
7171
deps = ["CommonSubexpressions", "DiffResults", "DiffRules", "InteractiveUtils", "LinearAlgebra", "NaNMath", "Pkg", "Random", "SparseArrays", "SpecialFunctions", "StaticArrays", "Test"]
@@ -91,11 +91,11 @@ version = "0.19.0"
9191

9292
[[JuMP]]
9393
deps = ["Calculus", "Compat", "DataStructures", "ForwardDiff", "MathOptInterface", "NaNMath"]
94-
git-tree-sha1 = "fad7882951ac4e093b3479445b6b3595abcdb7b5"
94+
git-tree-sha1 = "145418bd00fe9b66250715818bd6dbf2a6b1b32e"
9595
repo-rev = "master"
9696
repo-url = "https://github.com/JuliaOpt/JuMP.jl.git"
9797
uuid = "4076af6c-e467-56ae-b986-b466b2749572"
98-
version = "0.18.2+"
98+
version = "0.18.4+"
9999

100100
[[LibGit2]]
101101
uuid = "76f85450-5226-5b5a-8eaa-529ad045b433"
@@ -116,9 +116,9 @@ uuid = "d6f4376e-aef5-505a-96c1-9c027394607a"
116116

117117
[[MathOptInterface]]
118118
deps = ["Compat", "Unicode"]
119-
git-tree-sha1 = "f2791f990529b7aea1fcb9fd45b636cd3a9d1e79"
119+
git-tree-sha1 = "ba12e7ce825c1458c03f88aae84fa630d882d303"
120120
uuid = "b8f27783-ece8-5eb3-8dc8-9495eed66fee"
121-
version = "0.6.0"
121+
version = "0.6.1"
122122

123123
[[Memento]]
124124
deps = ["Compat", "JSON", "Libdl", "Nullables", "Pkg", "Syslogs", "Test", "TimeZones"]
@@ -147,6 +147,12 @@ git-tree-sha1 = "ae1a63457e14554df2159b0b028f48536125092d"
147147
uuid = "4d1e1d77-625e-5b40-9113-a560ec7a8ecd"
148148
version = "0.0.8"
149149

150+
[[OrderedCollections]]
151+
deps = ["Pkg", "Random", "Serialization", "Test"]
152+
git-tree-sha1 = "85619a3f3e17bb4761fe1b1fd47f0e979f964d5b"
153+
uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d"
154+
version = "1.0.2"
155+
150156
[[Pkg]]
151157
deps = ["Dates", "LibGit2", "Markdown", "Printf", "REPL", "Random", "SHA", "UUIDs"]
152158
uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
@@ -181,10 +187,10 @@ deps = ["LinearAlgebra", "Random"]
181187
uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
182188

183189
[[SpecialFunctions]]
184-
deps = ["BinDeps", "BinaryProvider", "Compat", "Libdl"]
185-
git-tree-sha1 = "d12f8917be3782f4b800ba16003b8d0d4858c2e5"
190+
deps = ["BinDeps", "BinaryProvider", "Libdl", "Test"]
191+
git-tree-sha1 = "c35c9c76008babf4d658060fc64aeb369a41e7bd"
186192
uuid = "276daf66-3868-5448-9aa4-cd146d93841b"
187-
version = "0.7.0"
193+
version = "0.7.1"
188194

189195
[[StaticArrays]]
190196
deps = ["InteractiveUtils", "LinearAlgebra", "Random", "Statistics", "Test"]

Project.toml

+11-1
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,22 @@
11
name = "PowerModels"
22
uuid = "c36e90e8-916a-50a6-bd94-075b64ef4655"
3-
version = "0.7.0"
3+
version = "v0.8.4"
44

55
[deps]
66
Compat = "34da2185-b29b-5c13-b0c7-acf172513d20"
77
InfrastructureModels = "2030c09a-7f63-5d83-885d-db604e0e9cc0"
88
JSON = "682c06a0-de6a-54ab-a142-c8b1cf79cde6"
99
JuMP = "4076af6c-e467-56ae-b986-b466b2749572"
10+
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
1011
MathOptInterface = "b8f27783-ece8-5eb3-8dc8-9495eed66fee"
1112
Memento = "f28f55f0-a522-5efc-85c2-fe41dfb9b2d9"
1213
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
14+
15+
[extras]
16+
Cbc = "9961bab8-2fa3-5c5a-9d89-47fab24efd76"
17+
Ipopt = "b6b21f68-93f8-5de0-b562-5493be1d77c9"
18+
SCS = "c946c3f1-0d1f-5ce8-9dea-7daa1f7e2d13"
19+
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
20+
21+
[targets]
22+
test = ["Test", "Cbc", "Ipopt", "SCS"]

README.md

+25-11
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,23 @@ This enables the definition of a wide variety of power network formulations and
2222
**Core Network Formulations**
2323
* AC (polar and rectangular coordinates)
2424
* DC Approximation (polar coordinates)
25+
* SDP Relaxation (W-space)
2526
* SOC Relaxation (W-space)
2627
* QC Relaxation (W+L-space)
2728

2829
**Network Data Formats**
2930
* Matpower ".m" files
3031
* PTI ".raw" files (PSS(R)E v33 specfication)
3132

32-
For further information, consult the package [documentation](https://lanl-ansi.github.io/PowerModels.jl/stable/).
33+
34+
## Documentation
35+
36+
The package [documentation](https://lanl-ansi.github.io/PowerModels.jl/stable/) includes a variety of useful information including a [quick-start guide](https://lanl-ansi.github.io/PowerModels.jl/stable/quickguide.html), [network model specification](https://lanl-ansi.github.io/PowerModels.jl/stable/network-data.html), and [baseline results](https://lanl-ansi.github.io/PowerModels.jl/stable/experiment-results.html).
37+
38+
Additionally, these presentations provide a brief introduction to various aspects of PowerModels,
39+
- [Network Model Update, v0.6](https://youtu.be/j7r4onyiNRQ)
40+
- [PSCC 2018](https://youtu.be/AEEzt3IjLaM)
41+
- [JuMP Developers Meetup 2017](https://youtu.be/W4LOKR7B4ts)
3342

3443

3544
## Development
@@ -41,27 +50,32 @@ Community-driven development and enhancement of PowerModels are welcome and enco
4150

4251
This code has been developed as part of the Advanced Network Science Initiative at Los Alamos National Laboratory.
4352
The primary developer is Carleton Coffrin(@ccoffrin) with support from the following contributors,
44-
- Russell Bent (@rb004f) LANL, TNEP problem specification
53+
- Russell Bent (@rb004f) LANL, Matpower export, TNEP problem specification
54+
- Hakan Ergun (@hakanergun) KU Leuven, HVDC lines
4555
- David Fobes (@pseudocubic) LANL, PSS(R)E v33 data support
4656
- Rory Finnegan (@rofinn) Invenia, Memento Logging
47-
- Frederik Geth (@frederikgeth) and Hakan Ergun (@hakanergun) KU Leuven, Branch Flow formulation and HVDC lines
57+
- Frederik Geth (@frederikgeth) CSIRO, Branch Flow formulation
58+
- Jonas Kersulis (@kersulis) University of Michigan, Sparse SDP formulation
4859
- Miles Lubin (@mlubin) MIT, Julia/JuMP advise
4960
- Yeesian Ng (@yeesian) MIT, Documenter.jl setup
61+
- Kaarthik Sundar (@kaarthiksundar) LANL, OBBT utility
5062

5163

5264
## Citing PowerModels
5365

54-
If you find PowerModels useful in your work, we kindly request that you cite the following [technical report](https://arxiv.org/abs/1711.01728):
66+
If you find PowerModels useful in your work, we kindly request that you cite the following [publication](https://ieeexplore.ieee.org/document/8442948/):
5567
```
56-
@misc{1711.01728,
57-
author = {Carleton Coffrin and Russell Bent and Kaarthik Sundar and Yeesian Ng and Miles Lubin},
58-
title = {PowerModels.jl: An Open-Source Framework for Exploring Power Flow Formulations},
59-
year = {2017},
60-
eprint = {arXiv:1711.01728},
61-
url = {http://arxiv.org/abs/1711.01728}
68+
@inproceedings{8442948,
69+
author = {Carleton Coffrin and Russell Bent and Kaarthik Sundar and Yeesian Ng and Miles Lubin},
70+
title = {PowerModels.jl: An Open-Source Framework for Exploring Power Flow Formulations},
71+
booktitle = {2018 Power Systems Computation Conference (PSCC)},
72+
year = {2018},
73+
month = {June},
74+
pages = {1-8},
75+
doi = {10.23919/PSCC.2018.8442948}
6276
}
6377
```
64-
Citation of the orginal works for problem denifitions (e.g. OPF) and power flow formulations (e.g. SOC) is also encuraged when publishing works that use PowerModels.
78+
Citation of the orginal works for problem denifitions (e.g. OPF) and [power flow formulations](https://lanl-ansi.github.io/PowerModels.jl/stable/formulation-details.html) (e.g. SOC) is also encouraged when publishing works that use PowerModels.
6579

6680

6781
## License

REQUIRE

-7
This file was deleted.

docs/make.jl

+7-2
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@ makedocs(
1111
"Manual" => [
1212
"Getting Started" => "quickguide.md",
1313
"Network Data Format" => "network-data.md",
14-
"Result Data Format" => "result-data.md"
14+
"Result Data Format" => "result-data.md",
15+
"Mathematical Model" => "math-model.md",
16+
"Utilities" => "utilities.md"
1517
],
1618
"Library" => [
1719
"Network Formulations" => "formulations.md",
@@ -25,7 +27,10 @@ makedocs(
2527
"Relaxation Schemes" => "relaxations.md",
2628
"File IO" => "parser.md"
2729
],
28-
"Developer" => "developer.md",
30+
"Developer" => [
31+
"Developer" => "developer.md",
32+
"Formulation Details" => "formulation-details.md"
33+
],
2934
"Experiment Results" => "experiment-results.md"
3035
]
3136
)

docs/src/developer.md

+7
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,13 @@ $y = g + j\cdot b$:
7373
- `b`: susceptance ($S$)
7474

7575

76+
### Standard Value Names
77+
78+
- network ids:`network`, `nw`, `n`
79+
- conductors ids: `conductor`, `cnd`, `c`
80+
- phase ids: `phase`, `ph`, `h`
81+
82+
7683
## DistFlow derivation
7784

7885
### For an asymmetric pi section

0 commit comments

Comments
 (0)