diff --git a/dev/.documenter-siteinfo.json b/dev/.documenter-siteinfo.json index 27e8fdb..f1f5b4a 100644 --- a/dev/.documenter-siteinfo.json +++ b/dev/.documenter-siteinfo.json @@ -1 +1 @@ -{"documenter":{"julia_version":"1.10.5","generation_timestamp":"2024-09-24T14:04:13","documenter_version":"1.7.0"}} \ No newline at end of file +{"documenter":{"julia_version":"1.10.5","generation_timestamp":"2024-09-24T15:39:56","documenter_version":"1.7.0"}} \ No newline at end of file diff --git a/dev/api/index.html b/dev/api/index.html index f480b34..15fcf3f 100644 --- a/dev/api/index.html +++ b/dev/api/index.html @@ -4,4 +4,4 @@ rng = Xoshiro(0), init_params = Lux.initialparameters(rng, chain), eltype = Float64, - name)

Create an ODESystem with a neural network inside.

source + name)

Create an ODESystem with a neural network inside.

source diff --git a/dev/assets/Manifest.toml b/dev/assets/Manifest.toml index 07343b6..97cc7ea 100644 --- a/dev/assets/Manifest.toml +++ b/dev/assets/Manifest.toml @@ -2,7 +2,7 @@ julia_version = "1.10.5" manifest_format = "2.0" -project_hash = "13cdf47e4d79ec2239dc866f36a9208e842a0657" +project_hash = "b0da2399b7943a07caea65e5018f0f5983441c65" [[deps.ADTypes]] git-tree-sha1 = "5a5eafb8344b81b8c2237f8a6f6b3602b3f6180e" @@ -140,9 +140,34 @@ git-tree-sha1 = "c06a868224ecba914baa6942988e2f2aade419be" uuid = "a9b6321e-bd34-4604-b9c9-b65b8de01458" version = "0.1.0" +[[deps.BangBang]] +deps = ["Compat", "ConstructionBase", "InitialValues", "LinearAlgebra", "Requires", "Setfield", "Tables"] +git-tree-sha1 = "7aa7ad1682f3d5754e3491bb59b8103cae28e3a3" +uuid = "198e06fe-97b7-11e9-32a5-e1d131e6ad66" +version = "0.3.40" + + [deps.BangBang.extensions] + BangBangChainRulesCoreExt = "ChainRulesCore" + BangBangDataFramesExt = "DataFrames" + BangBangStaticArraysExt = "StaticArrays" + BangBangStructArraysExt = "StructArrays" + BangBangTypedTablesExt = "TypedTables" + + [deps.BangBang.weakdeps] + ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" + DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" + StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" + StructArrays = "09ab397b-f2b6-538f-b94a-2f83cf4a842a" + TypedTables = "9d95f2ec-7b3d-5a63-8d20-e2491e220bb9" + [[deps.Base64]] uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" +[[deps.Baselet]] +git-tree-sha1 = "aebf55e6d7795e02ca500a689d326ac979aaf89e" +uuid = "9718e550-a3fa-408a-8086-8db961cd8217" +version = "0.1.1" + [[deps.Bijections]] git-tree-sha1 = "d8b0439d2be438a5f2cd68ec158fe08a7b2595b7" uuid = "e2ed5e7c-b2de-5872-ae92-c73ca462fb04" @@ -364,6 +389,12 @@ weakdeps = ["IntervalSets", "LinearAlgebra", "StaticArrays"] ConstructionBaseLinearAlgebraExt = "LinearAlgebra" ConstructionBaseStaticArraysExt = "StaticArrays" +[[deps.ContextVariablesX]] +deps = ["Compat", "Logging", "UUIDs"] +git-tree-sha1 = "25cc3803f1030ab855e383129dcd3dc294e322cc" +uuid = "6add18c4-b38d-439d-96f6-d6bc489c04c5" +version = "0.1.3" + [[deps.Contour]] git-tree-sha1 = "439e35b0b36e2e5881738abc8857bd92ad6ff9a8" uuid = "d38c429a-6771-53c6-b99e-75d170b6e991" @@ -412,6 +443,11 @@ git-tree-sha1 = "fc173b380865f70627d7dd1190dc2fce6cc105af" uuid = "ee1fde0b-3d02-5ea6-8484-8dfef6360eab" version = "1.14.10+0" +[[deps.DefineSingletons]] +git-tree-sha1 = "0fba8b706d0178b4dc7fd44a96a92382c9065c2c" +uuid = "244e2a9f-e319-4986-a169-4d1fe445cd52" +version = "0.1.2" + [[deps.DelimitedFiles]] deps = ["Mmap"] git-tree-sha1 = "9e2f36d3c96a820c678f2f1f1782582fcf685bae" @@ -531,9 +567,9 @@ version = "0.5.17" [[deps.DispatchDoctor]] deps = ["MacroTools", "Preferences"] -git-tree-sha1 = "c2acd1de2c4c357928f9fb6b60b402d914621378" +git-tree-sha1 = "19eec8ee5cde1c10aa5e5e0f25d10a3b4c8f8f12" uuid = "8d63f2c5-f18a-4cf2-ba9d-b3f60fc568c8" -version = "0.4.14" +version = "0.4.15" weakdeps = ["ChainRulesCore", "EnzymeCore"] [deps.DispatchDoctor.extensions] @@ -597,9 +633,9 @@ version = "0.6.0" [[deps.DynamicQuantities]] deps = ["Compat", "DispatchDoctor", "PackageExtensionCompat", "TestItems", "Tricks"] -git-tree-sha1 = "317430fb3dcfb17831eb0e4bcd852358a48a4e7a" +git-tree-sha1 = "82b3ab10e1d14cd79d813d30005d52ac3ef9ea97" uuid = "06fc5a27-2a28-4c7c-a15d-362465fb6821" -version = "1.0.0" +version = "1.1.0" [deps.DynamicQuantities.extensions] DynamicQuantitiesLinearAlgebraExt = "LinearAlgebra" @@ -670,9 +706,9 @@ version = "0.8.5" [[deps.FFMPEG]] deps = ["FFMPEG_jll"] -git-tree-sha1 = "b57e3acbe22f8484b4b5ff66a7499717fe1a9cc8" +git-tree-sha1 = "53ebe7511fa11d33bec688a9178fac4e49eeee00" uuid = "c87230d0-a227-11e9-1b43-d7ebe4e7570a" -version = "0.4.1" +version = "0.4.2" [[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"] @@ -692,6 +728,18 @@ git-tree-sha1 = "c6033cc3892d0ef5bb9cd29b7f2f0331ea5184ea" uuid = "f5851436-0d7a-5f13-b9de-f02708fd171a" version = "3.3.10+0" +[[deps.FLoops]] +deps = ["BangBang", "Compat", "FLoopsBase", "InitialValues", "JuliaVariables", "MLStyle", "Serialization", "Setfield", "Transducers"] +git-tree-sha1 = "0a2e5873e9a5f54abb06418d57a8df689336a660" +uuid = "cc61a311-1640-44b5-9fba-1b764f453329" +version = "0.2.2" + +[[deps.FLoopsBase]] +deps = ["ContextVariablesX"] +git-tree-sha1 = "656f7a6859be8673bf1f35da5670246b923964f7" +uuid = "b9860ae5-e623-471e-878b-f6a53c775ea6" +version = "0.1.1" + [[deps.FastBroadcast]] deps = ["ArrayInterface", "LinearAlgebra", "Polyester", "Static", "StaticArrayInterface", "StrideArraysCore"] git-tree-sha1 = "ab1b34570bcdf272899062e1a56285a53ecaae08" @@ -948,6 +996,11 @@ git-tree-sha1 = "d1b1b796e47d94588b3757fe84fbf65a5ec4a80d" uuid = "d25df0c9-e2be-5dd7-82c8-3ad0b3e990b9" version = "0.1.5" +[[deps.InitialValues]] +git-tree-sha1 = "4da0f88e9a39111c2fa3add390ab15f3a44f3ca3" +uuid = "22cec73e-a1b8-11e9-2c92-598750a2cf9c" +version = "0.3.1" + [[deps.IntegerMathUtils]] git-tree-sha1 = "b8ffb903da9f7b8cf695a8bead8e01814aa24b30" uuid = "18e54dd8-cb9d-406c-a71d-865a43cbb235" @@ -975,9 +1028,9 @@ weakdeps = ["Random", "RecipesBase", "Statistics"] IntervalSetsStatisticsExt = "Statistics" [[deps.InverseFunctions]] -git-tree-sha1 = "2787db24f4e03daf859c6509ff87764e4182f7d1" +git-tree-sha1 = "a779299d77cd080bf77b97535acecd73e1c5e5cb" uuid = "3587e190-3f89-42d0-90ee-14403ec27112" -version = "0.1.16" +version = "0.1.17" weakdeps = ["Dates", "Test"] [deps.InverseFunctions.extensions] @@ -1029,6 +1082,12 @@ git-tree-sha1 = "bb4696471330275adfd6c78c6173f276e8c067aa" uuid = "98e50ef6-434e-11e9-1051-2b60c6c9e899" version = "1.0.60" +[[deps.JuliaVariables]] +deps = ["MLStyle", "NameResolution"] +git-tree-sha1 = "49fb3cb53362ddadb4415e9b73926d6b40709e70" +uuid = "b14d175d-62b4-44ba-8fb7-3064adc8c3ec" +version = "0.2.4" + [[deps.JumpProcesses]] deps = ["ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "FunctionWrappers", "Graphs", "LinearAlgebra", "Markdown", "PoissonRandom", "Random", "RandomNumbers", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "StaticArrays", "SymbolicIndexingInterface", "UnPack"] git-tree-sha1 = "6e0fb267f2c869df59b6bf9f8cb0f2794f2d85e9" @@ -1499,6 +1558,12 @@ git-tree-sha1 = "bc38dff0548128765760c79eb7388a4b37fae2c8" uuid = "d8e11817-5142-5d16-987a-aa16d5891078" version = "0.4.17" +[[deps.MLUtils]] +deps = ["ChainRulesCore", "Compat", "DataAPI", "DelimitedFiles", "FLoops", "NNlib", "Random", "ShowCases", "SimpleTraits", "Statistics", "StatsBase", "Tables", "Transducers"] +git-tree-sha1 = "b45738c2e3d0d402dffa32b2c1654759a2ac35a4" +uuid = "f1d291b0-491e-4a28-83b9-f70985020b54" +version = "0.4.4" + [[deps.MacroTools]] deps = ["Markdown", "Random"] git-tree-sha1 = "2fa9ee3e63fd3a4f7a9a4f4744a52f4856de82df" @@ -1608,6 +1673,12 @@ git-tree-sha1 = "c13304c81eec1ed3af7fc20e75fb6b26092a1102" uuid = "442fdcdd-2543-5da2-b0f3-8c86c306513e" version = "0.3.2" +[[deps.MicroCollections]] +deps = ["BangBang", "InitialValues", "Setfield"] +git-tree-sha1 = "629afd7d10dbc6935ec59b32daeb33bc4460a42e" +uuid = "128add7d-3638-4c79-886c-908ea0c25c34" +version = "0.1.4" + [[deps.Missings]] deps = ["DataAPI"] git-tree-sha1 = "ec4f7fbeab05d7747bdf98eb74d130a2a2ed298d" @@ -1618,10 +1689,10 @@ version = "1.2.0" uuid = "a63ad114-7e13-5084-954f-fe012c677804" [[deps.ModelingToolkit]] -deps = ["AbstractTrees", "ArrayInterface", "BlockArrays", "Combinatorics", "Compat", "ConstructionBase", "DataStructures", "DiffEqBase", "DiffEqCallbacks", "DiffEqNoiseProcess", "DiffRules", "Distributed", "Distributions", "DocStringExtensions", "DomainSets", "DynamicQuantities", "ExprTools", "Expronicon", "FindFirstFunctions", "ForwardDiff", "FunctionWrappersWrappers", "Graphs", "InteractiveUtils", "JuliaFormatter", "JumpProcesses", "Latexify", "Libdl", "LinearAlgebra", "MLStyle", "NaNMath", "NonlinearSolve", "OrderedCollections", "PrecompileTools", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLBase", "SciMLStructures", "Serialization", "Setfield", "SimpleNonlinearSolve", "SparseArrays", "SpecialFunctions", "StaticArrays", "SymbolicIndexingInterface", "SymbolicUtils", "Symbolics", "URIs", "UnPack", "Unitful"] -git-tree-sha1 = "1f63c7127bbabf22c58edc85dac72afa28fce375" +deps = ["AbstractTrees", "ArrayInterface", "BlockArrays", "Combinatorics", "Compat", "ConstructionBase", "DataStructures", "DiffEqBase", "DiffEqCallbacks", "DiffEqNoiseProcess", "DiffRules", "Distributed", "Distributions", "DocStringExtensions", "DomainSets", "DynamicQuantities", "ExprTools", "Expronicon", "FindFirstFunctions", "ForwardDiff", "FunctionWrappers", "FunctionWrappersWrappers", "Graphs", "InteractiveUtils", "JuliaFormatter", "JumpProcesses", "Latexify", "Libdl", "LinearAlgebra", "MLStyle", "NaNMath", "NonlinearSolve", "OrderedCollections", "PrecompileTools", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLBase", "SciMLStructures", "Serialization", "Setfield", "SimpleNonlinearSolve", "SparseArrays", "SpecialFunctions", "StaticArrays", "SymbolicIndexingInterface", "SymbolicUtils", "Symbolics", "URIs", "UnPack", "Unitful"] +git-tree-sha1 = "00140c3b93fbbbd317a71a65c578306d0d72b1be" uuid = "961ee093-0014-501f-94e3-6117800e7a78" -version = "9.40.0" +version = "9.41.0" [deps.ModelingToolkit.extensions] MTKBifurcationKitExt = "BifurcationKit" @@ -1643,9 +1714,9 @@ version = "1.5.0" [[deps.ModelingToolkitStandardLibrary]] deps = ["ChainRulesCore", "DiffEqBase", "IfElse", "LinearAlgebra", "ModelingToolkit", "Symbolics"] -git-tree-sha1 = "6120377d051db22e1cd00d9d54eb3f749a65b7fa" +git-tree-sha1 = "c72ac148f5f4ff6bb052f2d5bc413db8ab201dde" uuid = "16a59e39-deab-5bd0-87e4-056b12336739" -version = "2.12.0" +version = "2.13.0" [[deps.MozillaCACerts_jll]] uuid = "14a3606d-f60d-562e-9121-12d972cd8159" @@ -1702,6 +1773,12 @@ git-tree-sha1 = "0877504529a3e5c3343c6f8b4c0381e57e4387e4" uuid = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" version = "1.0.2" +[[deps.NameResolution]] +deps = ["PrettyPrint"] +git-tree-sha1 = "1a0fa0e9613f46c9b8c11eee38ebb4f590013c5e" +uuid = "71a1bf82-56d0-4bbc-8a3c-48b961074391" +version = "0.1.5" + [[deps.NamedDims]] deps = ["LinearAlgebra", "Pkg", "Statistics"] git-tree-sha1 = "90178dc801073728b8b2d0d8677d10909feb94d8" @@ -1804,9 +1881,9 @@ version = "1.4.3" [[deps.OpenSSL_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "1b35263570443fdd9e76c76b7062116e2f374ab8" +git-tree-sha1 = "7493f61f55a6cce7325f197443aa80d32554ba10" uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" -version = "3.0.15+0" +version = "3.0.15+1" [[deps.OpenSpecFun_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"] @@ -1833,16 +1910,16 @@ uuid = "3bd65402-5787-11e9-1adc-39752487f4e2" version = "0.3.3" [[deps.Optimization]] -deps = ["ADTypes", "ArrayInterface", "ConsoleProgressMonitor", "DocStringExtensions", "LBFGSB", "LinearAlgebra", "Logging", "LoggingExtras", "OptimizationBase", "Printf", "ProgressLogging", "Reexport", "SciMLBase", "SparseArrays", "TerminalLoggers"] -git-tree-sha1 = "0b2a631276dc92ab147535689fa43f1e22a657b8" +deps = ["ADTypes", "ArrayInterface", "ConsoleProgressMonitor", "DocStringExtensions", "LBFGSB", "LinearAlgebra", "Logging", "LoggingExtras", "MLUtils", "OptimizationBase", "Printf", "ProgressLogging", "Reexport", "SciMLBase", "SparseArrays", "TerminalLoggers"] +git-tree-sha1 = "ef6cd5f04320e39f6e61027295ed1b3f2fbbeab6" uuid = "7f7a1694-90dd-40f0-9382-eb1efda571ba" -version = "3.28.0" +version = "4.0.2" [[deps.OptimizationBase]] -deps = ["ADTypes", "ArrayInterface", "DocStringExtensions", "LinearAlgebra", "PDMats", "Reexport", "Requires", "SciMLBase", "SparseArrays", "SymbolicAnalysis", "SymbolicIndexingInterface", "Symbolics"] -git-tree-sha1 = "3e5e5e8cbe572200dcd94a6084a63ca68fe76279" +deps = ["ADTypes", "ArrayInterface", "DifferentiationInterface", "DocStringExtensions", "FastClosures", "LinearAlgebra", "PDMats", "Reexport", "Requires", "SciMLBase", "SparseArrays", "SparseConnectivityTracer", "SparseMatrixColorings", "SymbolicAnalysis", "SymbolicIndexingInterface", "Symbolics"] +git-tree-sha1 = "f6acffdbcd4288efaa500b495d078a677d224eb2" uuid = "bca83a33-5cc9-4baa-983d-23429ab6bcbb" -version = "1.5.0" +version = "2.0.4" [deps.OptimizationBase.extensions] OptimizationEnzymeExt = "Enzyme" @@ -1850,8 +1927,6 @@ version = "1.5.0" OptimizationForwardDiffExt = "ForwardDiff" OptimizationMTKExt = "ModelingToolkit" OptimizationReverseDiffExt = "ReverseDiff" - OptimizationSparseDiffExt = ["SparseDiffTools", "ReverseDiff"] - OptimizationTrackerExt = "Tracker" OptimizationZygoteExt = "Zygote" [deps.OptimizationBase.weakdeps] @@ -1860,15 +1935,18 @@ version = "1.5.0" ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" ModelingToolkit = "961ee093-0014-501f-94e3-6117800e7a78" ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" - SparseDiffTools = "47a9eef4-7e08-11e9-0b38-333d64bd3804" - Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" [[deps.OptimizationOptimisers]] deps = ["Optimisers", "Optimization", "Printf", "ProgressLogging", "Reexport"] -git-tree-sha1 = "6c12ab297301d706b542d8876e55bfadfe773b00" +git-tree-sha1 = "3509be535d7b3e1b41daf88e74468849c0139ee8" uuid = "42dfb2eb-d2b4-4451-abcd-913932933ac1" -version = "0.2.1" +version = "0.3.2" +weakdeps = ["MLDataDevices", "MLUtils"] + + [deps.OptimizationOptimisers.extensions] + OptimizationOptimisersMLDataDevicesExt = "MLDataDevices" + OptimizationOptimisersMLUtilsExt = "MLUtils" [[deps.Opus_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] @@ -2220,6 +2298,11 @@ git-tree-sha1 = "9306f6085165d270f7e3db02af26a400d580f5c6" uuid = "21216c6a-2e73-6563-6e65-726566657250" version = "1.4.3" +[[deps.PrettyPrint]] +git-tree-sha1 = "632eb4abab3449ab30c5e1afaa874f0b98b586e4" +uuid = "8162dcfd-2161-5ef2-ae6c-7681170c5f98" +version = "0.2.0" + [[deps.Primes]] deps = ["IntegerMathUtils"] git-tree-sha1 = "cb420f77dc474d23ee47ca8d14c90810cafe69e7" @@ -2423,9 +2506,9 @@ version = "0.6.43" [[deps.SciMLBase]] deps = ["ADTypes", "Accessors", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "Expronicon", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "SciMLStructures", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] -git-tree-sha1 = "c96f81c3e98d5e2f0848fb42aba4383d772c3bb7" +git-tree-sha1 = "71857d6bab17e7ac6802d86ffcc75423b8c1d812" uuid = "0bca4576-84f4-4d90-8ffe-ffa030f20462" -version = "2.53.1" +version = "2.54.0" [deps.SciMLBase.extensions] SciMLBaseChainRulesCoreExt = "ChainRulesCore" @@ -2482,6 +2565,11 @@ version = "1.1.1" deps = ["Distributed", "Mmap", "Random", "Serialization"] uuid = "1a1011a3-84de-559e-8e89-a11a2f7dc383" +[[deps.ShowCases]] +git-tree-sha1 = "7f534ad62ab2bd48591bdeac81994ea8c445e4a5" +uuid = "605ecd9f-84a6-4c9e-81e2-4798472b76a3" +version = "0.1.0" + [[deps.Showoff]] deps = ["Dates", "Grisu"] git-tree-sha1 = "91eddf657aca81df9ae6ceb20b959ae5653ad1de" @@ -2489,15 +2577,15 @@ uuid = "992d4aef-0814-514b-bc4d-f2e9a6c4116f" version = "1.0.3" [[deps.SimpleBufferStream]] -git-tree-sha1 = "874e8867b33a00e784c8a7e4b60afe9e037b74e1" +git-tree-sha1 = "f305871d2f381d21527c770d4788c06c097c9bc1" uuid = "777ac1f9-54b0-4bf8-805c-2214025038e7" -version = "1.1.0" +version = "1.2.0" [[deps.SimpleNonlinearSolve]] deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "DiffResults", "DifferentiationInterface", "FastClosures", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "MaybeInplace", "PrecompileTools", "Reexport", "SciMLBase", "Setfield", "StaticArraysCore"] -git-tree-sha1 = "536c0ee0b4b766ddee24220c6bb60932df4e2c39" +git-tree-sha1 = "97a7e10717bd27e600ba55da9d90a5628c1a403b" uuid = "727e6d20-b764-4bd8-a329-72de5adea6c7" -version = "1.12.1" +version = "1.12.2" [deps.SimpleNonlinearSolve.extensions] SimpleNonlinearSolveChainRulesCoreExt = "ChainRulesCore" @@ -2542,6 +2630,26 @@ deps = ["Libdl", "LinearAlgebra", "Random", "Serialization", "SuiteSparse_jll"] uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" version = "1.10.0" +[[deps.SparseConnectivityTracer]] +deps = ["ADTypes", "DocStringExtensions", "FillArrays", "LinearAlgebra", "Random", "Requires", "SparseArrays"] +git-tree-sha1 = "d60da13a3f752dd5f3cc7f25d03621b243c98614" +uuid = "9f842d2f-2579-4b1d-911e-f412cf18a3f5" +version = "0.6.5" + + [deps.SparseConnectivityTracer.extensions] + SparseConnectivityTracerDataInterpolationsExt = "DataInterpolations" + SparseConnectivityTracerLogExpFunctionsExt = "LogExpFunctions" + SparseConnectivityTracerNNlibExt = "NNlib" + SparseConnectivityTracerNaNMathExt = "NaNMath" + SparseConnectivityTracerSpecialFunctionsExt = "SpecialFunctions" + + [deps.SparseConnectivityTracer.weakdeps] + DataInterpolations = "82cc6244-b520-54b8-b5a6-8a565e85f1d0" + LogExpFunctions = "2ab3a3ac-af41-5b50-aa03-7779005ae688" + NNlib = "872c559c-99b0-510c-b3b7-b6c96a88d5cd" + NaNMath = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" + SpecialFunctions = "276daf66-3868-5448-9aa4-cd146d93841b" + [[deps.SparseDiffTools]] deps = ["ADTypes", "Adapt", "ArrayInterface", "Compat", "DataStructures", "FiniteDiff", "ForwardDiff", "Graphs", "LinearAlgebra", "PackageExtensionCompat", "Random", "Reexport", "SciMLOperators", "Setfield", "SparseArrays", "StaticArrayInterface", "StaticArrays", "Tricks", "UnPack", "VertexSafeGraphs"] git-tree-sha1 = "c9e5d7ee75cf6a1ca3a22c9a6a4ef451792cf62b" @@ -2584,6 +2692,12 @@ weakdeps = ["ChainRulesCore"] [deps.SpecialFunctions.extensions] SpecialFunctionsChainRulesCoreExt = "ChainRulesCore" +[[deps.SplittablesBase]] +deps = ["Setfield", "Test"] +git-tree-sha1 = "e08a62abc517eb79667d0a29dc08a3b589516bb5" +uuid = "171d559e-b47b-412a-8079-5efa626c420e" +version = "0.1.15" + [[deps.StableRNGs]] deps = ["Random"] git-tree-sha1 = "83e6cce8324d49dfaf9ef059227f91ed4441a8e5" @@ -2700,9 +2814,9 @@ version = "3.7.1" [[deps.Symbolics]] deps = ["ADTypes", "ArrayInterface", "Bijections", "CommonWorldInvalidations", "ConstructionBase", "DataStructures", "DiffRules", "Distributions", "DocStringExtensions", "DomainSets", "DynamicPolynomials", "IfElse", "LaTeXStrings", "LambertW", "Latexify", "Libdl", "LinearAlgebra", "LogExpFunctions", "MacroTools", "Markdown", "NaNMath", "PrecompileTools", "Primes", "RecipesBase", "Reexport", "RuntimeGeneratedFunctions", "SciMLBase", "Setfield", "SparseArrays", "SpecialFunctions", "StaticArraysCore", "SymbolicIndexingInterface", "SymbolicLimits", "SymbolicUtils", "TermInterface"] -git-tree-sha1 = "8b48697e7fec6d4b7c4a9fe892857a5ed2bae7e8" +git-tree-sha1 = "e0af193e66eb5c1767f717437c0131d51f539f8a" uuid = "0c5d862f-8b57-4792-8d23-62f2024744c7" -version = "6.12.0" +version = "6.13.0" [deps.Symbolics.extensions] SymbolicsForwardDiffExt = "ForwardDiff" @@ -2790,6 +2904,26 @@ git-tree-sha1 = "e84b3a11b9bece70d14cce63406bbc79ed3464d2" uuid = "3bb67fe8-82b1-5028-8e26-92a6c54297fa" version = "0.11.2" +[[deps.Transducers]] +deps = ["Adapt", "ArgCheck", "BangBang", "Baselet", "CompositionsBase", "ConstructionBase", "DefineSingletons", "Distributed", "InitialValues", "Logging", "Markdown", "MicroCollections", "Requires", "Setfield", "SplittablesBase", "Tables"] +git-tree-sha1 = "3064e780dbb8a9296ebb3af8f440f787bb5332af" +uuid = "28d57a85-8fef-5791-bfe6-a80928e7c999" +version = "0.4.80" + + [deps.Transducers.extensions] + TransducersBlockArraysExt = "BlockArrays" + TransducersDataFramesExt = "DataFrames" + TransducersLazyArraysExt = "LazyArrays" + TransducersOnlineStatsBaseExt = "OnlineStatsBase" + TransducersReferenceablesExt = "Referenceables" + + [deps.Transducers.weakdeps] + BlockArrays = "8e7c35d0-a365-5155-bbbb-fb81a777f24e" + DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" + LazyArrays = "5078a376-72f3-5289-bfd5-ec5146d43c02" + OnlineStatsBase = "925886fa-5bf2-5e8e-b522-a9147a512338" + Referenceables = "42d2dcc6-99eb-4e98-b66c-637b7d73030e" + [[deps.TriangularSolve]] deps = ["CloseOpenIntervals", "IfElse", "LayoutPointers", "LinearAlgebra", "LoopVectorization", "Polyester", "Static", "VectorizationBase"] git-tree-sha1 = "be986ad9dac14888ba338c2554dcfec6939e1393" diff --git a/dev/assets/Project.toml b/dev/assets/Project.toml index 1692260..18de1ab 100644 --- a/dev/assets/Project.toml +++ b/dev/assets/Project.toml @@ -18,7 +18,7 @@ Lux = "1" ModelingToolkit = "9.9" ModelingToolkitNeuralNets = "1" ModelingToolkitStandardLibrary = "2.7" -Optimization = "3.24" +Optimization = "3.24, 4.0" OptimizationOptimisers = "0.2.1, 0.3" OrdinaryDiffEq = "6.74" Plots = "1" diff --git a/dev/friction/bb177919.svg b/dev/friction/02d32aba.svg similarity index 80% rename from dev/friction/bb177919.svg rename to dev/friction/02d32aba.svg index 3d4afb7..dcbfc2b 100644 --- a/dev/friction/bb177919.svg +++ b/dev/friction/02d32aba.svg @@ -1,149 +1,149 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev/friction/0d481402.svg b/dev/friction/b41f059d.svg similarity index 75% rename from dev/friction/0d481402.svg rename to dev/friction/b41f059d.svg index 98d6d97..723bdd3 100644 --- a/dev/friction/0d481402.svg +++ b/dev/friction/b41f059d.svg @@ -1,146 +1,146 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev/friction/d4f1cf24.svg b/dev/friction/b6d297a2.svg similarity index 70% rename from dev/friction/d4f1cf24.svg rename to dev/friction/b6d297a2.svg index e64bf2d..328e58a 100644 --- a/dev/friction/d4f1cf24.svg +++ b/dev/friction/b6d297a2.svg @@ -1,148 +1,148 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev/friction/4eabe0d9.svg b/dev/friction/cc41e81e.svg similarity index 76% rename from dev/friction/4eabe0d9.svg rename to dev/friction/cc41e81e.svg index 74b5fd1..236cb6a 100644 --- a/dev/friction/4eabe0d9.svg +++ b/dev/friction/cc41e81e.svg @@ -1,146 +1,146 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev/friction/index.html b/dev/friction/index.html index e0f5f72..afe7bf1 100644 --- a/dev/friction/index.html +++ b/dev/friction/index.html @@ -72,7 +72,7 @@ [8.965808955089017] [9.04079394249597] [9.115490076324514] - [9.18990042447709]

Let's plot it.

scatter(sol_ref, label = "velocity")
Example block output

That was the velocity. Let's also plot the friction force acting on the object throughout the simulation.

scatter(sol_ref.t, friction.(first.(sol_ref.u)), label = "friction force")
Example block output

Model Setup

Now, we will try to learn the same friction model using a neural network. We will use NeuralNetworkBlock to define neural network as a component. The input of the neural network is the velocity and the output is the friction force. We connect the neural network with the model using RealInputArray and RealOutputArray blocks.

function friction_ude(Fu)
+ [9.18990042447709]

Let's plot it.

scatter(sol_ref, label = "velocity")
Example block output

That was the velocity. Let's also plot the friction force acting on the object throughout the simulation.

scatter(sol_ref.t, friction.(first.(sol_ref.u)), label = "friction force")
Example block output

Model Setup

Now, we will try to learn the same friction model using a neural network. We will use NeuralNetworkBlock to define neural network as a component. The input of the neural network is the velocity and the output is the friction force. We connect the neural network with the model using RealInputArray and RealOutputArray blocks.

function friction_ude(Fu)
     @variables y(t) = 0.0
     @constants Fu = Fu
     @named nn_in = RealInputArray(nin = 1)
@@ -131,26 +131,26 @@
 op = OptimizationProblem(of, x0, (prob, sol_ref, get_vars, get_refs))
 res = solve(op, Adam(5e-3); maxiters = 10000, callback = cb)
retcode: Default
 u: 120-element Vector{Float64}:
- -2.3636356168896393
- -2.4192743320056964
-  2.0553216024376972
- -0.299925206928586
-  0.9657348367786275
- -2.4086786498364874
- -2.321253697551076
-  0.5512956241338778
- -2.436006830074837
- -2.4256518875480806
+ -2.3637128272169083
+ -2.419325259817553
+  2.055314750464916
+ -0.29997447699192004
+  0.9657138396582154
+ -2.408748160967478
+ -2.3213373506901007
+  0.5512794612474039
+ -2.436072303529551
+ -2.425698691324607
   ⋮
- -2.1175791469580205
-  1.231137921763269
- -1.0464754889905168
- -0.25115604090898497
- -1.5963390506010442
-  1.453488833212753
- -2.2825358674620055
- -1.411365516380704
- -1.5278017288524202

Visualization of results

We now have a trained neural network! We can check whether running the simulation of the model embedded with the neural network matches the data or not.

res_p = SciMLStructures.replace(Tunable(), prob.p, res.u)
+ -2.1176846790986064
+  1.2311814175719746
+ -1.0465605429246023
+ -0.2511701306776758
+ -1.5964125302790146
+  1.4535187677568038
+ -2.2826745226184655
+ -1.4114013904506582
+ -1.5278808184718486

Visualization of results

We now have a trained neural network! We can check whether running the simulation of the model embedded with the neural network matches the data or not.

res_p = SciMLStructures.replace(Tunable(), prob.p, res.u)
 res_prob = remake(prob, p = res_p)
 res_sol = solve(res_prob, Rodas4(), saveat = sol_ref.t)

Also, it would be interesting to check the simulation before the training to get an idea of the starting point of the network.

initial_sol = solve(prob, Rodas4(), saveat = sol_ref.t)
retcode: Success
 Interpolation: 1st order linear
@@ -197,6 +197,6 @@
  [12.001435208620208, 12.001435208620206]
  [12.123764312172343, 12.123764312172343]

Now we plot it.

scatter(sol_ref, idxs = [model_true.y], label = "ground truth velocity")
 plot!(res_sol, idxs = [sys.friction.y], label = "velocity after training")
-plot!(initial_sol, idxs = [sys.friction.y], label = "velocity before training")
Example block output

It matches the data well! Let's also check the predictions for the friction force and whether the network learnt the friction model or not.

scatter(sol_ref.t, friction.(first.(sol_ref.u)), label = "ground truth friction")
+plot!(initial_sol, idxs = [sys.friction.y], label = "velocity before training")
Example block output

It matches the data well! Let's also check the predictions for the friction force and whether the network learnt the friction model or not.

scatter(sol_ref.t, friction.(first.(sol_ref.u)), label = "ground truth friction")
 plot!(res_sol.t, getindex.(res_sol[sys.nn.output.u], 1),
-    label = "friction from neural network")
Example block output

It learns the friction model well!

+ label = "friction from neural network")Example block output

It learns the friction model well!

diff --git a/dev/index.html b/dev/index.html index 557e996..c54ba0a 100644 --- a/dev/index.html +++ b/dev/index.html @@ -2,17 +2,18 @@ Home · ModelingToolkitNeuralNets.jl

ModelingToolkitNeuralNets.jl

ModelingToolkitNeuralNets.jl is a package to create neural network components defined similar to MTKStandardLibrary components, to use them for solving Universal Differential Equations. It can be plugged to any part of the equations in an ODESystem using RealInputArray and RealOutputArray components which gives a lot of flexibility to add missing physics only to the relevant parts of the model.

Installation

To install ModelingToolkitNeuralNets.jl, use the Julia package manager:

using Pkg
 Pkg.add("ModelingToolkitNeuralNets")

Contributing

Reproducibility

The documentation of this SciML package was built using these direct dependencies,
Status `~/work/ModelingToolkitNeuralNets.jl/ModelingToolkitNeuralNets.jl/docs/Project.toml`
   [e30172f5] Documenter v1.7.0
-  [b2108857] Lux v1.0.5
-  [961ee093] ModelingToolkit v9.40.0
+⌃ [b2108857] Lux v1.0.5
+  [961ee093] ModelingToolkit v9.41.0
   [f162e290] ModelingToolkitNeuralNets v1.5.0 `~/work/ModelingToolkitNeuralNets.jl/ModelingToolkitNeuralNets.jl`
-  [16a59e39] ModelingToolkitStandardLibrary v2.12.0
-  [7f7a1694] Optimization v3.28.0
-  [42dfb2eb] OptimizationOptimisers v0.2.1
+  [16a59e39] ModelingToolkitStandardLibrary v2.13.0
+  [7f7a1694] Optimization v4.0.2
+  [42dfb2eb] OptimizationOptimisers v0.3.2
   [1dea7af3] OrdinaryDiffEq v6.89.0
   [91a5bcdd] Plots v1.40.8
   [53ae85a6] SciMLStructures v1.5.0
   [860ef19b] StableRNGs v1.0.2
-  [2efcf032] SymbolicIndexingInterface v0.3.30
and using this machine and Julia version.
Julia Version 1.10.5
+  [2efcf032] SymbolicIndexingInterface v0.3.30
+Info Packages marked with ⌃ have new versions available and may be upgradable.
and using this machine and Julia version.
Julia Version 1.10.5
 Commit 6f3fdf7b362 (2024-08-27 14:19 UTC)
 Build Info:
   Official https://julialang.org/ release
@@ -37,6 +38,8 @@
   [4fba245c] ArrayInterface v7.16.0
   [4c555306] ArrayLayouts v1.10.3
   [a9b6321e] Atomix v0.1.0
+⌅ [198e06fe] BangBang v0.3.40
+  [9718e550] Baselet v0.1.1
   [e2ed5e7c] Bijections v0.1.9
   [d1d4a3ce] BitFlags v0.1.9
   [62783981] BitTwiddlingConvenienceFunctions v0.1.6
@@ -64,6 +67,7 @@
   [f0e56b4a] ConcurrentUtilities v2.4.2
   [88cd18e8] ConsoleProgressMonitor v0.1.2
   [187b0558] ConstructionBase v1.5.8
+  [6add18c4] ContextVariablesX v0.1.3
   [d38c429a] Contour v0.6.3
   [adafc99b] CpuId v0.3.1
   [a8cc5b0e] Crayons v4.1.1
@@ -71,6 +75,7 @@
   [9a962f9c] DataAPI v1.16.0
   [864edb3b] DataStructures v0.18.20
   [e2d170a0] DataValueInterfaces v1.0.0
+  [244e2a9f] DefineSingletons v0.1.2
   [8bb1440f] DelimitedFiles v1.9.1
   [85a47980] Dictionaries v0.4.2
   [2b5f629d] DiffEqBase v6.155.1
@@ -79,13 +84,13 @@
   [163ba53b] DiffResults v1.1.0
   [b552c78f] DiffRules v1.15.1
   [a0c0ee7d] DifferentiationInterface v0.5.17
-  [8d63f2c5] DispatchDoctor v0.4.14
+  [8d63f2c5] DispatchDoctor v0.4.15
   [31c24e10] Distributions v0.25.111
   [ffbed154] DocStringExtensions v0.9.3
   [e30172f5] Documenter v1.7.0
   [5b8099bc] DomainSets v0.7.14
   [7c1d4256] DynamicPolynomials v0.6.0
-  [06fc5a27] DynamicQuantities v1.0.0
+  [06fc5a27] DynamicQuantities v1.1.0
   [b7d42ee7] Einsum v0.4.1
   [4e289a0a] EnumX v1.0.4
 ⌅ [f151be2c] EnzymeCore v0.7.8
@@ -93,8 +98,10 @@
   [d4d017d3] ExponentialUtilities v1.26.1
   [e2ba6199] ExprTools v0.1.10
 ⌅ [6b7a57c9] Expronicon v0.8.5
-  [c87230d0] FFMPEG v0.4.1
+  [c87230d0] FFMPEG v0.4.2
   [7a1cc6ca] FFTW v1.8.0
+  [cc61a311] FLoops v0.2.2
+  [b9860ae5] FLoopsBase v0.1.1
   [7034ab61] FastBroadcast v0.3.5
   [9aa1b823] FastClosures v0.3.2
   [29a986be] FastLapackInterface v2.0.4
@@ -123,9 +130,10 @@
   [615f187c] IfElse v0.1.1
   [313cdc1a] Indexing v1.1.1
   [d25df0c9] Inflate v0.1.5
+  [22cec73e] InitialValues v0.3.1
   [18e54dd8] IntegerMathUtils v0.1.2
   [8197267c] IntervalSets v0.7.10
-  [3587e190] InverseFunctions v0.1.16
+  [3587e190] InverseFunctions v0.1.17
   [92d709cd] IrrationalConstants v0.2.2
   [c8e1da08] IterTools v1.10.0
   [82899510] IteratorInterfaceExtensions v1.0.0
@@ -133,9 +141,10 @@
   [692b3bcd] JLLWrappers v1.6.0
   [682c06a0] JSON v0.21.4
   [98e50ef6] JuliaFormatter v1.0.60
+  [b14d175d] JuliaVariables v0.2.4
   [ccbc3e58] JumpProcesses v9.13.7
   [ef3ab10e] KLU v0.6.0
-  [63c18a36] KernelAbstractions v0.9.26
+⌃ [63c18a36] KernelAbstractions v0.9.26
   [2c470bb0] Kronecker v0.5.5
   [ba0b0d4f] Krylov v0.9.6
   [5be7bae1] LBFGSB v0.4.1
@@ -154,11 +163,12 @@
   [e6f89c97] LoggingExtras v1.0.3
   [bdcacae8] LoopVectorization v0.12.171
   [30fc2ffe] LossFunctions v0.11.2
-  [b2108857] Lux v1.0.5
+⌃ [b2108857] Lux v1.0.5
   [bb33d45b] LuxCore v1.0.1
-  [82251201] LuxLib v1.2.4
+⌃ [82251201] LuxLib v1.2.4
   [7e8f7934] MLDataDevices v1.1.1
   [d8e11817] MLStyle v0.4.17
+  [f1d291b0] MLUtils v0.4.4
   [1914dd2f] MacroTools v0.5.13
   [af67fdf4] ManifoldDiff v0.3.12
 ⌅ [1cead3c2] Manifolds v0.9.20
@@ -169,16 +179,18 @@
   [bb5d69b7] MaybeInplace v0.1.4
   [739be429] MbedTLS v1.1.9
   [442fdcdd] Measures v0.3.2
+⌅ [128add7d] MicroCollections v0.1.4
   [e1d29d7a] Missings v1.2.0
-  [961ee093] ModelingToolkit v9.40.0
+  [961ee093] ModelingToolkit v9.41.0
   [f162e290] ModelingToolkitNeuralNets v1.5.0 `~/work/ModelingToolkitNeuralNets.jl/ModelingToolkitNeuralNets.jl`
-  [16a59e39] ModelingToolkitStandardLibrary v2.12.0
+  [16a59e39] ModelingToolkitStandardLibrary v2.13.0
   [46d2c3a1] MuladdMacro v0.2.4
   [102ac46a] MultivariatePolynomials v0.5.6
   [d8a4904e] MutableArithmetics v1.4.6
   [d41bc354] NLSolversBase v7.8.3
   [872c559c] NNlib v0.9.24
   [77ba4419] NaNMath v1.0.2
+  [71a1bf82] NameResolution v0.1.5
   [356022a1] NamedDims v1.2.2
   [8913a72c] NonlinearSolve v3.14.0
   [6fd5a793] Octavian v0.3.28
@@ -186,9 +198,9 @@
   [4d8831e6] OpenSSL v1.4.3
   [429524aa] Optim v1.9.4
   [3bd65402] Optimisers v0.3.3
-  [7f7a1694] Optimization v3.28.0
-⌅ [bca83a33] OptimizationBase v1.5.0
-  [42dfb2eb] OptimizationOptimisers v0.2.1
+  [7f7a1694] Optimization v4.0.2
+  [bca83a33] OptimizationBase v2.0.4
+  [42dfb2eb] OptimizationOptimisers v0.3.2
   [bac558e1] OrderedCollections v1.6.3
   [1dea7af3] OrdinaryDiffEq v6.89.0
   [89bda076] OrdinaryDiffEqAdamsBashforthMoulton v1.1.0
@@ -237,6 +249,7 @@
   [d236fae5] PreallocationTools v0.4.24
   [aea7be01] PrecompileTools v1.2.1
   [21216c6a] Preferences v1.4.3
+  [8162dcfd] PrettyPrint v0.2.0
   [27ebfcd6] Primes v0.5.6
   [33c8b6b6] ProgressLogging v0.1.4
   [92933f4c] ProgressMeter v1.10.2
@@ -259,22 +272,25 @@
   [7e49a35a] RuntimeGeneratedFunctions v0.5.13
   [94e857df] SIMDTypes v0.1.0
   [476501e8] SLEEFPirates v0.6.43
-  [0bca4576] SciMLBase v2.53.1
+  [0bca4576] SciMLBase v2.54.0
   [c0aeaf25] SciMLOperators v0.3.10
   [53ae85a6] SciMLStructures v1.5.0
   [6c6a2e73] Scratch v1.2.1
   [efcf1570] Setfield v1.1.1
+  [605ecd9f] ShowCases v0.1.0
   [992d4aef] Showoff v1.0.3
-  [777ac1f9] SimpleBufferStream v1.1.0
-  [727e6d20] SimpleNonlinearSolve v1.12.1
+  [777ac1f9] SimpleBufferStream v1.2.0
+  [727e6d20] SimpleNonlinearSolve v1.12.2
   [699a6c99] SimpleTraits v0.9.4
   [ce78b400] SimpleUnPack v1.1.0
   [47aef6b3] SimpleWeightedGraphs v1.4.0
   [a2af1166] SortingAlgorithms v1.2.1
+  [9f842d2f] SparseConnectivityTracer v0.6.5
   [47a9eef4] SparseDiffTools v2.20.0
   [0a514795] SparseMatrixColorings v0.4.0
   [e56a9233] Sparspak v0.3.9
   [276daf66] SpecialFunctions v2.4.0
+  [171d559e] SplittablesBase v0.1.15
   [860ef19b] StableRNGs v1.0.2
   [aedffcd0] Static v1.1.1
   [0d7ed370] StaticArrayInterface v1.8.0
@@ -288,7 +304,7 @@
   [2efcf032] SymbolicIndexingInterface v0.3.30
   [19f23fe9] SymbolicLimits v0.2.2
   [d1185830] SymbolicUtils v3.7.1
-  [0c5d862f] Symbolics v6.12.0
+  [0c5d862f] Symbolics v6.13.0
   [3783bdb8] TableTraits v1.0.1
   [bd369af6] Tables v1.12.0
   [62fd8b95] TensorCore v0.1.1
@@ -299,6 +315,7 @@
   [a759f4b9] TimerOutputs v0.5.24
   [0796e94c] Tokenize v0.5.29
   [3bb67fe8] TranscodingStreams v0.11.2
+⌃ [28d57a85] Transducers v0.4.80
   [d5829a12] TriangularSolve v0.2.1
   [410a4b4d] Tricks v0.1.9
   [781d530d] TruncatedStacktraces v1.4.0
@@ -350,7 +367,7 @@
   [38a345b3] Libuuid_jll v2.40.1+0
   [856f044c] MKL_jll v2024.2.0+0
   [e7412a2a] Ogg_jll v1.3.5+1
-  [458c3c95] OpenSSL_jll v3.0.15+0
+  [458c3c95] OpenSSL_jll v3.0.15+1
   [efe28fd5] OpenSpecFun_jll v0.5.5+0
   [91d4177d] Opus_jll v1.3.3+0
   [36c8627f] Pango_jll v1.54.1+0
@@ -455,4 +472,4 @@
   [8e850b90] libblastrampoline_jll v5.11.0+0
   [8e850ede] nghttp2_jll v1.52.0+1
   [3f19e933] p7zip_jll v17.4.0+2
-Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m`

You can also download the manifest file and the project file.

+Info Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading. To see why use `status --outdated -m`

You can also download the manifest file and the project file.