From c30be18a7bcb006fa8c6d249bef9cde02aa2197d Mon Sep 17 00:00:00 2001 From: EvilDrVlad Date: Mon, 22 Jan 2024 15:03:44 +0100 Subject: [PATCH] Example merging Merging the examples to the lvdc folder to contain examples from: - Mathematical formulation and numerical treatment based on transition frequency densities and quadrature methods for non-homogeneous semi-Markov processes by Moura and Droguett (2009) - A semi-Markovian approach to evaluate the availability of low voltage direct current systems with integrated battery storage - Emmers, Van Acker and Driesen (2024) --- .../Pluto.jl_notebook/LVDC1.jl | 80 ++++++++++--------- .../LVDC_Battery_systems/data/std_DCDC_40.csv | 0 .../LVDC_Battery_systems/elements/CAP_L1.jl | 0 .../LVDC_Battery_systems/elements/CAP_L2.jl | 0 .../LVDC_Battery_systems/elements/CAP_ac.jl | 0 .../LVDC_Battery_systems/elements/CAP_dc.jl | 0 .../LVDC_Battery_systems/elements/acdc.jl | 0 .../LVDC_Battery_systems/elements/battery.jl | 0 .../elements/dcdc copy.jl | 0 .../LVDC_Battery_systems/elements/dcdc.jl | 0 .../LVDC_Battery_systems/elements/inv1.jl | 0 .../LVDC_Battery_systems/elements/inv2.jl | 0 .../LVDC_Battery_systems/elements/test.jl | 0 .../LVDC_Battery_systems/elements_m/CAP_L1.jl | 0 .../LVDC_Battery_systems/elements_m/CAP_L2.jl | 0 .../LVDC_Battery_systems/elements_m/CAP_ac.jl | 0 .../LVDC_Battery_systems/elements_m/CAP_dc.jl | 0 .../LVDC_Battery_systems/elements_m/acdc.jl | 0 .../elements_m/battery.jl | 0 .../LVDC_Battery_systems/elements_m/dcdc.jl | 0 .../LVDC_Battery_systems/elements_m/inv1.jl | 0 .../LVDC_Battery_systems/elements_m/inv2.jl | 0 .../networks/LVDC_grid_sm.jl | 25 +++--- examples/lvdc/elements/ac.jl | 27 ------- examples/lvdc/elements/acdc.jl | 27 ------- examples/lvdc/elements/battery.jl | 27 ------- examples/lvdc/elements/dcdc.jl | 27 ------- examples/lvdc/elements/fe.jl | 27 ------- examples/lvdc/elements/inv.jl | 27 ------- examples/lvdc/elements/switch.jl | 27 ------- examples/lvdc/elements/transfo.jl | 27 ------- examples/lvdc/networks/AC_case_1.jl | 43 ---------- examples/lvdc/networks/AC_case_2.jl | 44 ---------- examples/lvdc/networks/AC_case_4.jl | 52 ------------ examples/lvdc/networks/lvdc.jl | 44 ---------- .../semi_markov}/optical-monitoring-system.jl | 0 .../semi_markov}/semi-analytical.jl | 0 examples/semi-markov/lvdc_resilience.jl | 74 ----------------- examples/semi-markov/single-feeder.jl | 69 ---------------- examples/semi-markov/validation_test.jl | 70 ---------------- 40 files changed, 56 insertions(+), 661 deletions(-) rename examples/{ => lvdc}/LVDC_Battery_systems/Pluto.jl_notebook/LVDC1.jl (98%) rename examples/{ => lvdc}/LVDC_Battery_systems/data/std_DCDC_40.csv (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements/CAP_L1.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements/CAP_L2.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements/CAP_ac.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements/CAP_dc.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements/acdc.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements/battery.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements/dcdc copy.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements/dcdc.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements/inv1.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements/inv2.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements/test.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements_m/CAP_L1.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements_m/CAP_L2.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements_m/CAP_ac.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements_m/CAP_dc.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements_m/acdc.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements_m/battery.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements_m/dcdc.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements_m/inv1.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/elements_m/inv2.jl (100%) rename examples/{ => lvdc}/LVDC_Battery_systems/networks/LVDC_grid_sm.jl (74%) delete mode 100644 examples/lvdc/elements/ac.jl delete mode 100644 examples/lvdc/elements/acdc.jl delete mode 100644 examples/lvdc/elements/battery.jl delete mode 100644 examples/lvdc/elements/dcdc.jl delete mode 100644 examples/lvdc/elements/fe.jl delete mode 100644 examples/lvdc/elements/inv.jl delete mode 100644 examples/lvdc/elements/switch.jl delete mode 100644 examples/lvdc/elements/transfo.jl delete mode 100644 examples/lvdc/networks/AC_case_1.jl delete mode 100644 examples/lvdc/networks/AC_case_2.jl delete mode 100644 examples/lvdc/networks/AC_case_4.jl delete mode 100644 examples/lvdc/networks/lvdc.jl rename examples/{semi-markov => lvdc/semi_markov}/optical-monitoring-system.jl (100%) rename examples/{semi-markov => lvdc/semi_markov}/semi-analytical.jl (100%) delete mode 100644 examples/semi-markov/lvdc_resilience.jl delete mode 100644 examples/semi-markov/single-feeder.jl delete mode 100644 examples/semi-markov/validation_test.jl diff --git a/examples/LVDC_Battery_systems/Pluto.jl_notebook/LVDC1.jl b/examples/lvdc/LVDC_Battery_systems/Pluto.jl_notebook/LVDC1.jl similarity index 98% rename from examples/LVDC_Battery_systems/Pluto.jl_notebook/LVDC1.jl rename to examples/lvdc/LVDC_Battery_systems/Pluto.jl_notebook/LVDC1.jl index 80c76be..9e0729d 100644 --- a/examples/LVDC_Battery_systems/Pluto.jl_notebook/LVDC1.jl +++ b/examples/lvdc/LVDC_Battery_systems/Pluto.jl_notebook/LVDC1.jl @@ -54,55 +54,55 @@ begin end # ╔═╡ 73890b8b-c585-49bb-87f1-92e47f8da3a1 -stdᵃᶜᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements/acdc.jl")); +stdᵃᶜᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/acdc.jl")); # ╔═╡ 8b4f434b-d1f3-4217-b439-c0c6ef547214 -stdⁱⁿᵛ¹ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements/inv1.jl")); +stdⁱⁿᵛ¹ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/inv1.jl")); # ╔═╡ 7dfa474c-fb70-4d82-b2fa-26cfd71e6f56 -stdⁱⁿᵛ² = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements/inv2.jl")); +stdⁱⁿᵛ² = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/inv2.jl")); # ╔═╡ e9a896df-3443-48c6-a786-21538604ed43 -stdᶜᵃᵖᵃᶜ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements/CAP_ac.jl")); +stdᶜᵃᵖᵃᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/CAP_ac.jl")); # ╔═╡ cb5ae9ee-a1d4-42d0-add1-81a7249bfba5 -stdᶜᵃᵖᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements/CAP_dc.jl")); +stdᶜᵃᵖᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/CAP_dc.jl")); # ╔═╡ c54d1e5a-ab14-4179-9e1d-a193c522ae52 -stdᶜᵃᵖᴸ¹ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements/CAP_L1.jl")); +stdᶜᵃᵖᴸ¹ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/CAP_L1.jl")); # ╔═╡ 1e093c6c-2f2f-4fd6-9ddc-bec451728eb2 -stdᶜᵃᵖᴸ² = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements/CAP_L2.jl")); +stdᶜᵃᵖᴸ² = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/CAP_L2.jl")); # ╔═╡ c2dd4e66-ddb3-4928-86fb-e69ce603bfae -stdᵇᵃᵗ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements/battery.jl")); +stdᵇᵃᵗ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/battery.jl")); # ╔═╡ 1d4b223e-af9e-49f2-a3a8-f97da6fe4796 -stdmᵃᶜᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements_m/acdc.jl")); +stdmᵃᶜᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements_m/acdc.jl")); # ╔═╡ 46ccc9eb-5a5a-49bc-8792-9dc98c96a47a -stdmᵈᶜᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements_m/dcdc.jl")); +stdmᵈᶜᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements_m/dcdc.jl")); # ╔═╡ 54ad935a-f5ab-4dde-bf33-b349c17efdca -stdmⁱⁿᵛ¹ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements_m/inv1.jl")); +stdmⁱⁿᵛ¹ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements_m/inv1.jl")); # ╔═╡ a58db239-8ca1-4c0c-b97a-6be7ae4463b1 -stdmⁱⁿᵛ² = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements_m/inv2.jl")); +stdmⁱⁿᵛ² = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements_m/inv2.jl")); # ╔═╡ d394788d-8181-49ac-9b72-7ee8f5572b43 -stdmᶜᵃᵖᵃᶜ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements_m/CAP_ac.jl")); +stdmᶜᵃᵖᵃᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements_m/CAP_ac.jl")); # ╔═╡ 2b2736b4-4e3d-4fb0-b447-49e38b826e4a -stdmᶜᵃᵖᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements_m/CAP_dc.jl")); +stdmᶜᵃᵖᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements_m/CAP_dc.jl")); # ╔═╡ c73cbbde-b4e9-44c6-ab24-dade0407706e -stdmᶜᵃᵖᴸ¹ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements_m/CAP_L1.jl")); +stdmᶜᵃᵖᴸ¹ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements_m/CAP_L1.jl")); # ╔═╡ 4b852660-2472-452f-8c8b-5d959f9c56a8 -stdmᶜᵃᵖᴸ² = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements_m/CAP_L2.jl")); +stdmᶜᵃᵖᴸ² = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements_m/CAP_L2.jl")); # ╔═╡ 8331f4c9-9d5d-486a-9f24-8eece99a0596 -stdmᵇᵃᵗ = include(joinpath(_MSS.BASE_DIR,"examples/LVDC_Battery_systems/elements_m/battery.jl")); +stdmᵇᵃᵗ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements_m/battery.jl")); # ╔═╡ 6998b663-a5d9-43f9-ad57-487d7754720f md""" @@ -545,7 +545,7 @@ Unitful = "~1.19.0" PLUTO_MANIFEST_TOML_CONTENTS = """ # This file is machine-generated - editing it directly is not advised -julia_version = "1.9.2" +julia_version = "1.10.0" manifest_format = "2.0" project_hash = "78b74ccb9b44cd4207f296d24703a4c6da714ff2" @@ -716,7 +716,7 @@ version = "3.47.0" [[deps.CompilerSupportLibraries_jll]] deps = ["Artifacts", "Libdl"] uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" -version = "1.0.5+0" +version = "1.0.5+1" [[deps.ConcurrentUtilities]] deps = ["Serialization", "Sockets"] @@ -1221,21 +1221,26 @@ version = "0.1.8" [[deps.LibCURL]] deps = ["LibCURL_jll", "MozillaCACerts_jll"] uuid = "b27032c2-a3e7-50c8-80cd-2d36dbcbfd21" -version = "0.6.3" +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 = "7.84.0+0" +version = "8.4.0+0" [[deps.LibGit2]] -deps = ["Base64", "NetworkOptions", "Printf", "SHA"] +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.10.2+0" +version = "1.11.0+1" [[deps.Libdl]] uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" @@ -1364,7 +1369,7 @@ version = "1.1.9" [[deps.MbedTLS_jll]] deps = ["Artifacts", "Libdl"] uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" -version = "2.28.2+0" +version = "2.28.2+1" [[deps.Measurements]] deps = ["Calculus", "LinearAlgebra", "Printf", "Requires"] @@ -1402,7 +1407,7 @@ uuid = "a63ad114-7e13-5084-954f-fe012c677804" [[deps.MozillaCACerts_jll]] uuid = "14a3606d-f60d-562e-9121-12d972cd8159" -version = "2022.10.11" +version = "2023.1.10" [[deps.MuladdMacro]] git-tree-sha1 = "cac9cc5499c25554cba55cd3c30543cff5ca4fab" @@ -1467,12 +1472,12 @@ version = "1.3.5+1" [[deps.OpenBLAS_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"] uuid = "4536629a-c528-5b80-bd46-f80d51c5b363" -version = "0.3.21+4" +version = "0.3.23+2" [[deps.OpenLibm_jll]] deps = ["Artifacts", "Libdl"] uuid = "05823500-19ac-5b8b-9628-191a04bc5112" -version = "0.8.1+0" +version = "0.8.1+2" [[deps.OpenSSL]] deps = ["BitFlags", "Dates", "MozillaCACerts_jll", "OpenSSL_jll", "Sockets"] @@ -1512,7 +1517,7 @@ version = "5.71.2" [[deps.PCRE2_jll]] deps = ["Artifacts", "Libdl"] uuid = "efcefdf7-47ab-520b-bdef-62a2eaa19f15" -version = "10.42.0+0" +version = "10.42.0+1" [[deps.PDMats]] deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse"] @@ -1546,7 +1551,7 @@ version = "0.42.2+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.9.2" +version = "1.10.0" [[deps.PlotThemes]] deps = ["PlotUtils", "Statistics"] @@ -1649,7 +1654,7 @@ deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"] uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" [[deps.Random]] -deps = ["SHA", "Serialization"] +deps = ["SHA"] uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" [[deps.RecipesBase]] @@ -1798,6 +1803,7 @@ version = "1.2.0" [[deps.SparseArrays]] deps = ["Libdl", "LinearAlgebra", "Random", "Serialization", "SuiteSparse_jll"] uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" +version = "1.10.0" [[deps.SparseDiffTools]] deps = ["Adapt", "ArrayInterface", "Compat", "DataStructures", "FiniteDiff", "ForwardDiff", "Graphs", "LinearAlgebra", "Requires", "SparseArrays", "StaticArrays", "VertexSafeGraphs"] @@ -1840,7 +1846,7 @@ version = "1.4.2" [[deps.Statistics]] deps = ["LinearAlgebra", "SparseArrays"] uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" -version = "1.9.0" +version = "1.10.0" [[deps.StatsAPI]] deps = ["LinearAlgebra"] @@ -1879,9 +1885,9 @@ deps = ["Libdl", "LinearAlgebra", "Serialization", "SparseArrays"] uuid = "4607b0f0-06f3-5cda-b6b1-a6196a1729e9" [[deps.SuiteSparse_jll]] -deps = ["Artifacts", "Libdl", "Pkg", "libblastrampoline_jll"] +deps = ["Artifacts", "Libdl", "libblastrampoline_jll"] uuid = "bea87d4a-7f5b-5778-9afe-8cc45184846c" -version = "5.10.1+6" +version = "7.2.1+1" [[deps.TOML]] deps = ["Dates"] @@ -2195,7 +2201,7 @@ version = "1.5.0+0" [[deps.Zlib_jll]] deps = ["Libdl"] uuid = "83775a58-1f1d-513f-b197-d71354ab007a" -version = "1.2.13+0" +version = "1.2.13+1" [[deps.Zstd_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] @@ -2242,7 +2248,7 @@ version = "0.15.1+0" [[deps.libblastrampoline_jll]] deps = ["Artifacts", "Libdl"] uuid = "8e850b90-86db-534c-a0d3-1478176c7d93" -version = "5.8.0+0" +version = "5.8.0+1" [[deps.libevdev_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] @@ -2283,12 +2289,12 @@ version = "1.1.6+0" [[deps.nghttp2_jll]] deps = ["Artifacts", "Libdl"] uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d" -version = "1.48.0+0" +version = "1.52.0+1" [[deps.p7zip_jll]] deps = ["Artifacts", "Libdl"] uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0" -version = "17.4.0+0" +version = "17.4.0+2" [[deps.x264_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] diff --git a/examples/LVDC_Battery_systems/data/std_DCDC_40.csv b/examples/lvdc/LVDC_Battery_systems/data/std_DCDC_40.csv similarity index 100% rename from examples/LVDC_Battery_systems/data/std_DCDC_40.csv rename to examples/lvdc/LVDC_Battery_systems/data/std_DCDC_40.csv diff --git a/examples/LVDC_Battery_systems/elements/CAP_L1.jl b/examples/lvdc/LVDC_Battery_systems/elements/CAP_L1.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements/CAP_L1.jl rename to examples/lvdc/LVDC_Battery_systems/elements/CAP_L1.jl diff --git a/examples/LVDC_Battery_systems/elements/CAP_L2.jl b/examples/lvdc/LVDC_Battery_systems/elements/CAP_L2.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements/CAP_L2.jl rename to examples/lvdc/LVDC_Battery_systems/elements/CAP_L2.jl diff --git a/examples/LVDC_Battery_systems/elements/CAP_ac.jl b/examples/lvdc/LVDC_Battery_systems/elements/CAP_ac.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements/CAP_ac.jl rename to examples/lvdc/LVDC_Battery_systems/elements/CAP_ac.jl diff --git a/examples/LVDC_Battery_systems/elements/CAP_dc.jl b/examples/lvdc/LVDC_Battery_systems/elements/CAP_dc.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements/CAP_dc.jl rename to examples/lvdc/LVDC_Battery_systems/elements/CAP_dc.jl diff --git a/examples/LVDC_Battery_systems/elements/acdc.jl b/examples/lvdc/LVDC_Battery_systems/elements/acdc.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements/acdc.jl rename to examples/lvdc/LVDC_Battery_systems/elements/acdc.jl diff --git a/examples/LVDC_Battery_systems/elements/battery.jl b/examples/lvdc/LVDC_Battery_systems/elements/battery.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements/battery.jl rename to examples/lvdc/LVDC_Battery_systems/elements/battery.jl diff --git a/examples/LVDC_Battery_systems/elements/dcdc copy.jl b/examples/lvdc/LVDC_Battery_systems/elements/dcdc copy.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements/dcdc copy.jl rename to examples/lvdc/LVDC_Battery_systems/elements/dcdc copy.jl diff --git a/examples/LVDC_Battery_systems/elements/dcdc.jl b/examples/lvdc/LVDC_Battery_systems/elements/dcdc.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements/dcdc.jl rename to examples/lvdc/LVDC_Battery_systems/elements/dcdc.jl diff --git a/examples/LVDC_Battery_systems/elements/inv1.jl b/examples/lvdc/LVDC_Battery_systems/elements/inv1.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements/inv1.jl rename to examples/lvdc/LVDC_Battery_systems/elements/inv1.jl diff --git a/examples/LVDC_Battery_systems/elements/inv2.jl b/examples/lvdc/LVDC_Battery_systems/elements/inv2.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements/inv2.jl rename to examples/lvdc/LVDC_Battery_systems/elements/inv2.jl diff --git a/examples/LVDC_Battery_systems/elements/test.jl b/examples/lvdc/LVDC_Battery_systems/elements/test.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements/test.jl rename to examples/lvdc/LVDC_Battery_systems/elements/test.jl diff --git a/examples/LVDC_Battery_systems/elements_m/CAP_L1.jl b/examples/lvdc/LVDC_Battery_systems/elements_m/CAP_L1.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements_m/CAP_L1.jl rename to examples/lvdc/LVDC_Battery_systems/elements_m/CAP_L1.jl diff --git a/examples/LVDC_Battery_systems/elements_m/CAP_L2.jl b/examples/lvdc/LVDC_Battery_systems/elements_m/CAP_L2.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements_m/CAP_L2.jl rename to examples/lvdc/LVDC_Battery_systems/elements_m/CAP_L2.jl diff --git a/examples/LVDC_Battery_systems/elements_m/CAP_ac.jl b/examples/lvdc/LVDC_Battery_systems/elements_m/CAP_ac.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements_m/CAP_ac.jl rename to examples/lvdc/LVDC_Battery_systems/elements_m/CAP_ac.jl diff --git a/examples/LVDC_Battery_systems/elements_m/CAP_dc.jl b/examples/lvdc/LVDC_Battery_systems/elements_m/CAP_dc.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements_m/CAP_dc.jl rename to examples/lvdc/LVDC_Battery_systems/elements_m/CAP_dc.jl diff --git a/examples/LVDC_Battery_systems/elements_m/acdc.jl b/examples/lvdc/LVDC_Battery_systems/elements_m/acdc.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements_m/acdc.jl rename to examples/lvdc/LVDC_Battery_systems/elements_m/acdc.jl diff --git a/examples/LVDC_Battery_systems/elements_m/battery.jl b/examples/lvdc/LVDC_Battery_systems/elements_m/battery.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements_m/battery.jl rename to examples/lvdc/LVDC_Battery_systems/elements_m/battery.jl diff --git a/examples/LVDC_Battery_systems/elements_m/dcdc.jl b/examples/lvdc/LVDC_Battery_systems/elements_m/dcdc.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements_m/dcdc.jl rename to examples/lvdc/LVDC_Battery_systems/elements_m/dcdc.jl diff --git a/examples/LVDC_Battery_systems/elements_m/inv1.jl b/examples/lvdc/LVDC_Battery_systems/elements_m/inv1.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements_m/inv1.jl rename to examples/lvdc/LVDC_Battery_systems/elements_m/inv1.jl diff --git a/examples/LVDC_Battery_systems/elements_m/inv2.jl b/examples/lvdc/LVDC_Battery_systems/elements_m/inv2.jl similarity index 100% rename from examples/LVDC_Battery_systems/elements_m/inv2.jl rename to examples/lvdc/LVDC_Battery_systems/elements_m/inv2.jl diff --git a/examples/LVDC_Battery_systems/networks/LVDC_grid_sm.jl b/examples/lvdc/LVDC_Battery_systems/networks/LVDC_grid_sm.jl similarity index 74% rename from examples/LVDC_Battery_systems/networks/LVDC_grid_sm.jl rename to examples/lvdc/LVDC_Battery_systems/networks/LVDC_grid_sm.jl index 49116cd..bc12004 100644 --- a/examples/LVDC_Battery_systems/networks/LVDC_grid_sm.jl +++ b/examples/lvdc/LVDC_Battery_systems/networks/LVDC_grid_sm.jl @@ -14,7 +14,6 @@ Pluto.jl environment is also available on at http://github.com/timmyfaraday/Mult """ # Load pkgs -using Plots using Unitful using MultiStateSystems @@ -39,15 +38,15 @@ function battery_system_availability(i, T, ntw_av, μ, σ) end # Include the stochastic models for the wind turbines and cables -stdᵃᶜᵈᶜ = include(joinpath("C:/Users/gemmers/Documents/GitHub/MultiStateSystems.jl/examples/LVDC_Battery_systems/elements/acdc.jl")); -stdᵈᶜᵈᶜ = include(joinpath("C:/Users/gemmers/Documents/GitHub/MultiStateSystems.jl/examples/LVDC_Battery_systems/elements/dcdc.jl")); -stdⁱⁿᵛ¹ = include(joinpath("C:/Users/gemmers/Documents/GitHub/MultiStateSystems.jl/examples/LVDC_Battery_systems/elements/inv1.jl")); -stdⁱⁿᵛ² = include(joinpath("C:/Users/gemmers/Documents/GitHub/MultiStateSystems.jl/examples/LVDC_Battery_systems/elements/inv2.jl")); -stdᶜᵃᵖᵃᶜ = include(joinpath("C:/Users/gemmers/Documents/GitHub/MultiStateSystems.jl/examples/LVDC_Battery_systems/elements/CAP_ac.jl")); -stdᶜᵃᵖᵈᶜ = include(joinpath("C:/Users/gemmers/Documents/GitHub/MultiStateSystems.jl/examples/LVDC_Battery_systems/elements/CAP_dc.jl")); -stdᶜᵃᵖᴸ¹ = include(joinpath("C:/Users/gemmers/Documents/GitHub/MultiStateSystems.jl/examples/LVDC_Battery_systems/elements/CAP_L1.jl")); -stdᶜᵃᵖᴸ² = include(joinpath("C:/Users/gemmers/Documents/GitHub/MultiStateSystems.jl/examples/LVDC_Battery_systems/elements/CAP_L2.jl")); -stdᵇᵃᵗ = include(joinpath("C:/Users/gemmers/Documents/GitHub/MultiStateSystems.jl/examples/LVDC_Battery_systems/elements/battery.jl")); +stdᵃᶜᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/acdc.jl")); +stdᵈᶜᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/dcdc.jl")); +stdⁱⁿᵛ¹ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/inv1.jl")); +stdⁱⁿᵛ² = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/inv2.jl")); +stdᶜᵃᵖᵃᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/CAP_ac.jl")); +stdᶜᵃᵖᵈᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/CAP_dc.jl")); +stdᶜᵃᵖᴸ¹ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/CAP_L1.jl")); +stdᶜᵃᵖᴸ² = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/CAP_L2.jl")); +stdᵇᵃᵗ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/elements/battery.jl")); # Solve the state transition diagrams solve!(stdᵃᶜᵈᶜ, cls; tsim, dt) @@ -62,9 +61,11 @@ solve!(stdᵇᵃᵗ, cls; tsim, dt) """ The DC/DC converter can take a lot of memory to solve. -The solved std is provided as data and can be accessed by uncommenting the following two lines: +The solved std is provided as data and can be accessed by uncommenting the following four lines: """ -# dcdc_data = CSV.read("Z:/MyOwn/Journal/semi-Markov/std_DCDC_40.csv", DataFrame) +# using CSV +# using DataFrames +# dcdc_data = CSV.read(_MSS.BASE_DIR,"examples/lvdc/LVDC_Battery_systems/data/std_DCDC_40.csv", DataFrame) # stdᵈᶜᵈᶜ = solvedSTD(prob = [dcdc_data[!, :dcdc_state1], dcdc_data[!, :dcdc_state2], dcdc_data[!, :dcdc_state3]], time = collect(t), power = [10.0u"MW", 0.0u"MW", 0.0u"MW"]); # Set up the state transition diagram for the AC-grid with a constant availability of four nines. diff --git a/examples/lvdc/elements/ac.jl b/examples/lvdc/elements/ac.jl deleted file mode 100644 index 578b665..0000000 --- a/examples/lvdc/elements/ac.jl +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# Copyright 2022, Tom Van Acker, Glenn Emmers # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Unitful -using MultiStateSystems - -# initialize the state-transition diagram corresponding to the front-end ac/dc -# converter -stdᵃᶜ = STD() - -# add the states to the std -add_states!(stdᵃᶜ, name = ["available", "unavailable"], - power = [1.0u"MW", 0.0u"MW"], - init = [1.0, 0.0]) - -# add the transitions to the std -add_transitions!(stdᵃᶜ, rate = [0.0u"1/hr" 3.142e-4u"1/hr" - 0.8058u"1/hr" 0.0u"1/hr"]) - -# return the std -return stdᵃᶜ \ No newline at end of file diff --git a/examples/lvdc/elements/acdc.jl b/examples/lvdc/elements/acdc.jl deleted file mode 100644 index 32ebc52..0000000 --- a/examples/lvdc/elements/acdc.jl +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# Copyright 2022, Tom Van Acker, Glenn Emmers # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Unitful -using MultiStateSystems - -# initialize the state-transition diagram corresponding to the front-end ac/dc -# converter -stdᵃᵈ = STD() - -# add the states to the std -add_states!(stdᵃᵈ, name = ["available", "unavailable"], - power = [1.0u"MW", 0.0u"MW"], - init = [1.0, 0.0]) - -# add the transitions to the std -add_transitions!(stdᵃᵈ, rate = [0.0u"1/hr" 12.8928e-6u"1/hr" - 0.0833u"1/hr" 0.0u"1/hr"]) - -# return the std -return stdᵃᵈ \ No newline at end of file diff --git a/examples/lvdc/elements/battery.jl b/examples/lvdc/elements/battery.jl deleted file mode 100644 index 666b545..0000000 --- a/examples/lvdc/elements/battery.jl +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# Copyright 2022, Tom Van Acke, Glenn Emmers # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Unitful -using MultiStateSystems - -# initialize the state-transition diagram corresponding to the front-end ac/dc -# converter -stdᵇ = STD() - -# add the states to the std -add_states!(stdᵇ, name = ["available", "unavailable"], - power = [1.0u"MW", 0.0u"MW"], - init = [1.0, 0.0]) - -# add the transitions to the std -add_transitions!(stdᵇ, rate = [0.0u"1/hr" 2.07222222e-6u"1/hr" - 0.0658u"1/hr" 0.0u"1/hr"]) - -# return the std -return stdᵇ \ No newline at end of file diff --git a/examples/lvdc/elements/dcdc.jl b/examples/lvdc/elements/dcdc.jl deleted file mode 100644 index 6c03bf8..0000000 --- a/examples/lvdc/elements/dcdc.jl +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# Copyright 2022, Tom Van Acker, Glenn Emmers # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Unitful -using MultiStateSystems - -# initialize the state-transition diagram corresponding to the front-end ac/dc -# converter -stdᵈᵈ = STD() - -# add the states to the std -add_states!(stdᵈᵈ, name = ["available", "unavailable"], - power = [1.0u"MW", 0.0u"MW"], - init = [1.0, 0.0]) - -# add the transitions to the std -add_transitions!(stdᵈᵈ, rate = [0.0u"1/hr" 8.058e-6u"1/hr" - 0.125u"1/hr" 0.0u"1/hr"]) - -# return the std -return stdᵈᵈ \ No newline at end of file diff --git a/examples/lvdc/elements/fe.jl b/examples/lvdc/elements/fe.jl deleted file mode 100644 index 1330807..0000000 --- a/examples/lvdc/elements/fe.jl +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# Copyright 2022, Tom Van Acker, Glenn Emmers # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Unitful -using MultiStateSystems - -# initialize the state-transition diagram corresponding to the front-end ac/dc -# converter -stdᶠᵉ = STD() - -# add the states to the std -add_states!(stdᶠᵉ, name = ["available", "unavailable"], - power = [1.0u"MW", 0.0u"MW"], - init = [1.0, 0.0]) - -# add the transitions to the std -add_transitions!(stdᶠᵉ, rate = [0.0u"1/hr" 2.9666667e-6u"1/hr" - 0.1400u"1/hr" 0.0u"1/hr"]) - -# return the std -return stdᶠᵉ \ No newline at end of file diff --git a/examples/lvdc/elements/inv.jl b/examples/lvdc/elements/inv.jl deleted file mode 100644 index 6bee49f..0000000 --- a/examples/lvdc/elements/inv.jl +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# Copyright 2022, Tom Van Acker, Glenn Emmers # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Unitful -using MultiStateSystems - -# initialize the state-transition diagram corresponding to the front-end ac/dc -# converter -stdⁱⁿᵛ = STD() - -# add the states to the std -add_states!(stdⁱⁿᵛ, name = ["available", "unavailable"], - power = [1.0u"MW", 0.0u"MW"], - init = [1.0, 0.0]) - -# add the transitions to the std -add_transitions!(stdⁱⁿᵛ, rate = [0.0u"1/hr" 2.3305555e-6u"1/hr" - 0.0936u"1/hr" 0.0u"1/hr"]) - -# return the std -return stdⁱⁿᵛ \ No newline at end of file diff --git a/examples/lvdc/elements/switch.jl b/examples/lvdc/elements/switch.jl deleted file mode 100644 index 0d095c2..0000000 --- a/examples/lvdc/elements/switch.jl +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# Copyright 2022, Tom Van Acker, Glenn Emmers # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Unitful -using MultiStateSystems - -# initialize the state-transition diagram corresponding to the front-end ac/dc -# converter -stdˢʷ = STD() - -# add the states to the std -add_states!(stdˢʷ, name = ["available", "unavailable"], - power = [1.0u"MW", 0.0u"MW"], - init = [1.0, 0.0]) - -# add the transitions to the std -add_transitions!(stdˢʷ, rate = [0.0u"1/hr" 4.21667e-6u"1/hr" - 0.4269u"1/hr" 0.0u"1/hr"]) - -# return the std -return stdˢʷ \ No newline at end of file diff --git a/examples/lvdc/elements/transfo.jl b/examples/lvdc/elements/transfo.jl deleted file mode 100644 index f914ae1..0000000 --- a/examples/lvdc/elements/transfo.jl +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# Copyright 2022, Tom Van Acker, Glenn Emmers # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Unitful -using MultiStateSystems - -# initialize the state-transition diagram corresponding to the front-end ac/dc -# converter -stdᵗᶠ = STD() - -# add the states to the std -add_states!(stdᵗᶠ, name = ["available", "unavailable"], - power = [1.0u"MW", 0.0u"MW"], - init = [1.0, 0.0]) - -# add the transitions to the std -add_transitions!(stdᵗᶠ, rate = [0.0u"1/hr" 8.5777e-6u"1/hr" - 0.9552u"1/hr" 0.0u"1/hr"]) - -# return the std -return stdᵗᶠ \ No newline at end of file diff --git a/examples/lvdc/networks/AC_case_1.jl b/examples/lvdc/networks/AC_case_1.jl deleted file mode 100644 index 914fdbb..0000000 --- a/examples/lvdc/networks/AC_case_1.jl +++ /dev/null @@ -1,43 +0,0 @@ -################################################################################ -# Copyright 2020, Tom Van Acker # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Unitful -using MultiStateSystems - -# pkg const -const _MSS = MultiStateSystems - -# setting for a specific analysis -cls = SteadyStateProcess() - -# include the stochastic models for the elements -stdᵃᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/ac.jl")) -stdᵗᶠ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/transfo.jl")) -stdⁱⁿᵛ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/inv.jl")) - -# solve the state-transitions diagrams -solve!(stdᵃᵈ, cls) -solve!(stdᵗᶠ, cls) -solve!(stdⁱⁿᵛ, cls) - -# initialize the network corresponding to the low voltage dc system -ntwˡᵛ = Network() - -add_users!(ntwˡᵛ, node = [3,4]) -add_sources!(ntwˡᵛ, node = [1], - name = ["ac grid"], - std = [stdᵃᶜ]) -add_components!(ntwˡᵛ, edge = [(1,2),(2,3),(3,4)], - name = ["transfo", "ac/dc","dc/ac"], - std = [stdᵗᶠ, stdⁱⁿᵛ, stdⁱⁿᵛ]) - -solve!(ntwˡᵛ) - -ntwˡᵛ.usr[1][:ugf] -ntwˡᵛ.usr[2][:ugf] \ No newline at end of file diff --git a/examples/lvdc/networks/AC_case_2.jl b/examples/lvdc/networks/AC_case_2.jl deleted file mode 100644 index fa1581d..0000000 --- a/examples/lvdc/networks/AC_case_2.jl +++ /dev/null @@ -1,44 +0,0 @@ -################################################################################ -# Copyright 2020, Tom Van Acker # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Unitful -using MultiStateSystems - -# pkg const -const _MSS = MultiStateSystems - -# setting for a specific analysis -cls = SteadyStateProcess() - -# include the stochastic models for the elements -stdᵃᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/ac.jl")) -stdᵗᶠ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/transfo.jl")) -stdⁱⁿᵛ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/inv.jl")) - - -# solve the state-transitions diagrams -solve!(stdᵃᶜ, cls) -solve!(stdᵗᶠ, cls) -solve!(stdⁱⁿᵛ, cls) - -# initialize the network corresponding to the low voltage dc system -ntwˡᵛ = Network() - -add_users!(ntwˡᵛ, node = [2,4]) -add_sources!(ntwˡᵛ, node = [1], - name = ["ac grid"], - std = [stdᵃᶜ]) -add_components!(ntwˡᵛ, edge = [(1,2),(2,3),(3,4)], - name = ["transfo", "ac/dc","dc/ac"], - std = [stdᵗᶠ, stdⁱⁿᵛ, stdⁱⁿᵛ]) - -solve!(ntwˡᵛ) - -ntwˡᵛ.usr[1][:ugf] -ntwˡᵛ.usr[2][:ugf] \ No newline at end of file diff --git a/examples/lvdc/networks/AC_case_4.jl b/examples/lvdc/networks/AC_case_4.jl deleted file mode 100644 index fd5ea22..0000000 --- a/examples/lvdc/networks/AC_case_4.jl +++ /dev/null @@ -1,52 +0,0 @@ -################################################################################ -# Copyright 2020, Tom Van Acker # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Unitful -using MultiStateSystems - -# pkg const -const _MSS = MultiStateSystems - -# setting for a specific analysis -cls = SteadyStateProcess() - -# include the stochastic models for the elements -stdᵃᵈ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/acdc.jl")) -stdᵃᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/ac.jl")) -stdᵈᵈ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/dcdc.jl")) -stdᵇ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/battery.jl")) -stdˢʷ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/switch.jl")) -stdᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/switch.jl")) -# solve the state-transitions diagrams -solve!(stdᵃᵈ, cls) -solve!(stdᵃᶜ, cls) -solve!(stdᵈᵈ, cls) -solve!(stdᵇ, cls) -solve!(stdˢʷ, cls) -solve!(stdᶜ,cls) - -# initialize the network corresponding to the low voltage dc system - -ntwˡᵛ = Network() - - -add_users!(ntwˡᵛ, node = [5]) -add_sources!(ntwˡᵛ, node = [1,2], - name = ["ac grid","ac grid"], - std = [stdᵃᶜ, stdᵃᶜ]) -add_components!(ntwˡᵛ, edge = [(1,3),(1,4),(2,3),(2,4),(3,5), (4,5)], - name = ["cable", "cable", "cable", "cable", "cable", "cable"], - std = [stdᶜ, stdᶜ, stdᶜ, stdᶜ, stdᶜ, stdᶜ]) -add_bidirectional_component((ntwˡᵛ, edge = (3,4), std = stdᶜ)) - - -solve!(ntwˡᵛ) - -ntwˡᵛ.usr[1][:ugf] -ntwˡᵛ.usr[2][:ugf] \ No newline at end of file diff --git a/examples/lvdc/networks/lvdc.jl b/examples/lvdc/networks/lvdc.jl deleted file mode 100644 index 3ee63cf..0000000 --- a/examples/lvdc/networks/lvdc.jl +++ /dev/null @@ -1,44 +0,0 @@ -################################################################################ -# Copyright 2020, Tom Van Acker # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Unitful -using MultiStateSystems - -# pkg const -const _MSS = MultiStateSystems - -# setting for a specific analysis -cls = SteadyStateProcess() - -# include the stochastic models for the elements -stdᵃᵈ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/acdc.jl")) -stdᵃᶜ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/ac.jl")) -stdᵈᵈ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/dcdc.jl")) -stdᵇ = include(joinpath(_MSS.BASE_DIR,"examples/lvdc/elements/battery.jl")) - -# solve the state-transitions diagrams -solve!(stdᵃᵈ, cls) -solve!(stdᵃᶜ, cls) -solve!(stdᵈᵈ, cls) -solve!(stdᵇ, cls) - -# initialize the network corresponding to the low voltage dc system -ntwˡᵛ = Network() - -# add the users to the ntw -add_users!(ntwˡᵛ, node = [3,4]) -add_sources!(ntwˡᵛ, node = [1,3], - name = ["ac grid", "battery"], - std = [stdᵃᶜ,stdᵇ]) -add_components!(ntwˡᵛ, edge = [(1,2),(2,3),(2,4)], - name = ["ac/dc", "dc/dc", "dc/ac"], - std = [stdᵃᵈ, stdᵈᵈ, stdᵃᵈ]) - -# solve the network -solve!(ntwˡᵛ) \ No newline at end of file diff --git a/examples/semi-markov/optical-monitoring-system.jl b/examples/lvdc/semi_markov/optical-monitoring-system.jl similarity index 100% rename from examples/semi-markov/optical-monitoring-system.jl rename to examples/lvdc/semi_markov/optical-monitoring-system.jl diff --git a/examples/semi-markov/semi-analytical.jl b/examples/lvdc/semi_markov/semi-analytical.jl similarity index 100% rename from examples/semi-markov/semi-analytical.jl rename to examples/lvdc/semi_markov/semi-analytical.jl diff --git a/examples/semi-markov/lvdc_resilience.jl b/examples/semi-markov/lvdc_resilience.jl deleted file mode 100644 index 137a151..0000000 --- a/examples/semi-markov/lvdc_resilience.jl +++ /dev/null @@ -1,74 +0,0 @@ -################################################################################ -# Copyright 2023, Tom Van Acker, Glenn Emmers # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ -""" -This file demonstrates the resilience of LVDC systems with a battery, -against AC side disturbances and outages in function of battery reserve time. -A semi-Markov process strategy is applied to the problem and the state transition -diagram contains three states. - -States: -- 1 : Normal operation state -- 2 : Failed AC state, battery is discharging -- 3 : Shutdown state, battery is empty -""" - -# load pkgs -using Plots -using Unitful -using MultiStateSystems - -# pkg const -const _MSS = MultiStateSystems - -# setting for a specific analysis -cls = SemiMarkovProcess() - -bat = 120.0 -AC_fail = 6.6u"yr" - -function battery_dist(T::Quantity) -# This function determines the transition distribution from an empty battery state to -# a normal operation state. - if T == 120.0u"minute" - return Exponential(51.21u"minute") - elseif T==60.0u"minute" - return Exponential(55.4u"minute") - elseif T==80.0u"minute" - return Exponential(54.39u"minute") - elseif T==100.0u"minute" - return Exponential(53.14u"minute") - elseif T == 140.0u"minute" - return Exponential(47.38u"minute") - end -end - - -# initialize the state-transition diagram -stdᵈᶜ = STD() -stdᵃᶜ = STD() - -# add the states to the std -add_states!(stdᵃᶜ, name = ["normal operation state","failed AC state"], - init = [1.0,0.0]) - -add_states!(stdᵈᶜ, name = ["normal operation state","failed AC state","Battery depletion state"], - init = [1.0,0.0,0.0]) -# add the transitions to the std -add_transitions!(stdᵃᶜ, states = [(1,2),(2,1)], - distr = [ Exponential(AC_fail), - Weibull(95.196u"minute", 2.1)]) - -add_transitions!(stdᵈᶜ, states = [(1,2),(2,1),(2,3),(3,1)], - distr = [ Exponential(AC_fail), - Weibull(95.196u"minute", 2.1, 0.80), - LogNormal(log(bat/60)u"hr", 0.05u"hr", 0.20), - battery_dist((bat)u"minute")]) - -# solve the stds -solve!(stdᵈᶜ, cls, tsim = 7.0u"hr", dt = 1u"minute", tol=1e-10) -solve!(stdᵃᶜ, cls, tsim = 7.0u"hr", dt = 1u"minute", tol=1e-10) \ No newline at end of file diff --git a/examples/semi-markov/single-feeder.jl b/examples/semi-markov/single-feeder.jl deleted file mode 100644 index fbb571a..0000000 --- a/examples/semi-markov/single-feeder.jl +++ /dev/null @@ -1,69 +0,0 @@ -################################################################################ -# Copyright 2022, Tom Van Acker, Glenn Emmers # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Plots -using Unitful -using MultiStateSystems - -# pkg const -const _MSS = MultiStateSystems - -# setting for a specific analysis -cls = SemiMarkovProcess() - -# Initializing the state transition diagram of a homogeneous semi markov process to test -# the model - -std = STD() -add_states!(std, name = ["normal operation state","fault operation state f1","Primary post-fault state","Secondary post-fault state", "Fault operation state for f2", "Fault operation state for f3"], - power = [1.0u"MW", 0.0u"MW", 0.0u"MW", 0.0u"MW", 0.0u"MW", 0.0u"MW"], - init = [1.0,0.0,0.0,0.0,0.0,0.0]) - -add_transitions!(std, states = [(1,2),(1,5),(1,6),(2,3),(5,3),(6,3),(2,4),(5,4),(6,4),(3,4),(4,1)], - distr = [Exponential(4000.0u"hr", 0.3), - Exponential(10000.0u"hr", 0.4), - Exponential(25000.0u"hr", 0.3), - LogNormal(10.0u"hr", 0.08u"hr", 0.8), - LogNormal(10.0u"hr", 0.08u"hr", 0.8), - LogNormal(10.0u"hr", 0.08u"hr", 0.8), - LogNormal(10.0u"hr", 0.08u"hr", 0.2), - LogNormal(10.0u"hr", 0.08u"hr", 0.2), - LogNormal(10.0u"hr", 0.08u"hr", 0.2), - LogNormal(100u"hr", 0.08u"hr"), - Weibull(100.0u"hr", 10)]) - - -# solve the network -solve!(std, cls , tsim = 10000.0u"hr", dt = 10u"hr") - -# plot the probabilities -plot(_MSS.get_prop(std, :time), - [_MSS.get_prop(std, ns, :prob) for ns in _MSS.states(std)], - label=reshape([_MSS.get_prop(std, ns, :name) for ns in _MSS.states(std)],1,:), - xlabel="time", - ylabel="probability") - -# plot the reliability -plot(_MSS.get_prop(std, :time), - _MSS.get_prop(std, 1, :prob), - label="semi-Markov", - xlabel="time", - ylabel="Availability") - -plot(_MSS.get_prop(std, :time), - sum(_MSS.get_prop(std, ns, :prob) for ns in _MSS.states(std)), - label="semi-Markov", - xlabel="time", - ylabel="Availability") - - sum.(_MSS.get_prop(std, ns, :prob) for ns in _MSS.states(std)) -tot_prob = [] -for ns in _MSS.states(std) - tot_prob .+= _MSS.get_prop(std, ns, :prob) -end diff --git a/examples/semi-markov/validation_test.jl b/examples/semi-markov/validation_test.jl deleted file mode 100644 index f8b7825..0000000 --- a/examples/semi-markov/validation_test.jl +++ /dev/null @@ -1,70 +0,0 @@ -################################################################################ -# Copyright 2022, Tom Van Acker, Glenn Emmers # -################################################################################ -# MultiStateSystems.jl # -# A Julia package to solve multi-state system models. # -# See http://github.com/timmyfaraday/MultiStateSystems.jl # -################################################################################ - -# load pkgs -using Plots -using Unitful -using UnitfulRecipes -using MultiStateSystems - -# pkg const -const _MSS = MultiStateSystems - -# setting for a specific analysis -cls = SemiMarkovProcess() - -# Initializing the state transition diagram of a homogeneous semi markov process to test -# the model - -std = STD() -add_states!(std, name = ["normal operation state","fault operation state f1","Primary post-fault state f1","Secondary post-fault state f1", "Fault operation state for f1", "Primary post-fault state for f2", "secondary post-fault state for f2", "fault operation state for f3", "Primary post-fault state for f3", "secondary post-fault state for f3"], - power = [1.0u"MW", 0.0u"MW", 0.0u"MW", 0.0u"MW", 0.0u"MW", 0.0u"MW", 0.0u"MW", 0.0u"MW", 0.0u"MW", 0.0u"MW"], - init = [1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]) - -add_transitions!(std, states = [(1,2),(2,3),(2,4),(4,3),(3,1),(1,5),(5,6),(5,7),(7,6),(6,1),(1,8),(8,9),(8,10),(10,9),(9,1)], - distr = [Weibull(10000.0u"hr", 1.25, 0.33), - LogNormal(10.0u"hr", 0.08u"hr", 0.8), - LogNormal(13.0u"hr", 0.08u"hr", 0.2), - LogNormal(100.0u"hr", 0.08u"hr"), - Weibull(1000.0u"hr", 10), - Weibull(8000.0u"hr", 1.5, 0.33), - LogNormal(10.0u"hr", 0.08u"hr", 0.8), - LogNormal(13.0u"hr", 0.08u"hr", 0.2), - LogNormal(100u"hr", 0.08u"hr"), - Weibull(1000.0u"hr", 10), - Weibull(12500.0u"hr", 1.75, 0.33), - LogNormal(10.0u"hr", 0.08u"hr", 0.8), - LogNormal(13.0u"hr", 0.08u"hr", 0.2), - LogNormal(100.0u"hr", 0.08u"hr"), - Weibull(1000.0u"hr", 10.0)]) - - -# solve the network -solve!(std, cls , tsim = 10000.0u"hr", dt = 10u"hr") - -# plot the probabilities -plot(_MSS.get_prop(std, :time), - [_MSS.get_prop(std, ns, :prob) for ns in _MSS.states(std)], - label=reshape([_MSS.get_prop(std, ns, :name) for ns in _MSS.states(std)],1,:), - xlabel="time", - ylabel="probability") - -# plot the reliability -plot(_MSS.get_prop(std, :time), - _MSS.get_prop(std, 1, :prob), - label="reliability", - xlabel="time", - ylabel="probability") - - -tot_prob = [] -ns = 10 -tot_prob .+= _MSS.get_prop(std, ns, :prob) -for ns in _MSS.states(std) - tot_prob .+= _MSS.get_prop(std, ns, :prob) -end