From d5e096f079e8988856c4427d6fecf5b399457751 Mon Sep 17 00:00:00 2001 From: Jose Daniel Lara Date: Fri, 3 Jan 2025 15:26:28 -0700 Subject: [PATCH] delete scripts --- Multi-Stage/Manifest.toml | 2164 ----------------- Multi-Stage/Project.toml | 23 - .../YC_areaptdf_DA-areasplitptdf_DA.jl | 271 --- Multi-Stage/YC_areaptdf_DA_2stage.jl | 282 --- ...YC_areaptdf_DA_areasplitptdf_RT1rolling.jl | 285 --- Multi-Stage/YC_test_function.jl | 272 --- Multi-Stage/final_run_simulations_3stage.jl | 698 ------ 7 files changed, 3995 deletions(-) delete mode 100644 Multi-Stage/Manifest.toml delete mode 100644 Multi-Stage/Project.toml delete mode 100644 Multi-Stage/YC_areaptdf_DA-areasplitptdf_DA.jl delete mode 100644 Multi-Stage/YC_areaptdf_DA_2stage.jl delete mode 100644 Multi-Stage/YC_areaptdf_DA_areasplitptdf_RT1rolling.jl delete mode 100644 Multi-Stage/YC_test_function.jl delete mode 100644 Multi-Stage/final_run_simulations_3stage.jl diff --git a/Multi-Stage/Manifest.toml b/Multi-Stage/Manifest.toml deleted file mode 100644 index 0a3f44b..0000000 --- a/Multi-Stage/Manifest.toml +++ /dev/null @@ -1,2164 +0,0 @@ -# This file is machine-generated - editing it directly is not advised - -julia_version = "1.10.4" -manifest_format = "2.0" -project_hash = "3544fd2cb208eb2e5fc20298c9bad7524cfb8cbe" - -[[deps.ASL_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "6252039f98492252f9e47c312c8ffda0e3b9e78d" -uuid = "ae81ac8f-d209-56e5-92de-9978fef736f9" -version = "0.1.3+0" - -[[deps.AbstractFFTs]] -deps = ["LinearAlgebra"] -git-tree-sha1 = "d92ad398961a3ed262d8bf04a1a2b8340f915fef" -uuid = "621f4979-c628-5d54-868e-fcf4e3e8185c" -version = "1.5.0" -weakdeps = ["ChainRulesCore", "Test"] - - [deps.AbstractFFTs.extensions] - AbstractFFTsChainRulesCoreExt = "ChainRulesCore" - AbstractFFTsTestExt = "Test" - -[[deps.AbstractTrees]] -git-tree-sha1 = "2d9c9a55f9c93e8887ad391fbae72f8ef55e1177" -uuid = "1520ce14-60c1-5f80-bbc7-55ef81b5835c" -version = "0.4.5" - -[[deps.Adapt]] -deps = ["LinearAlgebra", "Requires"] -git-tree-sha1 = "6a55b747d1812e699320963ffde36f1ebdda4099" -uuid = "79e6a3ab-5dfb-504d-930d-738a2a938a0e" -version = "4.0.4" -weakdeps = ["StaticArrays"] - - [deps.Adapt.extensions] - AdaptStaticArraysExt = "StaticArrays" - -[[deps.AliasTables]] -deps = ["PtrArrays", "Random"] -git-tree-sha1 = "9876e1e164b144ca45e9e3198d0b689cadfed9ff" -uuid = "66dad0bd-aa9a-41b7-9441-69ab47430ed8" -version = "1.1.3" - -[[deps.ArgTools]] -uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f" -version = "1.1.1" - -[[deps.Arpack]] -deps = ["Arpack_jll", "Libdl", "LinearAlgebra", "Logging"] -git-tree-sha1 = "9b9b347613394885fd1c8c7729bfc60528faa436" -uuid = "7d9fca2a-8960-54d3-9f78-7d1dccf2cb97" -version = "0.5.4" - -[[deps.Arpack_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "OpenBLAS_jll", "Pkg"] -git-tree-sha1 = "5ba6c757e8feccf03a1554dfaf3e26b3cfc7fd5e" -uuid = "68821587-b530-5797-8361-c406ea357684" -version = "3.5.1+1" - -[[deps.ArrayInterface]] -deps = ["Adapt", "LinearAlgebra"] -git-tree-sha1 = "3640d077b6dafd64ceb8fd5c1ec76f7ca53bcf76" -uuid = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9" -version = "7.16.0" - - [deps.ArrayInterface.extensions] - ArrayInterfaceBandedMatricesExt = "BandedMatrices" - ArrayInterfaceBlockBandedMatricesExt = "BlockBandedMatrices" - ArrayInterfaceCUDAExt = "CUDA" - ArrayInterfaceCUDSSExt = "CUDSS" - ArrayInterfaceChainRulesExt = "ChainRules" - ArrayInterfaceGPUArraysCoreExt = "GPUArraysCore" - ArrayInterfaceReverseDiffExt = "ReverseDiff" - ArrayInterfaceSparseArraysExt = "SparseArrays" - ArrayInterfaceStaticArraysCoreExt = "StaticArraysCore" - ArrayInterfaceTrackerExt = "Tracker" - - [deps.ArrayInterface.weakdeps] - BandedMatrices = "aae01518-5342-5314-be14-df237901396f" - BlockBandedMatrices = "ffab5731-97b5-5995-9138-79e8c1846df0" - CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" - CUDSS = "45b445bb-4962-46a0-9369-b4df9d0f772e" - ChainRules = "082447d4-558c-5d27-93f4-14fc19e9eca2" - GPUArraysCore = "46192b85-c4d5-4398-a991-12ede77f4527" - ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" - SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" - StaticArraysCore = "1e83bf80-4336-4d27-bf5d-d5a4f845583c" - Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" - -[[deps.Artifacts]] -uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" - -[[deps.AssetRegistry]] -deps = ["Distributed", "JSON", "Pidfile", "SHA", "Test"] -git-tree-sha1 = "b25e88db7944f98789130d7b503276bc34bc098e" -uuid = "bf4720bc-e11a-5d0c-854e-bdca1663c893" -version = "0.1.0" - -[[deps.AxisAlgorithms]] -deps = ["LinearAlgebra", "Random", "SparseArrays", "WoodburyMatrices"] -git-tree-sha1 = "01b8ccb13d68535d73d2b0c23e39bd23155fb712" -uuid = "13072b0f-2c55-5437-9ae7-d433b7a33950" -version = "1.1.0" - -[[deps.Base64]] -uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" - -[[deps.BenchmarkTools]] -deps = ["JSON", "Logging", "Printf", "Profile", "Statistics", "UUIDs"] -git-tree-sha1 = "f1dff6729bc61f4d49e140da1af55dcd1ac97b2f" -uuid = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf" -version = "1.5.0" - -[[deps.BitFlags]] -git-tree-sha1 = "0691e34b3bb8be9307330f88d1a3c3f25466c24d" -uuid = "d1d4a3ce-64b1-5f1a-9ba4-7e7e69966f35" -version = "0.1.9" - -[[deps.Blink]] -deps = ["Base64", "Distributed", "HTTP", "JSExpr", "JSON", "Lazy", "Logging", "MacroTools", "Mustache", "Mux", "Pkg", "Reexport", "Sockets", "WebIO"] -git-tree-sha1 = "bc93511973d1f949d45b0ea17878e6cb0ad484a1" -uuid = "ad839575-38b3-5650-b840-f874b8c74a25" -version = "0.12.9" - -[[deps.Blosc]] -deps = ["Blosc_jll"] -git-tree-sha1 = "310b77648d38c223d947ff3f50f511d08690b8d5" -uuid = "a74b3585-a348-5f62-a45c-50e91977d574" -version = "0.7.3" - -[[deps.Blosc_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Lz4_jll", "Zlib_jll", "Zstd_jll"] -git-tree-sha1 = "19b98ee7e3db3b4eff74c5c9c72bf32144e24f10" -uuid = "0b7ba130-8d10-5ba8-a3d6-c5182647fed9" -version = "1.21.5+0" - -[[deps.Bzip2_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "9e2a6b69137e6969bab0152632dcb3bc108c8bdd" -uuid = "6e34b625-4abd-537c-b88f-471c36dfa7a0" -version = "1.0.8+1" - -[[deps.CSV]] -deps = ["CodecZlib", "Dates", "FilePathsBase", "InlineStrings", "Mmap", "Parsers", "PooledArrays", "PrecompileTools", "SentinelArrays", "Tables", "Unicode", "WeakRefStrings", "WorkerUtilities"] -git-tree-sha1 = "6c834533dc1fabd820c1db03c839bf97e45a3fab" -uuid = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b" -version = "0.10.14" - -[[deps.Cairo_jll]] -deps = ["Artifacts", "Bzip2_jll", "CompilerSupportLibraries_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "JLLWrappers", "LZO_jll", "Libdl", "Pixman_jll", "Xorg_libXext_jll", "Xorg_libXrender_jll", "Zlib_jll", "libpng_jll"] -git-tree-sha1 = "a2f1c8c668c8e3cb4cca4e57a8efdb09067bb3fd" -uuid = "83423d85-b0ee-5818-9007-b63ccbeb887a" -version = "1.18.0+2" - -[[deps.ChainRulesCore]] -deps = ["Compat", "LinearAlgebra"] -git-tree-sha1 = "71acdbf594aab5bbb2cec89b208c41b4c411e49f" -uuid = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" -version = "1.24.0" -weakdeps = ["SparseArrays"] - - [deps.ChainRulesCore.extensions] - ChainRulesCoreSparseArraysExt = "SparseArrays" - -[[deps.Clustering]] -deps = ["Distances", "LinearAlgebra", "NearestNeighbors", "Printf", "Random", "SparseArrays", "Statistics", "StatsBase"] -git-tree-sha1 = "9ebb045901e9bbf58767a9f34ff89831ed711aae" -uuid = "aaaa29a8-35af-508c-8bc3-b662a17a0fe5" -version = "0.15.7" - -[[deps.CodeTracking]] -deps = ["InteractiveUtils", "UUIDs"] -git-tree-sha1 = "7eee164f122511d3e4e1ebadb7956939ea7e1c77" -uuid = "da1fd8a2-8d9e-5ec2-8556-3022fb5608a2" -version = "1.3.6" - -[[deps.CodecBzip2]] -deps = ["Bzip2_jll", "TranscodingStreams"] -git-tree-sha1 = "e7c529cc31bb85b97631b922fa2e6baf246f5905" -uuid = "523fee87-0ab8-5b00-afb7-3ecf72e48cfd" -version = "0.8.4" - -[[deps.CodecZlib]] -deps = ["TranscodingStreams", "Zlib_jll"] -git-tree-sha1 = "bce6804e5e6044c6daab27bb533d1295e4a2e759" -uuid = "944b1d66-785c-5afd-91f1-9de20f533193" -version = "0.7.6" - -[[deps.ColorSchemes]] -deps = ["ColorTypes", "ColorVectorSpace", "Colors", "FixedPointNumbers", "PrecompileTools", "Random"] -git-tree-sha1 = "b5278586822443594ff615963b0c09755771b3e0" -uuid = "35d6a980-a343-548e-a6ea-1d62b119f2f4" -version = "3.26.0" - -[[deps.ColorTypes]] -deps = ["FixedPointNumbers", "Random"] -git-tree-sha1 = "b10d0b65641d57b8b4d5e234446582de5047050d" -uuid = "3da002f7-5984-5a60-b8a6-cbb66c0b333f" -version = "0.11.5" - -[[deps.ColorVectorSpace]] -deps = ["ColorTypes", "FixedPointNumbers", "LinearAlgebra", "Requires", "Statistics", "TensorCore"] -git-tree-sha1 = "a1f44953f2382ebb937d60dafbe2deea4bd23249" -uuid = "c3611d14-8923-5661-9e6a-0046d554d3a4" -version = "0.10.0" -weakdeps = ["SpecialFunctions"] - - [deps.ColorVectorSpace.extensions] - SpecialFunctionsExt = "SpecialFunctions" - -[[deps.Colors]] -deps = ["ColorTypes", "FixedPointNumbers", "Reexport"] -git-tree-sha1 = "362a287c3aa50601b0bc359053d5c2468f0e7ce0" -uuid = "5ae59095-9a9b-59fe-a467-6f913c188581" -version = "0.12.11" - -[[deps.CommonSubexpressions]] -deps = ["MacroTools"] -git-tree-sha1 = "cda2cfaebb4be89c9084adaca7dd7333369715c5" -uuid = "bbf7d656-a473-5ed7-a52c-81e309532950" -version = "0.3.1" - -[[deps.Compat]] -deps = ["TOML", "UUIDs"] -git-tree-sha1 = "8ae8d32e09f0dcf42a36b90d4e17f5dd2e4c4215" -uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" -version = "4.16.0" -weakdeps = ["Dates", "LinearAlgebra"] - - [deps.Compat.extensions] - CompatLinearAlgebraExt = "LinearAlgebra" - -[[deps.CompilerSupportLibraries_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" -version = "1.1.1+0" - -[[deps.ConcurrentUtilities]] -deps = ["Serialization", "Sockets"] -git-tree-sha1 = "ea32b83ca4fefa1768dc84e504cc0a94fb1ab8d1" -uuid = "f0e56b4a-5159-44fe-b623-3e5288b988bb" -version = "2.4.2" - -[[deps.ConstructionBase]] -git-tree-sha1 = "76219f1ed5771adbb096743bff43fb5fdd4c1157" -uuid = "187b0558-2788-49d3-abe0-74a17ed4e7c9" -version = "1.5.8" - - [deps.ConstructionBase.extensions] - ConstructionBaseIntervalSetsExt = "IntervalSets" - ConstructionBaseLinearAlgebraExt = "LinearAlgebra" - ConstructionBaseStaticArraysExt = "StaticArrays" - - [deps.ConstructionBase.weakdeps] - IntervalSets = "8197267c-284f-5f27-9208-e0e47529a953" - LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" - StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" - -[[deps.Contour]] -git-tree-sha1 = "439e35b0b36e2e5881738abc8857bd92ad6ff9a8" -uuid = "d38c429a-6771-53c6-b99e-75d170b6e991" -version = "0.6.3" - -[[deps.Crayons]] -git-tree-sha1 = "249fe38abf76d48563e2f4556bebd215aa317e15" -uuid = "a8cc5b0e-0ffa-5ad4-8c14-923d3ee1735f" -version = "4.1.1" - -[[deps.DBInterface]] -git-tree-sha1 = "a444404b3f94deaa43ca2a58e18153a82695282b" -uuid = "a10d1c49-ce27-4219-8d33-6db1a4562965" -version = "2.6.1" - -[[deps.DataAPI]] -git-tree-sha1 = "abe83f3a2f1b857aac70ef8b269080af17764bbe" -uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a" -version = "1.16.0" - -[[deps.DataFrames]] -deps = ["Compat", "DataAPI", "DataStructures", "Future", "InlineStrings", "InvertedIndices", "IteratorInterfaceExtensions", "LinearAlgebra", "Markdown", "Missings", "PooledArrays", "PrecompileTools", "PrettyTables", "Printf", "REPL", "Random", "Reexport", "SentinelArrays", "SortingAlgorithms", "Statistics", "TableTraits", "Tables", "Unicode"] -git-tree-sha1 = "04c738083f29f86e62c8afc341f0967d8717bdb8" -uuid = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" -version = "1.6.1" - -[[deps.DataStructures]] -deps = ["Compat", "InteractiveUtils", "OrderedCollections"] -git-tree-sha1 = "1d0a14036acb104d9e89698bd408f63ab58cdc82" -uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8" -version = "0.18.20" - -[[deps.DataValueInterfaces]] -git-tree-sha1 = "bfc1187b79289637fa0ef6d4436ebdfe6905cbd6" -uuid = "e2d170a0-9d28-54be-80f0-106bbe20a464" -version = "1.0.0" - -[[deps.Dates]] -deps = ["Printf"] -uuid = "ade2ca70-3891-5945-98fb-dc099432e06a" - -[[deps.Dbus_jll]] -deps = ["Artifacts", "Expat_jll", "JLLWrappers", "Libdl"] -git-tree-sha1 = "fc173b380865f70627d7dd1190dc2fce6cc105af" -uuid = "ee1fde0b-3d02-5ea6-8484-8dfef6360eab" -version = "1.14.10+0" - -[[deps.DelimitedFiles]] -deps = ["Mmap"] -git-tree-sha1 = "9e2f36d3c96a820c678f2f1f1782582fcf685bae" -uuid = "8bb1440f-4735-579b-a4ab-409b98df4dab" -version = "1.9.1" - -[[deps.DiffResults]] -deps = ["StaticArraysCore"] -git-tree-sha1 = "782dd5f4561f5d267313f23853baaaa4c52ea621" -uuid = "163ba53b-c6d8-5494-b064-1a9d43ac40c5" -version = "1.1.0" - -[[deps.DiffRules]] -deps = ["IrrationalConstants", "LogExpFunctions", "NaNMath", "Random", "SpecialFunctions"] -git-tree-sha1 = "23163d55f885173722d1e4cf0f6110cdbaf7e272" -uuid = "b552c78f-8df3-52c6-915a-8e097449b14b" -version = "1.15.1" - -[[deps.Distances]] -deps = ["LinearAlgebra", "Statistics", "StatsAPI"] -git-tree-sha1 = "66c4c81f259586e8f002eacebc177e1fb06363b0" -uuid = "b4f34e82-e78d-54a5-968a-f98e89d6e8f7" -version = "0.10.11" -weakdeps = ["ChainRulesCore", "SparseArrays"] - - [deps.Distances.extensions] - DistancesChainRulesCoreExt = "ChainRulesCore" - DistancesSparseArraysExt = "SparseArrays" - -[[deps.Distributed]] -deps = ["Random", "Serialization", "Sockets"] -uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" - -[[deps.Distributions]] -deps = ["AliasTables", "FillArrays", "LinearAlgebra", "PDMats", "Printf", "QuadGK", "Random", "SpecialFunctions", "Statistics", "StatsAPI", "StatsBase", "StatsFuns"] -git-tree-sha1 = "e6c693a0e4394f8fda0e51a5bdf5aef26f8235e9" -uuid = "31c24e10-a181-5473-b8eb-7969acd0382f" -version = "0.25.111" - - [deps.Distributions.extensions] - DistributionsChainRulesCoreExt = "ChainRulesCore" - DistributionsDensityInterfaceExt = "DensityInterface" - DistributionsTestExt = "Test" - - [deps.Distributions.weakdeps] - ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" - DensityInterface = "b429d917-457f-4dbc-8f4c-0cc954292b1d" - Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" - -[[deps.DocStringExtensions]] -deps = ["LibGit2"] -git-tree-sha1 = "2fb1e02f2b635d0845df5d7c167fec4dd739b00d" -uuid = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" -version = "0.9.3" - -[[deps.Downloads]] -deps = ["ArgTools", "FileWatching", "LibCURL", "NetworkOptions"] -uuid = "f43a241f-c20a-4ad4-852c-f6b1247861c6" -version = "1.6.0" - -[[deps.EpollShim_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "8e9441ee83492030ace98f9789a654a6d0b1f643" -uuid = "2702e6a9-849d-5ed8-8c21-79e8b8f9ee43" -version = "0.0.20230411+0" - -[[deps.ExceptionUnwrapping]] -deps = ["Test"] -git-tree-sha1 = "dcb08a0d93ec0b1cdc4af184b26b591e9695423a" -uuid = "460bff9d-24e4-43bc-9d9f-a8973cb893f4" -version = "0.1.10" - -[[deps.Expat_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "1c6317308b9dc757616f0b5cb379db10494443a7" -uuid = "2e619515-83b5-522b-bb60-26c02a35a201" -version = "2.6.2+0" - -[[deps.ExprTools]] -git-tree-sha1 = "27415f162e6028e81c72b82ef756bf321213b6ec" -uuid = "e2ba6199-217a-4e67-a87a-7c52f15ade04" -version = "0.1.10" - -[[deps.FFMPEG]] -deps = ["FFMPEG_jll"] -git-tree-sha1 = "b57e3acbe22f8484b4b5ff66a7499717fe1a9cc8" -uuid = "c87230d0-a227-11e9-1b43-d7ebe4e7570a" -version = "0.4.1" - -[[deps.FFMPEG_jll]] -deps = ["Artifacts", "Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "JLLWrappers", "LAME_jll", "Libdl", "Ogg_jll", "OpenSSL_jll", "Opus_jll", "PCRE2_jll", "Zlib_jll", "libaom_jll", "libass_jll", "libfdk_aac_jll", "libvorbis_jll", "x264_jll", "x265_jll"] -git-tree-sha1 = "466d45dc38e15794ec7d5d63ec03d776a9aff36e" -uuid = "b22a6f82-2f65-5046-a5b2-351ab43fb4e5" -version = "4.4.4+1" - -[[deps.FFTW]] -deps = ["AbstractFFTs", "FFTW_jll", "LinearAlgebra", "MKL_jll", "Preferences", "Reexport"] -git-tree-sha1 = "4820348781ae578893311153d69049a93d05f39d" -uuid = "7a1cc6ca-52ef-59f5-83cd-3a7055c09341" -version = "1.8.0" - -[[deps.FFTW_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "c6033cc3892d0ef5bb9cd29b7f2f0331ea5184ea" -uuid = "f5851436-0d7a-5f13-b9de-f02708fd171a" -version = "3.3.10+0" - -[[deps.FilePathsBase]] -deps = ["Compat", "Dates"] -git-tree-sha1 = "7878ff7172a8e6beedd1dea14bd27c3c6340d361" -uuid = "48062228-2e41-5def-b9a4-89aafe57970f" -version = "0.9.22" -weakdeps = ["Mmap", "Test"] - - [deps.FilePathsBase.extensions] - FilePathsBaseMmapExt = "Mmap" - FilePathsBaseTestExt = "Test" - -[[deps.FileWatching]] -uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee" - -[[deps.FillArrays]] -deps = ["LinearAlgebra"] -git-tree-sha1 = "6a70198746448456524cb442b8af316927ff3e1a" -uuid = "1a297f60-69ca-5386-bcde-b61e274b549b" -version = "1.13.0" -weakdeps = ["PDMats", "SparseArrays", "Statistics"] - - [deps.FillArrays.extensions] - FillArraysPDMatsExt = "PDMats" - FillArraysSparseArraysExt = "SparseArrays" - FillArraysStatisticsExt = "Statistics" - -[[deps.FiniteDiff]] -deps = ["ArrayInterface", "LinearAlgebra", "Setfield", "SparseArrays"] -git-tree-sha1 = "f9219347ebf700e77ca1d48ef84e4a82a6701882" -uuid = "6a86dc24-6348-571c-b903-95158fe2bd41" -version = "2.24.0" - - [deps.FiniteDiff.extensions] - FiniteDiffBandedMatricesExt = "BandedMatrices" - FiniteDiffBlockBandedMatricesExt = "BlockBandedMatrices" - FiniteDiffStaticArraysExt = "StaticArrays" - - [deps.FiniteDiff.weakdeps] - BandedMatrices = "aae01518-5342-5314-be14-df237901396f" - BlockBandedMatrices = "ffab5731-97b5-5995-9138-79e8c1846df0" - StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" - -[[deps.FixedPointNumbers]] -deps = ["Statistics"] -git-tree-sha1 = "05882d6995ae5c12bb5f36dd2ed3f61c98cbb172" -uuid = "53c48c17-4a7d-5ca2-90c5-79b7896eea93" -version = "0.8.5" - -[[deps.Fontconfig_jll]] -deps = ["Artifacts", "Bzip2_jll", "Expat_jll", "FreeType2_jll", "JLLWrappers", "Libdl", "Libuuid_jll", "Zlib_jll"] -git-tree-sha1 = "db16beca600632c95fc8aca29890d83788dd8b23" -uuid = "a3f928ae-7b40-5064-980b-68af3947d34b" -version = "2.13.96+0" - -[[deps.Format]] -git-tree-sha1 = "9c68794ef81b08086aeb32eeaf33531668d5f5fc" -uuid = "1fa38f19-a742-5d3f-a2b9-30dd87b9d5f8" -version = "1.3.7" - -[[deps.ForwardDiff]] -deps = ["CommonSubexpressions", "DiffResults", "DiffRules", "LinearAlgebra", "LogExpFunctions", "NaNMath", "Preferences", "Printf", "Random", "SpecialFunctions"] -git-tree-sha1 = "cf0fe81336da9fb90944683b8c41984b08793dad" -uuid = "f6369f11-7733-5829-9624-2563aa707210" -version = "0.10.36" -weakdeps = ["StaticArrays"] - - [deps.ForwardDiff.extensions] - ForwardDiffStaticArraysExt = "StaticArrays" - -[[deps.FreeType2_jll]] -deps = ["Artifacts", "Bzip2_jll", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "5c1d8ae0efc6c2e7b1fc502cbe25def8f661b7bc" -uuid = "d7e528f0-a631-5988-bf34-fe36492bcfd7" -version = "2.13.2+0" - -[[deps.FriBidi_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "1ed150b39aebcc805c26b93a8d0122c940f64ce2" -uuid = "559328eb-81f9-559d-9380-de523a88c83c" -version = "1.0.14+0" - -[[deps.FunctionalCollections]] -deps = ["Test"] -git-tree-sha1 = "04cb9cfaa6ba5311973994fe3496ddec19b6292a" -uuid = "de31a74c-ac4f-5751-b3fd-e18cd04993ca" -version = "0.5.0" - -[[deps.Future]] -deps = ["Random"] -uuid = "9fa8497b-333b-5362-9e8d-4d0656e87820" - -[[deps.GLFW_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Libglvnd_jll", "Xorg_libXcursor_jll", "Xorg_libXi_jll", "Xorg_libXinerama_jll", "Xorg_libXrandr_jll", "libdecor_jll", "xkbcommon_jll"] -git-tree-sha1 = "532f9126ad901533af1d4f5c198867227a7bb077" -uuid = "0656b61e-2033-5cc2-a64a-77c0f6c09b89" -version = "3.4.0+1" - -[[deps.GR]] -deps = ["Artifacts", "Base64", "DelimitedFiles", "Downloads", "GR_jll", "HTTP", "JSON", "Libdl", "LinearAlgebra", "Preferences", "Printf", "Qt6Wayland_jll", "Random", "Serialization", "Sockets", "TOML", "Tar", "Test", "p7zip_jll"] -git-tree-sha1 = "629693584cef594c3f6f99e76e7a7ad17e60e8d5" -uuid = "28b8d3ca-fb5f-59d9-8090-bfdbd6d07a71" -version = "0.73.7" - -[[deps.GR_jll]] -deps = ["Artifacts", "Bzip2_jll", "Cairo_jll", "FFMPEG_jll", "Fontconfig_jll", "FreeType2_jll", "GLFW_jll", "JLLWrappers", "JpegTurbo_jll", "Libdl", "Libtiff_jll", "Pixman_jll", "Qt6Base_jll", "Zlib_jll", "libpng_jll"] -git-tree-sha1 = "a8863b69c2a0859f2c2c87ebdc4c6712e88bdf0d" -uuid = "d2c73de3-f751-5644-a686-071e5b155ba9" -version = "0.73.7+0" - -[[deps.Gettext_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Libiconv_jll", "Pkg", "XML2_jll"] -git-tree-sha1 = "9b02998aba7bf074d14de89f9d37ca24a1a0b046" -uuid = "78b55507-aeef-58d4-861c-77aaff3498b1" -version = "0.21.0+0" - -[[deps.Glib_jll]] -deps = ["Artifacts", "Gettext_jll", "JLLWrappers", "Libdl", "Libffi_jll", "Libiconv_jll", "Libmount_jll", "PCRE2_jll", "Zlib_jll"] -git-tree-sha1 = "7c82e6a6cd34e9d935e9aa4051b66c6ff3af59ba" -uuid = "7746bdde-850d-59dc-9ae8-88ece973131d" -version = "2.80.2+0" - -[[deps.Graphite2_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "344bf40dcab1073aca04aa0df4fb092f920e4011" -uuid = "3b182d85-2403-5c21-9c21-1e1f0cc25472" -version = "1.3.14+0" - -[[deps.Grisu]] -git-tree-sha1 = "53bb909d1151e57e2484c3d1b53e19552b887fb2" -uuid = "42e2da0e-8278-4e71-bc24-59509adca0fe" -version = "1.0.2" - -[[deps.H5Zblosc]] -deps = ["Blosc", "HDF5"] -git-tree-sha1 = "d778420e524bcf56066e8c63c7aa315ae7269da2" -uuid = "c8ec2601-a99c-407f-b158-e79c03c2f5f7" -version = "0.1.2" - -[[deps.HDF5]] -deps = ["Compat", "HDF5_jll", "Libdl", "MPIPreferences", "Mmap", "Preferences", "Printf", "Random", "Requires", "UUIDs"] -git-tree-sha1 = "e856eef26cf5bf2b0f95f8f4fc37553c72c8641c" -uuid = "f67ccb44-e63f-5c2f-98bd-6dc0ccc4ba2f" -version = "0.17.2" -weakdeps = ["MPI"] - - [deps.HDF5.extensions] - MPIExt = "MPI" - -[[deps.HDF5_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LLVMOpenMP_jll", "LazyArtifacts", "LibCURL_jll", "Libdl", "MPICH_jll", "MPIPreferences", "MPItrampoline_jll", "MicrosoftMPI_jll", "OpenMPI_jll", "OpenSSL_jll", "TOML", "Zlib_jll", "libaec_jll"] -git-tree-sha1 = "38c8874692d48d5440d5752d6c74b0c6b0b60739" -uuid = "0234f1f7-429e-5d53-9886-15a909be8d59" -version = "1.14.2+1" - -[[deps.HTTP]] -deps = ["Base64", "CodecZlib", "ConcurrentUtilities", "Dates", "ExceptionUnwrapping", "Logging", "LoggingExtras", "MbedTLS", "NetworkOptions", "OpenSSL", "Random", "SimpleBufferStream", "Sockets", "URIs", "UUIDs"] -git-tree-sha1 = "d1d712be3164d61d1fb98e7ce9bcbc6cc06b45ed" -uuid = "cd3eb016-35fb-5094-929b-558a96fad6f3" -version = "1.10.8" - -[[deps.HarfBuzz_jll]] -deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "Graphite2_jll", "JLLWrappers", "Libdl", "Libffi_jll"] -git-tree-sha1 = "401e4f3f30f43af2c8478fc008da50096ea5240f" -uuid = "2e76f6c2-a576-52d4-95c1-20adfe4de566" -version = "8.3.1+0" - -[[deps.HiGHS]] -deps = ["HiGHS_jll", "MathOptInterface", "PrecompileTools", "SparseArrays"] -git-tree-sha1 = "477bde3ee57657239b38d3bacafcb20082d9a1b2" -uuid = "87dc4568-4c63-4d18-b0c0-bb2238e4078b" -version = "1.9.2" - -[[deps.HiGHS_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "1f240e0fb1c4cdf39bca5d3881d1758263931ccb" -uuid = "8fd58aa0-07eb-5a78-9b36-339c94fd15ea" -version = "1.7.2+0" - -[[deps.Hiccup]] -deps = ["MacroTools", "Test"] -git-tree-sha1 = "6187bb2d5fcbb2007c39e7ac53308b0d371124bd" -uuid = "9fb69e20-1954-56bb-a84f-559cc56a8ff7" -version = "0.2.2" - -[[deps.Hwloc_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "5e19e1e4fa3e71b774ce746274364aef0234634e" -uuid = "e33a78d0-f292-5ffc-b300-72abe9b543c8" -version = "2.11.1+0" - -[[deps.HydroPowerSimulations]] -deps = ["Dates", "InfrastructureSystems", "JuMP", "PowerSimulations", "PowerSystems"] -git-tree-sha1 = "c914f16b7091d2a0d544da6b867c025b81537587" -uuid = "fc1677e0-6ad7-4515-bf3a-bd6bf20a0b1b" -version = "0.9.1" - -[[deps.HypergeometricFunctions]] -deps = ["LinearAlgebra", "OpenLibm_jll", "SpecialFunctions"] -git-tree-sha1 = "7c4195be1649ae622304031ed46a2f4df989f1eb" -uuid = "34004b35-14d8-5ef3-9330-4cdb6864b03a" -version = "0.3.24" - -[[deps.InfrastructureModels]] -deps = ["JuMP", "Memento"] -git-tree-sha1 = "f9c1f6bdac8ad3fca6fc24fcf68256958ad84c28" -uuid = "2030c09a-7f63-5d83-885d-db604e0e9cc0" -version = "0.7.8" - -[[deps.InfrastructureSystems]] -deps = ["CSV", "DataFrames", "DataStructures", "Dates", "DocStringExtensions", "H5Zblosc", "HDF5", "InteractiveUtils", "JSON3", "Logging", "Mustache", "Pkg", "PrettyTables", "Random", "SHA", "SQLite", "Serialization", "StructTypes", "TOML", "Tables", "TerminalLoggers", "TimeSeries", "TimerOutputs", "UUIDs", "YAML"] -git-tree-sha1 = "9e59db68c2eab11e274c84e55fff202333837361" -uuid = "2cd47ed4-ca9b-11e9-27f2-ab636a7671f1" -version = "2.2.1" - -[[deps.InlineStrings]] -git-tree-sha1 = "45521d31238e87ee9f9732561bfee12d4eebd52d" -uuid = "842dd82b-1e85-43dc-bf29-5d0ee9dffc48" -version = "1.4.2" - - [deps.InlineStrings.extensions] - ArrowTypesExt = "ArrowTypes" - ParsersExt = "Parsers" - - [deps.InlineStrings.weakdeps] - ArrowTypes = "31f734f8-188a-4ce0-8406-c8a06bd891cd" - Parsers = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" - -[[deps.IntelOpenMP_jll]] -deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl"] -git-tree-sha1 = "10bd689145d2c3b2a9844005d01087cc1194e79e" -uuid = "1d5cc7b8-4909-519e-a0f8-d0f5ad9712d0" -version = "2024.2.1+0" - -[[deps.InteractiveUtils]] -deps = ["Markdown"] -uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" - -[[deps.Interpolations]] -deps = ["Adapt", "AxisAlgorithms", "ChainRulesCore", "LinearAlgebra", "OffsetArrays", "Random", "Ratios", "Requires", "SharedArrays", "SparseArrays", "StaticArrays", "WoodburyMatrices"] -git-tree-sha1 = "88a101217d7cb38a7b481ccd50d21876e1d1b0e0" -uuid = "a98d9a8b-a2ab-59e6-89dd-64a1c18fca59" -version = "0.15.1" -weakdeps = ["Unitful"] - - [deps.Interpolations.extensions] - InterpolationsUnitfulExt = "Unitful" - -[[deps.InvertedIndices]] -git-tree-sha1 = "0dc7b50b8d436461be01300fd8cd45aa0274b038" -uuid = "41ab1584-1d38-5bbf-9106-f11c6c58b48f" -version = "1.3.0" - -[[deps.Ipopt]] -deps = ["Ipopt_jll", "LinearAlgebra", "MathOptInterface", "OpenBLAS32_jll", "PrecompileTools"] -git-tree-sha1 = "92588db78296190d27668a560df3997719fc2a25" -uuid = "b6b21f68-93f8-5de0-b562-5493be1d77c9" -version = "1.6.6" - -[[deps.Ipopt_jll]] -deps = ["ASL_jll", "Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "MUMPS_seq_jll", "SPRAL_jll", "libblastrampoline_jll"] -git-tree-sha1 = "a0950d209a055b3adb6d29ade5cbdf005a6bd290" -uuid = "9cc047cb-c261-5740-88fc-0cf96f7bdcc7" -version = "300.1400.1600+0" - -[[deps.IrrationalConstants]] -git-tree-sha1 = "630b497eafcc20001bba38a4651b327dcfc491d2" -uuid = "92d709cd-6900-40b7-9082-c6be49f344b6" -version = "0.2.2" - -[[deps.IteratorInterfaceExtensions]] -git-tree-sha1 = "a3f24677c21f5bbe9d2a714f95dcd58337fb2856" -uuid = "82899510-4779-5014-852e-03e436cf321d" -version = "1.0.0" - -[[deps.JLFzf]] -deps = ["Pipe", "REPL", "Random", "fzf_jll"] -git-tree-sha1 = "39d64b09147620f5ffbf6b2d3255be3c901bec63" -uuid = "1019f520-868f-41f5-a6de-eb00f4b6a39c" -version = "0.1.8" - -[[deps.JLLWrappers]] -deps = ["Artifacts", "Preferences"] -git-tree-sha1 = "f389674c99bfcde17dc57454011aa44d5a260a40" -uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210" -version = "1.6.0" - -[[deps.JSExpr]] -deps = ["JSON", "MacroTools", "Observables", "WebIO"] -git-tree-sha1 = "b413a73785b98474d8af24fd4c8a975e31df3658" -uuid = "97c1335a-c9c5-57fe-bc5d-ec35cebe8660" -version = "0.5.4" - -[[deps.JSON]] -deps = ["Dates", "Mmap", "Parsers", "Unicode"] -git-tree-sha1 = "31e996f0a15c7b280ba9f76636b3ff9e2ae58c9a" -uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" -version = "0.21.4" - -[[deps.JSON3]] -deps = ["Dates", "Mmap", "Parsers", "PrecompileTools", "StructTypes", "UUIDs"] -git-tree-sha1 = "eb3edce0ed4fa32f75a0a11217433c31d56bd48b" -uuid = "0f8b85d8-7281-11e9-16c2-39a750bddbf1" -version = "1.14.0" - - [deps.JSON3.extensions] - JSON3ArrowExt = ["ArrowTypes"] - - [deps.JSON3.weakdeps] - ArrowTypes = "31f734f8-188a-4ce0-8406-c8a06bd891cd" - -[[deps.JpegTurbo_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "c84a835e1a09b289ffcd2271bf2a337bbdda6637" -uuid = "aacddb02-875f-59d6-b918-886e6ef4fbf8" -version = "3.0.3+0" - -[[deps.JuMP]] -deps = ["LinearAlgebra", "MacroTools", "MathOptInterface", "MutableArithmetics", "OrderedCollections", "PrecompileTools", "Printf", "SparseArrays"] -git-tree-sha1 = "82bc707a67639be45ec9abf3a7640af19c4172fe" -uuid = "4076af6c-e467-56ae-b986-b466b2749572" -version = "1.23.1" - - [deps.JuMP.extensions] - JuMPDimensionalDataExt = "DimensionalData" - - [deps.JuMP.weakdeps] - DimensionalData = "0703355e-b756-11e9-17c0-8b28908087d0" - -[[deps.JuliaInterpreter]] -deps = ["CodeTracking", "InteractiveUtils", "Random", "UUIDs"] -git-tree-sha1 = "2984284a8abcfcc4784d95a9e2ea4e352dd8ede7" -uuid = "aa1ae85d-cabe-5617-a682-6adf51b2e16a" -version = "0.9.36" - -[[deps.KLU]] -deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse_jll"] -git-tree-sha1 = "07649c499349dad9f08dde4243a4c597064663e9" -uuid = "ef3ab10e-7fda-4108-b977-705223b18434" -version = "0.6.0" - -[[deps.Kaleido_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "43032da5832754f58d14a91ffbe86d5f176acda9" -uuid = "f7e6163d-2fa5-5f23-b69c-1db539e41963" -version = "0.2.1+0" - -[[deps.KernelDensity]] -deps = ["Distributions", "DocStringExtensions", "FFTW", "Interpolations", "StatsBase"] -git-tree-sha1 = "7d703202e65efa1369de1279c162b915e245eed1" -uuid = "5ab0869b-81aa-558d-bb23-cbf5423bbe9b" -version = "0.6.9" - -[[deps.LAME_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "170b660facf5df5de098d866564877e119141cbd" -uuid = "c1c5ebd0-6772-5130-a774-d5fcae4a789d" -version = "3.100.2+0" - -[[deps.LERC_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "bf36f528eec6634efc60d7ec062008f171071434" -uuid = "88015f11-f218-50d7-93a8-a6af411a945d" -version = "3.0.0+1" - -[[deps.LLVMOpenMP_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "e16271d212accd09d52ee0ae98956b8a05c4b626" -uuid = "1d63c593-3942-5779-bab2-d838dc0a180e" -version = "17.0.6+0" - -[[deps.LZO_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "70c5da094887fd2cae843b8db33920bac4b6f07d" -uuid = "dd4b983a-f0e5-5f8d-a1b7-129d4a5fb1ac" -version = "2.10.2+0" - -[[deps.LaTeXStrings]] -git-tree-sha1 = "50901ebc375ed41dbf8058da26f9de442febbbec" -uuid = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f" -version = "1.3.1" - -[[deps.Latexify]] -deps = ["Format", "InteractiveUtils", "LaTeXStrings", "MacroTools", "Markdown", "OrderedCollections", "Requires"] -git-tree-sha1 = "ce5f5621cac23a86011836badfedf664a612cee4" -uuid = "23fbe1c1-3f47-55db-b15f-69d7ec21a316" -version = "0.16.5" - - [deps.Latexify.extensions] - DataFramesExt = "DataFrames" - SparseArraysExt = "SparseArrays" - SymEngineExt = "SymEngine" - - [deps.Latexify.weakdeps] - DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" - SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" - SymEngine = "123dc426-2d89-5057-bbad-38513e3affd8" - -[[deps.Lazy]] -deps = ["MacroTools"] -git-tree-sha1 = "1370f8202dac30758f3c345f9909b97f53d87d3f" -uuid = "50d2b5c4-7a5e-59d5-8109-a42b560f39c0" -version = "0.15.1" - -[[deps.LazyArtifacts]] -deps = ["Artifacts", "Pkg"] -uuid = "4af54fe1-eca0-43a8-85a7-787d91b784e3" - -[[deps.LeftChildRightSiblingTrees]] -deps = ["AbstractTrees"] -git-tree-sha1 = "fb6803dafae4a5d62ea5cab204b1e657d9737e7f" -uuid = "1d6d02ad-be62-4b6b-8a6d-2f90e265016e" -version = "0.2.0" - -[[deps.LibCURL]] -deps = ["LibCURL_jll", "MozillaCACerts_jll"] -uuid = "b27032c2-a3e7-50c8-80cd-2d36dbcbfd21" -version = "0.6.4" - -[[deps.LibCURL_jll]] -deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll", "Zlib_jll", "nghttp2_jll"] -uuid = "deac9b47-8bc7-5906-a0fe-35ac56dc84c0" -version = "8.4.0+0" - -[[deps.LibGit2]] -deps = ["Base64", "LibGit2_jll", "NetworkOptions", "Printf", "SHA"] -uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" - -[[deps.LibGit2_jll]] -deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll"] -uuid = "e37daf67-58a4-590a-8e99-b0245dd2ffc5" -version = "1.6.4+0" - -[[deps.LibSSH2_jll]] -deps = ["Artifacts", "Libdl", "MbedTLS_jll"] -uuid = "29816b5a-b9ab-546f-933c-edad1886dfa8" -version = "1.11.0+1" - -[[deps.Libdl]] -uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" - -[[deps.Libffi_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "0b4a5d71f3e5200a7dff793393e09dfc2d874290" -uuid = "e9f186c6-92d2-5b65-8a66-fee21dc1b490" -version = "3.2.2+1" - -[[deps.Libgcrypt_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgpg_error_jll"] -git-tree-sha1 = "9fd170c4bbfd8b935fdc5f8b7aa33532c991a673" -uuid = "d4300ac3-e22c-5743-9152-c294e39db1e4" -version = "1.8.11+0" - -[[deps.Libglvnd_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll", "Xorg_libXext_jll"] -git-tree-sha1 = "6f73d1dd803986947b2c750138528a999a6c7733" -uuid = "7e76a0d4-f3c7-5321-8279-8d96eeed0f29" -version = "1.6.0+0" - -[[deps.Libgpg_error_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "fbb1f2bef882392312feb1ede3615ddc1e9b99ed" -uuid = "7add5ba3-2f88-524e-9cd5-f83b8a55f7b8" -version = "1.49.0+0" - -[[deps.Libiconv_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "f9557a255370125b405568f9767d6d195822a175" -uuid = "94ce4f54-9a6c-5748-9c1c-f9c7231a4531" -version = "1.17.0+0" - -[[deps.Libmount_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "0c4f9c4f1a50d8f35048fa0532dabbadf702f81e" -uuid = "4b2f31a3-9ecc-558c-b454-b3730dcb73e9" -version = "2.40.1+0" - -[[deps.Libtiff_jll]] -deps = ["Artifacts", "JLLWrappers", "JpegTurbo_jll", "LERC_jll", "Libdl", "XZ_jll", "Zlib_jll", "Zstd_jll"] -git-tree-sha1 = "2da088d113af58221c52828a80378e16be7d037a" -uuid = "89763e89-9b03-5906-acba-b20f662cd828" -version = "4.5.1+1" - -[[deps.Libuuid_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "5ee6203157c120d79034c748a2acba45b82b8807" -uuid = "38a345b3-de98-5d2b-a5d3-14cd9215e700" -version = "2.40.1+0" - -[[deps.LineSearches]] -deps = ["LinearAlgebra", "NLSolversBase", "NaNMath", "Parameters", "Printf"] -git-tree-sha1 = "e4c3be53733db1051cc15ecf573b1042b3a712a1" -uuid = "d3d80556-e9d4-5f37-9878-2ab0fcc64255" -version = "7.3.0" - -[[deps.LinearAlgebra]] -deps = ["Libdl", "OpenBLAS_jll", "libblastrampoline_jll"] -uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" - -[[deps.LogExpFunctions]] -deps = ["DocStringExtensions", "IrrationalConstants", "LinearAlgebra"] -git-tree-sha1 = "a2d09619db4e765091ee5c6ffe8872849de0feea" -uuid = "2ab3a3ac-af41-5b50-aa03-7779005ae688" -version = "0.3.28" - - [deps.LogExpFunctions.extensions] - LogExpFunctionsChainRulesCoreExt = "ChainRulesCore" - LogExpFunctionsChangesOfVariablesExt = "ChangesOfVariables" - LogExpFunctionsInverseFunctionsExt = "InverseFunctions" - - [deps.LogExpFunctions.weakdeps] - ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" - ChangesOfVariables = "9e997f8a-9a97-42d5-a9f1-ce6bfc15e2c0" - InverseFunctions = "3587e190-3f89-42d0-90ee-14403ec27112" - -[[deps.Logging]] -uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" - -[[deps.LoggingExtras]] -deps = ["Dates", "Logging"] -git-tree-sha1 = "c1dd6d7978c12545b4179fb6153b9250c96b0075" -uuid = "e6f89c97-d47a-5376-807f-9c37f3926c36" -version = "1.0.3" - -[[deps.LoweredCodeUtils]] -deps = ["JuliaInterpreter"] -git-tree-sha1 = "c2b5e92eaf5101404a58ce9c6083d595472361d6" -uuid = "6f1432cf-f94c-5a45-995e-cdbf5db27b0b" -version = "3.0.2" - -[[deps.Lz4_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "7f26c8fc5229e68484e0b3447312c98e16207d11" -uuid = "5ced341a-0733-55b8-9ab6-a4889d929147" -version = "1.10.0+0" - -[[deps.METIS_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "1fd0a97409e418b78c53fac671cf4622efdf0f21" -uuid = "d00139f3-1899-568f-a2f0-47f597d42d70" -version = "5.1.2+0" - -[[deps.MKL]] -deps = ["Artifacts", "Libdl", "LinearAlgebra", "Logging", "MKL_jll"] -git-tree-sha1 = "17f06b6fb5198b757413d8379bfa62246c5da5a3" -uuid = "33e6dc65-8f57-5167-99aa-e5a354878fb2" -version = "0.6.3" - -[[deps.MKL_jll]] -deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "oneTBB_jll"] -git-tree-sha1 = "f046ccd0c6db2832a9f639e2c669c6fe867e5f4f" -uuid = "856f044c-d86e-5d09-b602-aeab76dc8ba7" -version = "2024.2.0+0" - -[[deps.MPI]] -deps = ["Distributed", "DocStringExtensions", "Libdl", "MPICH_jll", "MPIPreferences", "MPItrampoline_jll", "MicrosoftMPI_jll", "OpenMPI_jll", "PkgVersion", "PrecompileTools", "Requires", "Serialization", "Sockets"] -git-tree-sha1 = "b4d8707e42b693720b54f0b3434abee6dd4d947a" -uuid = "da04e1cc-30fd-572f-bb4f-1f8673147195" -version = "0.20.16" - - [deps.MPI.extensions] - AMDGPUExt = "AMDGPU" - CUDAExt = "CUDA" - - [deps.MPI.weakdeps] - AMDGPU = "21141c5a-9bdb-4563-92ae-f87d6854732e" - CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" - -[[deps.MPICH_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "Hwloc_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "MPIPreferences", "TOML"] -git-tree-sha1 = "19d4bd098928a3263693991500d05d74dbdc2004" -uuid = "7cb0a576-ebde-5e09-9194-50597f1243b4" -version = "4.2.2+0" - -[[deps.MPIPreferences]] -deps = ["Libdl", "Preferences"] -git-tree-sha1 = "c105fe467859e7f6e9a852cb15cb4301126fac07" -uuid = "3da0fdf6-3ccc-4f1b-acd9-58baa6c99267" -version = "0.1.11" - -[[deps.MPItrampoline_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "MPIPreferences", "TOML"] -git-tree-sha1 = "8c35d5420193841b2f367e658540e8d9e0601ed0" -uuid = "f1f71cc9-e9ae-5b93-9b94-4fe0e1ad3748" -version = "5.4.0+0" - -[[deps.MUMPS_seq_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "METIS_jll", "libblastrampoline_jll"] -git-tree-sha1 = "85047ac569761e3387717480a38a61d2a67df45c" -uuid = "d7ed1dd3-d0ae-5e8e-bfb4-87a502085b8d" -version = "500.700.300+0" - -[[deps.MacroTools]] -deps = ["Markdown", "Random"] -git-tree-sha1 = "2fa9ee3e63fd3a4f7a9a4f4744a52f4856de82df" -uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" -version = "0.5.13" - -[[deps.Markdown]] -deps = ["Base64"] -uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" - -[[deps.MathOptInterface]] -deps = ["BenchmarkTools", "CodecBzip2", "CodecZlib", "DataStructures", "ForwardDiff", "JSON", "LinearAlgebra", "MutableArithmetics", "NaNMath", "OrderedCollections", "PrecompileTools", "Printf", "SparseArrays", "SpecialFunctions", "Test", "Unicode"] -git-tree-sha1 = "5b246fca5420ae176d65ed43a2d0ee5897775216" -uuid = "b8f27783-ece8-5eb3-8dc8-9495eed66fee" -version = "1.31.2" - -[[deps.MbedTLS]] -deps = ["Dates", "MbedTLS_jll", "MozillaCACerts_jll", "NetworkOptions", "Random", "Sockets"] -git-tree-sha1 = "c067a280ddc25f196b5e7df3877c6b226d390aaf" -uuid = "739be429-bea8-5141-9913-cc70e7f3736d" -version = "1.1.9" - -[[deps.MbedTLS_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" -version = "2.28.2+1" - -[[deps.Measures]] -git-tree-sha1 = "c13304c81eec1ed3af7fc20e75fb6b26092a1102" -uuid = "442fdcdd-2543-5da2-b0f3-8c86c306513e" -version = "0.3.2" - -[[deps.Memento]] -deps = ["Dates", "Distributed", "Requires", "Serialization", "Sockets", "Test", "UUIDs"] -git-tree-sha1 = "bb2e8f4d9f400f6e90d57b34860f6abdc51398e5" -uuid = "f28f55f0-a522-5efc-85c2-fe41dfb9b2d9" -version = "1.4.1" - -[[deps.MicrosoftMPI_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "f12a29c4400ba812841c6ace3f4efbb6dbb3ba01" -uuid = "9237b28f-5490-5468-be7b-bb81f5f5e6cf" -version = "10.1.4+2" - -[[deps.Missings]] -deps = ["DataAPI"] -git-tree-sha1 = "ec4f7fbeab05d7747bdf98eb74d130a2a2ed298d" -uuid = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28" -version = "1.2.0" - -[[deps.Mmap]] -uuid = "a63ad114-7e13-5084-954f-fe012c677804" - -[[deps.MozillaCACerts_jll]] -uuid = "14a3606d-f60d-562e-9121-12d972cd8159" -version = "2023.1.10" - -[[deps.MultivariateStats]] -deps = ["Arpack", "Distributions", "LinearAlgebra", "SparseArrays", "Statistics", "StatsAPI", "StatsBase"] -git-tree-sha1 = "816620e3aac93e5b5359e4fdaf23ca4525b00ddf" -uuid = "6f286f6a-111f-5878-ab1e-185364afe411" -version = "0.10.3" - -[[deps.Mustache]] -deps = ["Printf", "Tables"] -git-tree-sha1 = "3b2db451a872b20519ebb0cec759d3d81a1c6bcb" -uuid = "ffc61752-8dc7-55ee-8c37-f3e9cdd09e70" -version = "1.0.20" - -[[deps.MutableArithmetics]] -deps = ["LinearAlgebra", "SparseArrays", "Test"] -git-tree-sha1 = "d0a6b1096b584a2b88efb70a92f8cb8c881eb38a" -uuid = "d8a4904e-b15c-11e9-3269-09a3773c0cb0" -version = "1.4.6" - -[[deps.Mux]] -deps = ["AssetRegistry", "Base64", "HTTP", "Hiccup", "MbedTLS", "Pkg", "Sockets"] -git-tree-sha1 = "7295d849103ac4fcbe3b2e439f229c5cc77b9b69" -uuid = "a975b10e-0019-58db-a62f-e48ff68538c9" -version = "1.0.2" - -[[deps.NLSolversBase]] -deps = ["DiffResults", "Distributed", "FiniteDiff", "ForwardDiff"] -git-tree-sha1 = "a0b464d183da839699f4c79e7606d9d186ec172c" -uuid = "d41bc354-129a-5804-8e4c-c37616107c6c" -version = "7.8.3" - -[[deps.NLsolve]] -deps = ["Distances", "LineSearches", "LinearAlgebra", "NLSolversBase", "Printf", "Reexport"] -git-tree-sha1 = "019f12e9a1a7880459d0173c182e6a99365d7ac1" -uuid = "2774e3e8-f4cf-5e23-947b-6d7e65073b56" -version = "4.5.1" - -[[deps.NaNMath]] -deps = ["OpenLibm_jll"] -git-tree-sha1 = "0877504529a3e5c3343c6f8b4c0381e57e4387e4" -uuid = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" -version = "1.0.2" - -[[deps.NearestNeighbors]] -deps = ["Distances", "StaticArrays"] -git-tree-sha1 = "91a67b4d73842da90b526011fa85c5c4c9343fe0" -uuid = "b8a86587-4115-5ab1-83bc-aa920d37bbce" -version = "0.4.18" - -[[deps.NetworkOptions]] -uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908" -version = "1.2.0" - -[[deps.Observables]] -git-tree-sha1 = "7438a59546cf62428fc9d1bc94729146d37a7225" -uuid = "510215fc-4207-5dde-b226-833fc4488ee2" -version = "0.5.5" - -[[deps.OffsetArrays]] -git-tree-sha1 = "1a27764e945a152f7ca7efa04de513d473e9542e" -uuid = "6fe1bfb0-de20-5000-8ca7-80f57d26f881" -version = "1.14.1" -weakdeps = ["Adapt"] - - [deps.OffsetArrays.extensions] - OffsetArraysAdaptExt = "Adapt" - -[[deps.Ogg_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "887579a3eb005446d514ab7aeac5d1d027658b8f" -uuid = "e7412a2a-1a6e-54c0-be00-318e2571c051" -version = "1.3.5+1" - -[[deps.OpenBLAS32_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl"] -git-tree-sha1 = "6065c4cff8fee6c6770b277af45d5082baacdba1" -uuid = "656ef2d0-ae68-5445-9ca0-591084a874a2" -version = "0.3.24+0" - -[[deps.OpenBLAS_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"] -uuid = "4536629a-c528-5b80-bd46-f80d51c5b363" -version = "0.3.23+4" - -[[deps.OpenLibm_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "05823500-19ac-5b8b-9628-191a04bc5112" -version = "0.8.1+2" - -[[deps.OpenMPI_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "Hwloc_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "MPIPreferences", "TOML", "Zlib_jll"] -git-tree-sha1 = "bfce6d523861a6c562721b262c0d1aaeead2647f" -uuid = "fe0851c0-eecd-5654-98d4-656369965a5c" -version = "5.0.5+0" - -[[deps.OpenSSL]] -deps = ["BitFlags", "Dates", "MozillaCACerts_jll", "OpenSSL_jll", "Sockets"] -git-tree-sha1 = "38cb508d080d21dc1128f7fb04f20387ed4c0af4" -uuid = "4d8831e6-92b7-49fb-bdf8-b643e874388c" -version = "1.4.3" - -[[deps.OpenSSL_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "1b35263570443fdd9e76c76b7062116e2f374ab8" -uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" -version = "3.0.15+0" - -[[deps.OpenSpecFun_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "13652491f6856acfd2db29360e1bbcd4565d04f1" -uuid = "efe28fd5-8261-553b-a9e1-b2916fc3738e" -version = "0.5.5+0" - -[[deps.Opus_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "6703a85cb3781bd5909d48730a67205f3f31a575" -uuid = "91d4177d-7536-5919-b921-800302f37372" -version = "1.3.3+0" - -[[deps.OrderedCollections]] -git-tree-sha1 = "dfdf5519f235516220579f949664f1bf44e741c5" -uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" -version = "1.6.3" - -[[deps.PCRE2_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "efcefdf7-47ab-520b-bdef-62a2eaa19f15" -version = "10.42.0+1" - -[[deps.PDMats]] -deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse"] -git-tree-sha1 = "949347156c25054de2db3b166c52ac4728cbad65" -uuid = "90014a1f-27ba-587c-ab20-58faa44d9150" -version = "0.11.31" - -[[deps.Pango_jll]] -deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "FriBidi_jll", "Glib_jll", "HarfBuzz_jll", "JLLWrappers", "Libdl"] -git-tree-sha1 = "e127b609fb9ecba6f201ba7ab753d5a605d53801" -uuid = "36c8627f-9965-5494-a995-c6b170f724f3" -version = "1.54.1+0" - -[[deps.Parameters]] -deps = ["OrderedCollections", "UnPack"] -git-tree-sha1 = "34c0e9ad262e5f7fc75b10a9952ca7692cfc5fbe" -uuid = "d96e819e-fc66-5662-9728-84c9c7592b0a" -version = "0.12.3" - -[[deps.Pardiso]] -deps = ["Libdl", "LinearAlgebra", "MKL_jll", "SparseArrays"] -git-tree-sha1 = "4b618484bf94a52f02595cd73ac8a6417f4c0c70" -uuid = "46dd5b70-b6fb-5a00-ae2d-e8fea33afaf2" -version = "0.5.7" - -[[deps.Parsers]] -deps = ["Dates", "PrecompileTools", "UUIDs"] -git-tree-sha1 = "8489905bcdbcfac64d1daa51ca07c0d8f0283821" -uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" -version = "2.8.1" - -[[deps.Pidfile]] -deps = ["FileWatching", "Test"] -git-tree-sha1 = "2d8aaf8ee10df53d0dfb9b8ee44ae7c04ced2b03" -uuid = "fa939f87-e72e-5be4-a000-7fc836dbe307" -version = "1.3.0" - -[[deps.Pipe]] -git-tree-sha1 = "6842804e7867b115ca9de748a0cf6b364523c16d" -uuid = "b98c9c47-44ae-5843-9183-064241ee97a0" -version = "1.3.0" - -[[deps.Pixman_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LLVMOpenMP_jll", "Libdl"] -git-tree-sha1 = "35621f10a7531bc8fa58f74610b1bfb70a3cfc6b" -uuid = "30392449-352a-5448-841d-b1acce4e97dc" -version = "0.43.4+0" - -[[deps.Pkg]] -deps = ["Artifacts", "Dates", "Downloads", "FileWatching", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"] -uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" -version = "1.10.0" - -[[deps.PkgVersion]] -deps = ["Pkg"] -git-tree-sha1 = "f9501cc0430a26bc3d156ae1b5b0c1b47af4d6da" -uuid = "eebad327-c553-4316-9ea0-9fa01ccd7688" -version = "0.3.3" - -[[deps.PlotThemes]] -deps = ["PlotUtils", "Statistics"] -git-tree-sha1 = "6e55c6841ce3411ccb3457ee52fc48cb698d6fb0" -uuid = "ccf2f8ad-2431-5c83-bf29-c5338b663b6a" -version = "3.2.0" - -[[deps.PlotUtils]] -deps = ["ColorSchemes", "Colors", "Dates", "PrecompileTools", "Printf", "Random", "Reexport", "Statistics"] -git-tree-sha1 = "7b1a9df27f072ac4c9c7cbe5efb198489258d1f5" -uuid = "995b91a9-d308-5afd-9ec6-746e21dbc043" -version = "1.4.1" - -[[deps.PlotlyBase]] -deps = ["ColorSchemes", "Dates", "DelimitedFiles", "DocStringExtensions", "JSON", "LaTeXStrings", "Logging", "Parameters", "Pkg", "REPL", "Requires", "Statistics", "UUIDs"] -git-tree-sha1 = "56baf69781fc5e61607c3e46227ab17f7040ffa2" -uuid = "a03496cd-edff-5a9b-9e67-9cda94a718b5" -version = "0.8.19" - -[[deps.PlotlyJS]] -deps = ["Base64", "Blink", "DelimitedFiles", "JSExpr", "JSON", "Kaleido_jll", "Markdown", "Pkg", "PlotlyBase", "PlotlyKaleido", "REPL", "Reexport", "Requires", "WebIO"] -git-tree-sha1 = "f198c8a80c08987a2915156e6e6131e5d73b97f4" -uuid = "f0f68f2c-4968-5e81-91da-67840de0976a" -version = "0.18.14" - - [deps.PlotlyJS.extensions] - CSVExt = "CSV" - DataFramesExt = ["DataFrames", "CSV"] - IJuliaExt = "IJulia" - JSON3Ext = "JSON3" - - [deps.PlotlyJS.weakdeps] - CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b" - DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" - IJulia = "7073ff75-c697-5162-941a-fcdaad2a7d2a" - JSON3 = "0f8b85d8-7281-11e9-16c2-39a750bddbf1" - -[[deps.PlotlyKaleido]] -deps = ["Base64", "JSON", "Kaleido_jll"] -git-tree-sha1 = "3210de4d88af7ca5de9e26305758a59aabc48aac" -uuid = "f2990250-8cf9-495f-b13a-cce12b45703c" -version = "2.2.5" - -[[deps.Plots]] -deps = ["Base64", "Contour", "Dates", "Downloads", "FFMPEG", "FixedPointNumbers", "GR", "JLFzf", "JSON", "LaTeXStrings", "Latexify", "LinearAlgebra", "Measures", "NaNMath", "Pkg", "PlotThemes", "PlotUtils", "PrecompileTools", "Printf", "REPL", "Random", "RecipesBase", "RecipesPipeline", "Reexport", "RelocatableFolders", "Requires", "Scratch", "Showoff", "SparseArrays", "Statistics", "StatsBase", "TOML", "UUIDs", "UnicodeFun", "UnitfulLatexify", "Unzip"] -git-tree-sha1 = "45470145863035bb124ca51b320ed35d071cc6c2" -uuid = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" -version = "1.40.8" - - [deps.Plots.extensions] - FileIOExt = "FileIO" - GeometryBasicsExt = "GeometryBasics" - IJuliaExt = "IJulia" - ImageInTerminalExt = "ImageInTerminal" - UnitfulExt = "Unitful" - - [deps.Plots.weakdeps] - FileIO = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549" - GeometryBasics = "5c1252a2-5f33-56bf-86c9-59e7332b4326" - IJulia = "7073ff75-c697-5162-941a-fcdaad2a7d2a" - ImageInTerminal = "d8c32880-2388-543b-8c61-d9f865259254" - Unitful = "1986cc42-f94f-5a68-af5c-568840ba703d" - -[[deps.PooledArrays]] -deps = ["DataAPI", "Future"] -git-tree-sha1 = "36d8b4b899628fb92c2749eb488d884a926614d3" -uuid = "2dfb63ee-cc39-5dd5-95bd-886bf059d720" -version = "1.4.3" - -[[deps.PowerAnalytics]] -deps = ["DataFrames", "DataStructures", "Dates", "InfrastructureSystems", "InteractiveUtils", "PowerSimulations", "PowerSystems", "TimeSeries", "YAML"] -git-tree-sha1 = "12bce69063acbbb1f01faa1927c5574945b966cc" -uuid = "56ce1300-00bc-47e4-ba8c-b166ccc19f51" -version = "0.7.0" - -[[deps.PowerFlowData]] -deps = ["DocStringExtensions", "InlineStrings", "Parsers", "PrettyTables", "Tables"] -git-tree-sha1 = "04167df719ef1e8a1471a7033634c441f69bda1c" -uuid = "dd99e9e3-7471-40fc-b48d-a10501125371" -version = "1.5.0" - -[[deps.PowerGraphics]] -deps = ["CSV", "Colors", "DataFrames", "DataStructures", "Dates", "InfrastructureSystems", "InteractiveUtils", "Plots", "PowerAnalytics", "PowerSystems", "Reexport", "Requires", "TimeSeries", "YAML"] -git-tree-sha1 = "840dd8304d5ea3eb1f9c01322080f936df613fd9" -uuid = "5f7eddb3-86b1-49e8-a95a-ddc0f45eea41" -version = "0.18.0" - -[[deps.PowerModels]] -deps = ["InfrastructureModels", "JSON", "JuMP", "LinearAlgebra", "Memento", "NLsolve", "SparseArrays"] -git-tree-sha1 = "125951731f2e61b45499ae0055ed224fe8a330ed" -uuid = "c36e90e8-916a-50a6-bd94-075b64ef4655" -version = "0.21.2" - -[[deps.PowerNetworkMatrices]] -deps = ["DocStringExtensions", "HDF5", "InfrastructureSystems", "KLU", "LinearAlgebra", "MKL", "Pardiso", "PowerSystems", "SparseArrays"] -git-tree-sha1 = "939fd02a7939392c91899c7fd4bda3d54f058278" -uuid = "bed98974-b02a-5e2f-9fe0-a103f5c450dd" -version = "0.11.0" - -[[deps.PowerSimulations]] -deps = ["CSV", "DataFrames", "DataStructures", "Dates", "Distributed", "DocStringExtensions", "HDF5", "InfrastructureSystems", "InteractiveUtils", "JSON", "JSON3", "JuMP", "LinearAlgebra", "Logging", "MathOptInterface", "PowerModels", "PowerNetworkMatrices", "PowerSystems", "PrettyTables", "ProgressMeter", "Serialization", "TimeSeries", "TimerOutputs"] -git-tree-sha1 = "9e37231e9518a9b86ad19e9dadefaf7334a9dc49" -repo-rev = "jd/param_update_fixes" -repo-url = "https://github.com/NREL-Sienna/PowerSimulations.jl.git" -uuid = "e690365d-45e2-57bb-ac84-44ba829e73c4" -version = "0.28.2" - -[[deps.PowerSimulationsDecomposition]] -deps = ["DataFrames", "DataStructures", "Dates", "DocStringExtensions", "HiGHS", "HydroPowerSimulations", "InfrastructureSystems", "JuMP", "MPI", "MathOptInterface", "PowerNetworkMatrices", "PowerSimulations", "PowerSystems", "Revise", "StorageSystemsSimulations", "Xpress"] -path = "../../PowerSimulationsDecomposition.jl" -uuid = "bed98974-b02a-5e2f-9ee0-a103f5c450dd" -version = "0.1.0" - -[[deps.PowerSystemCaseBuilder]] -deps = ["CSV", "DataFrames", "DataStructures", "Dates", "Downloads", "HDF5", "InfrastructureSystems", "JSON3", "LazyArtifacts", "PowerSystems", "PrettyTables", "Random", "SHA", "TimeSeries"] -git-tree-sha1 = "6c9e58dd3e338ed886fe8cdc8bf45a575b51707e" -uuid = "f00506e0-b84f-492a-93c2-c0a9afc4364e" -version = "1.3.7" - -[[deps.PowerSystems]] -deps = ["CSV", "DataFrames", "DataStructures", "Dates", "DocStringExtensions", "InfrastructureSystems", "InteractiveUtils", "JSON3", "LinearAlgebra", "Logging", "PowerFlowData", "PrettyTables", "TimeSeries", "UUIDs", "Unicode", "YAML"] -git-tree-sha1 = "a509a6d4d1198d7920efd10273eb4bf482b5f01c" -uuid = "bcd98974-b02a-5e2f-9ee0-a103f5c450dd" -version = "4.3.1" - -[[deps.PrecompileTools]] -deps = ["Preferences"] -git-tree-sha1 = "5aa36f7049a63a1528fe8f7c3f2113413ffd4e1f" -uuid = "aea7be01-6a6a-4083-8856-8a6e6704d82a" -version = "1.2.1" - -[[deps.Preferences]] -deps = ["TOML"] -git-tree-sha1 = "9306f6085165d270f7e3db02af26a400d580f5c6" -uuid = "21216c6a-2e73-6563-6e65-726566657250" -version = "1.4.3" - -[[deps.PrettyTables]] -deps = ["Crayons", "LaTeXStrings", "Markdown", "PrecompileTools", "Printf", "Reexport", "StringManipulation", "Tables"] -git-tree-sha1 = "66b20dd35966a748321d3b2537c4584cf40387c7" -uuid = "08abe8d2-0d0c-5749-adfa-8a2ac140af0d" -version = "2.3.2" - -[[deps.Printf]] -deps = ["Unicode"] -uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" - -[[deps.Profile]] -deps = ["Printf"] -uuid = "9abbd945-dff8-562f-b5e8-e1ebf5ef1b79" - -[[deps.ProgressLogging]] -deps = ["Logging", "SHA", "UUIDs"] -git-tree-sha1 = "80d919dee55b9c50e8d9e2da5eeafff3fe58b539" -uuid = "33c8b6b6-d38a-422a-b730-caa89a2f386c" -version = "0.1.4" - -[[deps.ProgressMeter]] -deps = ["Distributed", "Printf"] -git-tree-sha1 = "8f6bc219586aef8baf0ff9a5fe16ee9c70cb65e4" -uuid = "92933f4c-e287-5a05-a399-4b506db050ca" -version = "1.10.2" - -[[deps.PtrArrays]] -git-tree-sha1 = "77a42d78b6a92df47ab37e177b2deac405e1c88f" -uuid = "43287f4e-b6f4-7ad1-bb20-aadabca52c3d" -version = "1.2.1" - -[[deps.Qt6Base_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "Fontconfig_jll", "Glib_jll", "JLLWrappers", "Libdl", "Libglvnd_jll", "OpenSSL_jll", "Vulkan_Loader_jll", "Xorg_libSM_jll", "Xorg_libXext_jll", "Xorg_libXrender_jll", "Xorg_libxcb_jll", "Xorg_xcb_util_cursor_jll", "Xorg_xcb_util_image_jll", "Xorg_xcb_util_keysyms_jll", "Xorg_xcb_util_renderutil_jll", "Xorg_xcb_util_wm_jll", "Zlib_jll", "libinput_jll", "xkbcommon_jll"] -git-tree-sha1 = "492601870742dcd38f233b23c3ec629628c1d724" -uuid = "c0090381-4147-56d7-9ebc-da0b1113ec56" -version = "6.7.1+1" - -[[deps.Qt6Declarative_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Qt6Base_jll", "Qt6ShaderTools_jll"] -git-tree-sha1 = "e5dd466bf2569fe08c91a2cc29c1003f4797ac3b" -uuid = "629bc702-f1f5-5709-abd5-49b8460ea067" -version = "6.7.1+2" - -[[deps.Qt6ShaderTools_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Qt6Base_jll"] -git-tree-sha1 = "1a180aeced866700d4bebc3120ea1451201f16bc" -uuid = "ce943373-25bb-56aa-8eca-768745ed7b5a" -version = "6.7.1+1" - -[[deps.Qt6Wayland_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Qt6Base_jll", "Qt6Declarative_jll"] -git-tree-sha1 = "729927532d48cf79f49070341e1d918a65aba6b0" -uuid = "e99dba38-086e-5de3-a5b1-6e4c66e897c3" -version = "6.7.1+1" - -[[deps.QuadGK]] -deps = ["DataStructures", "LinearAlgebra"] -git-tree-sha1 = "1d587203cf851a51bf1ea31ad7ff89eff8d625ea" -uuid = "1fd47b50-473d-5c70-9696-f719f8f3bcdc" -version = "2.11.0" - - [deps.QuadGK.extensions] - QuadGKEnzymeExt = "Enzyme" - - [deps.QuadGK.weakdeps] - Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" - -[[deps.REPL]] -deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"] -uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" - -[[deps.Random]] -deps = ["SHA"] -uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" - -[[deps.Ratios]] -deps = ["Requires"] -git-tree-sha1 = "1342a47bf3260ee108163042310d26f2be5ec90b" -uuid = "c84ed2f1-dad5-54f0-aa8e-dbefe2724439" -version = "0.4.5" -weakdeps = ["FixedPointNumbers"] - - [deps.Ratios.extensions] - RatiosFixedPointNumbersExt = "FixedPointNumbers" - -[[deps.RecipesBase]] -deps = ["PrecompileTools"] -git-tree-sha1 = "5c3d09cc4f31f5fc6af001c250bf1278733100ff" -uuid = "3cdcf5f2-1ef4-517c-9805-6587b60abb01" -version = "1.3.4" - -[[deps.RecipesPipeline]] -deps = ["Dates", "NaNMath", "PlotUtils", "PrecompileTools", "RecipesBase"] -git-tree-sha1 = "45cf9fd0ca5839d06ef333c8201714e888486342" -uuid = "01d81517-befc-4cb6-b9ec-a95719d0359c" -version = "0.6.12" - -[[deps.Reexport]] -git-tree-sha1 = "45e428421666073eab6f2da5c9d310d99bb12f9b" -uuid = "189a3867-3050-52da-a836-e630ba90ab69" -version = "1.2.2" - -[[deps.RelocatableFolders]] -deps = ["SHA", "Scratch"] -git-tree-sha1 = "ffdaf70d81cf6ff22c2b6e733c900c3321cab864" -uuid = "05181044-ff0b-4ac5-8273-598c1e38db00" -version = "1.0.1" - -[[deps.Requires]] -deps = ["UUIDs"] -git-tree-sha1 = "838a3a4188e2ded87a4f9f184b4b0d78a1e91cb7" -uuid = "ae029012-a4dd-5104-9daa-d747884805df" -version = "1.3.0" - -[[deps.Revise]] -deps = ["CodeTracking", "Distributed", "FileWatching", "JuliaInterpreter", "LibGit2", "LoweredCodeUtils", "OrderedCollections", "REPL", "Requires", "UUIDs", "Unicode"] -git-tree-sha1 = "7b7850bb94f75762d567834d7e9802fc22d62f9c" -uuid = "295af30f-e4ad-537b-8983-00126c2a3abe" -version = "3.5.18" - -[[deps.Rmath]] -deps = ["Random", "Rmath_jll"] -git-tree-sha1 = "f65dcb5fa46aee0cf9ed6274ccbd597adc49aa7b" -uuid = "79098fc4-a85e-5d69-aa6a-4863f24498fa" -version = "0.7.1" - -[[deps.Rmath_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "e60724fd3beea548353984dc61c943ecddb0e29a" -uuid = "f50d1b31-88e8-58de-be2c-1cc44531875f" -version = "0.4.3+0" - -[[deps.SHA]] -uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" -version = "0.7.0" - -[[deps.SPRAL_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "Hwloc_jll", "JLLWrappers", "Libdl", "METIS_jll", "libblastrampoline_jll"] -git-tree-sha1 = "11f3da4b25efacd1cec8e263421f2a9003a5e8e0" -uuid = "319450e9-13b8-58e8-aa9f-8fd1420848ab" -version = "2024.5.8+0" - -[[deps.SQLite]] -deps = ["DBInterface", "Random", "SQLite_jll", "Serialization", "Tables", "WeakRefStrings"] -git-tree-sha1 = "38b82dbc52b7db40bea182688c7a1103d06948a4" -uuid = "0aa819cd-b072-5ff4-a722-6bc24af294d9" -version = "1.6.1" - -[[deps.SQLite_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "004fffbe2711abdc7263a980bbb1af9620781dd9" -uuid = "76ed43ae-9a5d-5a62-8c75-30186b810ce8" -version = "3.45.3+0" - -[[deps.Scratch]] -deps = ["Dates"] -git-tree-sha1 = "3bac05bc7e74a75fd9cba4295cde4045d9fe2386" -uuid = "6c6a2e73-6563-6170-7368-637461726353" -version = "1.2.1" - -[[deps.SentinelArrays]] -deps = ["Dates", "Random"] -git-tree-sha1 = "ff11acffdb082493657550959d4feb4b6149e73a" -uuid = "91c51154-3ec4-41a3-a24f-3f23e20d615c" -version = "1.4.5" - -[[deps.Serialization]] -uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" - -[[deps.Setfield]] -deps = ["ConstructionBase", "Future", "MacroTools", "StaticArraysCore"] -git-tree-sha1 = "e2cc6d8c88613c05e1defb55170bf5ff211fbeac" -uuid = "efcf1570-3423-57d1-acb7-fd33fddbac46" -version = "1.1.1" - -[[deps.SharedArrays]] -deps = ["Distributed", "Mmap", "Random", "Serialization"] -uuid = "1a1011a3-84de-559e-8e89-a11a2f7dc383" - -[[deps.ShiftedArrays]] -git-tree-sha1 = "503688b59397b3307443af35cd953a13e8005c16" -uuid = "1277b4bf-5013-50f5-be3d-901d8477a67a" -version = "2.0.0" - -[[deps.Showoff]] -deps = ["Dates", "Grisu"] -git-tree-sha1 = "91eddf657aca81df9ae6ceb20b959ae5653ad1de" -uuid = "992d4aef-0814-514b-bc4d-f2e9a6c4116f" -version = "1.0.3" - -[[deps.SimpleBufferStream]] -git-tree-sha1 = "874e8867b33a00e784c8a7e4b60afe9e037b74e1" -uuid = "777ac1f9-54b0-4bf8-805c-2214025038e7" -version = "1.1.0" - -[[deps.Sockets]] -uuid = "6462fe0b-24de-5631-8697-dd941f90decc" - -[[deps.SortingAlgorithms]] -deps = ["DataStructures"] -git-tree-sha1 = "66e0a8e672a0bdfca2c3f5937efb8538b9ddc085" -uuid = "a2af1166-a08f-5f64-846c-94a0d3cef48c" -version = "1.2.1" - -[[deps.SparseArrays]] -deps = ["Libdl", "LinearAlgebra", "Random", "Serialization", "SuiteSparse_jll"] -uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" -version = "1.10.0" - -[[deps.SpecialFunctions]] -deps = ["IrrationalConstants", "LogExpFunctions", "OpenLibm_jll", "OpenSpecFun_jll"] -git-tree-sha1 = "2f5d4697f21388cbe1ff299430dd169ef97d7e14" -uuid = "276daf66-3868-5448-9aa4-cd146d93841b" -version = "2.4.0" -weakdeps = ["ChainRulesCore"] - - [deps.SpecialFunctions.extensions] - SpecialFunctionsChainRulesCoreExt = "ChainRulesCore" - -[[deps.StaticArrays]] -deps = ["LinearAlgebra", "PrecompileTools", "Random", "StaticArraysCore"] -git-tree-sha1 = "eeafab08ae20c62c44c8399ccb9354a04b80db50" -uuid = "90137ffa-7385-5640-81b9-e52037218182" -version = "1.9.7" -weakdeps = ["ChainRulesCore", "Statistics"] - - [deps.StaticArrays.extensions] - StaticArraysChainRulesCoreExt = "ChainRulesCore" - StaticArraysStatisticsExt = "Statistics" - -[[deps.StaticArraysCore]] -git-tree-sha1 = "192954ef1208c7019899fbf8049e717f92959682" -uuid = "1e83bf80-4336-4d27-bf5d-d5a4f845583c" -version = "1.4.3" - -[[deps.Statistics]] -deps = ["LinearAlgebra", "SparseArrays"] -uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" -version = "1.10.0" - -[[deps.StatsAPI]] -deps = ["LinearAlgebra"] -git-tree-sha1 = "1ff449ad350c9c4cbc756624d6f8a8c3ef56d3ed" -uuid = "82ae8749-77ed-4fe6-ae5f-f523153014b0" -version = "1.7.0" - -[[deps.StatsBase]] -deps = ["DataAPI", "DataStructures", "LinearAlgebra", "LogExpFunctions", "Missings", "Printf", "Random", "SortingAlgorithms", "SparseArrays", "Statistics", "StatsAPI"] -git-tree-sha1 = "5cf7606d6cef84b543b483848d4ae08ad9832b21" -uuid = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" -version = "0.34.3" - -[[deps.StatsFuns]] -deps = ["HypergeometricFunctions", "IrrationalConstants", "LogExpFunctions", "Reexport", "Rmath", "SpecialFunctions"] -git-tree-sha1 = "cef0472124fab0695b58ca35a77c6fb942fdab8a" -uuid = "4c63d2b9-4356-54db-8cca-17b64c39e42c" -version = "1.3.1" - - [deps.StatsFuns.extensions] - StatsFunsChainRulesCoreExt = "ChainRulesCore" - StatsFunsInverseFunctionsExt = "InverseFunctions" - - [deps.StatsFuns.weakdeps] - ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" - InverseFunctions = "3587e190-3f89-42d0-90ee-14403ec27112" - -[[deps.StatsPlots]] -deps = ["AbstractFFTs", "Clustering", "DataStructures", "Distributions", "Interpolations", "KernelDensity", "LinearAlgebra", "MultivariateStats", "NaNMath", "Observables", "Plots", "RecipesBase", "RecipesPipeline", "Reexport", "StatsBase", "TableOperations", "Tables", "Widgets"] -git-tree-sha1 = "3b1dcbf62e469a67f6733ae493401e53d92ff543" -uuid = "f3b207a7-027a-5e70-b257-86293d7955fd" -version = "0.15.7" - -[[deps.StorageSystemsSimulations]] -deps = ["DataStructures", "Dates", "DocStringExtensions", "InfrastructureSystems", "JuMP", "LinearAlgebra", "MathOptInterface", "PowerSimulations", "PowerSystems"] -git-tree-sha1 = "eead17e7a2ac1c553a274860b39b5953720c6893" -uuid = "e2f1a126-19d0-4674-9252-42b2384f8e3c" -version = "0.10.1" - -[[deps.StringEncodings]] -deps = ["Libiconv_jll"] -git-tree-sha1 = "b765e46ba27ecf6b44faf70df40c57aa3a547dcb" -uuid = "69024149-9ee7-55f6-a4c4-859efe599b68" -version = "0.3.7" - -[[deps.StringManipulation]] -deps = ["PrecompileTools"] -git-tree-sha1 = "a04cabe79c5f01f4d723cc6704070ada0b9d46d5" -uuid = "892a3eda-7b42-436c-8928-eab12a02cf0e" -version = "0.3.4" - -[[deps.StructTypes]] -deps = ["Dates", "UUIDs"] -git-tree-sha1 = "159331b30e94d7b11379037feeb9b690950cace8" -uuid = "856f2bd8-1eba-4b0a-8007-ebc267875bd4" -version = "1.11.0" - -[[deps.SuiteSparse]] -deps = ["Libdl", "LinearAlgebra", "Serialization", "SparseArrays"] -uuid = "4607b0f0-06f3-5cda-b6b1-a6196a1729e9" - -[[deps.SuiteSparse_jll]] -deps = ["Artifacts", "Libdl", "libblastrampoline_jll"] -uuid = "bea87d4a-7f5b-5778-9afe-8cc45184846c" -version = "7.2.1+1" - -[[deps.TOML]] -deps = ["Dates"] -uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76" -version = "1.0.3" - -[[deps.TableOperations]] -deps = ["SentinelArrays", "Tables", "Test"] -git-tree-sha1 = "e383c87cf2a1dc41fa30c093b2a19877c83e1bc1" -uuid = "ab02a1b2-a7df-11e8-156e-fb1833f50b87" -version = "1.2.0" - -[[deps.TableTraits]] -deps = ["IteratorInterfaceExtensions"] -git-tree-sha1 = "c06b2f539df1c6efa794486abfb6ed2022561a39" -uuid = "3783bdb8-4a98-5b6b-af9a-565f29a5fe9c" -version = "1.0.1" - -[[deps.Tables]] -deps = ["DataAPI", "DataValueInterfaces", "IteratorInterfaceExtensions", "OrderedCollections", "TableTraits"] -git-tree-sha1 = "598cd7c1f68d1e205689b1c2fe65a9f85846f297" -uuid = "bd369af6-aec1-5ad0-b16a-f7cc5008161c" -version = "1.12.0" - -[[deps.Tar]] -deps = ["ArgTools", "SHA"] -uuid = "a4e569a6-e804-4fa4-b0f3-eef7a1d5b13e" -version = "1.10.0" - -[[deps.TensorCore]] -deps = ["LinearAlgebra"] -git-tree-sha1 = "1feb45f88d133a655e001435632f019a9a1bcdb6" -uuid = "62fd8b95-f654-4bbd-a8a5-9c27f68ccd50" -version = "0.1.1" - -[[deps.TerminalLoggers]] -deps = ["LeftChildRightSiblingTrees", "Logging", "Markdown", "Printf", "ProgressLogging", "UUIDs"] -git-tree-sha1 = "f133fab380933d042f6796eda4e130272ba520ca" -uuid = "5d786b92-1e48-4d6f-9151-6b4477ca9bed" -version = "0.1.7" - -[[deps.Test]] -deps = ["InteractiveUtils", "Logging", "Random", "Serialization"] -uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" - -[[deps.TimeSeries]] -deps = ["Dates", "DelimitedFiles", "DocStringExtensions", "IteratorInterfaceExtensions", "PrettyTables", "RecipesBase", "Reexport", "Statistics", "TableTraits", "Tables"] -git-tree-sha1 = "b0915b2d6032bab5d8c9424a37bc621500a67df9" -uuid = "9e3dc215-6440-5c97-bce1-76c03772f85e" -version = "0.24.2" - -[[deps.TimerOutputs]] -deps = ["ExprTools", "Printf"] -git-tree-sha1 = "5a13ae8a41237cff5ecf34f73eb1b8f42fff6531" -uuid = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f" -version = "0.5.24" - -[[deps.TranscodingStreams]] -git-tree-sha1 = "e84b3a11b9bece70d14cce63406bbc79ed3464d2" -uuid = "3bb67fe8-82b1-5028-8e26-92a6c54297fa" -version = "0.11.2" - -[[deps.URIs]] -git-tree-sha1 = "67db6cc7b3821e19ebe75791a9dd19c9b1188f2b" -uuid = "5c2747f8-b7ea-4ff2-ba2e-563bfd36b1d4" -version = "1.5.1" - -[[deps.UUIDs]] -deps = ["Random", "SHA"] -uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4" - -[[deps.UnPack]] -git-tree-sha1 = "387c1f73762231e86e0c9c5443ce3b4a0a9a0c2b" -uuid = "3a884ed6-31ef-47d7-9d2a-63182c4928ed" -version = "1.0.2" - -[[deps.Unicode]] -uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5" - -[[deps.UnicodeFun]] -deps = ["REPL"] -git-tree-sha1 = "53915e50200959667e78a92a418594b428dffddf" -uuid = "1cfade01-22cf-5700-b092-accc4b62d6e1" -version = "0.4.1" - -[[deps.Unitful]] -deps = ["Dates", "LinearAlgebra", "Random"] -git-tree-sha1 = "d95fe458f26209c66a187b1114df96fd70839efd" -uuid = "1986cc42-f94f-5a68-af5c-568840ba703d" -version = "1.21.0" - - [deps.Unitful.extensions] - ConstructionBaseUnitfulExt = "ConstructionBase" - InverseFunctionsUnitfulExt = "InverseFunctions" - - [deps.Unitful.weakdeps] - ConstructionBase = "187b0558-2788-49d3-abe0-74a17ed4e7c9" - InverseFunctions = "3587e190-3f89-42d0-90ee-14403ec27112" - -[[deps.UnitfulLatexify]] -deps = ["LaTeXStrings", "Latexify", "Unitful"] -git-tree-sha1 = "975c354fcd5f7e1ddcc1f1a23e6e091d99e99bc8" -uuid = "45397f5d-5981-4c77-b2b3-fc36d6e9b728" -version = "1.6.4" - -[[deps.Unzip]] -git-tree-sha1 = "ca0969166a028236229f63514992fc073799bb78" -uuid = "41fe7b60-77ed-43a1-b4f0-825fd5a5650d" -version = "0.2.0" - -[[deps.Vulkan_Loader_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Wayland_jll", "Xorg_libX11_jll", "Xorg_libXrandr_jll", "xkbcommon_jll"] -git-tree-sha1 = "2f0486047a07670caad3a81a075d2e518acc5c59" -uuid = "a44049a8-05dd-5a78-86c9-5fde0876e88c" -version = "1.3.243+0" - -[[deps.Wayland_jll]] -deps = ["Artifacts", "EpollShim_jll", "Expat_jll", "JLLWrappers", "Libdl", "Libffi_jll", "Pkg", "XML2_jll"] -git-tree-sha1 = "7558e29847e99bc3f04d6569e82d0f5c54460703" -uuid = "a2964d1f-97da-50d4-b82a-358c7fce9d89" -version = "1.21.0+1" - -[[deps.Wayland_protocols_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "93f43ab61b16ddfb2fd3bb13b3ce241cafb0e6c9" -uuid = "2381bf8a-dfd0-557d-9999-79630e7b1b91" -version = "1.31.0+0" - -[[deps.WeakRefStrings]] -deps = ["DataAPI", "InlineStrings", "Parsers"] -git-tree-sha1 = "b1be2855ed9ed8eac54e5caff2afcdb442d52c23" -uuid = "ea10d353-3f73-51f8-a26c-33c1cb351aa5" -version = "1.4.2" - -[[deps.WebIO]] -deps = ["AssetRegistry", "Base64", "Distributed", "FunctionalCollections", "JSON", "Logging", "Observables", "Pkg", "Random", "Requires", "Sockets", "UUIDs", "WebSockets", "Widgets"] -git-tree-sha1 = "0eef0765186f7452e52236fa42ca8c9b3c11c6e3" -uuid = "0f1e0344-ec1d-5b48-a673-e5cf874b6c29" -version = "0.8.21" - -[[deps.WebSockets]] -deps = ["Base64", "Dates", "HTTP", "Logging", "Sockets"] -git-tree-sha1 = "4162e95e05e79922e44b9952ccbc262832e4ad07" -uuid = "104b5d7c-a370-577a-8038-80a2059c5097" -version = "1.6.0" - -[[deps.Widgets]] -deps = ["Colors", "Dates", "Observables", "OrderedCollections"] -git-tree-sha1 = "fcdae142c1cfc7d89de2d11e08721d0f2f86c98a" -uuid = "cc8bc4a8-27d6-5769-a93b-9d913e69aa62" -version = "0.6.6" - -[[deps.WoodburyMatrices]] -deps = ["LinearAlgebra", "SparseArrays"] -git-tree-sha1 = "c1a7aa6219628fcd757dede0ca95e245c5cd9511" -uuid = "efce3f68-66dc-5838-9240-27a6d6f5f9b6" -version = "1.0.0" - -[[deps.WorkerUtilities]] -git-tree-sha1 = "cd1659ba0d57b71a464a29e64dbc67cfe83d54e7" -uuid = "76eceee3-57b5-4d4a-8e66-0e911cebbf60" -version = "1.6.1" - -[[deps.XML2_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Libiconv_jll", "Zlib_jll"] -git-tree-sha1 = "1165b0443d0eca63ac1e32b8c0eb69ed2f4f8127" -uuid = "02c8fc9c-b97f-50b9-bbe4-9be30ff0a78a" -version = "2.13.3+0" - -[[deps.XSLT_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgcrypt_jll", "Libgpg_error_jll", "Libiconv_jll", "XML2_jll", "Zlib_jll"] -git-tree-sha1 = "a54ee957f4c86b526460a720dbc882fa5edcbefc" -uuid = "aed1982a-8fda-507f-9586-7b0439959a61" -version = "1.1.41+0" - -[[deps.XZ_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "ac88fb95ae6447c8dda6a5503f3bafd496ae8632" -uuid = "ffd25f8a-64ca-5728-b0f7-c24cf3aae800" -version = "5.4.6+0" - -[[deps.Xorg_libICE_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "326b4fea307b0b39892b3e85fa451692eda8d46c" -uuid = "f67eecfb-183a-506d-b269-f58e52b52d7c" -version = "1.1.1+0" - -[[deps.Xorg_libSM_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libICE_jll"] -git-tree-sha1 = "3796722887072218eabafb494a13c963209754ce" -uuid = "c834827a-8449-5923-a945-d239c165b7dd" -version = "1.2.4+0" - -[[deps.Xorg_libX11_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libxcb_jll", "Xorg_xtrans_jll"] -git-tree-sha1 = "afead5aba5aa507ad5a3bf01f58f82c8d1403495" -uuid = "4f6342f7-b3d2-589e-9d20-edeb45f2b2bc" -version = "1.8.6+0" - -[[deps.Xorg_libXau_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "6035850dcc70518ca32f012e46015b9beeda49d8" -uuid = "0c0b7dd1-d40b-584c-a123-a41640f87eec" -version = "1.0.11+0" - -[[deps.Xorg_libXcursor_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libXfixes_jll", "Xorg_libXrender_jll"] -git-tree-sha1 = "12e0eb3bc634fa2080c1c37fccf56f7c22989afd" -uuid = "935fb764-8cf2-53bf-bb30-45bb1f8bf724" -version = "1.2.0+4" - -[[deps.Xorg_libXdmcp_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "34d526d318358a859d7de23da945578e8e8727b7" -uuid = "a3789734-cfe1-5b06-b2d0-1dd0d9d62d05" -version = "1.1.4+0" - -[[deps.Xorg_libXext_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] -git-tree-sha1 = "d2d1a5c49fae4ba39983f63de6afcbea47194e85" -uuid = "1082639a-0dae-5f34-9b06-72781eeb8cb3" -version = "1.3.6+0" - -[[deps.Xorg_libXfixes_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll"] -git-tree-sha1 = "0e0dc7431e7a0587559f9294aeec269471c991a4" -uuid = "d091e8ba-531a-589c-9de9-94069b037ed8" -version = "5.0.3+4" - -[[deps.Xorg_libXi_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libXext_jll", "Xorg_libXfixes_jll"] -git-tree-sha1 = "89b52bc2160aadc84d707093930ef0bffa641246" -uuid = "a51aa0fd-4e3c-5386-b890-e753decda492" -version = "1.7.10+4" - -[[deps.Xorg_libXinerama_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libXext_jll"] -git-tree-sha1 = "26be8b1c342929259317d8b9f7b53bf2bb73b123" -uuid = "d1454406-59df-5ea1-beac-c340f2130bc3" -version = "1.1.4+4" - -[[deps.Xorg_libXrandr_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libXext_jll", "Xorg_libXrender_jll"] -git-tree-sha1 = "34cea83cb726fb58f325887bf0612c6b3fb17631" -uuid = "ec84b674-ba8e-5d96-8ba1-2a689ba10484" -version = "1.5.2+4" - -[[deps.Xorg_libXrender_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] -git-tree-sha1 = "47e45cd78224c53109495b3e324df0c37bb61fbe" -uuid = "ea2f1a96-1ddc-540d-b46f-429655e07cfa" -version = "0.9.11+0" - -[[deps.Xorg_libpthread_stubs_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "8fdda4c692503d44d04a0603d9ac0982054635f9" -uuid = "14d82f49-176c-5ed1-bb49-ad3f5cbd8c74" -version = "0.1.1+0" - -[[deps.Xorg_libxcb_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "XSLT_jll", "Xorg_libXau_jll", "Xorg_libXdmcp_jll", "Xorg_libpthread_stubs_jll"] -git-tree-sha1 = "bcd466676fef0878338c61e655629fa7bbc69d8e" -uuid = "c7cfdc94-dc32-55de-ac96-5a1b8d977c5b" -version = "1.17.0+0" - -[[deps.Xorg_libxkbfile_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] -git-tree-sha1 = "730eeca102434283c50ccf7d1ecdadf521a765a4" -uuid = "cc61e674-0454-545c-8b26-ed2c68acab7a" -version = "1.1.2+0" - -[[deps.Xorg_xcb_util_cursor_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_xcb_util_image_jll", "Xorg_xcb_util_jll", "Xorg_xcb_util_renderutil_jll"] -git-tree-sha1 = "04341cb870f29dcd5e39055f895c39d016e18ccd" -uuid = "e920d4aa-a673-5f3a-b3d7-f755a4d47c43" -version = "0.1.4+0" - -[[deps.Xorg_xcb_util_image_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_xcb_util_jll"] -git-tree-sha1 = "0fab0a40349ba1cba2c1da699243396ff8e94b97" -uuid = "12413925-8142-5f55-bb0e-6d7ca50bb09b" -version = "0.4.0+1" - -[[deps.Xorg_xcb_util_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libxcb_jll"] -git-tree-sha1 = "e7fd7b2881fa2eaa72717420894d3938177862d1" -uuid = "2def613f-5ad1-5310-b15b-b15d46f528f5" -version = "0.4.0+1" - -[[deps.Xorg_xcb_util_keysyms_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_xcb_util_jll"] -git-tree-sha1 = "d1151e2c45a544f32441a567d1690e701ec89b00" -uuid = "975044d2-76e6-5fbe-bf08-97ce7c6574c7" -version = "0.4.0+1" - -[[deps.Xorg_xcb_util_renderutil_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_xcb_util_jll"] -git-tree-sha1 = "dfd7a8f38d4613b6a575253b3174dd991ca6183e" -uuid = "0d47668e-0667-5a69-a72c-f761630bfb7e" -version = "0.3.9+1" - -[[deps.Xorg_xcb_util_wm_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_xcb_util_jll"] -git-tree-sha1 = "e78d10aab01a4a154142c5006ed44fd9e8e31b67" -uuid = "c22f9ab0-d5fe-5066-847c-f4bb1cd4e361" -version = "0.4.1+1" - -[[deps.Xorg_xkbcomp_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libxkbfile_jll"] -git-tree-sha1 = "330f955bc41bb8f5270a369c473fc4a5a4e4d3cb" -uuid = "35661453-b289-5fab-8a00-3d9160c6a3a4" -version = "1.4.6+0" - -[[deps.Xorg_xkeyboard_config_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_xkbcomp_jll"] -git-tree-sha1 = "691634e5453ad362044e2ad653e79f3ee3bb98c3" -uuid = "33bec58e-1273-512f-9401-5d533626f822" -version = "2.39.0+0" - -[[deps.Xorg_xtrans_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "e92a1a012a10506618f10b7047e478403a046c77" -uuid = "c5fb5394-a638-5e4d-96e5-b29de1b5cf10" -version = "1.5.0+0" - -[[deps.Xpress]] -deps = ["Libdl", "MathOptInterface"] -git-tree-sha1 = "731b08ef608984df2345d549ce9d7c366dab4f35" -uuid = "9e70acf3-d6c9-5be6-b5bd-4e2c73e3e054" -version = "0.17.0" - -[[deps.YAML]] -deps = ["Base64", "Dates", "Printf", "StringEncodings"] -git-tree-sha1 = "dea63ff72079443240fbd013ba006bcbc8a9ac00" -uuid = "ddb6d928-2868-570f-bddf-ab3f9cf99eb6" -version = "0.4.12" - -[[deps.Zlib_jll]] -deps = ["Libdl"] -uuid = "83775a58-1f1d-513f-b197-d71354ab007a" -version = "1.2.13+1" - -[[deps.Zstd_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "e678132f07ddb5bfa46857f0d7620fb9be675d3b" -uuid = "3161d3a3-bdf6-5164-811a-617609db77b4" -version = "1.5.6+0" - -[[deps.eudev_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "gperf_jll"] -git-tree-sha1 = "431b678a28ebb559d224c0b6b6d01afce87c51ba" -uuid = "35ca27e7-8b34-5b7f-bca9-bdc33f59eb06" -version = "3.2.9+0" - -[[deps.fzf_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "936081b536ae4aa65415d869287d43ef3cb576b2" -uuid = "214eeab7-80f7-51ab-84ad-2988db7cef09" -version = "0.53.0+0" - -[[deps.gperf_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "3516a5630f741c9eecb3720b1ec9d8edc3ecc033" -uuid = "1a1c6b14-54f6-533d-8383-74cd7377aa70" -version = "3.1.1+0" - -[[deps.libaec_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "46bf7be2917b59b761247be3f317ddf75e50e997" -uuid = "477f73a3-ac25-53e9-8cc3-50b2fa2566f0" -version = "1.1.2+0" - -[[deps.libaom_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "1827acba325fdcdf1d2647fc8d5301dd9ba43a9d" -uuid = "a4ae2306-e953-59d6-aa16-d00cac43593b" -version = "3.9.0+0" - -[[deps.libass_jll]] -deps = ["Artifacts", "Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "HarfBuzz_jll", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "e17c115d55c5fbb7e52ebedb427a0dca79d4484e" -uuid = "0ac62f75-1d6f-5e53-bd7c-93b484bb37c0" -version = "0.15.2+0" - -[[deps.libblastrampoline_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "8e850b90-86db-534c-a0d3-1478176c7d93" -version = "5.8.0+1" - -[[deps.libdecor_jll]] -deps = ["Artifacts", "Dbus_jll", "JLLWrappers", "Libdl", "Libglvnd_jll", "Pango_jll", "Wayland_jll", "xkbcommon_jll"] -git-tree-sha1 = "9bf7903af251d2050b467f76bdbe57ce541f7f4f" -uuid = "1183f4f0-6f2a-5f1a-908b-139f9cdfea6f" -version = "0.2.2+0" - -[[deps.libevdev_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "141fe65dc3efabb0b1d5ba74e91f6ad26f84cc22" -uuid = "2db6ffa8-e38f-5e21-84af-90c45d0032cc" -version = "1.11.0+0" - -[[deps.libfdk_aac_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "8a22cf860a7d27e4f3498a0fe0811a7957badb38" -uuid = "f638f0a6-7fb0-5443-88ba-1cc74229b280" -version = "2.0.3+0" - -[[deps.libinput_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "eudev_jll", "libevdev_jll", "mtdev_jll"] -git-tree-sha1 = "ad50e5b90f222cfe78aa3d5183a20a12de1322ce" -uuid = "36db933b-70db-51c0-b978-0f229ee0e533" -version = "1.18.0+0" - -[[deps.libpng_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "d7015d2e18a5fd9a4f47de711837e980519781a4" -uuid = "b53b4c65-9356-5827-b1ea-8c7a1a84506f" -version = "1.6.43+1" - -[[deps.libvorbis_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Ogg_jll", "Pkg"] -git-tree-sha1 = "490376214c4721cdaca654041f635213c6165cb3" -uuid = "f27f6e37-5d2b-51aa-960f-b287f2bc3b7a" -version = "1.3.7+2" - -[[deps.mtdev_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "814e154bdb7be91d78b6802843f76b6ece642f11" -uuid = "009596ad-96f7-51b1-9f1b-5ce2d5e8a71e" -version = "1.1.6+0" - -[[deps.nghttp2_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d" -version = "1.52.0+1" - -[[deps.oneTBB_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "7d0ea0f4895ef2f5cb83645fa689e52cb55cf493" -uuid = "1317d2d5-d96f-522e-a858-c73665f53c3e" -version = "2021.12.0+0" - -[[deps.p7zip_jll]] -deps = ["Artifacts", "Libdl"] -uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0" -version = "17.4.0+2" - -[[deps.x264_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "4fea590b89e6ec504593146bf8b988b2c00922b2" -uuid = "1270edf5-f2f9-52d2-97e9-ab00b5d0237a" -version = "2021.5.5+0" - -[[deps.x265_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "ee567a171cce03570d77ad3a43e90218e38937a9" -uuid = "dfaa095f-4041-5dcd-9319-2fabd8486b76" -version = "3.5.0+0" - -[[deps.xkbcommon_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Wayland_jll", "Wayland_protocols_jll", "Xorg_libxcb_jll", "Xorg_xkeyboard_config_jll"] -git-tree-sha1 = "9c304562909ab2bab0262639bd4f444d7bc2be37" -uuid = "d8fb68d0-12a3-5cfd-a85a-d49703b185fd" -version = "1.4.1+1" - -[[deps.Gurobi]] -deps = ["Gurobi_jll", "Libdl", "MathOptInterface"] -git-tree-sha1 = "53cc56f49295c6b41da670fcf0e0cd812c9580c7" -uuid = "2e9cd046-0924-5485-92f1-d5272153d98b" -version = "1.3.1" - -[[deps.Gurobi_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "179143cef0916daf0afc83a629501da3fa76af4d" -uuid = "c018c7e6-a5b0-4aea-8f80-9c1ef9991411" -version = "11.0.2+2" - diff --git a/Multi-Stage/Project.toml b/Multi-Stage/Project.toml deleted file mode 100644 index 7d8108b..0000000 --- a/Multi-Stage/Project.toml +++ /dev/null @@ -1,23 +0,0 @@ -[deps] -CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b" -DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" -HiGHS = "87dc4568-4c63-4d18-b0c0-bb2238e4078b" -HydroPowerSimulations = "fc1677e0-6ad7-4515-bf3a-bd6bf20a0b1b" -InfrastructureSystems = "2cd47ed4-ca9b-11e9-27f2-ab636a7671f1" -Ipopt = "b6b21f68-93f8-5de0-b562-5493be1d77c9" -JuMP = "4076af6c-e467-56ae-b986-b466b2749572" -PlotlyJS = "f0f68f2c-4968-5e81-91da-67840de0976a" -Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" -PowerGraphics = "5f7eddb3-86b1-49e8-a95a-ddc0f45eea41" -PowerNetworkMatrices = "bed98974-b02a-5e2f-9fe0-a103f5c450dd" -PowerSimulations = "e690365d-45e2-57bb-ac84-44ba829e73c4" -PowerSimulationsDecomposition = "bed98974-b02a-5e2f-9ee0-a103f5c450dd" -PowerSystemCaseBuilder = "f00506e0-b84f-492a-93c2-c0a9afc4364e" -PowerSystems = "bcd98974-b02a-5e2f-9ee0-a103f5c450dd" -Revise = "295af30f-e4ad-537b-8983-00126c2a3abe" -ShiftedArrays = "1277b4bf-5013-50f5-be3d-901d8477a67a" -StatsPlots = "f3b207a7-027a-5e70-b257-86293d7955fd" -StorageSystemsSimulations = "e2f1a126-19d0-4674-9252-42b2384f8e3c" -TimeSeries = "9e3dc215-6440-5c97-bce1-76c03772f85e" -Xpress = "9e70acf3-d6c9-5be6-b5bd-4e2c73e3e054" -Gurobi = "2e9cd046-0924-5485-92f1-d5272153d98b" \ No newline at end of file diff --git a/Multi-Stage/YC_areaptdf_DA-areasplitptdf_DA.jl b/Multi-Stage/YC_areaptdf_DA-areasplitptdf_DA.jl deleted file mode 100644 index 1976871..0000000 --- a/Multi-Stage/YC_areaptdf_DA-areasplitptdf_DA.jl +++ /dev/null @@ -1,271 +0,0 @@ -using Pkg -Pkg.activate(@__DIR__) -using Revise - -#ENV["XPRESSDIR"] = "C:\\xpressmp" -#ENV["XPAUTH_PATH"] = "C:\\xpressmp\\bin" - -using HydroPowerSimulations -using PowerSimulations -using PowerSystemCaseBuilder -using InfrastructureSystems -using StorageSystemsSimulations -using PowerSimulationsDecomposition -using PowerSystems -# using PowerGraphics - -#using Xpress -using HiGHS -using JuMP -using Logging -using Dates -using DataFrames - -#include("coordination_EnergyOnly.jl") -#include("GlobalM2M.jl") -#import StatsPlots -#import Plots -include("YC_test_function.jl") -#using Plots -#gr() -const PSY = PowerSystems -const IF = InfrastructureSystems -const PSB = PowerSystemCaseBuilder - -NT=5 -selected_line=["CA-1", "CB-1", "AB1"] -monitoredlined_line=["A28"] -limit=20 -use_monitoredline=1 - -sys = build_system(PSISystems, "modified_RTS_GMLC_DA_sys") -sys2 = build_system(PSISystems, "modified_RTS_GMLC_DA_sys") -transform_single_time_series!(sys, Hour(NT), Hour(NT)) -transform_single_time_series!(sys2, Hour(NT), Hour(NT)) -#transform_single_time_series!(sys, Hour(1), Hour(1)) -#transform_single_time_series!(sys2, Hour(1), Hour(1)) -#enforced_region = ["1", "2", "3"] # first one is MRTO, second one is M2M coordinator, third one in RT is loopflow under M2M -enforced_region=["1","3","2"] -#enforced_region=["2","3","1"] -ptdf=PTDF(sys) - -buildsubsystem(sys2, enforced_region, union(selected_line,monitoredlined_line)) - -exchange_1_2 = AreaInterchange(; - name="1_2", available=true, active_power_flow=0.0, from_area=get_component(Area, sys, "1"), to_area=get_component(Area, sys, "2"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys, exchange_1_2) - -exchange_1_3 = AreaInterchange(; - name="1_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys, "1"), to_area=get_component(Area, sys, "3"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys, exchange_1_3) - -exchange_2_3 = AreaInterchange(; - name="2_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys, "2"), to_area=get_component(Area, sys, "3"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys, exchange_2_3) - -exchange_1_2 = AreaInterchange(; - name="1_2", available=true, active_power_flow=0.0, from_area=get_component(Area, sys2, "1"), to_area=get_component(Area, sys2, "2"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys2, exchange_1_2) - -add_component_to_subsystem!(sys2, "a", exchange_1_2) -add_component_to_subsystem!(sys2, "b", exchange_1_2) - -exchange_1_3 = AreaInterchange(; - name="1_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys2, "1"), to_area=get_component(Area, sys2, "3"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys2, exchange_1_3) -add_component_to_subsystem!(sys2, "a", exchange_1_3) -add_component_to_subsystem!(sys2, "b", exchange_1_3) - -exchange_2_3 = AreaInterchange(; - name="2_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys2, "2"), to_area=get_component(Area, sys2, "3"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys2, exchange_2_3) -add_component_to_subsystem!(sys2, "a", exchange_2_3) -add_component_to_subsystem!(sys2, "b", exchange_2_3) - -template_uc = ProblemTemplate(NetworkModel(AreaPTDFPowerModel; use_slacks=true)) -set_device_model!(template_uc, ThermalStandard, ThermalBasicUnitCommitment) -set_device_model!(template_uc, PowerLoad, StaticPowerLoad) -set_device_model!(template_uc, AreaInterchange, StaticBranch) - -if use_monitoredline==0 - set_device_model!(template_uc, - DeviceModel(Line, StaticBranchUnbounded; attributes=Dict("filter_function" => x -> get_name(x) in union(selected_line,monitoredlined_line)), - )) -else - set_device_model!(template_uc, - DeviceModel(Line, StaticBranchUnbounded; attributes=Dict("filter_function" => x -> get_name(x) in union(selected_line,monitoredlined_line)),)) - - set_device_model!(template_uc, DeviceModel(MonitoredLine, StaticBranchUnbounded, use_slacks = true)) - - for b in monitoredlined_line - line = PSY.get_component(Line, sys, b) - PSY.convert_component!(sys, line, MonitoredLine) - end -end - -template_uc2 = MultiProblemTemplate(NetworkModel(SplitAreaPTDFPowerModel; use_slacks=true), ["a", "b"]) -set_device_model!(template_uc2, AreaInterchange, StaticBranch) -set_device_model!(template_uc2, ThermalStandard, ThermalBasicUnitCommitment) -set_device_model!(template_uc2, PowerLoad, StaticPowerLoad) - -if use_monitoredline==0 - set_device_model!(template_uc2, - DeviceModel(Line, StaticBranch; use_slacks=true, attributes=Dict("filter_function" => x -> get_name(x) in union(selected_line,monitoredlined_line)),)) - l = PSY.get_component(ACBranch, sys2, "A28") - set_rating!(l,limit) -else - set_device_model!(template_uc2, - DeviceModel(Line, StaticBranchUnbounded; use_slacks=true, attributes=Dict("filter_function" => x -> get_name(x) in union(selected_line,monitoredlined_line)),)) - - #set_device_model!(template_uc2, MonitoredLine, StaticBranch) - set_device_model!(template_uc2, DeviceModel(MonitoredLine, StaticBranch, use_slacks = true)) - for b in monitoredlined_line - line = PSY.get_component(Line, sys2, b) - PSY.convert_component!(sys2, line, MonitoredLine) - end - l = PSY.get_component(MonitoredLine, sys2, "A28") - set_flow_limits!(l,(from_to=limit,to_from=limit)) -end -models = SimulationModels(; - decision_models=[ - DecisionModel( - template_uc, - sys; - name="UC0", - optimizer=optimizer_with_attributes( - HiGHS.Optimizer, - #Xpress.Optimizer, - #"MIPRELSTOP" => 0.00, # Set the relative mip gap tolerance - #"MAXMEMORYSOFT" => 600000, # Set the maximum amount of memory the solver can use (in MB) - ), - system_to_file=false, - optimizer_solve_log_print=false, - direct_mode_optimizer=true, - store_variable_names=true, - calculate_conflict=true, - ), - DecisionModel( - MultiRegionProblem, - template_uc2, - sys2; - name="UC_Subsystem", - optimizer=optimizer_with_attributes( - HiGHS.Optimizer, - #Xpress.Optimizer, - #"MIPRELSTOP" => 0.00, # Set the relative mip gap tolerance - #"MAXMEMORYSOFT" => 600000, # Set the maximum amount of memory the solver can use (in MB) - ), - system_to_file=false, - initialize_model=true, - optimizer_solve_log_print=true, - direct_mode_optimizer=true, - rebuild_model=false, - store_variable_names=true, - calculate_conflict=true, - ), - ], -) - -uc_simulation_ff = Vector{PowerSimulations.AbstractAffectFeedforward}() - -FVFF_area_interchange = FixValueFeedforward(;component_type=AreaInterchange,source=FlowActivePowerVariable,affected_values=[FlowActivePowerVariable],) -push!(uc_simulation_ff, FVFF_area_interchange) - -#FVFF_moniterd_line = FixValueFeedforward(; -# component_type=MonitoredLine, source=FlowActivePowerVariable,affected_values=[FlowActivePowerVariable], -#) -#push!(uc_simulation_ff, FVFF_moniterd_line) - -#FVFF_line = FixValueFeedforward(; -# component_type=Line, source=FlowActivePowerVariable,affected_values=[FlowActivePowerVariable], -#) -#push!(uc_simulation_ff, FVFF_line) - -sequence = SimulationSequence(; - models=models, - feedforwards=Dict( - "UC_Subsystem" => uc_simulation_ff, - ), - ini_cond_chronology=InterProblemChronology(), -); - -sim = Simulation(; - name="sim", - steps=1, - models=models, - sequence=sequence, - initial_time=DateTime("2020-01-01T00:00:00"), - simulation_folder=mktempdir(), -); - -build_out = build!(sim; console_level=Logging.Info, serialize=false) -execute_status = execute!(sim; enable_progress_bar=true); - -uc0=models.decision_models[1].internal.container -uc2b=models.decision_models[2].internal.container.subproblems["b"] -uc2a=models.decision_models[2].internal.container.subproblems["a"] - -println("obj uc0,uc2a,uc2b,",objective_value(uc0.JuMPmodel),",",objective_value(uc2a.JuMPmodel),",",objective_value(uc2b.JuMPmodel),",diff,",objective_value(uc0.JuMPmodel)-objective_value(uc2a.JuMPmodel)-objective_value(uc2b.JuMPmodel)) - -results = SimulationResults(sim) -results_uc = get_decision_problem_results(results, "UC0") -results_rt = get_decision_problem_results(results, "UC_Subsystem") - -bus_df_uc0=read_bus_df(results_uc,"A28",0) -bus_df_uc2=read_bus_df(results_rt,"A28",1) - -bus_df_uc0[!,"buscheck"]=bus_df_uc0[!,"ActivePowerBalance__ACBus"]-bus_df_uc0[!,"ThermalStandard"]/100-bus_df_uc0[!,"PowerLoad"]/100 -println("UC0 bus check ActivePowerBalance__ACBus<>ThermalStandard/100-PowerLoad/100 ,",filter([:t,:buscheck] => (t,buscheck)-> (t>=1) && (abs(buscheck)>0.000001), bus_df_uc0)) -bus_df_uc2[!,"buscheck"]=bus_df_uc2[!,"ActivePowerBalance__ACBus"]-bus_df_uc2[!,"ThermalStandard"]/100-bus_df_uc2[!,"PowerLoad"]/100 -println("UC2 bus check ActivePowerBalance__ACBus<>ThermalStandard/100-PowerLoad/100 ,",filter([:t,:buscheck] => (t,buscheck)-> (t>=1) && (abs(buscheck)>0.000001), bus_df_uc2)) -println("UC0 ActivePowerBalance__ACBus - UC2 StateEstimationInjections__ACBus",sum(bus_df_uc0[!,"ActivePowerBalance__ACBus"]-bus_df_uc2[!,"StateEstimationInjections__ACBus"])) -#println(filter([:t,:bus] => (t,bus)-> (t>=1) && (bus==203), bus_df_uc2)) - -####### area flow check ######### -areaflow_df0=combine(groupby(bus_df_uc0, [:t, :area]), [:flowcontribution, :loopflowcontribution] .=> sum) -areaflow1_df0=filter([:t,:area] => (t,area)-> (t>=1) && (area=="1"), areaflow_df0) -areaflow2_df0=filter([:t,:area] => (t,area)-> (t>=1) && (area=="2"), areaflow_df0) -areaflow3_df0=filter([:t,:area] => (t,area)-> (t>=1) && (area=="3"), areaflow_df0) - -areaflow_df2=combine(groupby(bus_df_uc2, [:t, :area]), [:flowcontribution, :loopflowcontribution] .=> sum) -areaflow1_df2=filter([:t,:area] => (t,area)-> (t>=1) && (area=="1"), areaflow_df2) -areaflow2_df2=filter([:t,:area] => (t,area)-> (t>=1) && (area=="2"), areaflow_df2) -areaflow3_df2=filter([:t,:area] => (t,area)-> (t>=1) && (area=="3"), areaflow_df2) - -sum(areaflow2_df0[!,"flowcontribution_sum"]-areaflow2_df2[!,"loopflowcontribution_sum"]) -sum(areaflow3_df0[!,"flowcontribution_sum"]-areaflow3_df2[!,"loopflowcontribution_sum"]) - -println("areaflow1 check sum(uc0 flowcontribution_sum - uc2 loopflowcontribution_sum,",sum(areaflow1_df0[!,"flowcontribution_sum"]-areaflow1_df2[!,"loopflowcontribution_sum"])) -println("areaflow2 check sum(uc0 flowcontribution_sum - uc2 loopflowcontribution_sum,",sum(areaflow2_df0[!,"flowcontribution_sum"]-areaflow2_df2[!,"loopflowcontribution_sum"])) -println("areaflow3 check sum(uc0 flowcontribution_sum - uc2 loopflowcontribution_sum,",sum(areaflow3_df0[!,"flowcontribution_sum"]-areaflow3_df2[!,"loopflowcontribution_sum"])) - -println("varflow_uc0,",value.(uc0.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:]) ) -println("varflow_uc2a,",value.(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:]) ) -println("var_flow_uc2b,",value.(uc2b.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:]) ) - -println(areaflow132_df[:,[:flow_subsystem_a ,:flow_subsystem_b, :seflow]]) - -areaflow13_df=innerjoin(areaflow1_df2, areaflow3_df2, on=:t,renamecols = "_1" => "_3") -areaflow132_df=innerjoin(areaflow13_df, areaflow2_df2, on=:t,renamecols = "" => "_2") - -areaflow132_df[!,"flow_subsystem_a"]=areaflow132_df[!,"flowcontribution_sum_1"]+areaflow132_df[!,"flowcontribution_sum_3"]+areaflow132_df[!,"loopflowcontribution_sum_2"] -areaflow132_df[!,"flow_subsystem_b"]=areaflow132_df[!,"loopflowcontribution_sum_1"]+areaflow132_df[!,"loopflowcontribution_sum_3"]+areaflow132_df[!,"flowcontribution_sum_2"] -areaflow132_df[!,"seflow"]=areaflow132_df[!,"flowcontribution_sum_1"]+areaflow132_df[!,"flowcontribution_sum_3"]+areaflow132_df[!,"flowcontribution_sum_2"] - -#StatsPlots.@df(areaflow132_df,Plots.plot(:t,[:flow_subsystem_a :flow_subsystem_b :seflow])) - -areaflow13_df0=innerjoin(areaflow1_df0, areaflow3_df0, on=:t,renamecols = "_1" => "_3") -areaflow132_df0=innerjoin(areaflow13_df0, areaflow2_df0, on=:t,renamecols = "" => "_2") -areaflow132_df0[!,"flow_uc0"]=areaflow132_df0[!,"flowcontribution_sum_1"]+areaflow132_df0[!,"flowcontribution_sum_3"]+areaflow132_df0[!,"flowcontribution_sum_2"] diff --git a/Multi-Stage/YC_areaptdf_DA_2stage.jl b/Multi-Stage/YC_areaptdf_DA_2stage.jl deleted file mode 100644 index 5e3d134..0000000 --- a/Multi-Stage/YC_areaptdf_DA_2stage.jl +++ /dev/null @@ -1,282 +0,0 @@ -using Pkg -#Pkg.activate("/projects/irtoc/ychen8/RTS/Multi-Stage/") -Pkg.activate(@__DIR__) -using Revise - -#ENV["XPRESSDIR"] = "C:\\xpressmp" -#ENV["XPAUTH_PATH"] = "C:\\xpressmp\\bin" - -using HydroPowerSimulations -using PowerSimulations -using PowerSystemCaseBuilder -using InfrastructureSystems -using StorageSystemsSimulations -using PowerSimulationsDecomposition -using PowerSystems -# using PowerGraphics - -#using Xpress -using HiGHS -# using Gurobi -using JuMP -using Logging -using Dates -using DataFrames - -using HiGHS - -include("YC_test_function.jl") -#include("coordination_EnergyOnly.jl") -#include("GlobalM2M.jl") -#import StatsPlots -#import Plots - -#using Plots -#gr() -const PSY = PowerSystems -const IF = InfrastructureSystems -const PSB = PowerSystemCaseBuilder - -NT=5 -# You may select some tielines if you don't want to add all tie lines. You need at least one tieline for each area pair -# You may set Line to be unbounded so that you don't have too many transmission constraint -selected_line=["CA-1", "CB-1", "AB1"] - -# Additional lines to model. You may set it as bounded or unbounded. -monitoredlined_line=["A28"] -limit=0.2 - -sys = build_system(PSISystems, "modified_RTS_GMLC_DA_sys") -sys2 = build_system(PSISystems, "modified_RTS_GMLC_DA_sys") -transform_single_time_series!(sys, Hour(NT), Hour(NT)) -transform_single_time_series!(sys2, Hour(NT), Hour(NT)) -#transform_single_time_series!(sys, Hour(1), Hour(1)) -#transform_single_time_series!(sys2, Hour(1), Hour(1)) -ptdf=PTDF(sys) - -exchange_1_2 = AreaInterchange(; - name="1_2", available=true, active_power_flow=0.0, from_area=get_component(Area, sys, "1"), to_area=get_component(Area, sys, "2"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys, exchange_1_2) - -exchange_1_3 = AreaInterchange(; - name="1_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys, "1"), to_area=get_component(Area, sys, "3"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys, exchange_1_3) - -exchange_2_3 = AreaInterchange(; - name="2_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys, "2"), to_area=get_component(Area, sys, "3"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys, exchange_2_3) - -exchange_1_2 = AreaInterchange(; - name="1_2", available=true, active_power_flow=0.0, from_area=get_component(Area, sys2, "1"), to_area=get_component(Area, sys2, "2"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys2, exchange_1_2) - -exchange_1_3 = AreaInterchange(; - name="1_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys2, "1"), to_area=get_component(Area, sys2, "3"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys2, exchange_1_3) - -exchange_2_3 = AreaInterchange(; - name="2_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys2, "2"), to_area=get_component(Area, sys2, "3"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys2, exchange_2_3) - -# AREAPTDF: -# each area has its own power balance equation; -# transmission constraints LHS include variables from all areas -template_uc = ProblemTemplate(NetworkModel(AreaPTDFPowerModel; use_slacks=true)) -set_device_model!(template_uc, ThermalStandard, ThermalBasicUnitCommitment) -set_device_model!(template_uc, PowerLoad, StaticPowerLoad) -set_device_model!(template_uc, AreaInterchange, StaticBranch) - -set_device_model!(template_uc, -DeviceModel(Line, StaticBranchUnbounded; attributes=Dict("filter_function" => x -> get_name(x) in union(selected_line,monitoredlined_line)),)) -set_device_model!(template_uc, DeviceModel(MonitoredLine, StaticBranchUnbounded, use_slacks = true)) -for b in monitoredlined_line - line = PSY.get_component(Line, sys, b) - PSY.convert_component!(sys, line, MonitoredLine) -end - -#template_uc2 = MultiProblemTemplate(NetworkModel(SplitAreaPTDFPowerModel; use_slacks=true), ["a", "b"]) -template_uc2 = ProblemTemplate(NetworkModel(AreaPTDFPowerModel; use_slacks=true)) -set_device_model!(template_uc2, AreaInterchange, StaticBranch) -set_device_model!(template_uc2, ThermalStandard, ThermalBasicUnitCommitment) -set_device_model!(template_uc2, PowerLoad, StaticPowerLoad) - -set_device_model!(template_uc2, - DeviceModel(Line, StaticBranchUnbounded; use_slacks=true, attributes=Dict("filter_function" => x -> get_name(x) in union(selected_line,monitoredlined_line)),)) - -set_device_model!(template_uc2, DeviceModel(MonitoredLine, StaticBranch, use_slacks = true)) -for b in monitoredlined_line - line = PSY.get_component(Line, sys2, b) - PSY.convert_component!(sys2, line, MonitoredLine) -end -l = PSY.get_component(MonitoredLine, sys2, "A28") -set_flow_limits!(l,(from_to=limit,to_from=limit)) - -models = SimulationModels(; - decision_models=[ - DecisionModel( - template_uc, - sys; - name="UC0", - optimizer=optimizer_with_attributes( - HiGHS.Optimizer, - # "MIPGap" => 0.01, - # "TimeLimit" => 3000, - #"MIPRELSTOP" => 0.00, # Set the relative mip gap tolerance - #"MAXMEMORYSOFT" => 600000, # Set the maximum amount of memory the solver can use (in MB) - ), - system_to_file=false, - optimizer_solve_log_print=false, - direct_mode_optimizer=true, - store_variable_names=true, - calculate_conflict=true, - ), - DecisionModel( -# MultiRegionProblem, - template_uc2, - sys2; - name="UC_Subsystem", - optimizer=optimizer_with_attributes( - HiGHS.Optimizer, - # "MIPRELSTOP" => 0.00, # Set the relative mip gap tolerance - #"MAXMEMORYSOFT" => 600000, # Set the maximum amount of memory the solver can use (in MB) - ), - system_to_file=false, - initialize_model=true, - optimizer_solve_log_print=true, - direct_mode_optimizer=true, - rebuild_model=false, - store_variable_names=true, - calculate_conflict=true, - ), - ], -) - -uc_simulation_ff = Vector{PowerSimulations.AbstractAffectFeedforward}() - -#feed forward area interchange -FVFF_area_interchange = FixValueFeedforward(;component_type=AreaInterchange,source=FlowActivePowerVariable,affected_values=[FlowActivePowerVariable],) -push!(uc_simulation_ff, FVFF_area_interchange) - -sequence = SimulationSequence(; - models=models, - feedforwards=Dict( - "UC_Subsystem" => uc_simulation_ff, - ), - ini_cond_chronology=InterProblemChronology(), -); - -sim = Simulation(; - name="sim", - steps=1, - models=models, - sequence=sequence, - initial_time=DateTime("2020-01-01T00:00:00"), - simulation_folder=mktempdir(), -); - -build_out = build!(sim; console_level=Logging.Info, serialize=false) -execute_status = execute!(sim; enable_progress_bar=true); - -uc0=models.decision_models[1].internal.container -uc2=models.decision_models[2].internal.container - -println("obj uc0,uc2,",objective_value(uc0.JuMPmodel),",",objective_value(uc2.JuMPmodel),",",objective_value(uc2.JuMPmodel),",diff,",objective_value(uc0.JuMPmodel)-objective_value(uc2.JuMPmodel)) - -######### Model check ############ -open("mod_uc0.txt","w") do io - redirect_stdout(io) do - println(objective_function(uc0.JuMPmodel)) - for k in all_constraints(uc0.JuMPmodel,; include_variable_in_set_constraints = true) - println(name(k),",",k) - end - end -end -open("mod_uc2.txt","w") do io - redirect_stdout(io) do - println(objective_function(uc2.JuMPmodel)) - for k in all_constraints(uc2.JuMPmodel,; include_variable_in_set_constraints = true) - println(name(k),",",k) - end - end -end - -for (k,v) in uc0.constraints println(k) end -uc0.constraints[InfrastructureSystems.Optimization.ConstraintKey{CopperPlateBalanceConstraint, Area}("")][:,1] - -for (k,v) in uc2.constraints println(k) end -uc2.constraints[InfrastructureSystems.Optimization.ConstraintKey{CopperPlateBalanceConstraint, Area}("")][:,1] - -value.(uc0.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, AreaInterchange}("")][:,1]) -fix_value.(uc2.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, AreaInterchange}("")][:,1]) -########################## - -results = SimulationResults(sim) -results_uc0 = get_decision_problem_results(results, "UC0") -results_uc1 = get_decision_problem_results(results, "UC_Subsystem") - -bus_df_uc0=read_bus_df(results_uc0,"A28",0) -bus_df_uc2=read_bus_df(results_uc1,"A28",0) - -bus_df_uc0[!,"buscheck"]=bus_df_uc0[!,"ActivePowerBalance__ACBus"]-bus_df_uc0[!,"ThermalStandard"]/100-bus_df_uc0[!,"PowerLoad"]/100 -println("UC0 bus check ActivePowerBalance__ACBus<>ThermalStandard/100-PowerLoad/100 ,",filter([:t,:buscheck] => (t,buscheck)-> (t>=1) && (abs(buscheck)>0.000001), bus_df_uc0)) -bus_df_uc2[!,"buscheck"]=bus_df_uc2[!,"ActivePowerBalance__ACBus"]-bus_df_uc2[!,"ThermalStandard"]/100-bus_df_uc2[!,"PowerLoad"]/100 -println("UC2 bus check ActivePowerBalance__ACBus<>ThermalStandard/100-PowerLoad/100 ,",filter([:t,:buscheck] => (t,buscheck)-> (t>=1) && (abs(buscheck)>0.000001), bus_df_uc2)) -#println(filter([:t,:bus] => (t,bus)-> (t>=1) && (bus==203), bus_df_uc2)) - -###### area MW check ######### -area_df0=combine(groupby(bus_df_uc0, [:t, :area]), [:ThermalStandard, :PowerLoad, :ActivePowerBalance__ACBus, :StateEstimationInjections__ACBus] .=> sum) -area_df0[!,"areacheck"]=area_df0[!,"ActivePowerBalance__ACBus_sum"]-area_df0[!,"ThermalStandard_sum"]/100-area_df0[!,"PowerLoad_sum"]/100 -sum(area_df0[!,"areacheck"]) - -area1_df0=filter([:t,:area] => (t,area)-> (t>=1) && (area=="1"), area_df0) -area2_df0=filter([:t,:area] => (t,area)-> (t>=1) && (area=="2"), area_df0) -area3_df0=filter([:t,:area] => (t,area)-> (t>=1) && (area=="3"), area_df0) - -area_df2=combine(groupby(bus_df_uc2, [:t, :area]), [:ThermalStandard, :PowerLoad, :ActivePowerBalance__ACBus, :StateEstimationInjections__ACBus] .=> sum) -area_df2[!,"areacheck"]=area_df2[!,"ActivePowerBalance__ACBus_sum"]-area_df2[!,"ThermalStandard_sum"]/100-area_df2[!,"PowerLoad_sum"]/100 -sum(area_df2[!,"areacheck"]) - -area1_df2=filter([:t,:area] => (t,area)-> (t>=1) && (area=="1"), area_df2) -area2_df2=filter([:t,:area] => (t,area)-> (t>=1) && (area=="2"), area_df2) -area3_df2=filter([:t,:area] => (t,area)-> (t>=1) && (area=="3"), area_df2) - -println("area1 check uc0-uc2,", sum(area1_df2[!,"ActivePowerBalance__ACBus_sum"]-area1_df0[!,"ActivePowerBalance__ACBus_sum"])) -println("area2 check uc0-uc2,", sum(area2_df2[!,"ActivePowerBalance__ACBus_sum"]-area2_df0[!,"ActivePowerBalance__ACBus_sum"])) -println("area3 check uc0-uc2,", sum(area3_df2[!,"ActivePowerBalance__ACBus_sum"]-area3_df0[!,"ActivePowerBalance__ACBus_sum"])) - -####### area flow check ######### -areaflow_df0=combine(groupby(bus_df_uc0, [:t, :area]), [:flowcontribution, :loopflowcontribution] .=> sum) -areaflow1_df0=filter([:t,:area] => (t,area)-> (t>=1) && (area=="1"), areaflow_df0) -areaflow2_df0=filter([:t,:area] => (t,area)-> (t>=1) && (area=="2"), areaflow_df0) -areaflow3_df0=filter([:t,:area] => (t,area)-> (t>=1) && (area=="3"), areaflow_df0) - -areaflow_df2=combine(groupby(bus_df_uc2, [:t, :area]), [:flowcontribution, :loopflowcontribution] .=> sum) -areaflow1_df2=filter([:t,:area] => (t,area)-> (t>=1) && (area=="1"), areaflow_df2) -areaflow2_df2=filter([:t,:area] => (t,area)-> (t>=1) && (area=="2"), areaflow_df2) -areaflow3_df2=filter([:t,:area] => (t,area)-> (t>=1) && (area=="3"), areaflow_df2) - -println("areaflow1 check sum(uc0 flowcontribution_sum - uc2 flowcontribution_sum,",sum(areaflow1_df0[!,"flowcontribution_sum"]-areaflow1_df2[!,"flowcontribution_sum"])) -println("areaflow2 check sum(uc0 flowcontribution_sum - uc2 flowcontribution_sum,",sum(areaflow2_df0[!,"flowcontribution_sum"]-areaflow2_df2[!,"flowcontribution_sum"])) -println("areaflow3 check sum(uc0 flowcontribution_sum - uc2 flowcontribution_sum,",sum(areaflow3_df0[!,"flowcontribution_sum"]-areaflow3_df2[!,"flowcontribution_sum"])) - -areaflow1_df0[!,"seflow"]=areaflow1_df0[!,"flowcontribution_sum"]+areaflow2_df0[!,"flowcontribution_sum"]+areaflow3_df0[!,"flowcontribution_sum"] -areaflow1_df2[!,"seflow"]=areaflow1_df2[!,"flowcontribution_sum"]+areaflow2_df2[!,"flowcontribution_sum"]+areaflow3_df2[!,"flowcontribution_sum"] - -#matches solved flow -println("varflow_uc0,",value.(uc0.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:]) ) -println("varflow_uc2,",value.(uc2.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:]) ) - - - diff --git a/Multi-Stage/YC_areaptdf_DA_areasplitptdf_RT1rolling.jl b/Multi-Stage/YC_areaptdf_DA_areasplitptdf_RT1rolling.jl deleted file mode 100644 index 7aa31ab..0000000 --- a/Multi-Stage/YC_areaptdf_DA_areasplitptdf_RT1rolling.jl +++ /dev/null @@ -1,285 +0,0 @@ -using Pkg -Pkg.activate(@__DIR__) -#Pkg.add("Xpress") -using Revise - -#ENV["XPRESSDIR"] = "C:\\xpressmp" -#ENV["XPAUTH_PATH"] = "C:\\xpressmp\\bin" - -using HydroPowerSimulations -using PowerSimulations -using PowerSystemCaseBuilder -using InfrastructureSystems -using StorageSystemsSimulations -using PowerSimulationsDecomposition -using PowerSystems -# using PowerGraphics - -#using Xpress -using JuMP -using Logging -using Dates -using DataFrames -import ShiftedArrays: lead, lag -using Gurobi -using HiGHS - -include("YC_test_function.jl") -#include("coordination_EnergyOnly.jl") -#include("GlobalM2M.jl") -#import StatsPlots -#import Plots - -#using Plots -#gr() -const PSY = PowerSystems -const IF = InfrastructureSystems -const PSB = PowerSystemCaseBuilder -const PSI = PowerSimulations - -NT=24 - selected_line=["CA-1", "CB-1", "AB1"] - monitoredlined_line=["A28"] - limit=0.2 - use_monitoredline=1 - - sys = build_system(PSISystems, "modified_RTS_GMLC_DA_sys") - sys2 = build_system(PSISystems, "modified_RTS_GMLC_DA_sys") - transform_single_time_series!(sys, Hour(NT), Hour(NT)) - transform_single_time_series!(sys2, Hour(1), Hour(1)) - #transform_single_time_series!(sys, Hour(1), Hour(1)) - #transform_single_time_series!(sys2, Hour(1), Hour(1)) - #enforced_region = ["1", "2", "3"] # first one is MRTO, second one is M2M coordinator, third one in RT is loopflow under M2M - enforced_region=["1","3","2"] - #enforced_region=["2","3","1"] - ptdf=PTDF(sys) - - buildsubsystem(sys2, enforced_region, union(selected_line,monitoredlined_line)) - - exchange_1_2 = AreaInterchange(; - name="1_2", available=true, active_power_flow=0.0, from_area=get_component(Area, sys, "1"), to_area=get_component(Area, sys, "2"), - flow_limits=(from_to=99999, to_from=99999), - ) - add_component!(sys, exchange_1_2) - - exchange_1_3 = AreaInterchange(; - name="1_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys, "1"), to_area=get_component(Area, sys, "3"), - flow_limits=(from_to=99999, to_from=99999), - ) - add_component!(sys, exchange_1_3) - - exchange_2_3 = AreaInterchange(; - name="2_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys, "2"), to_area=get_component(Area, sys, "3"), - flow_limits=(from_to=99999, to_from=99999), - ) - add_component!(sys, exchange_2_3) - - exchange_1_2 = AreaInterchange(; - name="1_2", available=true, active_power_flow=0.0, from_area=get_component(Area, sys2, "1"), to_area=get_component(Area, sys2, "2"), - flow_limits=(from_to=99999, to_from=99999), - ) - add_component!(sys2, exchange_1_2) - add_component_to_subsystem!(sys2, "a", exchange_1_2) - add_component_to_subsystem!(sys2, "b", exchange_1_2) - - exchange_1_3 = AreaInterchange(; - name="1_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys2, "1"), to_area=get_component(Area, sys2, "3"), - flow_limits=(from_to=99999, to_from=99999), - ) - add_component!(sys2, exchange_1_3) - add_component_to_subsystem!(sys2, "a", exchange_1_3) - add_component_to_subsystem!(sys2, "b", exchange_1_3) - - exchange_2_3 = AreaInterchange(; - name="2_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys2, "2"), to_area=get_component(Area, sys2, "3"), - flow_limits=(from_to=99999, to_from=99999), - ) - add_component!(sys2, exchange_2_3) - add_component_to_subsystem!(sys2, "a", exchange_2_3) - add_component_to_subsystem!(sys2, "b", exchange_2_3) - - template_uc = ProblemTemplate(NetworkModel(AreaPTDFPowerModel; use_slacks=true)) - set_device_model!(template_uc, ThermalStandard, ThermalBasicUnitCommitment) - set_device_model!(template_uc, PowerLoad, StaticPowerLoad) - set_device_model!(template_uc, AreaInterchange, StaticBranch) - - if use_monitoredline==0 - set_device_model!(template_uc, - DeviceModel(Line, StaticBranchUnbounded; attributes=Dict("filter_function" => x -> get_name(x) in union(selected_line,monitoredlined_line)), - #DeviceModel(Line, StaticBranchUnbounded; attributes=Dict("filter_function" => x -> get_name(x) in selected_line), - #DeviceModel(Line, StaticBranch; attributes=Dict("filter_function" => x -> get_name(x) in selected_line), - )) - else - set_device_model!(template_uc, - DeviceModel(Line, StaticBranchUnbounded; attributes=Dict("filter_function" => x -> get_name(x) in union(selected_line,monitoredlined_line)),)) - - set_device_model!(template_uc, MonitoredLine, StaticBranch) - for b in monitoredlined_line - line = PSY.get_component(Line, sys, b) - PSY.convert_component!(sys, line, MonitoredLine) - end - end - - template_uc2 = MultiProblemTemplate(NetworkModel(SplitAreaPTDFPowerModel; use_slacks=true), ["a", "b"]) - set_device_model!(template_uc2, AreaInterchange, StaticBranch) - set_device_model!(template_uc2, ThermalStandard, ThermalBasicUnitCommitment) - set_device_model!(template_uc2, PowerLoad, StaticPowerLoad) - - if use_monitoredline==0 - set_device_model!(template_uc2, - DeviceModel(Line, StaticBranch; use_slacks=true, attributes=Dict("filter_function" => x -> get_name(x) in union(selected_line,monitoredlined_line)),)) - l = PSY.get_component(ACBranch, sys2, "A28") - set_rating!(l,limit) - else - set_device_model!(template_uc2, - DeviceModel(Line, StaticBranchUnbounded; use_slacks=true, attributes=Dict("filter_function" => x -> get_name(x) in union(selected_line,monitoredlined_line)),)) - - set_device_model!(template_uc2, MonitoredLine, StaticBranch) - for b in monitoredlined_line - line = PSY.get_component(Line, sys2, b) - PSY.convert_component!(sys2, line, MonitoredLine) - end - l = PSY.get_component(MonitoredLine, sys2, "A28") - set_flow_limits!(l,(from_to=limit,to_from=limit)) - end - models = SimulationModels(; - decision_models=[ - DecisionModel( - template_uc, - sys; - name="UC0", - optimizer=optimizer_with_attributes( - HiGHS.Optimizer, - # Xpress.Optimizer, - # "MIPRELSTOP" => 0.00, # Set the relative mip gap tolerance - # "MAXMEMORYSOFT" => 600000, # Set the maximum amount of memory the solver can use (in MB) - ), - system_to_file=false, - optimizer_solve_log_print=false, - direct_mode_optimizer=true, - store_variable_names=true, - calculate_conflict=true, - ), - DecisionModel( - MultiRegionProblem, - template_uc2, - sys2; - name="UC_Subsystem", - optimizer=optimizer_with_attributes( - HiGHS.Optimizer, - #Xpress.Optimizer, - #"MIPRELSTOP" => 0.00, # Set the relative mip gap tolerance - #"MAXMEMORYSOFT" => 600000, # Set the maximum amount of memory the solver can use (in MB) - ), - system_to_file=false, - initialize_model=true, - optimizer_solve_log_print=false, - direct_mode_optimizer=true, - rebuild_model=false, - store_variable_names=true, - calculate_conflict=true, - ), - ], - ) - - uc_simulation_ff = Vector{PowerSimulations.AbstractAffectFeedforward}() - - #FVFF_area_interchange = FixValueFeedforward(;component_type=AreaInterchange,source=FlowActivePowerVariable,affected_values=[FlowActivePowerVariable],) - #push!(uc_simulation_ff, FVFF_area_interchange) - - #LBFF = FixValueFeedforward(; - # component_type=ThermalStandard, - # source=OnVariable, - # affected_values=[OnVariable], - #) - #push!(uc_simulation_ff, LBFF) - - sequence = SimulationSequence(; - models=models, - feedforwards=Dict( - "UC_Subsystem" => uc_simulation_ff, - ), - ini_cond_chronology=InterProblemChronology(), - ); - - # use different names for saving the solution - sim = Simulation(; - name="sim", - steps=1, - models=models, - sequence=sequence, - initial_time=DateTime("2020-01-01T00:00:00"), - simulation_folder=mktempdir(), - ); - - build_out = build!(sim; console_level=Logging.Info, serialize=false) - - execute_status = execute!(sim; enable_progress_bar=true); - - uc0=models.decision_models[1].internal.container - uc2b=models.decision_models[2].internal.container.subproblems["b"] - uc2a=models.decision_models[2].internal.container.subproblems["a"] - println("obj uc0,uc2a,uc2b,",objective_value(uc0.JuMPmodel),",",objective_value(uc2a.JuMPmodel),",",objective_value(uc2b.JuMPmodel),",diff,",objective_value(uc0.JuMPmodel)-objective_value(uc2a.JuMPmodel)-objective_value(uc2b.JuMPmodel)) - - results = SimulationResults(sim) - # #results = SimulationResults(sim) - results_uc = get_decision_problem_results(results, "UC0") - results_ha = get_decision_problem_results(results, "UC_Subsystem") - aa = read_realized_variable(results_uc, "FlowActivePowerVariable__MonitoredLine") - ac = read_realized_variable(results_ha, "FlowActivePowerVariable__MonitoredLine") - - -area_df=DataFrames.DataFrame(; -t =Int64[], uc=[], area1_gen = [], area1_load = [], area2_gen = [], area2_load = [], - area3_gen = [], area3_load = [], -) - -results_uc = get_decision_problem_results(results, "UC0") -results_rt = get_decision_problem_results(results, "UC_Subsystem") - -bus_df=read_bus_df(results_rt,"A28",1) -#println(filter([:t,:bus] => (t,bus)-> (t>=1) && (bus==203), bus_df)) - -####### area MW check ######### -area_df=combine(groupby(bus_df, [:t, :area]), [:ThermalStandard, :PowerLoad, :ActivePowerBalance__ACBus, :StateEstimationInjections__ACBus] .=> sum) -area_df[!,"areacheck"]=area_df[!,"ActivePowerBalance__ACBus_sum"]-area_df[!,"ThermalStandard_sum"]/100-area_df[!,"PowerLoad_sum"]/100 - -area1_df=filter([:t,:area] => (t,area)-> (t>=1) && (area=="1"), area_df) -area2_df=filter([:t,:area] => (t,area)-> (t>=1) && (area=="2"), area_df) -area3_df=filter([:t,:area] => (t,area)-> (t>=1) && (area=="3"), area_df) - -area1_df[!,"secheck"]=lag(area1_df[!,"ActivePowerBalance__ACBus_sum"])-area1_df[!,"StateEstimationInjections__ACBus_sum"] -area2_df[!,"secheck"]=lag(area2_df[!,"ActivePowerBalance__ACBus_sum"])-area2_df[!,"StateEstimationInjections__ACBus_sum"] -area3_df[!,"secheck"]=lag(area3_df[!,"ActivePowerBalance__ACBus_sum"])-area3_df[!,"StateEstimationInjections__ACBus_sum"] - -println("area1 check max diff lag(ActivePowerBalance__ACBus_sum)-StateEstimationInjections__ACBus_sum,", maximum(area1_df[!,"secheck"][2,:])) -println("area2 check max diff lag(ActivePowerBalance__ACBus_sum)-StateEstimationInjections__ACBus_sum,", maximum(area2_df[!,"secheck"][2,:])) -println("area3 check max diff lag(ActivePowerBalance__ACBus_sum)-StateEstimationInjections__ACBus_sum,", maximum(area3_df[!,"secheck"][2,:])) -########################## - -####### area flow check ######### -areaflow_df=combine(groupby(bus_df, [:t, :area]), [:flowcontribution, :loopflowcontribution] .=> sum) -#areaflow_df[!,"areacheck"]=area_df[!,"ActivePowerBalance__ACBus_sum"]-area_df[!,"ThermalStandard_sum"]/100-area_df[!,"PowerLoad_sum"]/100 - -areaflow1_df=filter([:t,:area] => (t,area)-> (t>=1) && (area=="1"), areaflow_df) -areaflow2_df=filter([:t,:area] => (t,area)-> (t>=1) && (area=="2"), areaflow_df) -areaflow3_df=filter([:t,:area] => (t,area)-> (t>=1) && (area=="3"), areaflow_df) - -areaflow1_df[!,"secheck"]=lag(areaflow1_df[!,"flowcontribution_sum"])-areaflow1_df[!,"loopflowcontribution_sum"] -areaflow2_df[!,"secheck"]=lag(areaflow2_df[!,"flowcontribution_sum"])-areaflow2_df[!,"loopflowcontribution_sum"] -areaflow3_df[!,"secheck"]=lag(areaflow3_df[!,"flowcontribution_sum"])-areaflow3_df[!,"loopflowcontribution_sum"] - -println("areaflow1 check max diff lag(flowcontribution_sum)-loopflowcontribution_sum,", maximum(area1_df[!,"secheck"][2,:])) -println("areaflow2 check max diff lag(flowcontribution_sum)-loopflowcontribution_sum,", maximum(area2_df[!,"secheck"][2,:])) -println("areaflow3 check max diff lag(flowcontribution_sum)-loopflowcontribution_sum,", maximum(area3_df[!,"secheck"][2,:])) -########################## - -areaflow13_df=innerjoin(areaflow1_df, areaflow3_df, on=:t,renamecols = "_1" => "_3") -areaflow132_df=innerjoin(areaflow13_df, areaflow2_df, on=:t,renamecols = "" => "_2") - -areaflow132_df[!,"flow_subsystem_a"]=areaflow132_df[!,"flowcontribution_sum_1"]+areaflow132_df[!,"flowcontribution_sum_3"]+areaflow132_df[!,"loopflowcontribution_sum_2"] -areaflow132_df[!,"flow_subsystem_b"]=areaflow132_df[!,"loopflowcontribution_sum_1"]+areaflow132_df[!,"loopflowcontribution_sum_3"]+areaflow132_df[!,"flowcontribution_sum_2"] -areaflow132_df[!,"seflow"]=areaflow132_df[!,"flowcontribution_sum_1"]+areaflow132_df[!,"flowcontribution_sum_3"]+areaflow132_df[!,"flowcontribution_sum_2"] - -StatsPlots.@df(areaflow132_df,Plots.plot(:t,[:flow_subsystem_a :flow_subsystem_b :seflow])) - diff --git a/Multi-Stage/YC_test_function.jl b/Multi-Stage/YC_test_function.jl deleted file mode 100644 index fd06104..0000000 --- a/Multi-Stage/YC_test_function.jl +++ /dev/null @@ -1,272 +0,0 @@ -using Pkg -#Pkg.activate("/projects/irtoc/ychen8/RTS/Multi-Stage/") -Pkg.activate(@__DIR__) -using Revise - -#ENV["XPRESSDIR"] = "C:\\xpressmp" -#ENV["XPAUTH_PATH"] = "C:\\xpressmp\\bin" - -using HydroPowerSimulations -using PowerSimulations -using PowerSystemCaseBuilder -using InfrastructureSystems -using StorageSystemsSimulations -using PowerSimulationsDecomposition -using PowerSystems -# using PowerGraphics - -#using Xpress -using HiGHS -# using Gurobi -using JuMP -using Logging -using Dates -using DataFrames - -using HiGHS -#include("coordination_EnergyOnly.jl") -#include("GlobalM2M.jl") -#import StatsPlots -#import Plots - -#using Plots -#gr() -const PSY = PowerSystems -const IF = InfrastructureSystems -const PSB = PowerSystemCaseBuilder - -function read_bus_df(results_rt,line,se=0) - ac = read_realized_variable(results_rt, "ActivePowerVariable__ThermalStandard") - ab = read_realized_variable(results_rt, "ActivePowerBalance__ACBus") - if se==1 al = read_realized_variable(results_rt, "StateEstimationInjections__ACBus") end - ald = read_realized_variable(results_rt, "ActivePowerTimeSeriesParameter__PowerLoad") - am = read_realized_variable(results_rt, "FlowActivePowerVariable__MonitoredLine") - - bus_ActivePowerVariable__ThermalStandard=Dict() - bus_ActivePowerTimeSeriesParameter__PowerLoad=Dict() - bus_ActivePowerBalance__ACBus=Dict() - bus_StateEstimationInjections__ACBus=Dict() - - bus_df=DataFrames.DataFrame(; - t =Int64[], bus=[], area = [], ThermalStandard=[], PowerLoad=[], ActivePowerBalance__ACBus=[], - StateEstimationInjections__ACBus=[], ptdf=[], flowcontribution=[], loopflowcontribution=[] - ) - for t in 1:NT - for b in PSY.get_components(PSY.Bus,sys) - bn=get_number(b); bus_ActivePowerVariable__ThermalStandard[t,bn]=0 - bus_ActivePowerTimeSeriesParameter__PowerLoad[t,bn]=0; bus_ActivePowerBalance__ACBus[t,bn]=0 - bus_StateEstimationInjections__ACBus[t,bn]=0 - end - end - - for i in names(ab) - try b=parse(Int,i) - for t=1:NT bus_ActivePowerBalance__ACBus[t,b]=ab[t,i] end - catch e println("error= ",e,",i=",i) end - end - if se==1 - for i in names(al) - try b=parse(Int,i) - for t=1:NT bus_StateEstimationInjections__ACBus[t,b]=al[t,i] end - catch e println("error= ",e,",i=",i) end - end - end - - for i in names(ald) - try b=get_number(get_bus(get_component(PowerLoad, sys, i))) - for t=1:NT bus_ActivePowerTimeSeriesParameter__PowerLoad[t,b]=bus_ActivePowerTimeSeriesParameter__PowerLoad[t,b]+ald[t,i] end - catch e println("error= ",e,",i=",i) end - end - - for i in names(ac) - try b=get_number(get_bus(get_component(ThermalStandard, sys, i))) - for t=1:NT bus_ActivePowerVariable__ThermalStandard[t,b]=bus_ActivePowerVariable__ThermalStandard[t,b]+ac[t,i] end - catch e println("error ",e,",i=",i) end - end - - for t in 1:NT - for b in PSY.get_components(PSY.Bus,sys) - bn=get_number(b); area=get_name(get_area(b)); - push!(bus_df,(t,bn,area, bus_ActivePowerVariable__ThermalStandard[t,bn], bus_ActivePowerTimeSeriesParameter__PowerLoad[t,bn], - bus_ActivePowerBalance__ACBus[t,bn], bus_StateEstimationInjections__ACBus[t,bn], ptdf[line,bn], - bus_ActivePowerBalance__ACBus[t,bn]*ptdf[line,bn],bus_StateEstimationInjections__ACBus[t,bn]*ptdf[line,bn])) - end - end - - bus_df[!,"buscheck"]=bus_df[!,"ActivePowerBalance__ACBus"]-bus_df[!,"ThermalStandard"]/100-bus_df[!,"PowerLoad"]/100 - println("bus check ActivePowerBalance__ACBus<>ThermalStandard/100-PowerLoad/100 ,",filter([:t,:buscheck] => (t,buscheck)-> (t>=1) && (abs(buscheck)>0.000001), bus_df)) - #println(filter([:t,:bus] => (t,bus)-> (t>=1) && (bus==203), bus_df)) - return(bus_df) -end - -function check_models(uc0,uc2a) - sol0=Dict() - v0=uc0.variables[PowerSimulations.VariableKey{ActivePowerVariable, ThermalStandard}("")] - sol0=Dict(zip(name.(v0),value.(v0))) - for v in v0 - fix(v,value.(v),force=true) - end - - v01=uc0.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, AreaInterchange}("")] - for v in v01 - fix(v,value.(v),force=true) - end - - v2a=uc2a.variables[PowerSimulations.VariableKey{ActivePowerVariable, ThermalStandard}("")] - sol2a=Dict(zip(name.(v2a),value.(v2a))) - - for (k,v) in sol2a - if abs(sol2a[k]-sol0[k])>0.00001 - println("k,",k,",",sol2a[k],",",sol0[k]) - var0=variable_by_name(uc0.JuMPmodel,k) - fix(var0,sol2a[k],force=true) - end - end - solve!(models.decision_models[1]) -end - -function objterms(uc0,ff) - objd0=Dict(); sol0=Dict(); objv0=0 - obj0=objective_function(uc0.JuMPmodel); objd0=Dict(zip(name.(keys(obj0.terms)),values(obj0.terms))); - av0 = JuMP.all_variables(uc0.JuMPmodel); sol0=Dict(zip(name.(av0), value.(av0))) - - open(ff,"w") do io - redirect_stdout(io) do - for (k,v) in objd0 - objv0=objv0+sol0[k]*objd0[k] - println("name;value;objcoef;obj_contribution;",k,";",sol0[k],";",objd0[k],";", sol0[k]*objd0[k]) - end - end - end - return(objd0,sol0, objv0) -end - -function write_param_acbus(name,uc2a,line) - parameter_ACBus_2a=uc2a.parameters[InfrastructureSystems.Optimization.ParameterKey{PowerSimulationsDecomposition.StateEstimationInjections, ACBus}("")] - i=axes(parameter_ACBus_2a.parameter_array) - for j2 in i[2] - for j1 in i[1] - con=uc2a.constraints[InfrastructureSystems.Optimization.ConstraintKey{NetworkFlowConstraint, MonitoredLine}("")][line,j2] - param=parameter_ACBus_2a.parameter_array[j1,j2] - println(name,",j1,j2,",j1,",",j2,",value,",value(parameter_ACBus_2a.parameter_array[j1,j2]),",coeff,",normalized_coefficient(con,param)) - end - end -end - -#PSI.get_expression(uc0, ActivePowerBalance(), PSY.ACBus)[101,2].terms - -function write_coeff(uc2a,linename,t,fnm,use_monitoredline) - fixedmw=0; fixedflow=0; areamw=Dict(); areaflow=Dict(); areaload=Dict(); arealoadflow=Dict() - for j=1:3 areamw[j]=0; areaflow[j]=0 end - c=uc2a.constraints[InfrastructureSystems.Optimization.ConstraintKey{CopperPlateBalanceConstraint, Area}("")][:,t] - for i in axes(c)[1] - for k in all_variables(uc2a.JuMPmodel) - if normalized_coefficient(c[i], k)!=0 - #println("coef;",name(k),";",normalized_coefficient(con2a, k), ";is_fixed;",is_fixed(k),";value;",value(k)) - if name(k)=="param" - areaload[i]=-normalized_coefficient(c[i], k) - println("area,",i,",",areaload[i]) - end - end - end - end - - if use_monitoredline==1 - con2a=uc2a.constraints[InfrastructureSystems.Optimization.ConstraintKey{NetworkFlowConstraint, MonitoredLine}("")][linename,t] - else - con2a=uc2a.constraints[InfrastructureSystems.Optimization.ConstraintKey{NetworkFlowConstraint, Line}("")][linename,t] - end - open(fnm,"w") do io - redirect_stdout(io) do - for k in all_variables(uc2a.JuMPmodel) - if normalized_coefficient(con2a, k)!=0 - println("coef;",name(k),";",normalized_coefficient(con2a, k), ";is_fixed;",is_fixed(k),";value;",value(k)) - if name(k)=="param" - fixedmw=fixedmw+value(k); - fixedflow=fixedflow+value(k)*normalized_coefficient(con2a, k) - else - str=split(name(k),"{"); - println("name,",name(k),",str,",str) - if first(str[1],1)=="A" - a= parse(Int64,first(str[2],1));# tt=firstindex(split(str[2],", ")) - areamw[a]=areamw[a]+value(k) - areaflow[a]=areaflow[a]+value(k)*normalized_coefficient(con2a, k) - #println("a,areamw,areaflow,",a,",",areamw[a],",",areaflow[a]) - end - end - end - end - end - end - return(fixedmw,areamw,fixedflow,areaflow) -end - -function write_param_internalload(name,uc0,line) - parameter_load_0=uc0.parameters[InfrastructureSystems.Optimization.ParameterKey{ActivePowerTimeSeriesParameter, PowerLoad}("")] - i=axes(parameter_load_0.parameter_array) - for j2 in i[2] - for j1 in i[1] - con=uc0.constraints[InfrastructureSystems.Optimization.ConstraintKey{NetworkFlowConstraint, MonitoredLine}("")][line,j2] - param=parameter_load_0.parameter_array[j1,j2] - println(name,",load,j1,j2,",j1,",",j2,",value,",value(parameter_load_0.parameter_array[j1,j2]),",coeff,",normalized_coefficient(con,param)) - end - end -end - -function write_acbus(ucname,uc0,ax,t, debug=0) - area_param=Dict(); area_gen=Dict() - area_param[1]=0;area_param[2]=0;area_param[3]=0 - area_gen[1]=0;area_gen[2]=0;area_gen[3]=0 - for bus in ax[1] - for k in keys(PSI.get_expression(uc0, ActivePowerBalance(), PSY.ACBus)[bus,t].terms) - coef=PSI.get_expression(uc0, ActivePowerBalance(),PSY.ACBus)[bus,t].terms[k] - v=value(k); - if debug==1 - println(ucname,";bus;t;",bus,";",t,";",k,";coefficient;", coef,";solution;",v,";coef*v;",coef*v) - end - n=Int64(floor(bus/100)) - if name(k)=="param" area_param[n]=area_param[n]+coef*v else area_gen[n]=area_gen[n]+coef*v end - end - end - return(area_gen,area_param) -end - -function buildsubsystem(sys, enforced_region, selected_line) - add_subsystem!(sys, "a") - add_subsystem!(sys, "b") - - for b in PSY.get_components(PSY.Area, sys) - if get_name(b) == enforced_region[1] || get_name(b) == enforced_region[2] - PSY.set_ext!(b, Dict("subregion" => Set(["a"]))) - add_component_to_subsystem!(sys, "a", b) - else - PSY.set_ext!(b, Dict("subregion" => Set(["b"]))) - add_component_to_subsystem!(sys, "b", b) - end - end - for b in PSY.get_components(PSY.StaticInjection, sys) - if get_name(get_area(get_bus(b))) == enforced_region[1] || get_name(get_area(get_bus(b))) == enforced_region[2] - PSY.set_ext!(b, Dict("subregion" => Set(["a"]))) - add_component_to_subsystem!(sys, "a", b) - else - PSY.set_ext!(b, Dict("subregion" => Set(["b"]))) - add_component_to_subsystem!(sys, "b", b) - end - end - for b in PSY.get_components(PSY.Bus, sys) - if get_name(get_area(b)) == enforced_region[1] || get_name(get_area(b)) == enforced_region[2] - PSY.set_ext!(b, Dict("subregion" => Set(["a"]))) - add_component_to_subsystem!(sys, "a", b) - else - PSY.set_ext!(b, Dict("subregion" => Set(["b"]))) - add_component_to_subsystem!(sys, "b", b) - end - end - for b in selected_line - l=PSY.get_component(ACBranch, sys,b) - PSY.set_ext!(l, Dict("subregion" => Set(["a"]))) - add_component_to_subsystem!(sys, "a", l) - PSY.set_ext!(l, Dict("subregion" => Set(["b"]))) - add_component_to_subsystem!(sys, "b", l) - end -end \ No newline at end of file diff --git a/Multi-Stage/final_run_simulations_3stage.jl b/Multi-Stage/final_run_simulations_3stage.jl deleted file mode 100644 index ce33866..0000000 --- a/Multi-Stage/final_run_simulations_3stage.jl +++ /dev/null @@ -1,698 +0,0 @@ -using Pkg -#Pkg.activate(".") -Pkg.activate(@__DIR__) -#run(`bash -c "module load gurobi"`) -#= -ENV["GUROBI_HOME"] = "/nopt/nrel/apps/software/gurobi/gurobi1100/linux64" -ENV["PATH"] *= ":$ENV[\"GUROBI_HOME\"]/bin" -ENV["GRB_LICENSE_FILE"] = "/nopt/nrel/apps/software/gurobi/tlicense/gurobi.lic" -=# -ENV["XPRESSDIR"] = "C:\\xpressmp" -ENV["XPAUTH_PATH"] = "C:\\xpressmp\\bin" -using PowerSystems -using PowerSimulations -using PowerSystemCaseBuilder -using PowerNetworkMatrices -using HydroPowerSimulations -using StorageSystemsSimulations -using JuMP -using Dates -#using Gurobi -using PowerSimulationsDecomposition -using Revise -using Logging -using CSV -using DataFrames -using Xpress -using HiGHS -using InfrastructureSystems - -const HPS = HydroPowerSimulations -const PSI = PowerSimulations -const SSS = StorageSystemsSimulations -const PSY = PowerSystems - -function write_cons_coeff(uc2a,con2a,fnm) - open(fnm,"w") do io - redirect_stdout(io) do - for k in all_variables(uc2a.JuMPmodel) - if normalized_coefficient(con2a, k)!=0 - println("coef;",name(k),";",normalized_coefficient(con2a, k), ";is_fixed;",is_fixed(k),";value;",value(k)) - end - end - end - end -end - -function write_model(uc0,fnm) - open(fnm,"w") do io - redirect_stdout(io) do - println(objective_function(uc0.JuMPmodel)) - for k in all_constraints(uc0.JuMPmodel,; include_variable_in_set_constraints = true) - println(name(k),",",k) - end - end - end -end - -function objterms(uc0,ff) - objd0=Dict(); sol0=Dict(); objv0=0 - obj0=objective_function(uc0.JuMPmodel); objd0=Dict(zip(name.(keys(obj0.terms)),values(obj0.terms))); - av0 = JuMP.all_variables(uc0.JuMPmodel); sol0=Dict(zip(name.(av0), value.(av0))) - - open(ff,"w") do io - redirect_stdout(io) do - for (k,v) in objd0 - objv0=objv0+sol0[k]*objd0[k] - println("name;value;objcoef;obj_contribution;",k,";",sol0[k],";",objd0[k],";", sol0[k]*objd0[k]) - end - end - end - return(objd0,sol0, objv0) -end - -function read_bus_df(results_rt,line="",se=0,standardload=0) - ac = read_realized_variable(results_rt, "ActivePowerVariable__ThermalStandard") - ac1 = read_realized_variable(results_rt, "ActivePowerVariable__RenewableDispatch") - ac2 = read_realized_variable(results_rt, "ActivePowerVariable__HydroDispatch") - - ab = read_realized_variable(results_rt, "ActivePowerBalance__ACBus") - if se==1 al = read_realized_variable(results_rt, "StateEstimationInjections__ACBus") end - if standardload==1 - ald = read_realized_variable(results_rt, "ActivePowerTimeSeriesParameter__StandardLoad") - else - ald = read_realized_variable(results_rt, "ActivePowerTimeSeriesParameter__PowerLoad") - end - if line!="" am = read_realized_variable(results_rt, "FlowActivePowerVariable__MonitoredLine") end - ahvdc=[] - try - ahvdc=read_realized_variable(results_rt, "FlowActivePowerVariable__TwoTerminalHVDCLine") - catch e end - - bus_ActivePowerVariable__ThermalStandard=Dict() - bus_ActivePowerVariable__RenewableDispatch=Dict() - bus_ActivePowerVariable__HydroDispatch=Dict() - bus_ActivePowerTimeSeriesParameter__PowerLoad=Dict() - bus_ActivePowerBalance__ACBus=Dict() - bus_StateEstimationInjections__ACBus=Dict() - bus_ActivePowerVariable__HVDC=Dict() - - bus_df=DataFrames.DataFrame(; - t =Int64[], bus=[], area = [], ThermalStandard=[],Renewable=[],Hydro=[], - PowerLoad=[], HVDC=[],ActivePowerBalance__ACBus=[], StateEstimationInjections__ACBus=[], - ptdf=[], flowcontribution=[], loopflowcontribution=[] - ) - NT=size(ac,1) - for t in 1:NT - for b in PSY.get_components(PSY.Bus,sys) - bn=get_number(b); bus_ActivePowerVariable__ThermalStandard[t,bn]=0 - bus_ActivePowerVariable__RenewableDispatch[t,bn]=0 - bus_ActivePowerVariable__HydroDispatch[t,bn]=0 - bus_ActivePowerVariable__HVDC[t,bn]=0 - bus_ActivePowerTimeSeriesParameter__PowerLoad[t,bn]=0; bus_ActivePowerBalance__ACBus[t,bn]=0 - bus_StateEstimationInjections__ACBus[t,bn]=0 - end - end - - for i in names(ab) - try b=parse(Int,i) - for t=1:NT bus_ActivePowerBalance__ACBus[t,b]=ab[t,i] end - catch e println("error= ",e,",i=",i) end - end - if se==1 - for i in names(al) - try b=parse(Int,i) - for t=1:NT bus_StateEstimationInjections__ACBus[t,b]=al[t,i] end - catch e println("error= ",e,",i=",i) end - end - end - - for i in names(ald) - if standardload==1 - try b=get_number(get_bus(get_component(StandardLoad, sys, i))) - for t=1:NT bus_ActivePowerTimeSeriesParameter__PowerLoad[t,b]=bus_ActivePowerTimeSeriesParameter__PowerLoad[t,b]+ald[t,i] end - catch e println("error= ",e,",i=",i) end - else - try b=get_number(get_bus(get_component(PowerLoad, sys, i))) - for t=1:NT bus_ActivePowerTimeSeriesParameter__PowerLoad[t,b]=bus_ActivePowerTimeSeriesParameter__PowerLoad[t,b]+ald[t,i] end - catch e println("error= ",e,",i=",i) end - end - end - - if length(ahvdc)>0 - for i in names(ahvdc) - try b=get_number(get_from(get_arc(get_component(TwoTerminalHVDCLine, sys, i)))) - for t=1:NT - #bus_ActivePowerVariable__ThermalStandard[t,b]=bus_ActivePowerVariable__ThermalStandard[t,b]-ahvdc[t,i] - bus_ActivePowerVariable__HVDC[t,b]=bus_ActivePowerVariable__HVDC[t,b]-ahvdc[t,i] - end - catch e println("error ",e,",i=",i) end - try b=get_number(get_to(get_arc(get_component(TwoTerminalHVDCLine, sys, i)))) - for t=1:NT - #bus_ActivePowerVariable__ThermalStandard[t,b]=bus_ActivePowerVariable__ThermalStandard[t,b]+ahvdc[t,i] - bus_ActivePowerVariable__HVDC[t,b]=bus_ActivePowerVariable__HVDC[t,b]+ahvdc[t,i] - end - catch e println("error ",e,",i=",i) end - end - end - - for i in names(ac) - try b=get_number(get_bus(get_component(ThermalStandard, sys, i))) - for t=1:NT bus_ActivePowerVariable__ThermalStandard[t,b]=bus_ActivePowerVariable__ThermalStandard[t,b]+ac[t,i] end - catch e println("error ",e,",i=",i) end - end - for i in names(ac1) - try b=get_number(get_bus(get_component(RenewableDispatch, sys, i))) - for t=1:NT bus_ActivePowerVariable__RenewableDispatch[t,b]=bus_ActivePowerVariable__RenewableDispatch[t,b]+ac1[t,i] end - catch e println("error ",e,",i=",i) end - end - for i in names(ac2) - try b=get_number(get_bus(get_component(HydroDispatch, sys, i))) - for t=1:NT bus_ActivePowerVariable__HydroDispatch[t,b]=bus_ActivePowerVariable__HydroDispatch[t,b]+ac2[t,i] end - catch e println("error ",e,",i=",i) end - end - - for t in 1:NT - for b in PSY.get_components(PSY.Bus,sys) - bn=get_number(b); area=get_name(get_area(b)); - if line=="" gsf=0 else gsf=ptdf[line,bn] end - push!(bus_df,(t,bn,area, bus_ActivePowerVariable__ThermalStandard[t,bn], - bus_ActivePowerVariable__RenewableDispatch[t,bn],bus_ActivePowerVariable__HydroDispatch[t,bn], - bus_ActivePowerTimeSeriesParameter__PowerLoad[t,bn],bus_ActivePowerVariable__HVDC[t,bn], - bus_ActivePowerBalance__ACBus[t,bn], bus_StateEstimationInjections__ACBus[t,bn], gsf, - bus_ActivePowerBalance__ACBus[t,bn]*gsf,bus_StateEstimationInjections__ACBus[t,bn]*gsf)) - end - end - - bus_df[!,"buscheck"]=bus_df[!,"ActivePowerBalance__ACBus"]-bus_df[!,"ThermalStandard"]/100-bus_df[!,"Renewable"]/100-bus_df[!,"Hydro"]/100-bus_df[!,"PowerLoad"]/100 - println("bus check ActivePowerBalance__ACBus<>ThermalStandard/100-PowerLoad/100 ,",filter([:t,:buscheck] => (t,buscheck)-> (t>=1) && (abs(buscheck)>0.000001), bus_df)) - #println(filter([:t,:bus] => (t,bus)-> (t>=1) && (bus==203), bus_df)) - return(bus_df) -end - -function buildsubsystem1(sys, area_region_dict, selected_line, monitoredline_subsys=[]) - subsys=unique(values(area_region_dict)) - - for b in PSY.get_components(PSY.AreaInterchange, sys) - println(b); - for v in subsys - add_component_to_subsystem!(sys, v, b) - end - end - - for b in PSY.get_components(PSY.Area, sys) - region=area_region_dict[get_name(b)] - PSY.set_ext!(b, Dict("subregion" => Set([region]))) - add_component_to_subsystem!(sys, region, b) - end - for b in PSY.get_components(PSY.StaticInjection, sys) - region=area_region_dict[get_name(get_area(get_bus(b)))] - PSY.set_ext!(b, Dict("subregion" => Set([region]))) - add_component_to_subsystem!(sys, region, b) - end - for b in PSY.get_components(PSY.Bus, sys) - region=area_region_dict[get_name(get_area(b))] - PSY.set_ext!(b, Dict("subregion" => Set([region]))) - add_component_to_subsystem!(sys, region, b) - end - - if length(selected_line)>0 - for b in selected_line - l=PSY.get_component(ACBranch, sys,b) - for v in subsys - PSY.set_ext!(l, Dict("subregion" => Set([v]))) - add_component_to_subsystem!(sys, v, l) - end - end - end - - if length(monitoredline_subsys) >0 - for (k,s) in monitoredline_subsys - l=PSY.get_component(ACBranch, sys,k) - for v in s - PSY.set_ext!(l, Dict("subregion" => Set([v]))) - add_component_to_subsystem!(sys, v, l) - end - end - end - - for dc in get_components(TwoTerminalHVDCLine, sys) - tbus=get_to(get_arc(dc)); fbus=get_from(get_arc(dc)) - tregion=area_region_dict[get_name(get_area(tbus))] - fregion=area_region_dict[get_name(get_area(fbus))] - PSY.set_ext!(dc, Dict("subregion" => Set([tregion]))) - add_component_to_subsystem!(sys, tregion, dc) - - #Option 1, add HVDC also to fregion. Can cause double counting of fixed and dispatchable HVDC MW - #if fregion!=tregion - # PSY.set_ext!(dc, Dict("subregion" => Set([fregion]))) - # add_component_to_subsystem!(sys, fregion, dc) - #end - - #Option 2, add fbus to tregion - #if fregion!=tregion - # PSY.set_ext!(fbus, Dict("subregion" => Set([tregion]))) - # remove_component_from_subsystem!(sys, fregion, fbus) - # add_component_to_subsystem!(sys, tregion, fbus) - #end - end -end - -# EI -#= -include("EI_model.jl") -=# - -#RTS -sys = build_system(PSISystems, "modified_RTS_GMLC_DA_sys") - -selected_line=["CA-1", "CB-1", "AB1"] -ln="A28" -limit=1.0 #2.0 - -standardload=0 -exchange_1_2 = AreaInterchange(; - name="1_2", available=true, active_power_flow=0.0, from_area=get_component(Area, sys, "1"), to_area=get_component(Area, sys, "2"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys, exchange_1_2) - -exchange_1_3 = AreaInterchange(; - name="1_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys, "1"), to_area=get_component(Area, sys, "3"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys, exchange_1_3) - -exchange_2_3 = AreaInterchange(; - name="2_3", available=true, active_power_flow=0.0, from_area=get_component(Area, sys, "2"), to_area=get_component(Area, sys, "3"), - flow_limits=(from_to=99999, to_from=99999), -) -add_component!(sys, exchange_2_3) - -mipgap = 0.00001 - -#= -optimizer = optimizer_with_attributes( - Gurobi.Optimizer, - "Threads" => (length(Sys.cpu_info()) ÷ 2) - 1, - "MIPGap" => mipgap, - "TimeLimit" => 3000, -) -=# - -ENV["XPRESSDIR"] = "C:\\xpressmp" -ENV["XPAUTH_PATH"] = "C:\\xpressmp\\bin" - -optimizer = optimizer_with_attributes( - Xpress.Optimizer, - #"Threads" => (length(Sys.cpu_info()) ÷ 2) - 1, - #"MIPGap" => mipgap, - #"TimeLimit" => 3000, -) -#= -optimizer = optimizer_with_attributes( - HiGHS.Optimizer, -) -=# -area_dict=Dict("1" => "1", "2" => "2", "3" =>"3") - -CF="NS3-0" -NS=3 -netmodels=["AreaPTDFPowerModel","AreaPTDFPowerModel","AreaPTDFPowerModel"] -copperplates=[1,0,0] -NTS=[24,24,1] -area_region_dicts=[Dict(), - Dict(), - Dict()] - - -CF="NS3-1" -NS=3 -netmodels=["AreaPTDFPowerModel","SplitAreaPTDFPowerModel","SplitAreaPTDFPowerModel"] -copperplates=[1,0,0] -NTS=[24,24,1] -area_region_dicts=[Dict(), - Dict("1" => "a", "2" => "b", "3" =>"c"), - Dict("1" => "a", "2" => "b", "3" =>"c")] - -monitoredline_subsys=[Dict(),Dict(ln => ["a"]),Dict(ln => ["a"])] -#= -CF="NS3-2" -NS=3 -netmodels=["AreaPTDFPowerModel","SplitAreaPTDFPowerModel","SplitAreaPTDFPowerModel"] -copperplates=[1,0,0] -NTS=[24,24,1] -area_region_dicts=[Dict(), - Dict("1" => "a", "2" => "b", "3" =>"c"), - Dict("1" => "a", "2" => "b", "3" =>"c")] -monitoredline_subsys=[Dict(),Dict(ln => ["a","b","c"]),Dict(ln => ["a","b","c"])] -=# -#= -CF="NS3-3" -NS=3 -netmodels=["AreaPTDFPowerModel","AreaPTDFPowerModel","SplitAreaPTDFPowerModel"] -copperplates=[1,0,0] -NTS=[24,24,1] -area_region_dicts=[Dict(), - Dict(), - Dict("1" => "a", "2" => "b", "3" =>"b")] -monitoredline_subsys=[Dict(),Dict(),Dict(ln => ["a","b"])] -=# -#= -NS=2 -netmodels=["AreaPTDFPowerModel","SplitAreaPTDFPowerModel"] -copperplates=[1,0] -NTS=[24,24] -area_region_dicts=[Dict(), - Dict("1" => "a", "2" => "b", "3" =>"c")] -=# - -syss=[sys] -templates=[] -ptdf = VirtualPTDF(sys; tol = 1e-4, max_cache_size = 10000) - -l = PSY.get_component(ACBranch, sys, ln) -set_rating!(l,limit) -PSY.get_component(ACBranch, sys, ln) - -monitoredlined_line=[ln] - -for b in monitoredlined_line - line = PSY.get_component(Line, sys, b) - PSY.convert_component!(sys, line, MonitoredLine) -end - -for i in 1:NS - NT=NTS[i] - if i>1 - sys2=deepcopy(sys) - push!(syss,sys2) - end - transform_single_time_series!(syss[i], Hour(NT), Hour(NT)) - - area_region_dict=area_region_dicts[i] - if netmodels[i]=="SplitAreaPTDFPowerModel" - subsys=unique(values(area_region_dict)) - for v in subsys - println("add sys",i," subsystem,",v) - add_subsystem!(sys2, v) - end - template = - MultiProblemTemplate(NetworkModel(SplitAreaPTDFPowerModel; use_slacks=true,PTDF_matrix = ptdf,), subsys) - else - template = ProblemTemplate(NetworkModel(AreaPTDFPowerModel; use_slacks = true, PTDF_matrix = ptdf,)) - end - - push!(templates,template) - - if standardload==1 - PSI.set_device_model!(template, StandardLoad , StaticPowerLoad) - else - PSI.set_device_model!(template, PowerLoad, StaticPowerLoad) - end - - PSI.set_device_model!(template, RenewableDispatch, RenewableFullDispatch) - PSI.set_device_model!(template, DeviceModel(HydroDispatch, HPS.HydroDispatchReservoirBudget, - time_series_names = Dict{Any, String}( - PSI.ActivePowerTimeSeriesParameter => "max_active_power", - HPS.EnergyBudgetTimeSeriesParameter => "hydro_budget",) - ) - ) - #PSI.set_device_model!(template, TwoTerminalHVDCLine, HVDCTwoTerminalLossless) - - set_device_model!(template, DeviceModel(MonitoredLine, StaticBranchUnbounded, use_slacks = true)) - - if NT>1 - PSI.set_device_model!(template, ThermalStandard, ThermalBasicUnitCommitment) - PSI.set_device_model!(template, ThermalMultiStart, ThermalBasicUnitCommitment) - PSI.set_device_model!(template, AreaInterchange, StaticBranch) - else - PSI.set_device_model!(template, ThermalStandard, ThermalBasicDispatch) - PSI.set_device_model!(template, AreaInterchange, StaticBranchUnbounded) - end - - if copperplates[i]==0 - set_device_model!(template, DeviceModel(MonitoredLine, StaticBranch, use_slacks = true)) - end - - set_device_model!(template, - DeviceModel(Line, StaticBranchUnbounded; attributes=Dict("filter_function" => x -> get_name(x) in selected_line),)) - - subsys=unique(values(area_region_dict)) - - if length(subsys)>1 - #buildsubsystem1(sys2, area_region_dict, union(selected_line,monitoredlined_line)) - buildsubsystem1(sys2, area_region_dict, selected_line,monitoredline_subsys[i]) - end -end - -#include("build_model_sim_run.jl") - -dm=[] -for i in 1:NS - if netmodels[i]=="SplitAreaPTDFPowerModel" - push!(dm, DecisionModel(MultiRegionProblem, templates[i], syss[i], name="UC"*string(i),optimizer=optimizer, - store_variable_names=true,initialize_model=false,optimizer_solve_log_print=false, - direct_mode_optimizer=true,check_numerical_bounds=false, - calculate_conflict=true,rebuild_model=false,system_to_file = true)) - else - push!(dm, DecisionModel(templates[i],syss[i], name="UC"*string(i), optimizer=optimizer, - store_variable_names=true,initialize_model=false,optimizer_solve_log_print=false, - direct_mode_optimizer=true,check_numerical_bounds=false, - calculate_conflict=true,rebuild_model=false, system_to_file = true)) - end -end - -if NS==2 - models = PSI.SimulationModels(decision_models=[dm[1],dm[2]]) -else - models = PSI.SimulationModels(decision_models=[dm[1],dm[2],dm[3]]) -end - -uc_simulation_ffs=[] -feedforwards_dict=Dict() -for i in 1:NS-1 - uc_simulation_ff = Vector{PowerSimulations.AbstractAffectFeedforward}() -#feed forward area interchange - FVFF_area_interchange = FixValueFeedforward(;component_type=AreaInterchange,source=FlowActivePowerVariable,affected_values=[FlowActivePowerVariable],) - push!(uc_simulation_ff, FVFF_area_interchange) - #feed forward HVDC (doesn't seem to work) - #FVFF_hvdc = FixValueFeedforward(;component_type=TwoTerminalHVDCLine,source=FlowActivePowerVariable,affected_values=[FlowActivePowerVariable],) - #push!(uc_simulation_ff, FVFF_hvdc) - - if NTS[i+1]==1 - SCFF = SemiContinuousFeedforward(; - component_type=ThermalStandard, source=OnVariable, affected_values=[ActivePowerVariable],) - push!(uc_simulation_ff, SCFF) - #LBFF = FixValueFeedforward(;component_type=ThermalStandard,source=OnVariable, affected_values=[OnVariable],) - #push!(uc_simulation_ff, LBFF) - end - push!(uc_simulation_ffs,uc_simulation_ff) - feedforwards_dict["UC"*string(i+1)]=uc_simulation_ff -end - -sequence = SimulationSequence(; - models=models, - feedforwards=feedforwards_dict, #Dict("UC2" => uc_simulation_ff[1], "UC3" => uc_simulation_ff[2],), - ini_cond_chronology=InterProblemChronology(), -); - -# Specify the simulation setup -# Here we specify the simulation name, the initial/start time, number of steps/days to execute, and the simulation folder. -sim = PSI.Simulation( - name="ntps_3stageDA_DASplit_RTSplit", - steps=1, - models=models, - sequence=sequence, - simulation_folder=mktempdir(), #".", # -) - -println("before PSI.build") -PSI.build!(sim, serialize=false) -println("after PSI.build") -PSI.execute!(sim, enable_progress_bar=false) - -results = SimulationResults(sim,ignore_status = true) - -# check results and calculate flows in different optimization models and the actual flow called calculated_seflow -#include("final_check_results.jl") -results_uc=[]; uc_areainterchange=[];uc_monitoredline=[]; -bus_df_uc=[];area_df=[];areaflow_df=[] -tm=Array(1:NTS[1]) -af=DataFrames.DataFrame(;tm) - -for i in 1:NS - push!(results_uc,get_decision_problem_results(results, "UC"*string(i))) - push!(uc_areainterchange,read_realized_variable(results_uc[i], "FlowActivePowerVariable__AreaInterchange")) - push!(uc_monitoredline,read_realized_variable(results_uc[i], "FlowActivePowerVariable__MonitoredLine")) - - if netmodels[i]=="SplitAreaPTDFPowerModel" - push!(bus_df_uc,read_bus_df(results_uc[i], ln,1,standardload)) - else - push!(bus_df_uc,read_bus_df(results_uc[i], ln,0,standardload)) - end - - bus_df_uc[i][!,"buscheck"]=bus_df_uc[i][!,"ActivePowerBalance__ACBus"]-bus_df_uc[i][!,"HVDC"]/100-bus_df_uc[i][!,"ThermalStandard"]/100-bus_df_uc[i][!,"Renewable"]/100-bus_df_uc[i][!,"Hydro"]/100-bus_df_uc[i][!,"PowerLoad"]/100 - println("UC0 bus check ActivePowerBalance__ACBus<>Gen/100-PowerLoad/100 ,",filter([:t,:buscheck] => (t,buscheck)-> (t>=1) && (abs(buscheck)>0.000001), bus_df_uc[i])) - # if some bus has non-zero buscheck value, then check the bus. Some MW may not be added to power balance correctly. - #println(filter([:t,:bus] => (t,bus)-> (t==1) && (bus==113 || bus==316), bus_df_uc0)) - -###### area MW check ######### -#area level net Gen, load and ActivePowerBalance__ACBus_sum check - push!(area_df,combine(groupby(bus_df_uc[i], [:t, :area]), [:ThermalStandard, :Renewable, :Hydro, :PowerLoad, :ActivePowerBalance__ACBus, :StateEstimationInjections__ACBus] .=> sum)) - area_df[i][!,"areacheck"]=area_df[i][!,"ActivePowerBalance__ACBus_sum"]-area_df[i][!,"ThermalStandard_sum"]/100-area_df[i][!,"Renewable_sum"]/100-area_df[i][!,"Hydro_sum"]/100-area_df[i][!,"PowerLoad_sum"]/100 - println("i,area_df check,",sum(area_df[i][!,"areacheck"])) #should be close to 0 - - area_df[i][!,"TotalGen"]=area_df[i][!,"ThermalStandard_sum"]+area_df[i][!,"Renewable_sum"]+area_df[i][!,"Hydro_sum"] - area_df[i][!,"NetInterchange"]=area_df[i][!,"TotalGen"]+area_df[i][!,"PowerLoad_sum"] - area_df[i][!,"InterchangeCheck"]=area_df[i][!,"NetInterchange"]-100*area_df[i][!,"ActivePowerBalance__ACBus_sum"] - println(area_df[i][:,["t","area","ActivePowerBalance__ACBus_sum","NetInterchange","InterchangeCheck"]]) - -####### area flow check ######### -#area flow contribution by area and interval - push!(areaflow_df, combine(groupby(bus_df_uc[i], [:t, :area]), [:flowcontribution, :loopflowcontribution] .=> sum)) - - if length(area_region_dicts[i])==0 - #j=findfirst(!=(0), length.(area_region_dicts)) - #area_region_dict=area_region_dicts[j] - area_region_dict=area_dict - else - area_region_dict=area_region_dicts[i] - end - - subsys=unique(values(area_region_dict)) - - calculated_flow_subsys=Dict() - calculated_loopflow_subsys=Dict() - NT=NTS[1] - for s in subsys - #calculated_flow_subsys[s]=zeros(NT) - #calculated_loopflow_subsys[s]=zeros(NT) - af[!,"uc"*string(i)*"_flow_subsys_"*s]=zeros(NT) - af[!,"uc"*string(i)*"_loopflow_subsys_"*s]=zeros(NT) - end - - if netmodels[i]!="SplitAreaPTDFPowerModel" - for r in keys(area_region_dict) - s=area_region_dict[r] - name="uc"*string(i)*"_flow_subsys_"*s - af[!,name]=af[!,name]+filter([:t,:area]=>(t,area)->(area==r),areaflow_df[i])[!,:flowcontribution_sum] - #calculated_flow_subsys[s]=calculated_flow_subsys[s]+ filter([:t,:area]=>(t,area)->(area==r),areaflow_df[i])[!,:flowcontribution_sum] - end - #calculated_flow_uc0=zeros(NT) - #for s in subsys - # calculated_flow_uc0=calculated_flow_uc0+calculated_flow_uc0_subsys[s] - #end - af[!,"uc"*string(i)*"_flow"]= zeros(NT) #calculated_flow_uc0 - - #for (k,v) in calculated_flow_uc0_subsys - # name="uc"*string(i)*"_flow_subsys"*k - # af[!,name]=calculated_flow_uc0_subsys[k] - for s in subsys - af[!,"uc"*string(i)*"_flow"]=af[!,"uc"*string(i)*"_flow"]+af[!,"uc"*string(i)*"_flow_subsys_"*s]#calculated_flow_uc0_subsys[k] - end - else - #for r in keys(area_region_dict) - # s=area_region_dict[r] - # calculated_flow_subsys[s]=calculated_flow_subsys[s]+ filter([:t,:area]=>(t,area)->(area==r),areaflow_df[i])[!,:flowcontribution_sum] - # calculated_loopflow_subsys[s]=calculated_loopflow_subsys[s]+ filter([:t,:area]=>(t,area)->(area==r),areaflow_df[i])[!,:loopflowcontribution_sum] - #end - - for r in keys(area_region_dict) - s=area_region_dict[r] - name="uc"*string(i)*"_flow_subsys_"*s - af[!,name]=af[!,name]+filter([:t,:area]=>(t,area)->(area==r),areaflow_df[i])[!,:flowcontribution_sum] - #calculated_flow_subsys[s]=calculated_flow_subsys[s]+ filter([:t,:area]=>(t,area)->(area==r),areaflow_df[i])[!,:flowcontribution_sum] - name="uc"*string(i)*"_loopflow_subsys_"*s - af[!,name]=af[!,name]+filter([:t,:area]=>(t,area)->(area==r),areaflow_df[i])[!,:loopflowcontribution_sum] - end - - calculated_flow_uc2=Dict() - #calculated_seflow_uc2=zeros(NT) - af[!,"uc"*string(i)*"_seflow"]=zeros(NT) - for s in subsys - #calculated_flow_uc2[s]=zeros(NT) - #calculated_seflow_uc2=calculated_seflow_uc2+calculated_flow_subsys[s] - af[!,"uc"*string(i)*"_flow_"*s]=zeros(NT) - af[!,"uc"*string(i)*"_seflow"]=af[!,"uc"*string(i)*"_seflow"]+af[!,"uc"*string(i)*"_flow_subsys_"*s]#calculated_flow_subsys[s] - for s1 in subsys - if s==s1 - #calculated_flow_uc2[s]=calculated_flow_uc2[s]+calculated_flow_subsys[s1] - name="uc"*string(i)*"_flow_"*s - af[!,name]=af[!,name]+af[!,"uc"*string(i)*"_flow_subsys_"*s1]#calculated_flow_subsys[s1] - else - #calculated_flow_uc2[s]=calculated_flow_uc2[s]+calculated_loopflow_subsys[s1] - name="uc"*string(i)*"_flow_"*s - af[!,name]=af[!,name]+af[!,"uc"*string(i)*"_loopflow_subsys_"*s1]#calculated_loopflow_subsys[s1] - end - end - end - end -end - - -CSV.write("af_"*CF*".csv",af) - -#= -uc0=sim.models.decision_models[1].internal.container -uc2=sim.models.decision_models[2].internal.container -sum(value.(uc0.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:])-af[!,"uc1_flow"]) -sum(value.(uc2.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:])-af[!,"uc2_flow"]) - -uc2a=sim.models.decision_models[2].internal.container.subproblems["a"] -uc2b=sim.models.decision_models[2].internal.container.subproblems["b"] -uc2c=sim.models.decision_models[2].internal.container.subproblems["c"] -sum(value.(uc0.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:])-af[!,"uc1_flow"]) -sum(value.(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:])-af[!,"uc2_flow_a"]) -sum(value.(uc2b.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:])-af[!,"uc2_flow_b"]) -sum(value.(uc2c.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:])-af[!,"uc2_flow_c"]) - -uc3a=sim.models.decision_models[3].internal.container.subproblems["a"] -uc3b=sim.models.decision_models[3].internal.container.subproblems["b"] -sum(value.(uc3a.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:])-af[!,"uc3_flow_a"]) -sum(value.(uc3b.variables[InfrastructureSystems.Optimization.VariableKey{FlowActivePowerVariable, MonitoredLine}("")]["A28",:])-af[!,"uc3_flow_b"]) - -uc2a.constraints[InfrastructureSystems.Optimization.ConstraintKey{NetworkFlowConstraint, Line}("")] -uc2a.constraints[InfrastructureSystems.Optimization.ConstraintKey{RateLimitConstraint, MonitoredLine}("")] - -uc2a.constraints[InfrastructureSystems.Optimization.ConstraintKey{CopperPlateBalanceConstraint, Area}("")] - -objective_value(uc2a.JuMPmodel)+objective_value(uc2b.JuMPmodel)+objective_value(uc2c.JuMPmodel)-objective_value(uc0.JuMPmodel) - -objterms(uc2,"obj_uc2a_"*CF) -write_coeff(uc2,"A28",1,"A28_uc2a_"*CF,1) - -objterms(uc2a,"obj_uc2a_fix_"*CF) -write_coeff(uc2a,"A28",1,"A28_uc2a_fix_"*CF,1) - - -fix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,RenewableDispatch}("")]["122_WIND_1",1],1.8596521707224; force=true) -fix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["107_CC_1",1],1.71962875337936; force=true) -fix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["123_STEAM_3",1],2.14337921320769; force=true) -fix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["123_CT_5",1],0.22; force=true) -fix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["121_NUCLEAR_1",1],4; force=true) - -fix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["115_STEAM_3",1],0; force=true) -fix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["116_STEAM_1",1],0; force=true) -fix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["118_CC_1",1],0; force=true) - -fix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["123_CT_1",1],0; force=true) -fix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["123_CT_4",1],0; force=true) - -unfix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["115_STEAM_3",1]) -unfix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["116_STEAM_1",1]) -unfix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["118_CC_1",1]) -unfix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["123_CT_1",1]) -unfix(uc2a.variables[InfrastructureSystems.Optimization.VariableKey{ActivePowerVariable,ThermalStandard}("")]["123_CT_4",1]) - - -con2a=uc2a.constraints[InfrastructureSystems.Optimization.ConstraintKey{CopperPlateBalanceConstraint, Area}("")]["1",1] -write_cons_coeff(uc2a,con2a,"pb_1_1_fix_"*CF) - -PSI.compute_conflict!(uc2a) - -con2=uc2.constraints[InfrastructureSystems.Optimization.ConstraintKey{CopperPlateBalanceConstraint, Area}("")]["1",1] -write_cons_coeff(uc2,con2,"pb_1_1_"*CF) - - -=# \ No newline at end of file