Support ThreeWindingTransformer outages in NetworkModification#289
Support ThreeWindingTransformer outages in NetworkModification#289Copilot wants to merge 5 commits into
Conversation
- Replace error in _classify_outage_component! for PSY.ThreeWindingTransformer with automatic decomposition into available winding arcs - Add NetworkModification(mat, branch::PSY.ThreeWindingTransformer) constructor - Add _classify_branch_modification for PSY.ThreeWindingTransformer - Handle 3WT Ybus delta directly via ybus_branch_entries to avoid BA-matrix vs winding susceptance mismatch - Use get_name instead of PSY.get_name for ThreeWindingTransformerWinding compat Agent-Logs-Url: https://github.com/NREL-Sienna/PowerNetworkMatrices.jl/sessions/7950c45a-eba1-4cd1-a6d6-3e4d6238e999 Co-authored-by: jd-lara <16385323+jd-lara@users.noreply.github.com>
…cation Agent-Logs-Url: https://github.com/NREL-Sienna/PowerNetworkMatrices.jl/sessions/7950c45a-eba1-4cd1-a6d6-3e4d6238e999 Co-authored-by: jd-lara <16385323+jd-lara@users.noreply.github.com>
Performance ResultsPrecompile Time
Execution Time
|
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #289 +/- ##
==========================================
+ Coverage 0.07% 79.67% +79.59%
==========================================
Files 38 38
Lines 3778 3794 +16
==========================================
+ Hits 3 3023 +3020
+ Misses 3775 771 -3004
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
…-winding-transformer-outages # Conflicts: # test/test_network_modification.jl
|
@m-bossart I just wrapped up this PR to accept 3WT outages but it only does full outage not partial. |
| push!(direct_mods, ArcModification( | ||
| arc_idx, -b_arc, | ||
| YBUS_ELTYPE(-Y11), YBUS_ELTYPE(-Y12), | ||
| YBUS_ELTYPE(-Y21), YBUS_ELTYPE(-Y22), | ||
| )) |
There was a problem hiding this comment.
[JuliaFormatter] reported by reviewdog 🐶
| push!(direct_mods, ArcModification( | |
| arc_idx, -b_arc, | |
| YBUS_ELTYPE(-Y11), YBUS_ELTYPE(-Y12), | |
| YBUS_ELTYPE(-Y21), YBUS_ELTYPE(-Y22), | |
| )) | |
| push!( | |
| direct_mods, | |
| ArcModification( | |
| arc_idx, -b_arc, | |
| YBUS_ELTYPE(-Y11), YBUS_ELTYPE(-Y12), | |
| YBUS_ELTYPE(-Y21), YBUS_ELTYPE(-Y22), | |
| ), | |
| ) |
| if !get_equivalent_available(winding) | ||
| continue | ||
| end | ||
| append!(mods, _classify_branch_modification(nr, arc_lookup, arc_susceptances, winding)) |
There was a problem hiding this comment.
[JuliaFormatter] reported by reviewdog 🐶
| append!(mods, _classify_branch_modification(nr, arc_lookup, arc_susceptances, winding)) | |
| append!( | |
| mods, | |
| _classify_branch_modification(nr, arc_lookup, arc_susceptances, winding), | |
| ) |
| return [ArcModification( | ||
| arc_idx, -b_arc, | ||
| YBUS_ELTYPE(-Y11), YBUS_ELTYPE(-Y12), | ||
| YBUS_ELTYPE(-Y21), YBUS_ELTYPE(-Y22), | ||
| )] |
There was a problem hiding this comment.
[JuliaFormatter] reported by reviewdog 🐶
| return [ArcModification( | |
| arc_idx, -b_arc, | |
| YBUS_ELTYPE(-Y11), YBUS_ELTYPE(-Y12), | |
| YBUS_ELTYPE(-Y21), YBUS_ELTYPE(-Y22), | |
| )] | |
| return [ | |
| ArcModification( | |
| arc_idx, -b_arc, | |
| YBUS_ELTYPE(-Y11), YBUS_ELTYPE(-Y12), | |
| YBUS_ELTYPE(-Y21), YBUS_ELTYPE(-Y22), | |
| ), | |
| ] |
| star_bus = first(b for b in PSY.get_components(PSY.ACBus, sys2) | ||
| if PSY.get_number(b) == star_num) |
There was a problem hiding this comment.
[JuliaFormatter] reported by reviewdog 🐶
| star_bus = first(b for b in PSY.get_components(PSY.ACBus, sys2) | |
| if PSY.get_number(b) == star_num) | |
| star_bus = first( | |
| b for b in PSY.get_components(PSY.ACBus, sys2) | |
| if PSY.get_number(b) == star_num | |
| ) |
There was a problem hiding this comment.
Pull request overview
This PR adds direct support for using PSY.ThreeWindingTransformer components as network modification outages by decomposing them into winding-level arc modifications, while adding targeted tests for 3WT outage behavior.
Changes:
- Adds
NetworkModificationand outage-classification support for fullThreeWindingTransformeroutages. - Handles 3WT Ybus deltas directly and tracks real-bus islanding for full 3WT outages.
- Adds regression tests for full, partial, supplemental-attribute, Ybus, PTDF, and VirtualMODF 3WT outage paths.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
src/network_modification.jl |
Implements 3WT decomposition, classification, Ybus delta handling, and real-bus islanding detection. |
test/test_network_modification.jl |
Adds basic coverage for full/single/partial 3WT outages and outage attributes. |
test/test_3wt_outage.jl |
Adds deeper validation against PTDF/Ybus references and cache behavior for 3WT outages. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| for winding_num in 1:3 | ||
| winding = ThreeWindingTransformerWinding(component, winding_num) | ||
| if !get_equivalent_available(winding) | ||
| continue | ||
| end |
| mods = ArcModification[] | ||
| for winding_num in 1:3 | ||
| winding = ThreeWindingTransformerWinding(branch, winding_num) | ||
| if !get_equivalent_available(winding) | ||
| continue |
There was a problem hiding this comment.
I think this is correct, there seems to be a discrepancy in where phase shifting is allowed with respect to outages
| @testset "is_islanding is true for radial-terminal full 3WT outage" begin | ||
| sys = PSB.build_system(PSB.PSITestSystems, "case10_radial_series_reductions") | ||
| vptdf = VirtualPTDF(sys) | ||
| trf = first(PSY.get_components(PSY.ThreeWindingTransformer, sys)) |
There was a problem hiding this comment.
use only instead of first so it is clear that there is only one ThreeWindingTransformer in this system and that it will cause an island when outaged. Applies to other tests below as well.
| mod = NetworkModification(vptdf, trf) | ||
| arc_ax = PNM.get_arc_axis(vptdf) | ||
| wind = [am.arc_index for am in mod.arc_modifications] | ||
| star_num = unique([arc_ax[e][2] for e in wind])[1] |
There was a problem hiding this comment.
# star bus is to bus of three winding transformer arcs
star_num = arc_ax[wind[1]][2]
| # Single winding outage | ||
| for w in 1:3 | ||
| winding = PNM.ThreeWindingTransformerWinding(trf, w) | ||
| mod = NetworkModification(vptdf, winding) |
There was a problem hiding this comment.
This seemingly is supporting partial outages. Can you clarify the comment that said they were not supported?
| mods = ArcModification[] | ||
| for winding_num in 1:3 | ||
| winding = ThreeWindingTransformerWinding(branch, winding_num) | ||
| if !get_equivalent_available(winding) | ||
| continue |
There was a problem hiding this comment.
I think this is correct, there seems to be a discrepancy in where phase shifting is allowed with respect to outages
| ) | ||
| for winding_num in 1:3 | ||
| winding = ThreeWindingTransformerWinding(component, winding_num) | ||
| if !get_equivalent_available(winding) |
There was a problem hiding this comment.
If a winding is available but the parent transformer is not, get_equivalent_available will return available=true. I think that the parent transformer being unavailable should over-ride this?
| mod = NetworkModification(vptdf, sys, outage) | ||
| @test mod.is_islanding == true | ||
| end | ||
|
|
There was a problem hiding this comment.
Add a test where is_islanding is false for a ThreeWindingTransformer full outage (i.e. a case where only the star bus is islanded)
Passing a
PSY.ThreeWindingTransformerdirectly as an outage component errored, requiring users to manually construct internalThreeWindingTransformerWindingobjects. This PR auto-decomposes 3WT components into their winding arcs.Description
Core changes (
src/network_modification.jl)_classify_outage_component!forPSY.ThreeWindingTransformer: Replace error with automatic decomposition into available winding arcs (skips unavailable windings)NetworkModification(mat, ::PSY.ThreeWindingTransformer): New constructor for full transformer outage_classify_branch_modificationforPSY.ThreeWindingTransformer: New method decomposing into per-winding classification:transformer3wfrom:directin arc classification: Compute Ybus delta directly viaybus_branch_entries(tr)instead of routing through_compute_arc_ybus_delta, which fails due to BA-matrix susceptance vs raw winding susceptance mismatchget_nameinstead ofPSY.get_namein classification info messages and theACTransmissionconstructor —ThreeWindingTransformerWindinglacks anamefield soPSY.get_nameerrors;PNM.get_namedispatches correctly for both regular branches and windingsUsage
Tests (
test/test_network_modification.jl)Four new test sets: full 3WT outage, single winding outage, partial outage with disabled winding, and outage via
PSY.Outagesupplemental attribute.Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
https://api.github.com/repos/FluxML/MacroTools.jl/tarball/1e0228a030642014fe5cfe68c2c0a818f9e3f522/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/Blosc_jll.jl/tarball/535c80f1c0847a4c967ea945fca21becc9de1522/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/HDF5_jll.jl/tarball/45337643a2d97262d5fe72ce1f13e8a662d13d62/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/Hwloc_jll.jl/tarball/baaaebd42ed9ee1bd9173cfd56910e55a8622ee1/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/IntelOpenMP_jll.jl/tarball/ec1debd61c300961f98064cfb21287613ad7f303/usr/bin/julia julia --project=test -e using Pkg; Pkg.develop(path="."); Pkg.instantiate() --warn-overwrite=yes --color=auto -(http block)https://api.github.com/repos/JuliaBinaryWrappers/Libiconv_jll.jl/tarball/be484f5c92fad0bd8acfef35fe017900b0b73809/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/Lz4_jll.jl/tarball/191686b1ac1ea9c89fc52e996ad15d1d241d1e33/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/MKL_jll.jl/tarball/282cadc186e7b2ae0eeadbd7a4dffed4196ae2aa/usr/bin/julia julia --project=test -e using Pkg; Pkg.develop(path="."); Pkg.instantiate() --warn-overwrite=yes --color=auto -(http block)https://api.github.com/repos/JuliaBinaryWrappers/MPIABI_jll.jl/tarball/fdc0f7ca9e7e645d1114b93c9eee98f352b59a0c/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/MPICH_jll.jl/tarball/07dbec8aab01696edc0151a401a6cdfe95b9b885/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/MPItrampoline_jll.jl/tarball/36c2d142e7d45fb98b5f83925213feb3292ca348/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/MicrosoftMPI_jll.jl/tarball/bc95bf4149bf535c09602e3acdf950d9b4376227/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/OpenMPI_jll.jl/tarball/2f3d05e419b6125ffe06e55784102e99325bdbe2/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/SQLite_jll.jl/tarball/0b5f220f90642566b65ba86549d1ee4118ab2579/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/XML2_jll.jl/tarball/80d3930c6347cfce7ccf96bd3bafdf079d9c0390/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/Xorg_libpciaccess_jll.jl/tarball/4909eb8f1cbf6bd4b1c30dd18b2ead9019ef2fad/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/Zstd_jll.jl/tarball/446b23e73536f84e8037f5dce465e92275f6a308/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/aws_c_auth_jll.jl/tarball/8cab83c96af80a1be968251ce1a0548a7545484d/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/aws_c_cal_jll.jl/tarball/22c0f42f4a1f0dc5dcfa8fd267c4ac407c455e7a/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/aws_c_common_jll.jl/tarball/a759cb9bf456ad792cc7898a81ae333cce9ef02a/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/aws_c_compression_jll.jl/tarball/7910c72f45f44afd297c39fe43b99c56d5ed22ec/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/aws_c_http_jll.jl/tarball/e358d5a001ef7afbd4f8c5225322512819cda2f2/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/aws_c_io_jll.jl/tarball/7e481d474b2087ee8bbf55b81bf9119f21e396d9/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/aws_c_s3_jll.jl/tarball/3e9917ab25114feba657e71be41cad068b9f6595/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/aws_c_sdkutils_jll.jl/tarball/c43dfba2c1ab9ea9f02f2c80e86fa16f6460244e/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/aws_checksums_jll.jl/tarball/2570c8e23f4771a087b12a47edcaaa670ac05a01/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/dlfcn_win32_jll.jl/tarball/e141d67ffe550eadfb5af1bdbdaf138031e4805f/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/libaec_jll.jl/tarball/1411bc34c180946d3cef591de1384012afa6edee/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/mpif_jll.jl/tarball/653ea50df05f4df3913bc3c51f895127ae391b03/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaBinaryWrappers/oneTBB_jll.jl/tarball/1350188a69a6e46f799d3945beef36435ed7262f/usr/bin/julia julia --project=test -e using Pkg; Pkg.develop(path="."); Pkg.instantiate() --warn-overwrite=yes --color=auto -(http block)https://api.github.com/repos/JuliaBinaryWrappers/s2n_tls_jll.jl/tarball/6b99e06a3863de281da6ff0e193a5b3706349054/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaCollections/AbstractTrees.jl/tarball/2d9c9a55f9c93e8887ad391fbae72f8ef55e1177/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaCollections/DataStructures.jl/tarball/e86f4a2805f7f19bec5129bc9150c38208e5dc23/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaCollections/LeftChildRightSiblingTrees.jl/tarball/95ba48564903b43b2462318aa243ee79d81135ff/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaCollections/OrderedCollections.jl/tarball/05868e21324cede2207c6f0f466b4bfef6d5e7ee/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaCollections/SortingAlgorithms.jl/tarball/64d974c2e6fdf07f8155b5b2ca2ffa9069b608d9/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/CSV.jl/tarball/8d8e0b0f350b8e1c91420b5e64e5de774c2f0f4d/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/DataAPI.jl/tarball/abe83f3a2f1b857aac70ef8b269080af17764bbe/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/DataFrames.jl/tarball/5fab31e2e01e70ad66e3e24c968c264d1cf166d6/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/DataFramesMeta.jl/tarball/b0652fb7f3c094cf453bf22e699712a0bed9fc83/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/DelimitedFiles.jl/tarball/9e2f36d3c96a820c678f2f1f1782582fcf685bae/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/InvertedIndices.jl/tarball/6da3c4316095de0f5ee2ebd875df8721e7e0bdbe/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/Missings.jl/tarball/ec4f7fbeab05d7747bdf98eb74d130a2a2ed298d/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/Parsers.jl/tarball/7d2f8f21da5db6a806faf7b9b292296da42b2810/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/PooledArrays.jl/tarball/36d8b4b899628fb92c2749eb488d884a926614d3/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/SentinelArrays.jl/tarball/ebe7e59b37c400f694f52b58c93d26201387da70/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/StructTypes.jl/tarball/159331b30e94d7b11379037feeb9b690950cace8/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/TableMetadataTools.jl/tarball/c0405d3f8189bb9a9755e429c6ea2138fca7e31f/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/Tables.jl/tarball/f2c1efbc8f3a609aadf318094f8fc5204bdaf344/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/WeakRefStrings.jl/tarball/b1be2855ed9ed8eac54e5caff2afcdb442d52c23/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaData/YAML.jl/tarball/a1c0c7585346251353cddede21f180b96388c403/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaDatabases/DBInterface.jl/tarball/a444404b3f94deaa43ca2a58e18153a82695282b/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaDatabases/SQLite.jl/tarball/87b47a05946c50f44531b447b1f24968345316a4/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaDocs/DocStringExtensions.jl/tarball/7442a5dfe1ebb773c29cc2962a8980f47221d76c/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaIO/Blosc.jl/tarball/310b77648d38c223d947ff3f50f511d08690b8d5/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaIO/CodecZlib.jl/tarball/962834c22b66e32aa10f7611c08c8ca4e20749a9/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaIO/HDF5.jl/tarball/491ea627ac824619f34168e29a0427a9e00e3e40/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaIO/HDF5.jl/tarball/d778420e524bcf56066e8c63c7aa315ae7269da2/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaIO/TranscodingStreams.jl/tarball/0c45878dcfdcfa8480052b6ab162cdd138781742/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaLang/Compat.jl/tarball/9d8a54ce4b17aa5bdce0ea5c34bc5e7c340d16ad/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaLang/PrecompileTools.jl/tarball/07a921781cab75691315adc645096ed5e370cb77/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaLogging/ProgressLogging.jl/tarball/f0803bc1171e455a04124affa9c21bba5ac4db32/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaLogging/TerminalLoggers.jl/tarball/f133fab380933d042f6796eda4e130272ba520ca/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaPackaging/JLLWrappers.jl/tarball/0533e564aae234aff59ab625543145446d8b6ec2/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaPackaging/Preferences.jl/tarball/8b770b60760d4451834fe79dd483e318eee709c4/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaPackaging/Requires.jl/tarball/62389eeff14780bfe55195b7204c0d8738436d64/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaParallel/MPI.jl/tarball/8e98d5d80b87403c311fd51e8455d4546ba7a5f8/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaPhysics/Unitful.jl/tarball/57e1b2c9de4bd6f40ecb9de4ac1797b81970d008/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaPlots/Plots.jl/tarball/5c3d09cc4f31f5fc6af001c250bf1278733100ff/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaServices/WorkerUtilities.jl/tarball/cd1659ba0d57b71a464a29e64dbc67cfe83d54e7/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaSparse/KLU.jl/tarball/07649c499349dad9f08dde4243a4c597064663e9/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaSparse/Pardiso.jl/tarball/eb95d6bbd64c54ebb506cdb09826f82d06bee92c/usr/bin/julia julia --project=test -e using Pkg; Pkg.develop(path="."); Pkg.instantiate() --warn-overwrite=yes --color=auto -(http block)https://api.github.com/repos/JuliaStats/Statistics.jl/tarball/ae3bb1eb3bba077cd276bc5cfc337cc65c3075c0/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaStats/TimeSeries.jl/tarball/e1235a1906d1e6d27c30c35daa91fcf6fc271f08/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaStrings/InlineStrings.jl/tarball/8f3d257792a522b4601c24a577954b0a8cd7334d/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaStrings/LaTeXStrings.jl/tarball/dda21b8cbd6a6c40d9d02a73230f9d70fed6918c/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaStrings/StringEncodings.jl/tarball/b765e46ba27ecf6b44faf70df40c57aa3a547dcb/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaTesting/Aqua.jl/tarball/d57fd255a8932b6509baf43284c416fc44d0b903/usr/bin/julia julia --project=test -e using Pkg; Pkg.develop(path="."); Pkg.instantiate() --warn-overwrite=yes --color=auto -(http block)https://api.github.com/repos/JuliaTesting/ExprTools.jl/tarball/27415f162e6028e81c72b82ef756bf321213b6ec/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/JuliaTesting/ReTest.jl/tarball/9a5136d157d1d6a2a56ff77bef1dc324e1313193/usr/bin/julia julia --project=test -e using Pkg; Pkg.develop(path="."); Pkg.instantiate() --warn-overwrite=yes --color=auto -(http block)https://api.github.com/repos/JuliaTesting/ReTest.jl/tarball/daf0743879904f0ad645ca6594e1479685f158a2/usr/bin/julia julia --project=test -e using Pkg; Pkg.develop(path="."); Pkg.instantiate() --warn-overwrite=yes --color=auto -(http block)https://api.github.com/repos/KristofferC/Crayons.jl/tarball/249fe38abf76d48563e2f4556bebd215aa317e15/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/KristofferC/TimerOutputs.jl/tarball/3748bd928e68c7c346b52125cf41fff0de6937d0/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/NREL-Sienna/InfrastructureSystems.jl/tarball/5c29a2a358755bceeb3233a7d8be778692a7e6c6/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/NREL-Sienna/PowerSystemCaseBuilder.jl/tarball/ab9a5d728e749ec85ced41617ae2014fdda59765/usr/bin/julia julia --project=test -e using Pkg; Pkg.develop(path="."); Pkg.instantiate() --warn-overwrite=yes --color=auto -(http block)https://api.github.com/repos/NREL-Sienna/PowerSystems.jl/tarball/354c56b72404bfd2e4c1f364277512f9f549ce65/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/jkrumbiegel/Chain.jl/tarball/765487f32aeece2cf28aa7038e29c31060cb5a69/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/joshday/StringTemplates.jl/tarball/d78012ad7c6c22aba229a6363ec83ebc9ce5c135/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/jverzani/Mustache.jl/tarball/3cbd5dda543bc59f2e482607ccf84b633724fc32/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/nickrobinson251/PowerFlowData.jl/tarball/54d48d25e7d7511bbc8eb0ecff9e32f38c6f267c/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/queryverse/DataValueInterfaces.jl/tarball/bfc1187b79289637fa0ef6d4436ebdfe6905cbd6/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/queryverse/IteratorInterfaceExtensions.jl/tarball/a3f24677c21f5bbe9d2a714f95dcd58337fb2856/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/queryverse/TableTraits.jl/tarball/c06b2f539df1c6efa794486abfb6ed2022561a39/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/quinnj/JSON3.jl/tarball/411eccfe8aba0814ffa0fdf4860913ed09c34975/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/rofinn/FilePathsBase.jl/tarball/3bab2c5aa25e7840a4b065805c0cdfc01f3068d2/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/ronisbr/PrettyTables.jl/tarball/624de6279ab7d94fc9f672f0068107eb6619732c/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/ronisbr/StringManipulation.jl/tarball/d05693d339e37d6ab134c5ab53c29fce5ee5d7d5/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)https://api.github.com/repos/simonster/Reexport.jl/tarball/45e428421666073eab6f2da5c9d310d99bb12f9b/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(http block)pkg.julialang.org/usr/bin/julia julia --project -e using Pkg; Pkg.instantiate()(dns block)/usr/bin/julia julia --project=test -e using Pkg; Pkg.develop(path="."); Pkg.instantiate() --warn-overwrite=yes --color=auto -(dns block)/usr/local/julia1.12.5/bin/julia /usr/local/julia1.12.5/bin/julia -C native -J/usr/local/julia1.12.5/lib/julia/sys.so -g1 --output-o /home/REDACTED/.julia/compiled/v1.12/MKL_jll/jl_kiOVxm --output-ji /home/REDACTED/.julia/compiled/v1.12/MKL_jll/jl_VotWNw --output-incremental=yes --startup-file=no --history-file=no --warn-overwrite=yes --color=auto -(dns block)If you need me to access, download, or install something from one of these locations, you can either: