From bc5193a68d594a8c62e631bf537e8cd06503baa3 Mon Sep 17 00:00:00 2001 From: Penelope Yong Date: Fri, 9 May 2025 19:08:32 +0100 Subject: [PATCH 1/8] Update to Turing 0.38 --- Manifest.toml | 711 +++++++++++----------- Project.toml | 3 +- usage/automatic-differentiation/index.qmd | 25 +- 3 files changed, 371 insertions(+), 368 deletions(-) diff --git a/Manifest.toml b/Manifest.toml index d86c9e5e0..c2e3cfde3 100644 --- a/Manifest.toml +++ b/Manifest.toml @@ -1,8 +1,8 @@ # This file is machine-generated - editing it directly is not advised -julia_version = "1.11.4" +julia_version = "1.11.5" manifest_format = "2.0" -project_hash = "f8ede0ee89806fd59fc0feecd3210fa53189aa73" +project_hash = "451ef37239e6a37e494e660005a325d7a0d8517f" [[deps.ADTypes]] git-tree-sha1 = "e2478490447631aedba0823d4d7a80b2cc8cdb32" @@ -28,9 +28,9 @@ weakdeps = ["ChainRulesCore", "Test"] [[deps.AbstractGPs]] deps = ["ChainRulesCore", "Distributions", "FillArrays", "IrrationalConstants", "KernelFunctions", "LinearAlgebra", "PDMats", "Random", "RecipesBase", "Reexport", "Statistics", "StatsBase", "Test"] -git-tree-sha1 = "1d15dd1f8658f4efcc4a8e779a5d688733e4a1f0" +git-tree-sha1 = "8a05cefb7c891378c89576bd4865f34d010c9ece" uuid = "99985d1d-32ba-4be9-9821-2ec096f28918" -version = "0.5.23" +version = "0.5.24" [[deps.AbstractMCMC]] deps = ["BangBang", "ConsoleProgressMonitor", "Distributed", "FillArrays", "LogDensityProblems", "Logging", "LoggingExtras", "ProgressLogging", "Random", "StatsBase", "TerminalLoggers", "Transducers"] @@ -40,9 +40,9 @@ version = "5.6.0" [[deps.AbstractPPL]] deps = ["AbstractMCMC", "Accessors", "DensityInterface", "JSON", "Random", "StatsBase"] -git-tree-sha1 = "b155685b5daa9d9d19dfe42684a53fa8cbbb83b8" +git-tree-sha1 = "fc3a433ade4210c5c82d8454ff060014ed94d6f0" uuid = "7a57a42e-76ec-4ea3-a279-07e840d6d9cf" -version = "0.10.1" +version = "0.11.0" [[deps.AbstractTrees]] git-tree-sha1 = "2d9c9a55f9c93e8887ad391fbae72f8ef55e1177" @@ -85,26 +85,30 @@ weakdeps = ["SparseArrays", "StaticArrays"] AdaptStaticArraysExt = "StaticArrays" [[deps.AdvancedHMC]] -deps = ["AbstractMCMC", "ArgCheck", "DocStringExtensions", "LinearAlgebra", "LogDensityProblems", "LogDensityProblemsAD", "ProgressMeter", "Random", "Requires", "Setfield", "SimpleUnPack", "Statistics", "StatsBase", "StatsFuns"] -git-tree-sha1 = "3027ae3794d5205a5936272b02886a6c5ebaaa60" +deps = ["AbstractMCMC", "ArgCheck", "DocStringExtensions", "LinearAlgebra", "LogDensityProblems", "LogDensityProblemsAD", "ProgressMeter", "Random", "Setfield", "Statistics", "StatsBase", "StatsFuns"] +git-tree-sha1 = "a340008fc9c43f85f3b3e33c0ea66fdd33ec79a9" uuid = "0bf59076-c3b1-5ca4-86bd-e02cd72cde3d" -version = "0.7.0" +version = "0.7.1" [deps.AdvancedHMC.extensions] + AdvancedHMCADTypesExt = "ADTypes" AdvancedHMCCUDAExt = "CUDA" + AdvancedHMCComponentArraysExt = "ComponentArrays" AdvancedHMCMCMCChainsExt = "MCMCChains" AdvancedHMCOrdinaryDiffEqExt = "OrdinaryDiffEq" [deps.AdvancedHMC.weakdeps] + ADTypes = "47edcb42-4c32-4615-8424-f2b9edc5f35b" CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" + ComponentArrays = "b0b7db55-cfe3-40fc-9ded-d10e2dbeff66" MCMCChains = "c7f686f2-ff18-58e9-bc7b-31028e88f75d" OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" [[deps.AdvancedMH]] deps = ["AbstractMCMC", "Distributions", "DocStringExtensions", "FillArrays", "LinearAlgebra", "LogDensityProblems", "Random", "Requires"] -git-tree-sha1 = "bcf97a5390262571d64d62566673bf1e72080d11" +git-tree-sha1 = "f3a278077383e196af143ca7daf57a303d7cac2f" uuid = "5b7e9947-ddc0-4b3f-9b55-0d8042f74170" -version = "0.8.6" +version = "0.8.7" weakdeps = ["DiffResults", "ForwardDiff", "MCMCChains", "StructArrays"] [deps.AdvancedMH.extensions] @@ -176,9 +180,9 @@ version = "3.5.1+1" [[deps.ArrayInterface]] deps = ["Adapt", "LinearAlgebra"] -git-tree-sha1 = "017fcb757f8e921fb44ee063a7aafe5f89b86dd1" +git-tree-sha1 = "bebb10cd3f0796dd1429ba61e43990ba391186e9" uuid = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9" -version = "7.18.0" +version = "7.18.1" [deps.ArrayInterface.extensions] ArrayInterfaceBandedMatricesExt = "BandedMatrices" @@ -252,13 +256,17 @@ version = "0.4.7" [[deps.BandedMatrices]] deps = ["ArrayLayouts", "FillArrays", "LinearAlgebra", "PrecompileTools"] -git-tree-sha1 = "614c6aba1d562191d9832df2af24f594aa7ebf61" +git-tree-sha1 = "e35c672b239c5105f597963c33e740eeb46cf0ab" uuid = "aae01518-5342-5314-be14-df237901396f" -version = "1.9.3" -weakdeps = ["SparseArrays"] +version = "1.9.4" [deps.BandedMatrices.extensions] BandedMatricesSparseArraysExt = "SparseArrays" + CliqueTreesExt = "CliqueTrees" + + [deps.BandedMatrices.weakdeps] + CliqueTrees = "60701a23-6482-424a-84db-faee86b9b1f8" + SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" [[deps.BangBang]] deps = ["Accessors", "ConstructionBase", "InitialValues", "LinearAlgebra"] @@ -291,12 +299,6 @@ git-tree-sha1 = "aebf55e6d7795e02ca500a689d326ac979aaf89e" uuid = "9718e550-a3fa-408a-8086-8db961cd8217" version = "0.1.1" -[[deps.BenchmarkTools]] -deps = ["Compat", "JSON", "Logging", "Printf", "Profile", "Statistics", "UUIDs"] -git-tree-sha1 = "e38fbc49a620f5d0b660d7f543db1009fe0f8336" -uuid = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf" -version = "1.6.0" - [[deps.Bijectors]] deps = ["ArgCheck", "ChainRulesCore", "ChangesOfVariables", "Distributions", "DocStringExtensions", "Functors", "InverseFunctions", "IrrationalConstants", "LinearAlgebra", "LogExpFunctions", "MappedArrays", "Random", "Reexport", "Roots", "SparseArrays", "Statistics"] git-tree-sha1 = "803e3c6bfd5c2655eb040d252144b7519ce1e70e" @@ -327,10 +329,10 @@ uuid = "62783981-4cbd-42fc-bca8-16325de8dc4b" version = "0.1.6" [[deps.BoundaryValueDiffEq]] -deps = ["ADTypes", "ArrayInterface", "BoundaryValueDiffEqAscher", "BoundaryValueDiffEqCore", "BoundaryValueDiffEqFIRK", "BoundaryValueDiffEqMIRK", "BoundaryValueDiffEqMIRKN", "BoundaryValueDiffEqShooting", "DiffEqBase", "FastClosures", "ForwardDiff", "LinearAlgebra", "Reexport", "SciMLBase"] -git-tree-sha1 = "e3829b5aa0cb49348956c81b927b5edf64cdf6bf" +deps = ["ADTypes", "BoundaryValueDiffEqAscher", "BoundaryValueDiffEqCore", "BoundaryValueDiffEqFIRK", "BoundaryValueDiffEqMIRK", "BoundaryValueDiffEqMIRKN", "BoundaryValueDiffEqShooting", "DiffEqBase", "FastClosures", "ForwardDiff", "LinearAlgebra", "Reexport", "SciMLBase"] +git-tree-sha1 = "ca42053e5c1f2c1ec52111a2ab3e5a0908d9276d" uuid = "764a87c0-6b3e-53db-9096-fe964310641d" -version = "5.16.0" +version = "5.16.1" [deps.BoundaryValueDiffEq.extensions] BoundaryValueDiffEqODEInterfaceExt = "ODEInterface" @@ -339,46 +341,46 @@ version = "5.16.0" ODEInterface = "54ca160b-1b9f-5127-a996-1867f4bc2a2c" [[deps.BoundaryValueDiffEqAscher]] -deps = ["ADTypes", "AlmostBlockDiagonals", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays"] -git-tree-sha1 = "a3ed69c1c0249a53622bd4435384c4e76ac547d9" +deps = ["ADTypes", "AlmostBlockDiagonals", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastClosures", "ForwardDiff", "LinearAlgebra", "PreallocationTools", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield"] +git-tree-sha1 = "61fbc62e8277c4d540e1e1954962ec2fdfca5965" uuid = "7227322d-7511-4e07-9247-ad6ff830280e" -version = "1.5.0" +version = "1.5.1" [[deps.BoundaryValueDiffEqCore]] -deps = ["ADTypes", "Adapt", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "ForwardDiff", "LineSearch", "LinearAlgebra", "LinearSolve", "Logging", "NonlinearSolveFirstOrder", "PreallocationTools", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays", "SparseConnectivityTracer", "SparseMatrixColorings"] -git-tree-sha1 = "832ade257129d0c222a53b66e2d7e6f5d937ae34" +deps = ["ADTypes", "Adapt", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "ForwardDiff", "LineSearch", "LinearAlgebra", "Logging", "NonlinearSolveFirstOrder", "PreallocationTools", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays", "SparseConnectivityTracer", "SparseMatrixColorings"] +git-tree-sha1 = "8278c1ff5aa1875e9167d2da8c419f5b8362a171" uuid = "56b672f2-a5fe-4263-ab2d-da677488eb3a" -version = "1.8.0" +version = "1.8.1" [[deps.BoundaryValueDiffEqFIRK]] -deps = ["ADTypes", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays"] -git-tree-sha1 = "a92feb2cbb12c6c9adc4d3c4e7427709e9477540" +deps = ["ADTypes", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LinearAlgebra", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays"] +git-tree-sha1 = "5030e5ef731082893f744272dc592978dd6fae7c" uuid = "85d9eb09-370e-4000-bb32-543851f73618" -version = "1.6.0" +version = "1.6.1" [[deps.BoundaryValueDiffEqMIRK]] -deps = ["ADTypes", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays"] -git-tree-sha1 = "4cd74dc128326804f780ad6e18ec4886279293de" +deps = ["ADTypes", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LinearAlgebra", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays"] +git-tree-sha1 = "c02fa2e95ccffe1dc7a4acb602c25740dfa8bfdf" uuid = "1a22d4ce-7765-49ea-b6f2-13c8438986a6" -version = "1.6.0" +version = "1.6.1" [[deps.BoundaryValueDiffEqMIRKN]] -deps = ["ADTypes", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays"] -git-tree-sha1 = "0db565e02c9784e254325b616a8dd6c0dfec7403" +deps = ["ADTypes", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LinearAlgebra", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays"] +git-tree-sha1 = "3f5635756bcffa7aa522e6dd61da39bbbe0cd3df" uuid = "9255f1d6-53bf-473e-b6bd-23f1ff009da4" -version = "1.5.0" +version = "1.5.1" [[deps.BoundaryValueDiffEqShooting]] -deps = ["ADTypes", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays"] -git-tree-sha1 = "7429a95010c57e67bd10e52dd3f276db4d2abdeb" +deps = ["ADTypes", "ArrayInterface", "BandedMatrices", "BoundaryValueDiffEqCore", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastAlmostBandedMatrices", "FastClosures", "ForwardDiff", "LinearAlgebra", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "SparseArrays"] +git-tree-sha1 = "400776e8f37030321d6e46576cf613142668cc55" uuid = "ed55bfe0-3725-4db6-871e-a1dc9f42a757" -version = "1.6.0" +version = "1.6.1" [[deps.BracketingNonlinearSolve]] deps = ["CommonSolve", "ConcreteStructs", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase"] -git-tree-sha1 = "47d6e355097ef6df3c39080a0045ecfd00ff514e" +git-tree-sha1 = "637ebe439ba587828fd997b7810d8171eed2ea1b" uuid = "70df07ce-3d50-431d-a3e7-ca6ddb60ac1e" -version = "1.1.1" +version = "1.2.0" weakdeps = ["ForwardDiff"] [deps.BracketingNonlinearSolve.extensions] @@ -452,11 +454,21 @@ weakdeps = ["SparseArrays"] [deps.ChainRulesCore.extensions] ChainRulesCoreSparseArraysExt = "SparseArrays" +[[deps.Chairmarks]] +deps = ["Printf", "Random"] +git-tree-sha1 = "9a49491e67e7a4d6f885c43d00bb101e6e5a434b" +uuid = "0ca39b1e-fe0b-4e98-acfc-b1656634c4de" +version = "1.3.1" +weakdeps = ["Statistics"] + + [deps.Chairmarks.extensions] + StatisticsChairmarksExt = ["Statistics"] + [[deps.ChangesOfVariables]] deps = ["LinearAlgebra"] -git-tree-sha1 = "799b25ca3a8a24936ae7b5c52ad194685fc3e6ef" +git-tree-sha1 = "3aa4bf1532aa2e14e0374c4fd72bed9a9d0d0f6c" uuid = "9e997f8a-9a97-42d5-a9f1-ce6bfc15e2c0" -version = "0.1.9" +version = "0.1.10" weakdeps = ["InverseFunctions", "Test"] [deps.ChangesOfVariables.extensions] @@ -489,9 +501,9 @@ version = "3.29.0" [[deps.ColorTypes]] deps = ["FixedPointNumbers", "Random"] -git-tree-sha1 = "c7acce7a7e1078a20a285211dd73cd3941a871d6" +git-tree-sha1 = "67e11ee83a43eb71ddc950302c53bf33f0690dfe" uuid = "3da002f7-5984-5a60-b8a6-cbb66c0b333f" -version = "0.12.0" +version = "0.12.1" weakdeps = ["StyledStrings"] [deps.ColorTypes.extensions] @@ -514,9 +526,9 @@ uuid = "5ae59095-9a9b-59fe-a467-6f913c188581" version = "0.13.0" [[deps.Combinatorics]] -git-tree-sha1 = "08c8b6831dc00bfea825826be0bc8336fc369860" +git-tree-sha1 = "8010b6bb3388abe68d95743dcbea77650bb2eddf" uuid = "861a8166-3701-5b0c-9a16-15d98fcdc6aa" -version = "1.0.2" +version = "1.0.3" [[deps.CommonSolve]] git-tree-sha1 = "0eee5eb66b1cf62cd6ad1b460238e60e4b09400c" @@ -550,10 +562,10 @@ uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" version = "1.1.1+0" [[deps.ComponentArrays]] -deps = ["Adapt", "ArrayInterface", "ChainRulesCore", "ConstructionBase", "ForwardDiff", "Functors", "LinearAlgebra", "StaticArrayInterface", "StaticArraysCore"] -git-tree-sha1 = "eac93b2a05d33465d50e5448aefba8c06a69f738" +deps = ["Adapt", "ArrayInterface", "ChainRulesCore", "ConstructionBase", "Functors", "LinearAlgebra", "StaticArrayInterface", "StaticArraysCore"] +git-tree-sha1 = "1ad20b11ee13c672a502bd1dbb5c10a52ab92492" uuid = "b0b7db55-cfe3-40fc-9ded-d10e2dbeff66" -version = "0.15.25" +version = "0.15.27" [deps.ComponentArrays.extensions] ComponentArraysGPUArraysExt = "GPUArrays" @@ -665,9 +677,9 @@ version = "1.11.0" [[deps.Dbus_jll]] deps = ["Artifacts", "Expat_jll", "JLLWrappers", "Libdl"] -git-tree-sha1 = "fc173b380865f70627d7dd1190dc2fce6cc105af" +git-tree-sha1 = "473e9afc9cf30814eb67ffa5f2db7df82c3ad9fd" uuid = "ee1fde0b-3d02-5ea6-8484-8dfef6360eab" -version = "1.14.10+0" +version = "1.16.2+0" [[deps.DefineSingletons]] git-tree-sha1 = "0fba8b706d0178b4dc7fd44a96a92382c9065c2c" @@ -676,9 +688,9 @@ version = "0.1.2" [[deps.DelayDiffEq]] deps = ["ArrayInterface", "DataStructures", "DiffEqBase", "LinearAlgebra", "Logging", "OrdinaryDiffEq", "OrdinaryDiffEqCore", "OrdinaryDiffEqDefault", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "OrdinaryDiffEqRosenbrock", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SimpleNonlinearSolve", "SimpleUnPack", "SymbolicIndexingInterface"] -git-tree-sha1 = "7123a01ba4ec2d4058bd14478afd5318c49ea6c1" +git-tree-sha1 = "8b416f6b1f9ef8df4c13dd0fe6c191752722b36f" uuid = "bcd4f6db-9728-5f36-b5f7-82caef46ccdb" -version = "5.52.0" +version = "5.53.1" [[deps.DelimitedFiles]] deps = ["Mmap"] @@ -693,10 +705,10 @@ uuid = "b429d917-457f-4dbc-8f4c-0cc954292b1d" version = "0.4.0" [[deps.DiffEqBase]] -deps = ["ArrayInterface", "ConcreteStructs", "DataStructures", "DocStringExtensions", "EnumX", "EnzymeCore", "FastBroadcast", "FastClosures", "FastPower", "FunctionWrappers", "FunctionWrappersWrappers", "LinearAlgebra", "Logging", "Markdown", "MuladdMacro", "Parameters", "PrecompileTools", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "Setfield", "Static", "StaticArraysCore", "Statistics", "TruncatedStacktraces"] -git-tree-sha1 = "4263b49db273d67f13b83af609712aed69ccf38a" +deps = ["ArrayInterface", "ConcreteStructs", "DataStructures", "DocStringExtensions", "EnumX", "EnzymeCore", "FastBroadcast", "FastClosures", "FastPower", "FunctionWrappers", "FunctionWrappersWrappers", "LinearAlgebra", "Logging", "Markdown", "MuladdMacro", "Parameters", "PrecompileTools", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "Setfield", "Static", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "TruncatedStacktraces"] +git-tree-sha1 = "6a0f6f17adbeb77688220cfb3e665c8f6e2a60ea" uuid = "2b5f629d-d688-5b77-993f-72d75c75574e" -version = "6.166.0" +version = "6.172.0" [deps.DiffEqBase.extensions] DiffEqBaseCUDAExt = "CUDA" @@ -772,9 +784,9 @@ version = "7.16.1" [[deps.DifferentiationInterface]] deps = ["ADTypes", "LinearAlgebra"] -git-tree-sha1 = "cf6dcb4b21bdd893fd45be70791d6dc89ca16506" +git-tree-sha1 = "8b9f605f582f633eeb9c3ec14effaed2dca6ef5c" uuid = "a0c0ee7d-e4b9-4e03-894e-1c5f64a51d63" -version = "0.6.48" +version = "0.6.53" [deps.DifferentiationInterface.extensions] DifferentiationInterfaceChainRulesCoreExt = "ChainRulesCore" @@ -784,6 +796,7 @@ version = "0.6.48" DifferentiationInterfaceFiniteDiffExt = "FiniteDiff" DifferentiationInterfaceFiniteDifferencesExt = "FiniteDifferences" DifferentiationInterfaceForwardDiffExt = ["ForwardDiff", "DiffResults"] + DifferentiationInterfaceGPUArraysCoreExt = "GPUArraysCore" DifferentiationInterfaceGTPSAExt = "GTPSA" DifferentiationInterfaceMooncakeExt = "Mooncake" DifferentiationInterfacePolyesterForwardDiffExt = ["PolyesterForwardDiff", "ForwardDiff", "DiffResults"] @@ -806,6 +819,7 @@ version = "0.6.48" FiniteDiff = "6a86dc24-6348-571c-b903-95158fe2bd41" FiniteDifferences = "26cc04aa-876d-5657-8c51-4c34ba976000" ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" + GPUArraysCore = "46192b85-c4d5-4398-a991-12ede77f4527" GTPSA = "b27dd330-f138-47c5-815b-40db9dd9b6e8" Mooncake = "da2b9cff-9c12-43a0-ae48-6db2b0edb7d6" PolyesterForwardDiff = "98d1487c-24ca-40b6-b7ab-df2af84e126b" @@ -847,9 +861,9 @@ version = "1.11.0" [[deps.Distributions]] deps = ["AliasTables", "FillArrays", "LinearAlgebra", "PDMats", "Printf", "QuadGK", "Random", "SpecialFunctions", "Statistics", "StatsAPI", "StatsBase", "StatsFuns"] -git-tree-sha1 = "0b4190661e8a4e51a842070e7dd4fae440ddb7f4" +git-tree-sha1 = "6d8b535fd38293bc54b88455465a1386f8ac1c3c" uuid = "31c24e10-a181-5473-b8eb-7969acd0382f" -version = "0.25.118" +version = "0.25.119" weakdeps = ["ChainRulesCore", "DensityInterface", "Test"] [deps.Distributions.extensions] @@ -859,9 +873,9 @@ weakdeps = ["ChainRulesCore", "DensityInterface", "Test"] [[deps.DistributionsAD]] deps = ["Adapt", "ChainRules", "ChainRulesCore", "Compat", "Distributions", "FillArrays", "LinearAlgebra", "PDMats", "Random", "Requires", "SpecialFunctions", "StaticArrays", "StatsFuns", "ZygoteRules"] -git-tree-sha1 = "02c2e6e6a137069227439fe884d729cca5b70e56" +git-tree-sha1 = "4acbf909e892ce1f94c39a138541566c1aad5e66" uuid = "ced4e74d-a319-5a8a-b0ac-84af2272839c" -version = "0.6.57" +version = "0.6.58" weakdeps = ["ForwardDiff", "LazyArrays", "ReverseDiff", "Tracker"] [deps.DistributionsAD.extensions] @@ -871,10 +885,9 @@ weakdeps = ["ForwardDiff", "LazyArrays", "ReverseDiff", "Tracker"] DistributionsADTrackerExt = "Tracker" [[deps.DocStringExtensions]] -deps = ["LibGit2"] -git-tree-sha1 = "2fb1e02f2b635d0845df5d7c167fec4dd739b00d" +git-tree-sha1 = "e7b7e6f178525d17c720ab9c081e4ef04429f860" uuid = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" -version = "0.9.3" +version = "0.9.4" [[deps.Downloads]] deps = ["ArgTools", "FileWatching", "LibCURL", "NetworkOptions"] @@ -883,15 +896,15 @@ version = "1.6.0" [[deps.DynamicHMC]] deps = ["ArgCheck", "DocStringExtensions", "FillArrays", "LinearAlgebra", "LogDensityProblems", "LogExpFunctions", "ProgressMeter", "Random", "Statistics", "TensorCast"] -git-tree-sha1 = "ba30c83b20dce95e7353b1d7f7f3a6d151722b55" +git-tree-sha1 = "08f33c9cce36fe618efc6d37c24c157eef5f752e" uuid = "bbc10e6e-7c05-544b-b16e-64fede858acb" -version = "3.5.0" +version = "3.5.1" [[deps.DynamicPPL]] -deps = ["ADTypes", "AbstractMCMC", "AbstractPPL", "Accessors", "BangBang", "Bijectors", "Compat", "ConstructionBase", "DifferentiationInterface", "Distributions", "DocStringExtensions", "InteractiveUtils", "LinearAlgebra", "LogDensityProblems", "MacroTools", "OrderedCollections", "Random", "Requires", "Test"] -git-tree-sha1 = "4070ee7251d99838b474581539d83884867b4bd4" +deps = ["ADTypes", "AbstractMCMC", "AbstractPPL", "Accessors", "BangBang", "Bijectors", "Chairmarks", "Compat", "ConstructionBase", "DifferentiationInterface", "Distributions", "DocStringExtensions", "InteractiveUtils", "LinearAlgebra", "LogDensityProblems", "MacroTools", "OrderedCollections", "Random", "Requires", "Statistics", "Test"] +git-tree-sha1 = "08ca94265f8203c605a85eb107709ede4d1c32b6" uuid = "366bfd00-2699-11ea-058f-f148b4cae6d8" -version = "0.35.5" +version = "0.36.1" [deps.DynamicPPL.extensions] DynamicPPLChainRulesCoreExt = ["ChainRulesCore"] @@ -917,15 +930,15 @@ uuid = "cad2338a-1db2-11e9-3401-43bc07c9ede2" version = "2.0.0" [[deps.EnumX]] -git-tree-sha1 = "bdb1942cd4c45e3c678fd11569d5cccd80976237" +git-tree-sha1 = "bddad79635af6aec424f53ed8aad5d7555dc6f00" uuid = "4e289a0a-7415-4d19-859d-a7e5c4648b56" -version = "1.0.4" +version = "1.0.5" [[deps.Enzyme]] deps = ["CEnum", "EnzymeCore", "Enzyme_jll", "GPUCompiler", "LLVM", "Libdl", "LinearAlgebra", "ObjectFile", "PrecompileTools", "Preferences", "Printf", "Random", "SparseArrays"] -git-tree-sha1 = "b83e375689f3c6cf769035b2a3b4332ebc692366" +git-tree-sha1 = "576002e6d84ede4fe132bff779f7841f8575e644" uuid = "7da242da-08ed-463a-9acd-ee780be4f1d9" -version = "0.13.34" +version = "0.13.41" [deps.Enzyme.extensions] EnzymeBFloat16sExt = "BFloat16s" @@ -954,9 +967,9 @@ weakdeps = ["Adapt"] [[deps.Enzyme_jll]] deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl", "TOML"] -git-tree-sha1 = "c29af735ddb2381732cdf5dd72fc32069315619d" +git-tree-sha1 = "4d023f07d5cda83b4b7d2af9b541075a81018e51" uuid = "7cc45869-7501-5eee-bdea-0790c847d4ef" -version = "0.0.173+0" +version = "0.0.175+0" [[deps.EpollShim_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] @@ -1015,10 +1028,10 @@ uuid = "7a1cc6ca-52ef-59f5-83cd-3a7055c09341" version = "1.8.1" [[deps.FFTW_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "4d81ed14783ec49ce9f2e168208a12ce1815aa25" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "6d6219a004b8cf1e0b4dbe27a2860b8e04eba0be" uuid = "f5851436-0d7a-5f13-b9de-f02708fd171a" -version = "3.3.10+3" +version = "3.3.11+0" [[deps.FLoops]] deps = ["BangBang", "Compat", "FLoopsBase", "InitialValues", "JuliaVariables", "MLStyle", "Serialization", "Setfield", "Transducers"] @@ -1034,9 +1047,9 @@ version = "0.1.1" [[deps.FastAlmostBandedMatrices]] deps = ["ArrayInterface", "ArrayLayouts", "BandedMatrices", "ConcreteStructs", "LazyArrays", "LinearAlgebra", "MatrixFactorizations", "PrecompileTools", "Reexport"] -git-tree-sha1 = "3f03d94c71126b6cfe20d3cbcc41c5cd27e1c419" +git-tree-sha1 = "9482a2b4face8ade73792c23a54796c79ed1bcbf" uuid = "9d29842c-ecb8-4973-b1e9-a27b1157504e" -version = "0.1.4" +version = "0.1.5" [[deps.FastBroadcast]] deps = ["ArrayInterface", "LinearAlgebra", "Polyester", "Static", "StaticArrayInterface", "StrideArraysCore"] @@ -1056,9 +1069,9 @@ uuid = "442a2c76-b920-505d-bb47-c5924d526838" version = "1.0.2" [[deps.FastPower]] -git-tree-sha1 = "58c3431137131577a7c379d00fea00be524338fb" +git-tree-sha1 = "df32f07f373f06260cd6af5371385b5ef85dd762" uuid = "a4df4552-cc26-4903-aec0-212e50a0e84b" -version = "1.1.1" +version = "1.1.2" [deps.FastPower.extensions] FastPowerEnzymeExt = "Enzyme" @@ -1161,9 +1174,9 @@ version = "0.14.25" [[deps.Fontconfig_jll]] deps = ["Artifacts", "Bzip2_jll", "Expat_jll", "FreeType2_jll", "JLLWrappers", "Libdl", "Libuuid_jll", "Zlib_jll"] -git-tree-sha1 = "21fac3c77d7b5a9fc03b0ec503aa1a6392c34d2b" +git-tree-sha1 = "301b5d5d731a0654825f1f2e906990f7141a106b" uuid = "a3f928ae-7b40-5064-980b-68af3947d34b" -version = "2.15.0+0" +version = "2.16.0+0" [[deps.Format]] git-tree-sha1 = "9c68794ef81b08086aeb32eeaf33531668d5f5fc" @@ -1182,15 +1195,15 @@ weakdeps = ["StaticArrays"] [[deps.FreeType2_jll]] deps = ["Artifacts", "Bzip2_jll", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "786e968a8d2fb167f2e4880baba62e0e26bd8e4e" +git-tree-sha1 = "2c5512e11c791d1baed2049c5652441b28fc6a31" uuid = "d7e528f0-a631-5988-bf34-fe36492bcfd7" -version = "2.13.3+1" +version = "2.13.4+0" [[deps.FriBidi_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "846f7026a9decf3679419122b49f8a1fdb48d2d5" +git-tree-sha1 = "7a214fdac5ed5f59a22c2d9a885a16da1c74bbc7" uuid = "559328eb-81f9-559d-9380-de523a88c83c" -version = "1.0.16+0" +version = "1.0.17+0" [[deps.FunctionProperties]] deps = ["Cassette", "DiffRules"] @@ -1233,40 +1246,40 @@ uuid = "38e38edf-8417-5370-95a0-9cbb8c7f171a" version = "1.9.0" [[deps.GPUArrays]] -deps = ["Adapt", "GPUArraysCore", "LLVM", "LinearAlgebra", "Printf", "Random", "Reexport", "Serialization", "Statistics"] -git-tree-sha1 = "62ee71528cca49be797076a76bdc654a170a523e" +deps = ["Adapt", "GPUArraysCore", "KernelAbstractions", "LLVM", "LinearAlgebra", "Printf", "Random", "Reexport", "ScopedValues", "Serialization", "Statistics"] +git-tree-sha1 = "eea7b3a1964b4de269bb380462a9da604be7fcdb" uuid = "0c68f7d7-f131-5f86-a1c3-88cf8149b2d7" -version = "10.3.1" +version = "11.2.2" [[deps.GPUArraysCore]] deps = ["Adapt"] -git-tree-sha1 = "ec632f177c0d990e64d955ccc1b8c04c485a0950" +git-tree-sha1 = "83cf05ab16a73219e5f6bd1bdfa9848fa24ac627" uuid = "46192b85-c4d5-4398-a991-12ede77f4527" -version = "0.1.6" +version = "0.2.0" [[deps.GPUCompiler]] -deps = ["ExprTools", "InteractiveUtils", "LLVM", "Libdl", "Logging", "PrecompileTools", "Preferences", "Scratch", "Serialization", "TOML", "TimerOutputs", "UUIDs"] -git-tree-sha1 = "199f213e40a7982e9138bc9edc3299419d510390" +deps = ["ExprTools", "InteractiveUtils", "LLVM", "Libdl", "Logging", "PrecompileTools", "Preferences", "Scratch", "Serialization", "TOML", "Tracy", "UUIDs"] +git-tree-sha1 = "43c2e60efa2badefe7a32a50b586b4ac1b8b8249" uuid = "61eb1bfa-7361-4325-ad38-22787b887f55" -version = "1.2.0" +version = "1.4.0" [[deps.GR]] deps = ["Artifacts", "Base64", "DelimitedFiles", "Downloads", "GR_jll", "HTTP", "JSON", "Libdl", "LinearAlgebra", "Preferences", "Printf", "Qt6Wayland_jll", "Random", "Serialization", "Sockets", "TOML", "Tar", "Test", "p7zip_jll"] -git-tree-sha1 = "0ff136326605f8e06e9bcf085a356ab312eef18a" +git-tree-sha1 = "7ffa4049937aeba2e5e1242274dc052b0362157a" uuid = "28b8d3ca-fb5f-59d9-8090-bfdbd6d07a71" -version = "0.73.13" +version = "0.73.14" [[deps.GR_jll]] deps = ["Artifacts", "Bzip2_jll", "Cairo_jll", "FFMPEG_jll", "Fontconfig_jll", "FreeType2_jll", "GLFW_jll", "JLLWrappers", "JpegTurbo_jll", "Libdl", "Libtiff_jll", "Pixman_jll", "Qt6Base_jll", "Zlib_jll", "libpng_jll"] -git-tree-sha1 = "9cb62849057df859575fc1dda1e91b82f8609709" +git-tree-sha1 = "98fc192b4e4b938775ecd276ce88f539bcec358e" uuid = "d2c73de3-f751-5644-a686-071e5b155ba9" -version = "0.73.13+0" +version = "0.73.14+0" [[deps.GenericSchur]] deps = ["LinearAlgebra", "Printf"] -git-tree-sha1 = "af49a0851f8113fcfae2ef5027c6d49d0acec39b" +git-tree-sha1 = "f88e0ba1f6b42121a7c1dfe93a9687d8e164c91b" uuid = "c145ed77-6b09-5dd9-b285-bf645a82121e" -version = "0.5.4" +version = "0.5.5" [[deps.Gettext_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Libiconv_jll", "Pkg", "XML2_jll"] @@ -1281,16 +1294,16 @@ uuid = "7746bdde-850d-59dc-9ae8-88ece973131d" version = "2.82.4+0" [[deps.Graphite2_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "01979f9b37367603e2848ea225918a3b3861b606" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "8a6dbda1fd736d60cc477d99f2e7a042acfa46e8" uuid = "3b182d85-2403-5c21-9c21-1e1f0cc25472" -version = "1.3.14+1" +version = "1.3.15+0" [[deps.Graphs]] deps = ["ArnoldiMethod", "Compat", "DataStructures", "Distributed", "Inflate", "LinearAlgebra", "Random", "SharedArrays", "SimpleTraits", "SparseArrays", "Statistics"] -git-tree-sha1 = "1dc470db8b1131cfc7fb4c115de89fe391b9e780" +git-tree-sha1 = "3169fd3440a02f35e549728b0890904cfd4ae58a" uuid = "86223c79-3864-5bf0-83f7-82e725a168b6" -version = "1.12.0" +version = "1.12.1" [[deps.Grisu]] git-tree-sha1 = "53bb909d1151e57e2484c3d1b53e19552b887fb2" @@ -1317,9 +1330,9 @@ version = "1.14.6+0" [[deps.HTTP]] deps = ["Base64", "CodecZlib", "ConcurrentUtilities", "Dates", "ExceptionUnwrapping", "Logging", "LoggingExtras", "MbedTLS", "NetworkOptions", "OpenSSL", "PrecompileTools", "Random", "SimpleBufferStream", "Sockets", "URIs", "UUIDs"] -git-tree-sha1 = "c67b33b085f6e2faf8bf79a61962e7339a81129c" +git-tree-sha1 = "f93655dc73d7a0b4a368e3c0bce296ae035ad76e" uuid = "cd3eb016-35fb-5094-929b-558a96fad6f3" -version = "1.10.15" +version = "1.10.16" [[deps.HarfBuzz_jll]] deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "Graphite2_jll", "JLLWrappers", "Libdl", "Libffi_jll"] @@ -1410,9 +1423,9 @@ weakdeps = ["Unitful"] InterpolationsUnitfulExt = "Unitful" [[deps.IntervalSets]] -git-tree-sha1 = "dba9ddf07f77f60450fe5d2e2beb9854d9a49bd0" +git-tree-sha1 = "5fbb102dcb8b1a858111ae81d56682376130517d" uuid = "8197267c-284f-5f27-9208-e0e47529a953" -version = "0.7.10" +version = "0.7.11" weakdeps = ["Random", "RecipesBase", "Statistics"] [deps.IntervalSets.extensions] @@ -1451,10 +1464,10 @@ uuid = "82899510-4779-5014-852e-03e436cf321d" version = "1.0.0" [[deps.JLFzf]] -deps = ["Pipe", "REPL", "Random", "fzf_jll"] -git-tree-sha1 = "71b48d857e86bf7a1838c4736545699974ce79a2" +deps = ["REPL", "Random", "fzf_jll"] +git-tree-sha1 = "82f7acdc599b65e0f8ccd270ffa1467c21cb647b" uuid = "1019f520-868f-41f5-a6de-eb00f4b6a39c" -version = "0.1.9" +version = "0.1.11" [[deps.JLLWrappers]] deps = ["Artifacts", "Preferences"] @@ -1488,9 +1501,9 @@ 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 = "3ba034493e21efc9ba61268dc0faa0c383bb76a5" +git-tree-sha1 = "f2bdec5b4580414aee3178c8caa6e46c344c0bbc" uuid = "ccbc3e58-028d-4f4c-8cd5-9ae44345cda5" -version = "9.14.2" +version = "9.14.3" weakdeps = ["FastBroadcast"] [[deps.KernelAbstractions]] @@ -1519,9 +1532,9 @@ version = "0.10.65" [[deps.Krylov]] deps = ["LinearAlgebra", "Printf", "SparseArrays"] -git-tree-sha1 = "b29d37ce30fa401a4563b18880ab91f979a29734" +git-tree-sha1 = "b94257a1a8737099ca40bc7271a8b374033473ed" uuid = "ba0b0d4f-ebba-5204-a429-3ac8c609bfb7" -version = "0.9.10" +version = "0.10.1" [[deps.LAME_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] @@ -1543,9 +1556,9 @@ version = "4.0.1+0" [[deps.LLVM]] deps = ["CEnum", "LLVMExtra_jll", "Libdl", "Preferences", "Printf", "Unicode"] -git-tree-sha1 = "5fcfea6df2ff3e4da708a40c969c3812162346df" +git-tree-sha1 = "f0e861832695dbb70e710606a7d18b7f81acec92" uuid = "929cbde3-209d-540e-8aea-75f648917ca0" -version = "9.2.0" +version = "9.3.1" [deps.LLVM.extensions] BFloat16sExt = "BFloat16s" @@ -1561,9 +1574,9 @@ version = "0.0.35+0" [[deps.LLVMOpenMP_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "78211fb6cbc872f77cad3fc0b6cf647d923f4929" +git-tree-sha1 = "eb62a3deb62fc6d8822c0c4bef73e4412419c5d8" uuid = "1d63c593-3942-5779-bab2-d838dc0a180e" -version = "18.1.7+0" +version = "18.1.8+0" [[deps.LRUCache]] git-tree-sha1 = "5519b95a490ff5fe629c4a7aa3b3dfc9160498b3" @@ -1593,9 +1606,9 @@ version = "1.4.0" [[deps.Latexify]] deps = ["Format", "InteractiveUtils", "LaTeXStrings", "MacroTools", "Markdown", "OrderedCollections", "Requires"] -git-tree-sha1 = "cd714447457c660382fe634710fb56eb255ee42e" +git-tree-sha1 = "cd10d2cc78d34c0e2a3a36420ab607b611debfbb" uuid = "23fbe1c1-3f47-55db-b15f-69d7ec21a316" -version = "0.16.6" +version = "0.16.7" [deps.Latexify.extensions] DataFramesExt = "DataFrames" @@ -1685,6 +1698,12 @@ deps = ["Artifacts", "Libdl", "MbedTLS_jll"] uuid = "29816b5a-b9ab-546f-933c-edad1886dfa8" version = "1.11.0+1" +[[deps.LibTracyClient_jll]] +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "d2bc4e1034b2d43076b50f0e34ea094c2cb0a717" +uuid = "ad6e5548-8b26-5c9f-8ef3-ef0ad883f3a5" +version = "0.9.1+6" + [[deps.Libdl]] uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" version = "1.11.0" @@ -1695,23 +1714,11 @@ git-tree-sha1 = "27ecae93dd25ee0909666e6835051dd684cc035e" uuid = "e9f186c6-92d2-5b65-8a66-fee21dc1b490" version = "3.2.2+2" -[[deps.Libgcrypt_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgpg_error_jll"] -git-tree-sha1 = "8be878062e0ffa2c3f67bb58a595375eda5de80b" -uuid = "d4300ac3-e22c-5743-9152-c294e39db1e4" -version = "1.11.0+0" - [[deps.Libglvnd_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll", "Xorg_libXext_jll"] -git-tree-sha1 = "ff3b4b9d35de638936a525ecd36e86a8bb919d11" +git-tree-sha1 = "d36c21b9e7c172a44a10484125024495e2625ac0" uuid = "7e76a0d4-f3c7-5321-8279-8d96eeed0f29" -version = "1.7.0+0" - -[[deps.Libgpg_error_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "df37206100d39f79b3376afb6b9cee4970041c61" -uuid = "7add5ba3-2f88-524e-9cd5-f83b8a55f7b8" -version = "1.51.1+0" +version = "1.7.1+1" [[deps.Libiconv_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] @@ -1721,9 +1728,9 @@ version = "1.18.0+0" [[deps.Libmount_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "89211ea35d9df5831fca5d33552c02bd33878419" +git-tree-sha1 = "a31572773ac1b745e0343fe5e2c8ddda7a37e997" uuid = "4b2f31a3-9ecc-558c-b454-b3730dcb73e9" -version = "2.40.3+0" +version = "2.41.0+0" [[deps.Libtask]] deps = ["FunctionWrappers", "LRUCache", "LinearAlgebra", "Statistics"] @@ -1739,9 +1746,9 @@ version = "4.7.1+0" [[deps.Libuuid_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "e888ad02ce716b319e6bdb985d2ef300e7089889" +git-tree-sha1 = "321ccef73a96ba828cd51f2ab5b9f917fa73945a" uuid = "38a345b3-de98-5d2b-a5d3-14cd9215e700" -version = "2.40.3+0" +version = "2.41.0+0" [[deps.LineSearch]] deps = ["ADTypes", "CommonSolve", "ConcreteStructs", "FastClosures", "LinearAlgebra", "MaybeInplace", "SciMLBase", "SciMLJacobianOperators", "StaticArraysCore"] @@ -1766,9 +1773,9 @@ version = "1.11.0" [[deps.LinearSolve]] deps = ["ArrayInterface", "ChainRulesCore", "ConcreteStructs", "DocStringExtensions", "EnumX", "GPUArraysCore", "InteractiveUtils", "Krylov", "LazyArrays", "Libdl", "LinearAlgebra", "MKL_jll", "Markdown", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "StaticArraysCore", "UnPack"] -git-tree-sha1 = "c64ec326eeeb20c065afd6aa5add4fad458e460a" +git-tree-sha1 = "c5e80f547e47f00f53c290aa5d4a11034104b94d" uuid = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae" -version = "3.7.0" +version = "3.11.0" [deps.LinearSolve.extensions] LinearSolveBandedMatricesExt = "BandedMatrices" @@ -2040,10 +2047,10 @@ uuid = "cc2ba9b6-d476-5e6d-8eaf-a92d5412d41d" version = "0.5.4" [[deps.MLJModelInterface]] -deps = ["Random", "ScientificTypesBase", "StatisticalTraits"] -git-tree-sha1 = "ceaff6618408d0e412619321ae43b33b40c1a733" +deps = ["REPL", "Random", "ScientificTypesBase", "StatisticalTraits"] +git-tree-sha1 = "66626f80d5807921045d539b4f7153b1d47c5f8a" uuid = "e80e1ace-859a-464e-9ed9-23947d8ae3ea" -version = "1.11.0" +version = "1.11.1" [[deps.MLLabelUtils]] deps = ["LearnBase", "MappedArrays", "StatsBase"] @@ -2081,9 +2088,9 @@ uuid = "f1f71cc9-e9ae-5b93-9b94-4fe0e1ad3748" version = "5.5.3+0" [[deps.MacroTools]] -git-tree-sha1 = "72aebe0b5051e5143a079a4685a46da330a40472" +git-tree-sha1 = "1e0228a030642014fe5cfe68c2c0a818f9e3f522" uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" -version = "0.5.15" +version = "0.5.16" [[deps.ManualMemory]] git-tree-sha1 = "bcaef4fc7a0cfe2cba636d84cda54b5e4e4ca3cd" @@ -2228,9 +2235,9 @@ version = "0.10.3" [[deps.NLSolversBase]] deps = ["ADTypes", "DifferentiationInterface", "Distributed", "FiniteDiff", "ForwardDiff"] -git-tree-sha1 = "1f78293864c5e48ecf97269b0e23d7be28eb1958" +git-tree-sha1 = "b14c7be6046e7d48e9063a0053f95ee0fc954176" uuid = "d41bc354-129a-5804-8e4c-c37616107c6c" -version = "7.9.0" +version = "7.9.1" [[deps.NLopt]] deps = ["CEnum", "NLopt_jll"] @@ -2258,9 +2265,9 @@ version = "4.5.1" [[deps.NNlib]] deps = ["Adapt", "Atomix", "ChainRulesCore", "GPUArraysCore", "KernelAbstractions", "LinearAlgebra", "Random", "ScopedValues", "Statistics"] -git-tree-sha1 = "e8d4268b4a438bdad98937e4bca45881363b4767" +git-tree-sha1 = "4abc63cdd8dd9dd925d8e879cda280bedc8013ca" uuid = "872c559c-99b0-510c-b3b7-b6c96a88d5cd" -version = "0.9.29" +version = "0.9.30" [deps.NNlib.extensions] NNlibAMDGPUExt = "AMDGPU" @@ -2282,9 +2289,9 @@ version = "0.9.29" [[deps.NaNMath]] deps = ["OpenLibm_jll"] -git-tree-sha1 = "cc0a5deefdb12ab3a096f00a6d42133af4560d71" +git-tree-sha1 = "9b8215b1ee9e78a293f99797cd31375471b2bcae" uuid = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" -version = "1.1.2" +version = "1.1.3" [[deps.NameResolution]] deps = ["PrettyPrint"] @@ -2315,9 +2322,9 @@ version = "1.2.0" [[deps.NonlinearSolve]] deps = ["ADTypes", "ArrayInterface", "BracketingNonlinearSolve", "CommonSolve", "ConcreteStructs", "DiffEqBase", "DifferentiationInterface", "FastClosures", "FiniteDiff", "ForwardDiff", "LineSearch", "LinearAlgebra", "LinearSolve", "NonlinearSolveBase", "NonlinearSolveFirstOrder", "NonlinearSolveQuasiNewton", "NonlinearSolveSpectralMethods", "PrecompileTools", "Preferences", "Reexport", "SciMLBase", "SimpleNonlinearSolve", "SparseArrays", "SparseMatrixColorings", "StaticArraysCore", "SymbolicIndexingInterface"] -git-tree-sha1 = "eb1007ce104fc6704ac346859bc53976c44edc38" +git-tree-sha1 = "7fd96e0e6585063a7193007349799155ba5a069f" uuid = "8913a72c-1f9b-4ce2-8d82-65094dcecaec" -version = "4.5.0" +version = "4.8.0" [deps.NonlinearSolve.extensions] NonlinearSolveFastLevenbergMarquardtExt = "FastLevenbergMarquardt" @@ -2347,9 +2354,9 @@ version = "4.5.0" [[deps.NonlinearSolveBase]] deps = ["ADTypes", "Adapt", "ArrayInterface", "CommonSolve", "Compat", "ConcreteStructs", "DifferentiationInterface", "EnzymeCore", "FastClosures", "LinearAlgebra", "Markdown", "MaybeInplace", "Preferences", "Printf", "RecursiveArrayTools", "SciMLBase", "SciMLJacobianOperators", "SciMLOperators", "StaticArraysCore", "SymbolicIndexingInterface", "TimerOutputs"] -git-tree-sha1 = "8a2437b5ead050301b6a6258f226e5137e511000" +git-tree-sha1 = "686fd9d0d455171e3530d3540cff94bb01222823" uuid = "be0214bd-f91f-a760-ac4e-3421ce2b2da0" -version = "1.5.0" +version = "1.7.0" weakdeps = ["BandedMatrices", "DiffEqBase", "ForwardDiff", "LineSearch", "LinearSolve", "SparseArrays", "SparseMatrixColorings"] [deps.NonlinearSolveBase.extensions] @@ -2363,15 +2370,15 @@ weakdeps = ["BandedMatrices", "DiffEqBase", "ForwardDiff", "LineSearch", "Linear [[deps.NonlinearSolveFirstOrder]] deps = ["ADTypes", "ArrayInterface", "CommonSolve", "ConcreteStructs", "DiffEqBase", "FiniteDiff", "ForwardDiff", "LineSearch", "LinearAlgebra", "LinearSolve", "MaybeInplace", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase", "SciMLJacobianOperators", "Setfield", "StaticArraysCore"] -git-tree-sha1 = "aade7ab02ee4c80ec30dc8a2874fc67155c935f1" +git-tree-sha1 = "9c8cd0a986518ba317af263549b48e34ac8f776d" uuid = "5959db7a-ea39-4486-b5fe-2dd0bf03d60d" -version = "1.3.0" +version = "1.5.0" [[deps.NonlinearSolveQuasiNewton]] deps = ["ArrayInterface", "CommonSolve", "ConcreteStructs", "DiffEqBase", "LinearAlgebra", "LinearSolve", "MaybeInplace", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase", "SciMLOperators", "StaticArraysCore"] -git-tree-sha1 = "44a132cb32aeafcb35a6238fd91a2f3f8ff5c5b0" +git-tree-sha1 = "eafb327f5c2d9f1ac890aa2b9fbe05a1bd7e4dc8" uuid = "9a2c21bd-3a47-402d-9113-8faf9a0ee114" -version = "1.2.0" +version = "1.4.0" weakdeps = ["ForwardDiff"] [deps.NonlinearSolveQuasiNewton.extensions] @@ -2379,9 +2386,9 @@ weakdeps = ["ForwardDiff"] [[deps.NonlinearSolveSpectralMethods]] deps = ["CommonSolve", "ConcreteStructs", "DiffEqBase", "LineSearch", "MaybeInplace", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase"] -git-tree-sha1 = "f28b1ab17b5f15eb2b174eaf8813cf17f0b3e6c0" +git-tree-sha1 = "3398222199e4b9ca0b5840907fb509f28f1a2fdc" uuid = "26075421-4e9a-44e1-8bd1-420ed7ad02b2" -version = "1.1.0" +version = "1.2.0" weakdeps = ["ForwardDiff"] [deps.NonlinearSolveSpectralMethods.extensions] @@ -2399,9 +2406,9 @@ uuid = "510215fc-4207-5dde-b226-833fc4488ee2" version = "0.5.5" [[deps.OffsetArrays]] -git-tree-sha1 = "a414039192a155fb38c4599a60110f0018c6ec82" +git-tree-sha1 = "117432e406b5c023f665fa73dc26e79ec3630151" uuid = "6fe1bfb0-de20-5000-8ca7-80f57d26f881" -version = "1.16.0" +version = "1.17.0" weakdeps = ["Adapt"] [deps.OffsetArrays.extensions] @@ -2415,9 +2422,9 @@ version = "1.3.5+1" [[deps.OneHotArrays]] deps = ["Adapt", "ChainRulesCore", "Compat", "GPUArraysCore", "LinearAlgebra", "NNlib"] -git-tree-sha1 = "c8c7f6bfabe581dc40b580313a75f1ecce087e27" +git-tree-sha1 = "3685584454b04cd52169c787ba4d196da8a04d10" uuid = "0b1bfda6-eb8a-41d2-88d8-f5af5cad476f" -version = "0.2.6" +version = "0.2.9" [[deps.OpenBLAS_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"] @@ -2427,13 +2434,13 @@ version = "0.3.27+1" [[deps.OpenLibm_jll]] deps = ["Artifacts", "Libdl"] uuid = "05823500-19ac-5b8b-9628-191a04bc5112" -version = "0.8.1+4" +version = "0.8.5+0" [[deps.OpenMPI_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "Hwloc_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "MPIPreferences", "TOML", "Zlib_jll"] -git-tree-sha1 = "da913f03f17b449951e0461da960229d4a3d1a8c" +git-tree-sha1 = "047b66eb62f3cae59ed260ebb9075a32a04350f1" uuid = "fe0851c0-eecd-5654-98d4-656369965a5c" -version = "5.0.7+1" +version = "5.0.7+2" [[deps.OpenSSL]] deps = ["BitFlags", "Dates", "MozillaCACerts_jll", "OpenSSL_jll", "Sockets"] @@ -2443,9 +2450,9 @@ version = "1.4.3" [[deps.OpenSSL_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "a9697f1d06cc3eb3fb3ad49cc67f2cfabaac31ea" +git-tree-sha1 = "9216a80ff3682833ac4b733caa8c00390620ba5d" uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" -version = "3.0.16+0" +version = "3.5.0+0" [[deps.OpenSpecFun_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl"] @@ -2454,10 +2461,10 @@ uuid = "efe28fd5-8261-553b-a9e1-b2916fc3738e" version = "0.5.6+0" [[deps.Optim]] -deps = ["Compat", "FillArrays", "ForwardDiff", "LineSearches", "LinearAlgebra", "NLSolversBase", "NaNMath", "Parameters", "PositiveFactorizations", "Printf", "SparseArrays", "StatsBase"] -git-tree-sha1 = "c1f51f704f689f87f28b33836fd460ecf9b34583" +deps = ["Compat", "EnumX", "FillArrays", "ForwardDiff", "LineSearches", "LinearAlgebra", "NLSolversBase", "NaNMath", "PositiveFactorizations", "Printf", "SparseArrays", "StatsBase"] +git-tree-sha1 = "31b3b1b8e83ef9f1d50d74f1dd5f19a37a304a1f" uuid = "429524aa-4258-5aef-a3af-852621145aeb" -version = "1.11.0" +version = "1.12.0" [deps.Optim.extensions] OptimMOIExt = "MathOptInterface" @@ -2473,9 +2480,9 @@ version = "0.3.4" [[deps.Optimization]] deps = ["ADTypes", "ArrayInterface", "ConsoleProgressMonitor", "DocStringExtensions", "LBFGSB", "LinearAlgebra", "Logging", "LoggingExtras", "OptimizationBase", "Printf", "ProgressLogging", "Reexport", "SciMLBase", "SparseArrays", "TerminalLoggers"] -git-tree-sha1 = "e72af10f1c6ffe2f295455c4c35534d713be62bb" +git-tree-sha1 = "c8eaa77c745cff7e58affa7e325bc4b5168cf964" uuid = "7f7a1694-90dd-40f0-9382-eb1efda571ba" -version = "4.1.2" +version = "4.2.0" [[deps.OptimizationBase]] deps = ["ADTypes", "ArrayInterface", "DifferentiationInterface", "DocStringExtensions", "FastClosures", "LinearAlgebra", "PDMats", "Reexport", "Requires", "SciMLBase", "SparseArrays", "SparseConnectivityTracer", "SparseMatrixColorings"] @@ -2513,9 +2520,9 @@ version = "0.3.2" [[deps.OptimizationOptimJL]] deps = ["Optim", "Optimization", "PrecompileTools", "Reexport", "SparseArrays"] -git-tree-sha1 = "980ec7190741db164a2923dc42d6f1e7ce2cc434" +git-tree-sha1 = "6f228118b81ce4e849091ee0d00805f2ecb18f54" uuid = "36348300-93cb-4f02-beb5-3c3902f8871e" -version = "0.4.1" +version = "0.4.3" [[deps.Opus_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] @@ -2529,10 +2536,10 @@ uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" version = "1.8.0" [[deps.OrdinaryDiffEq]] -deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "EnumX", "ExponentialUtilities", "FastBroadcast", "FastClosures", "FillArrays", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "InteractiveUtils", "LineSearches", "LinearAlgebra", "LinearSolve", "Logging", "MacroTools", "MuladdMacro", "NonlinearSolve", "OrdinaryDiffEqAdamsBashforthMoulton", "OrdinaryDiffEqBDF", "OrdinaryDiffEqCore", "OrdinaryDiffEqDefault", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqExplicitRK", "OrdinaryDiffEqExponentialRK", "OrdinaryDiffEqExtrapolation", "OrdinaryDiffEqFIRK", "OrdinaryDiffEqFeagin", "OrdinaryDiffEqFunctionMap", "OrdinaryDiffEqHighOrderRK", "OrdinaryDiffEqIMEXMultistep", "OrdinaryDiffEqLinear", "OrdinaryDiffEqLowOrderRK", "OrdinaryDiffEqLowStorageRK", "OrdinaryDiffEqNonlinearSolve", "OrdinaryDiffEqNordsieck", "OrdinaryDiffEqPDIRK", "OrdinaryDiffEqPRK", "OrdinaryDiffEqQPRK", "OrdinaryDiffEqRKN", "OrdinaryDiffEqRosenbrock", "OrdinaryDiffEqSDIRK", "OrdinaryDiffEqSSPRK", "OrdinaryDiffEqStabilizedIRK", "OrdinaryDiffEqStabilizedRK", "OrdinaryDiffEqSymplecticRK", "OrdinaryDiffEqTsit5", "OrdinaryDiffEqVerner", "Polyester", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleNonlinearSolve", "SimpleUnPack", "SparseArrays", "SparseDiffTools", "Static", "StaticArrayInterface", "StaticArrays", "TruncatedStacktraces"] -git-tree-sha1 = "798f5e1a1f8b5a1bbba1e6134b77a77ccc509678" +deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "EnumX", "ExponentialUtilities", "FastBroadcast", "FastClosures", "FillArrays", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "InteractiveUtils", "LineSearches", "LinearAlgebra", "LinearSolve", "Logging", "MacroTools", "MuladdMacro", "NonlinearSolve", "OrdinaryDiffEqAdamsBashforthMoulton", "OrdinaryDiffEqBDF", "OrdinaryDiffEqCore", "OrdinaryDiffEqDefault", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqExplicitRK", "OrdinaryDiffEqExponentialRK", "OrdinaryDiffEqExtrapolation", "OrdinaryDiffEqFIRK", "OrdinaryDiffEqFeagin", "OrdinaryDiffEqFunctionMap", "OrdinaryDiffEqHighOrderRK", "OrdinaryDiffEqIMEXMultistep", "OrdinaryDiffEqLinear", "OrdinaryDiffEqLowOrderRK", "OrdinaryDiffEqLowStorageRK", "OrdinaryDiffEqNonlinearSolve", "OrdinaryDiffEqNordsieck", "OrdinaryDiffEqPDIRK", "OrdinaryDiffEqPRK", "OrdinaryDiffEqQPRK", "OrdinaryDiffEqRKN", "OrdinaryDiffEqRosenbrock", "OrdinaryDiffEqSDIRK", "OrdinaryDiffEqSSPRK", "OrdinaryDiffEqStabilizedIRK", "OrdinaryDiffEqStabilizedRK", "OrdinaryDiffEqSymplecticRK", "OrdinaryDiffEqTsit5", "OrdinaryDiffEqVerner", "Polyester", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleNonlinearSolve", "SimpleUnPack", "SparseArrays", "Static", "StaticArrayInterface", "StaticArrays", "TruncatedStacktraces"] +git-tree-sha1 = "dfae5ed215f5949f52de22b92e2e42ea3e3e652d" uuid = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" -version = "6.92.0" +version = "6.96.0" [[deps.OrdinaryDiffEqAdamsBashforthMoulton]] deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqLowOrderRK", "Polyester", "RecursiveArrayTools", "Reexport", "Static"] @@ -2542,15 +2549,15 @@ version = "1.2.0" [[deps.OrdinaryDiffEqBDF]] deps = ["ADTypes", "ArrayInterface", "DiffEqBase", "FastBroadcast", "LinearAlgebra", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "OrdinaryDiffEqSDIRK", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "StaticArrays", "TruncatedStacktraces"] -git-tree-sha1 = "970ac761ae1c4249fc70d75760c328269a518585" +git-tree-sha1 = "a72bf554d5fd1f33a8d2aead3562eddd28ba4c76" uuid = "6ad6398a-0878-4a85-9266-38940aa047c8" -version = "1.3.0" +version = "1.5.0" [[deps.OrdinaryDiffEqCore]] deps = ["ADTypes", "Accessors", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "EnumX", "FastBroadcast", "FastClosures", "FastPower", "FillArrays", "FunctionWrappersWrappers", "InteractiveUtils", "LinearAlgebra", "Logging", "MacroTools", "MuladdMacro", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleUnPack", "Static", "StaticArrayInterface", "StaticArraysCore", "SymbolicIndexingInterface", "TruncatedStacktraces"] -git-tree-sha1 = "f47451c0ca3a2b0f11e966ed7731f2bd17d9b0e3" +git-tree-sha1 = "af7374f4af1b9a67ce29524e7fd328fa3da33189" uuid = "bbf590c4-e513-4bbe-9b18-05decba2e5d8" -version = "1.19.0" +version = "1.23.0" weakdeps = ["EnzymeCore"] [deps.OrdinaryDiffEqCore.extensions] @@ -2558,15 +2565,15 @@ weakdeps = ["EnzymeCore"] [[deps.OrdinaryDiffEqDefault]] deps = ["ADTypes", "DiffEqBase", "EnumX", "LinearAlgebra", "LinearSolve", "OrdinaryDiffEqBDF", "OrdinaryDiffEqCore", "OrdinaryDiffEqRosenbrock", "OrdinaryDiffEqTsit5", "OrdinaryDiffEqVerner", "PrecompileTools", "Preferences", "Reexport"] -git-tree-sha1 = "835c06684b6ff1b8904ceae4d18cc8fe45b9a7cc" +git-tree-sha1 = "8eeed32442874d1bdcc2192a874a73f1a9a07e31" uuid = "50262376-6c5a-4cf5-baba-aaf4f84d72d7" -version = "1.3.0" +version = "1.4.0" [[deps.OrdinaryDiffEqDifferentiation]] -deps = ["ADTypes", "ArrayInterface", "DiffEqBase", "FastBroadcast", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "LinearAlgebra", "LinearSolve", "OrdinaryDiffEqCore", "SciMLBase", "SparseArrays", "SparseDiffTools", "StaticArrayInterface", "StaticArrays"] -git-tree-sha1 = "9a535370247496c1375ba6d08b0493c0d856d25b" +deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "ConstructionBase", "DiffEqBase", "DifferentiationInterface", "FastBroadcast", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "LinearAlgebra", "LinearSolve", "OrdinaryDiffEqCore", "SciMLBase", "SciMLOperators", "SparseArrays", "SparseMatrixColorings", "StaticArrayInterface", "StaticArrays"] +git-tree-sha1 = "6595287379a518d7eb8f02edc49a96a02396e887" uuid = "4302a76b-040a-498a-8c04-15b101fed76b" -version = "1.4.0" +version = "1.7.0" [[deps.OrdinaryDiffEqExplicitRK]] deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "TruncatedStacktraces"] @@ -2588,9 +2595,9 @@ version = "1.5.0" [[deps.OrdinaryDiffEqFIRK]] deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "FastGaussQuadrature", "FastPower", "LinearAlgebra", "LinearSolve", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "Polyester", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators"] -git-tree-sha1 = "7dfc32df06db3d9d10128053c0e53deb213fb28d" +git-tree-sha1 = "7d2c82c13a634f7400a3f398d33f1354ab38a090" uuid = "5960d6e9-dd7a-4743-88e7-cf307b64f125" -version = "1.8.0" +version = "1.10.0" [[deps.OrdinaryDiffEqFeagin]] deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "RecursiveArrayTools", "Reexport", "Static"] @@ -2636,9 +2643,9 @@ version = "1.3.0" [[deps.OrdinaryDiffEqNonlinearSolve]] deps = ["ADTypes", "ArrayInterface", "DiffEqBase", "FastBroadcast", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "MuladdMacro", "NonlinearSolve", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "PreallocationTools", "RecursiveArrayTools", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleNonlinearSolve", "StaticArrays"] -git-tree-sha1 = "1b89e3e84752a3cbd2c94db565e6ea7acb5279b2" +git-tree-sha1 = "d75cf29dea3a72bac7a5b21523ac969b71f43e96" uuid = "127b3ac7-2247-4354-8eb6-78cf4e7c58e8" -version = "1.5.0" +version = "1.6.1" [[deps.OrdinaryDiffEqNordsieck]] deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqTsit5", "Polyester", "RecursiveArrayTools", "Reexport", "Static"] @@ -2671,10 +2678,10 @@ uuid = "af6ede74-add8-4cfd-b1df-9a4dbb109d7a" version = "1.1.0" [[deps.OrdinaryDiffEqRosenbrock]] -deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "LinearSolve", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static"] -git-tree-sha1 = "a0d1e65771e087a84c398f20ea5f189043869997" +deps = ["ADTypes", "DiffEqBase", "DifferentiationInterface", "FastBroadcast", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "LinearSolve", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "baa4a9b4380b2fb65f1e2b4ec01d3bd019a6dcea" uuid = "43230ef6-c299-4910-a778-202eb28ce4ce" -version = "1.7.0" +version = "1.9.0" [[deps.OrdinaryDiffEqSDIRK]] deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "LinearAlgebra", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "RecursiveArrayTools", "Reexport", "SciMLBase", "TruncatedStacktraces"] @@ -2684,9 +2691,9 @@ version = "1.3.0" [[deps.OrdinaryDiffEqSSPRK]] deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "StaticArrays"] -git-tree-sha1 = "b97b9691437063ae7d9b1ef130e8b0d81415116f" +git-tree-sha1 = "651756c030df7a1d49ad484288937f8c398e8a08" uuid = "669c94d9-1f4b-4b64-b377-1aa079aa2388" -version = "1.2.1" +version = "1.3.0" [[deps.OrdinaryDiffEqStabilizedIRK]] deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "RecursiveArrayTools", "Reexport", "StaticArrays"] @@ -2714,9 +2721,9 @@ version = "1.1.0" [[deps.OrdinaryDiffEqVerner]] deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "TruncatedStacktraces"] -git-tree-sha1 = "81d7841e73e385b9925d5c8e4427f2adcdda55db" +git-tree-sha1 = "08f2d3be30874b6e2e937a06b501fb9811f7d8bd" uuid = "79d7bb75-1356-48c1-b8c0-6832512096c2" -version = "1.1.1" +version = "1.2.0" [[deps.PCRE2_jll]] deps = ["Artifacts", "Libdl"] @@ -2725,9 +2732,9 @@ version = "10.42.0+1" [[deps.PDMats]] deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse"] -git-tree-sha1 = "966b85253e959ea89c53a9abebbf2e964fbf593b" +git-tree-sha1 = "0e1340b5d98971513bddaa6bbed470670cebbbfe" uuid = "90014a1f-27ba-587c-ab20-58faa44d9150" -version = "0.11.32" +version = "0.11.34" [[deps.PackageExtensionCompat]] git-tree-sha1 = "fb28e33b8a95c4cee25ce296c817d89cc2e53518" @@ -2749,14 +2756,9 @@ version = "0.12.3" [[deps.Parsers]] deps = ["Dates", "PrecompileTools", "UUIDs"] -git-tree-sha1 = "8489905bcdbcfac64d1daa51ca07c0d8f0283821" +git-tree-sha1 = "7d2f8f21da5db6a806faf7b9b292296da42b2810" uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" -version = "2.8.1" - -[[deps.Pipe]] -git-tree-sha1 = "6842804e7867b115ca9de748a0cf6b364523c16d" -uuid = "b98c9c47-44ae-5843-9183-064241ee97a0" -version = "1.3.0" +version = "2.8.3" [[deps.Pixman_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LLVMOpenMP_jll", "Libdl"] @@ -2787,9 +2789,9 @@ version = "1.4.3" [[deps.Plots]] deps = ["Base64", "Contour", "Dates", "Downloads", "FFMPEG", "FixedPointNumbers", "GR", "JLFzf", "JSON", "LaTeXStrings", "Latexify", "LinearAlgebra", "Measures", "NaNMath", "Pkg", "PlotThemes", "PlotUtils", "PrecompileTools", "Printf", "REPL", "Random", "RecipesBase", "RecipesPipeline", "Reexport", "RelocatableFolders", "Requires", "Scratch", "Showoff", "SparseArrays", "Statistics", "StatsBase", "TOML", "UUIDs", "UnicodeFun", "UnitfulLatexify", "Unzip"] -git-tree-sha1 = "24be21541580495368c35a6ccef1454e7b5015be" +git-tree-sha1 = "809ba625a00c605f8d00cd2a9ae19ce34fc24d68" uuid = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" -version = "1.40.11" +version = "1.40.13" [deps.Plots.extensions] FileIOExt = "FileIO" @@ -2837,9 +2839,9 @@ version = "0.2.4" [[deps.PreallocationTools]] deps = ["Adapt", "ArrayInterface", "ForwardDiff"] -git-tree-sha1 = "8765738bc5a6f1554cb61c5ddfae5bf279e8b110" +git-tree-sha1 = "6d98eace73d82e47f5b16c393de198836d9f790a" uuid = "d236fae5-4411-538c-8e31-a6e3d9e00b46" -version = "0.4.25" +version = "0.4.27" weakdeps = ["ReverseDiff", "SparseConnectivityTracer"] [deps.PreallocationTools.extensions] @@ -2874,10 +2876,6 @@ deps = ["Unicode"] uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7" version = "1.11.0" -[[deps.Profile]] -uuid = "9abbd945-dff8-562f-b5e8-e1ebf5ef1b79" -version = "1.11.0" - [[deps.ProgressLogging]] deps = ["Logging", "SHA", "UUIDs"] git-tree-sha1 = "80d919dee55b9c50e8d9e2da5eeafff3fe58b539" @@ -2886,9 +2884,9 @@ version = "0.1.4" [[deps.ProgressMeter]] deps = ["Distributed", "Printf"] -git-tree-sha1 = "8f6bc219586aef8baf0ff9a5fe16ee9c70cb65e4" +git-tree-sha1 = "13c5103482a8ed1536a54c08d0e742ae3dca2d42" uuid = "92933f4c-e287-5a05-a399-4b506db050ca" -version = "1.10.2" +version = "1.10.4" [[deps.PtrArrays]] git-tree-sha1 = "1d36ef11a9aaf1e8b74dacc6a731dd1de8fd493d" @@ -2998,9 +2996,9 @@ version = "0.6.12" [[deps.RecursiveArrayTools]] deps = ["Adapt", "ArrayInterface", "DocStringExtensions", "GPUArraysCore", "IteratorInterfaceExtensions", "LinearAlgebra", "RecipesBase", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] -git-tree-sha1 = "35ac79a85c8086892258581d8b6df9cd8db5c91a" +git-tree-sha1 = "2e154f7d7e38db1af0a14ec751aba33360c3bef9" uuid = "731186ca-8d62-57ce-b412-fbd966d074cd" -version = "3.31.1" +version = "3.33.0" [deps.RecursiveArrayTools.extensions] RecursiveArrayToolsFastBroadcastExt = "FastBroadcast" @@ -3049,9 +3047,9 @@ version = "1.1.1" [[deps.ReverseDiff]] deps = ["ChainRulesCore", "DiffResults", "DiffRules", "ForwardDiff", "FunctionWrappers", "LinearAlgebra", "LogExpFunctions", "MacroTools", "NaNMath", "Random", "SpecialFunctions", "StaticArrays", "Statistics"] -git-tree-sha1 = "cc6cd622481ea366bb9067859446a8b01d92b468" +git-tree-sha1 = "3ab8eee3620451b09f0272c271875b4bc02146d9" uuid = "37e2e3b7-166d-5795-8a7a-e32c996b4267" -version = "1.15.3" +version = "1.16.1" [[deps.Rmath]] deps = ["Random", "Rmath_jll"] @@ -3067,9 +3065,9 @@ version = "0.5.1+0" [[deps.Roots]] deps = ["Accessors", "CommonSolve", "Printf"] -git-tree-sha1 = "442b4353ee8c26756672afb2db81894fc28811f3" +git-tree-sha1 = "3ac13765751ffc81e3531223782d9512f6023f71" uuid = "f2b01f46-fcfa-551c-844a-d8ac1e96c665" -version = "2.2.6" +version = "2.2.7" [deps.Roots.extensions] RootsChainRulesCoreExt = "ChainRulesCore" @@ -3087,9 +3085,9 @@ version = "2.2.6" [[deps.RuntimeGeneratedFunctions]] deps = ["ExprTools", "SHA", "Serialization"] -git-tree-sha1 = "04c968137612c4a5629fa531334bb81ad5680f00" +git-tree-sha1 = "7cb9d10026d630ce2dd2a1fc6006a3d5041b34c0" uuid = "7e49a35a-f44a-4d26-94aa-eba1b4ca6b47" -version = "0.5.13" +version = "0.5.14" [[deps.SHA]] uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" @@ -3108,9 +3106,9 @@ version = "0.1.1" [[deps.SciMLBase]] deps = ["ADTypes", "Accessors", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "Moshi", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "SciMLStructures", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface"] -git-tree-sha1 = "fe9bbf68543d5f72ae2218f3d8c8faeab761dd52" +git-tree-sha1 = "2fd047893cb0089b180fcbb7e8434ba15dcc2841" uuid = "0bca4576-84f4-4d90-8ffe-ffa030f20462" -version = "2.77.2" +version = "2.87.0" [deps.SciMLBase.extensions] SciMLBaseChainRulesCoreExt = "ChainRulesCore" @@ -3135,15 +3133,15 @@ version = "2.77.2" [[deps.SciMLJacobianOperators]] deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "ConstructionBase", "DifferentiationInterface", "FastClosures", "LinearAlgebra", "SciMLBase", "SciMLOperators"] -git-tree-sha1 = "f66048bb969e67bd7d1bdd03cd0b81219642bbd0" +git-tree-sha1 = "1e2033bdf0792aa2a2f21de8e9378197f13386ec" uuid = "19f34311-ddf3-4b8b-af20-060888a46c0e" -version = "0.1.1" +version = "0.1.4" [[deps.SciMLOperators]] deps = ["Accessors", "ArrayInterface", "DocStringExtensions", "LinearAlgebra", "MacroTools"] -git-tree-sha1 = "6149620767866d4b0f0f7028639b6e661b6a1e44" +git-tree-sha1 = "1c4b7f6c3e14e6de0af66e66b86d525cae10ecb4" uuid = "c0aeaf25-5076-4817-a8d5-81caf7dfa961" -version = "0.3.12" +version = "0.3.13" weakdeps = ["SparseArrays", "StaticArraysCore"] [deps.SciMLOperators.extensions] @@ -3151,10 +3149,10 @@ weakdeps = ["SparseArrays", "StaticArraysCore"] SciMLOperatorsStaticArraysCoreExt = "StaticArraysCore" [[deps.SciMLSensitivity]] -deps = ["ADTypes", "Accessors", "Adapt", "ArrayInterface", "ChainRulesCore", "DiffEqBase", "DiffEqCallbacks", "DiffEqNoiseProcess", "Distributions", "Enzyme", "FastBroadcast", "FiniteDiff", "ForwardDiff", "FunctionProperties", "FunctionWrappersWrappers", "Functors", "GPUArraysCore", "LinearAlgebra", "LinearSolve", "Markdown", "PreallocationTools", "QuadGK", "Random", "RandomNumbers", "RecursiveArrayTools", "Reexport", "ReverseDiff", "SciMLBase", "SciMLJacobianOperators", "SciMLOperators", "SciMLStructures", "StaticArrays", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tracker", "Zygote"] -git-tree-sha1 = "40094b8d6afe1bcfee252ce2ab3c4a09d08c60c4" +deps = ["ADTypes", "Accessors", "Adapt", "ArrayInterface", "ChainRulesCore", "DiffEqBase", "DiffEqCallbacks", "DiffEqNoiseProcess", "Distributions", "Enzyme", "FastBroadcast", "FiniteDiff", "ForwardDiff", "FunctionProperties", "FunctionWrappersWrappers", "Functors", "GPUArraysCore", "LinearAlgebra", "LinearSolve", "Markdown", "OrdinaryDiffEqCore", "PreallocationTools", "QuadGK", "Random", "RandomNumbers", "RecursiveArrayTools", "Reexport", "ReverseDiff", "SciMLBase", "SciMLJacobianOperators", "SciMLOperators", "SciMLStructures", "StaticArrays", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tracker", "Zygote"] +git-tree-sha1 = "019c278424ec840ddf21c8effed1ee61e0009bd4" uuid = "1ed8b502-d754-442c-8d5d-10ac956f44a1" -version = "7.75.0" +version = "7.78.0" weakdeps = ["Mooncake"] [deps.SciMLSensitivity.extensions] @@ -3227,9 +3225,9 @@ version = "1.2.0" [[deps.SimpleNonlinearSolve]] deps = ["ADTypes", "ArrayInterface", "BracketingNonlinearSolve", "CommonSolve", "ConcreteStructs", "DifferentiationInterface", "FastClosures", "FiniteDiff", "ForwardDiff", "LineSearch", "LinearAlgebra", "MaybeInplace", "NonlinearSolveBase", "PrecompileTools", "Reexport", "SciMLBase", "Setfield", "StaticArraysCore"] -git-tree-sha1 = "f42f8b8b728812e485ad099ee5e959d9b49cdb3d" +git-tree-sha1 = "068c16a16834c1483c299b0e27e901599439570d" uuid = "727e6d20-b764-4bd8-a329-72de5adea6c7" -version = "2.2.0" +version = "2.4.0" weakdeps = ["ChainRulesCore", "DiffEqBase", "ReverseDiff", "Tracker"] [deps.SimpleNonlinearSolve.extensions] @@ -3266,9 +3264,9 @@ version = "1.11.0" [[deps.SparseConnectivityTracer]] deps = ["ADTypes", "DocStringExtensions", "FillArrays", "LinearAlgebra", "Random", "SparseArrays"] -git-tree-sha1 = "9603842a7a68464a066b5754e89fc7f810db8ae7" +git-tree-sha1 = "fadb2d7010dd92912e5eb31a493613ad4b8c9583" uuid = "9f842d2f-2579-4b1d-911e-f412cf18a3f5" -version = "0.6.15" +version = "0.6.18" [deps.SparseConnectivityTracer.extensions] SparseConnectivityTracerDataInterpolationsExt = "DataInterpolations" @@ -3311,20 +3309,24 @@ uuid = "dc90abb0-5640-4711-901d-7e5b23a2fada" version = "0.1.2" [[deps.SparseMatrixColorings]] -deps = ["ADTypes", "DataStructures", "DocStringExtensions", "LinearAlgebra", "Random", "SparseArrays"] -git-tree-sha1 = "e0ae9189392572abe85bc9fd4ce35e772b1e1e10" +deps = ["ADTypes", "DocStringExtensions", "LinearAlgebra", "Random", "SparseArrays"] +git-tree-sha1 = "76e9564f0de0d1d7a46095e758ae13ceba680cfb" uuid = "0a514795-09f3-496d-8182-132a7b665d35" -version = "0.4.14" -weakdeps = ["Colors"] +version = "0.4.19" [deps.SparseMatrixColorings.extensions] + SparseMatrixColoringsCliqueTreesExt = "CliqueTrees" SparseMatrixColoringsColorsExt = "Colors" + [deps.SparseMatrixColorings.weakdeps] + CliqueTrees = "60701a23-6482-424a-84db-faee86b9b1f8" + Colors = "5ae59095-9a9b-59fe-a467-6f913c188581" + [[deps.SpecialFunctions]] deps = ["IrrationalConstants", "LogExpFunctions", "OpenLibm_jll", "OpenSpecFun_jll"] -git-tree-sha1 = "64cca0c26b4f31ba18f13f6c12af7c85f478cfde" +git-tree-sha1 = "41852b8679f78c8d8961eeadc8f62cef861a52e3" uuid = "276daf66-3868-5448-9aa4-cd146d93841b" -version = "2.5.0" +version = "2.5.1" weakdeps = ["ChainRulesCore"] [deps.SpecialFunctions.extensions] @@ -3338,9 +3340,9 @@ version = "0.1.15" [[deps.StableRNGs]] deps = ["Random"] -git-tree-sha1 = "83e6cce8324d49dfaf9ef059227f91ed4441a8e5" +git-tree-sha1 = "95af145932c2ed859b63329952ce8d633719f091" uuid = "860ef19b-820b-49d6-a774-d7a799459cd3" -version = "1.0.2" +version = "1.0.3" [[deps.Static]] deps = ["CommonWorldInvalidations", "IfElse", "PrecompileTools"] @@ -3405,9 +3407,9 @@ version = "0.33.21" [[deps.StatsFuns]] deps = ["HypergeometricFunctions", "IrrationalConstants", "LogExpFunctions", "Reexport", "Rmath", "SpecialFunctions"] -git-tree-sha1 = "b423576adc27097764a90e163157bcfc9acf0f46" +git-tree-sha1 = "8e45cecc66f3b42633b8ce14d431e8e57a3e242e" uuid = "4c63d2b9-4356-54db-8cca-17b64c39e42c" -version = "1.3.2" +version = "1.5.0" weakdeps = ["ChainRulesCore", "InverseFunctions"] [deps.StatsFuns.extensions] @@ -3434,9 +3436,9 @@ version = "2.5.0" [[deps.StochasticDiffEq]] deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DiffEqNoiseProcess", "DocStringExtensions", "FastPower", "FiniteDiff", "ForwardDiff", "JumpProcesses", "LevyArea", "LinearAlgebra", "Logging", "MuladdMacro", "NLsolve", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "Random", "RandomNumbers", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SparseArrays", "SparseDiffTools", "StaticArrays", "UnPack"] -git-tree-sha1 = "9c524fdc91dee5fb73795f1ec06cee022bf6e13d" +git-tree-sha1 = "f354a21a3272fd8ac1509da58e61dffba6925dbe" uuid = "789caeaf-c7a9-5a7d-9973-96adeb23e2a0" -version = "6.74.1" +version = "6.78.0" [[deps.StrideArraysCore]] deps = ["ArrayInterface", "CloseOpenIntervals", "IfElse", "LayoutPointers", "LinearAlgebra", "ManualMemory", "SIMDTypes", "Static", "StaticArrayInterface", "ThreadingUtilities"] @@ -3446,21 +3448,23 @@ version = "0.5.7" [[deps.Strided]] deps = ["LinearAlgebra", "StridedViews", "TupleTools"] -git-tree-sha1 = "f9ce8284e6eec72a21de3603493eb5355fcf7f39" +git-tree-sha1 = "4a1128f5237b5d0170d934a2eb4fa7a273639c9f" uuid = "5e0ebb24-38b0-5f93-81fe-25c709ecae67" -version = "2.2.0" +version = "2.3.0" [[deps.StridedViews]] deps = ["LinearAlgebra", "PackageExtensionCompat"] -git-tree-sha1 = "b60baf1998bcdccc57e1cc2c6703df1f619a3754" +git-tree-sha1 = "425158c52aa58d42593be6861befadf8b2541e9b" uuid = "4db3bf67-4bd7-4b4e-b153-31dc3fb37143" -version = "0.3.2" +version = "0.4.1" [deps.StridedViews.extensions] StridedViewsCUDAExt = "CUDA" + StridedViewsPtrArraysExt = "PtrArrays" [deps.StridedViews.weakdeps] CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" + PtrArrays = "43287f4e-b6f4-7ad1-bb20-aadabca52c3d" [[deps.StringManipulation]] deps = ["PrecompileTools"] @@ -3470,14 +3474,15 @@ version = "0.4.1" [[deps.StructArrays]] deps = ["ConstructionBase", "DataAPI", "Tables"] -git-tree-sha1 = "f4dc295e983502292c4c3f951dbb4e985e35b3be" +git-tree-sha1 = "8ad2e38cbb812e29348719cc63580ec1dfeb9de4" uuid = "09ab397b-f2b6-538f-b94a-2f83cf4a842a" -version = "0.6.18" -weakdeps = ["Adapt", "GPUArraysCore", "SparseArrays", "StaticArrays"] +version = "0.7.1" +weakdeps = ["Adapt", "GPUArraysCore", "KernelAbstractions", "LinearAlgebra", "SparseArrays", "StaticArrays"] [deps.StructArrays.extensions] StructArraysAdaptExt = "Adapt" - StructArraysGPUArraysCoreExt = "GPUArraysCore" + StructArraysGPUArraysCoreExt = ["GPUArraysCore", "KernelAbstractions"] + StructArraysLinearAlgebraExt = "LinearAlgebra" StructArraysSparseArraysExt = "SparseArrays" StructArraysStaticArraysExt = "StaticArrays" @@ -3501,9 +3506,9 @@ version = "7.7.0+0" [[deps.Sundials]] deps = ["CEnum", "DataStructures", "DiffEqBase", "Libdl", "LinearAlgebra", "Logging", "PrecompileTools", "Reexport", "SciMLBase", "SparseArrays", "Sundials_jll"] -git-tree-sha1 = "c135b599cec3558be36eaf86ab1ce7e259ef9534" +git-tree-sha1 = "7c7a7ee705724b3c80d5451ac49779db36c6f758" uuid = "c3572dad-4567-51f8-b174-8c6c989267f4" -version = "4.27.0" +version = "4.28.0" [[deps.Sundials_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "SuiteSparse_jll", "libblastrampoline_jll"] @@ -3512,10 +3517,10 @@ uuid = "fb77eaff-e24c-56d4-86b1-d163f2edb164" version = "5.2.3+0" [[deps.SymbolicIndexingInterface]] -deps = ["Accessors", "ArrayInterface", "RuntimeGeneratedFunctions", "StaticArraysCore"] -git-tree-sha1 = "d6c04e26aa1c8f7d144e1a8c47f1c73d3013e289" +deps = ["Accessors", "ArrayInterface", "PrettyTables", "RuntimeGeneratedFunctions", "StaticArraysCore"] +git-tree-sha1 = "b6a641e38efa01355aa721246dd246e10c7dcd4d" uuid = "2efcf032-c050-4f8e-a9bb-153293bab1f5" -version = "0.3.38" +version = "0.3.40" [[deps.TOML]] deps = ["Dates"] @@ -3524,9 +3529,9 @@ version = "1.0.3" [[deps.TZJData]] deps = ["Artifacts"] -git-tree-sha1 = "7def47e953a91cdcebd08fbe76d69d2715499a7d" +git-tree-sha1 = "72df96b3a595b7aab1e101eb07d2a435963a97e2" uuid = "dc5dba14-91b3-4cab-a142-028a31da12f7" -version = "1.4.0+2025a" +version = "1.5.0+2025b" [[deps.TableOperations]] deps = ["SentinelArrays", "Tables", "Test"] @@ -3553,9 +3558,9 @@ version = "1.10.0" [[deps.TensorCast]] deps = ["ChainRulesCore", "Compat", "LazyStack", "LinearAlgebra", "MacroTools", "Random", "StaticArrays", "TransmuteDims"] -git-tree-sha1 = "82a477d3afe53673393dd387806e34cd682a5ac4" +git-tree-sha1 = "67606dd3e705cc852c032975a6454e7130fed92c" uuid = "02d47bb6-7ce6-556a-be16-bb1710789e2b" -version = "0.4.8" +version = "0.4.9" [[deps.TensorCore]] deps = ["LinearAlgebra"] @@ -3576,9 +3581,9 @@ version = "1.11.0" [[deps.ThreadingUtilities]] deps = ["ManualMemory"] -git-tree-sha1 = "eda08f7e9818eb53661b3deb74e3159460dfbc27" +git-tree-sha1 = "18ad3613e129312fe67789a71720c3747e598a61" uuid = "8290d209-cae3-49c0-8002-c8c24d57dab5" -version = "0.5.2" +version = "0.5.3" [[deps.TimeZones]] deps = ["Artifacts", "Dates", "Downloads", "InlineStrings", "Mocking", "Printf", "Scratch", "TZJData", "Unicode", "p7zip_jll"] @@ -3604,14 +3609,26 @@ version = "0.5.28" [[deps.Tracker]] deps = ["Adapt", "ChainRulesCore", "DiffRules", "ForwardDiff", "Functors", "LinearAlgebra", "LogExpFunctions", "MacroTools", "NNlib", "NaNMath", "Optimisers", "Printf", "Random", "Requires", "SpecialFunctions", "Statistics"] -git-tree-sha1 = "c266e49953dadd0923caa17b3ea464ab6b97b3f2" +git-tree-sha1 = "83697ba2237663355de8fb0a800144cda44848a0" uuid = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" -version = "0.2.37" +version = "0.2.38" weakdeps = ["PDMats"] [deps.Tracker.extensions] TrackerPDMatsExt = "PDMats" +[[deps.Tracy]] +deps = ["ExprTools", "LibTracyClient_jll", "Libdl"] +git-tree-sha1 = "16439d004690d4086da35528f0c6b4d7006d6dae" +uuid = "e689c965-62c8-4b79-b2c5-8359227902fd" +version = "0.1.4" + + [deps.Tracy.extensions] + TracyProfilerExt = "TracyProfiler_jll" + + [deps.Tracy.weakdeps] + TracyProfiler_jll = "0c351ed6-8a68-550e-8b79-de6f926da83c" + [[deps.TranscodingStreams]] git-tree-sha1 = "0c45878dcfdcfa8480052b6ab162cdd138781742" uuid = "3bb67fe8-82b1-5028-8e26-92a6c54297fa" @@ -3641,9 +3658,9 @@ version = "0.4.84" [[deps.TransmuteDims]] deps = ["Adapt", "ChainRulesCore", "GPUArraysCore", "LinearAlgebra", "Requires", "Strided"] -git-tree-sha1 = "5b6f1f2ba5e91983eabc47cb362f92d9a96b579f" +git-tree-sha1 = "488b1a1effa8c0b97cd3335a7c1cbd23a3f2f6d3" uuid = "24ddb15e-299a-5cc3-8414-dbddc482d9ca" -version = "0.1.16" +version = "0.1.17" [[deps.TruncatedStacktraces]] deps = ["InteractiveUtils", "MacroTools", "Preferences"] @@ -3658,31 +3675,19 @@ version = "1.6.0" [[deps.Turing]] deps = ["ADTypes", "AbstractMCMC", "Accessors", "AdvancedHMC", "AdvancedMH", "AdvancedPS", "AdvancedVI", "BangBang", "Bijectors", "Compat", "DataStructures", "Distributions", "DistributionsAD", "DocStringExtensions", "DynamicPPL", "EllipticalSliceSampling", "ForwardDiff", "Libtask", "LinearAlgebra", "LogDensityProblems", "MCMCChains", "NamedArrays", "Optimization", "OptimizationOptimJL", "OrderedCollections", "Printf", "Random", "Reexport", "SciMLBase", "SpecialFunctions", "Statistics", "StatsAPI", "StatsBase", "StatsFuns"] -git-tree-sha1 = "f21402d4be463b3f5c4017e11fa00280fefc5c2f" +git-tree-sha1 = "69d34ae3bacf554dc51b48624e07649e5ca16e4a" uuid = "fce5fe82-541a-59a6-adf8-730c64b5f9a0" -version = "0.37.0" +version = "0.38.0" weakdeps = ["DynamicHMC", "Optim"] [deps.Turing.extensions] TuringDynamicHMCExt = "DynamicHMC" TuringOptimExt = "Optim" -[[deps.TuringBenchmarking]] -deps = ["ADTypes", "AbstractMCMC", "BenchmarkTools", "DynamicPPL", "ForwardDiff", "LinearAlgebra", "LogDensityProblems", "PrettyTables", "Requires", "ReverseDiff", "Zygote"] -git-tree-sha1 = "a03f2d71dfc88bf370d67c8ae84dfa109b2702bb" -uuid = "0db1332d-5c25-4deb-809f-459bc696f94f" -version = "0.5.9" - - [deps.TuringBenchmarking.extensions] - TuringBenchmarkingBridgeStanExt = "BridgeStan" - - [deps.TuringBenchmarking.weakdeps] - BridgeStan = "c88b6f0a-829e-4b0b-94b7-f06ab5908f5a" - [[deps.URIs]] -git-tree-sha1 = "67db6cc7b3821e19ebe75791a9dd19c9b1188f2b" +git-tree-sha1 = "cbbebadbcc76c5ca1cc4b4f3b0614b3e603b5000" uuid = "5c2747f8-b7ea-4ff2-ba2e-563bfd36b1d4" -version = "1.5.1" +version = "1.5.2" [[deps.UUIDs]] deps = ["Random", "SHA"] @@ -3812,107 +3817,95 @@ git-tree-sha1 = "b8b243e47228b4a3877f1dd6aee0c5d56db7fcf4" uuid = "02c8fc9c-b97f-50b9-bbe4-9be30ff0a78a" version = "2.13.6+1" -[[deps.XSLT_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgcrypt_jll", "Libgpg_error_jll", "Libiconv_jll", "XML2_jll", "Zlib_jll"] -git-tree-sha1 = "7d1671acbe47ac88e981868a078bd6b4e27c5191" -uuid = "aed1982a-8fda-507f-9586-7b0439959a61" -version = "1.1.42+0" - [[deps.XZ_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "56c6604ec8b2d82cc4cfe01aa03b00426aac7e1f" +git-tree-sha1 = "fee71455b0aaa3440dfdd54a9a36ccef829be7d4" uuid = "ffd25f8a-64ca-5728-b0f7-c24cf3aae800" -version = "5.6.4+1" +version = "5.8.1+0" [[deps.Xorg_libICE_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "326b4fea307b0b39892b3e85fa451692eda8d46c" +git-tree-sha1 = "a3ea76ee3f4facd7a64684f9af25310825ee3668" uuid = "f67eecfb-183a-506d-b269-f58e52b52d7c" -version = "1.1.1+0" +version = "1.1.2+0" [[deps.Xorg_libSM_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libICE_jll"] -git-tree-sha1 = "3796722887072218eabafb494a13c963209754ce" +git-tree-sha1 = "9c7ad99c629a44f81e7799eb05ec2746abb5d588" uuid = "c834827a-8449-5923-a945-d239c165b7dd" -version = "1.2.4+0" +version = "1.2.6+0" [[deps.Xorg_libX11_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libxcb_jll", "Xorg_xtrans_jll"] -git-tree-sha1 = "9dafcee1d24c4f024e7edc92603cedba72118283" +git-tree-sha1 = "b5899b25d17bf1889d25906fb9deed5da0c15b3b" uuid = "4f6342f7-b3d2-589e-9d20-edeb45f2b2bc" -version = "1.8.6+3" +version = "1.8.12+0" [[deps.Xorg_libXau_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "e9216fdcd8514b7072b43653874fd688e4c6c003" +git-tree-sha1 = "aa1261ebbac3ccc8d16558ae6799524c450ed16b" uuid = "0c0b7dd1-d40b-584c-a123-a41640f87eec" -version = "1.0.12+0" +version = "1.0.13+0" [[deps.Xorg_libXcursor_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libXfixes_jll", "Xorg_libXrender_jll"] -git-tree-sha1 = "807c226eaf3651e7b2c468f687ac788291f9a89b" +git-tree-sha1 = "6c74ca84bbabc18c4547014765d194ff0b4dc9da" uuid = "935fb764-8cf2-53bf-bb30-45bb1f8bf724" -version = "1.2.3+0" +version = "1.2.4+0" [[deps.Xorg_libXdmcp_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "89799ae67c17caa5b3b5a19b8469eeee474377db" +git-tree-sha1 = "52858d64353db33a56e13c341d7bf44cd0d7b309" uuid = "a3789734-cfe1-5b06-b2d0-1dd0d9d62d05" -version = "1.1.5+0" +version = "1.1.6+0" [[deps.Xorg_libXext_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] -git-tree-sha1 = "d7155fea91a4123ef59f42c4afb5ab3b4ca95058" +git-tree-sha1 = "a4c0ee07ad36bf8bbce1c3bb52d21fb1e0b987fb" uuid = "1082639a-0dae-5f34-9b06-72781eeb8cb3" -version = "1.3.6+3" +version = "1.3.7+0" [[deps.Xorg_libXfixes_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] -git-tree-sha1 = "6fcc21d5aea1a0b7cce6cab3e62246abd1949b86" +git-tree-sha1 = "9caba99d38404b285db8801d5c45ef4f4f425a6d" uuid = "d091e8ba-531a-589c-9de9-94069b037ed8" -version = "6.0.0+0" +version = "6.0.1+0" [[deps.Xorg_libXi_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libXext_jll", "Xorg_libXfixes_jll"] -git-tree-sha1 = "984b313b049c89739075b8e2a94407076de17449" +git-tree-sha1 = "a376af5c7ae60d29825164db40787f15c80c7c54" uuid = "a51aa0fd-4e3c-5386-b890-e753decda492" -version = "1.8.2+0" +version = "1.8.3+0" [[deps.Xorg_libXinerama_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libXext_jll"] -git-tree-sha1 = "a1a7eaf6c3b5b05cb903e35e8372049b107ac729" +git-tree-sha1 = "a5bc75478d323358a90dc36766f3c99ba7feb024" uuid = "d1454406-59df-5ea1-beac-c340f2130bc3" -version = "1.1.5+0" +version = "1.1.6+0" [[deps.Xorg_libXrandr_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libXext_jll", "Xorg_libXrender_jll"] -git-tree-sha1 = "b6f664b7b2f6a39689d822a6300b14df4668f0f4" +git-tree-sha1 = "aff463c82a773cb86061bce8d53a0d976854923e" uuid = "ec84b674-ba8e-5d96-8ba1-2a689ba10484" -version = "1.5.4+0" +version = "1.5.5+0" [[deps.Xorg_libXrender_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] -git-tree-sha1 = "a490c6212a0e90d2d55111ac956f7c4fa9c277a6" +git-tree-sha1 = "7ed9347888fac59a618302ee38216dd0379c480d" uuid = "ea2f1a96-1ddc-540d-b46f-429655e07cfa" -version = "0.9.11+1" - -[[deps.Xorg_libpthread_stubs_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "c57201109a9e4c0585b208bb408bc41d205ac4e9" -uuid = "14d82f49-176c-5ed1-bb49-ad3f5cbd8c74" -version = "0.1.2+0" +version = "0.9.12+0" [[deps.Xorg_libxcb_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "XSLT_jll", "Xorg_libXau_jll", "Xorg_libXdmcp_jll", "Xorg_libpthread_stubs_jll"] -git-tree-sha1 = "1a74296303b6524a0472a8cb12d3d87a78eb3612" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libXau_jll", "Xorg_libXdmcp_jll"] +git-tree-sha1 = "bfcaf7ec088eaba362093393fe11aa141fa15422" uuid = "c7cfdc94-dc32-55de-ac96-5a1b8d977c5b" -version = "1.17.0+3" +version = "1.17.1+0" [[deps.Xorg_libxkbfile_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] -git-tree-sha1 = "dbc53e4cf7701c6c7047c51e17d6e64df55dca94" +git-tree-sha1 = "e3150c7400c41e207012b41659591f083f3ef795" uuid = "cc61e674-0454-545c-8b26-ed2c68acab7a" -version = "1.1.2+1" +version = "1.1.3+0" [[deps.Xorg_xcb_util_cursor_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_xcb_util_image_jll", "Xorg_xcb_util_jll", "Xorg_xcb_util_renderutil_jll"] @@ -3952,21 +3945,21 @@ version = "0.4.1+1" [[deps.Xorg_xkbcomp_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libxkbfile_jll"] -git-tree-sha1 = "ab2221d309eda71020cdda67a973aa582aa85d69" +git-tree-sha1 = "801a858fc9fb90c11ffddee1801bb06a738bda9b" uuid = "35661453-b289-5fab-8a00-3d9160c6a3a4" -version = "1.4.6+1" +version = "1.4.7+0" [[deps.Xorg_xkeyboard_config_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_xkbcomp_jll"] -git-tree-sha1 = "691634e5453ad362044e2ad653e79f3ee3bb98c3" +git-tree-sha1 = "00af7ebdc563c9217ecc67776d1bbf037dbcebf4" uuid = "33bec58e-1273-512f-9401-5d533626f822" -version = "2.39.0+0" +version = "2.44.0+0" [[deps.Xorg_xtrans_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "6dba04dbfb72ae3ebe5418ba33d087ba8aa8cb00" +git-tree-sha1 = "a63799ff68005991f9d9491b6e95bd3478d783cb" uuid = "c5fb5394-a638-5e4d-96e5-b29de1b5cf10" -version = "1.5.1+0" +version = "1.6.0+0" [[deps.Zlib_jll]] deps = ["Libdl"] @@ -3981,9 +3974,9 @@ version = "1.5.7+1" [[deps.Zygote]] deps = ["AbstractFFTs", "ChainRules", "ChainRulesCore", "DiffRules", "Distributed", "FillArrays", "ForwardDiff", "GPUArrays", "GPUArraysCore", "IRTools", "InteractiveUtils", "LinearAlgebra", "LogExpFunctions", "MacroTools", "NaNMath", "PrecompileTools", "Random", "Requires", "SparseArrays", "SpecialFunctions", "Statistics", "ZygoteRules"] -git-tree-sha1 = "0b3c944f5d2d8b466c5d20a84c229c17c528f49e" +git-tree-sha1 = "8462a20f0fd85b4ef4a1b7310d33e7475d2bb14f" uuid = "e88e6eb3-aa80-5325-afca-941959d7151f" -version = "0.6.75" +version = "0.6.77" weakdeps = ["Colors", "Distances", "Tracker"] [deps.Zygote.extensions] @@ -4005,9 +3998,9 @@ version = "3.2.9+0" [[deps.fzf_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "6e50f145003024df4f5cb96c7fce79466741d601" +git-tree-sha1 = "b6a34e0e0960190ac2a4363a1bd003504772d631" uuid = "214eeab7-80f7-51ab-84ad-2988db7cef09" -version = "0.56.3+0" +version = "0.61.1+0" [[deps.gperf_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] @@ -4064,9 +4057,9 @@ version = "1.18.0+0" [[deps.libpng_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "068dfe202b0a05b8332f1e8e6b4080684b9c7700" +git-tree-sha1 = "002748401f7b520273e2b506f61cab95d4701ccf" uuid = "b53b4c65-9356-5827-b1ea-8c7a1a84506f" -version = "1.6.47+0" +version = "1.6.48+0" [[deps.libvorbis_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Ogg_jll", "Pkg"] @@ -4109,7 +4102,7 @@ uuid = "dfaa095f-4041-5dcd-9319-2fabd8486b76" version = "3.5.0+0" [[deps.xkbcommon_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Wayland_jll", "Wayland_protocols_jll", "Xorg_libxcb_jll", "Xorg_xkeyboard_config_jll"] -git-tree-sha1 = "63406453ed9b33a0df95d570816d5366c92b7809" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Wayland_jll", "Wayland_protocols_jll", "Xorg_libxcb_jll", "Xorg_xkeyboard_config_jll"] +git-tree-sha1 = "c950ae0a3577aec97bfccf3381f66666bc416729" uuid = "d8fb68d0-12a3-5cfd-a85a-d49703b185fd" -version = "1.4.1+2" +version = "1.8.1+0" diff --git a/Project.toml b/Project.toml index daed8daf6..98434868e 100644 --- a/Project.toml +++ b/Project.toml @@ -48,9 +48,8 @@ StatsBase = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" StatsFuns = "4c63d2b9-4356-54db-8cca-17b64c39e42c" StatsPlots = "f3b207a7-027a-5e70-b257-86293d7955fd" Turing = "fce5fe82-541a-59a6-adf8-730c64b5f9a0" -TuringBenchmarking = "0db1332d-5c25-4deb-809f-459bc696f94f" UnPack = "3a884ed6-31ef-47d7-9d2a-63182c4928ed" Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" [compat] -Turing = "0.37" +Turing = "0.38" diff --git a/usage/automatic-differentiation/index.qmd b/usage/automatic-differentiation/index.qmd index e95d28083..7b1da817f 100755 --- a/usage/automatic-differentiation/index.qmd +++ b/usage/automatic-differentiation/index.qmd @@ -14,8 +14,8 @@ Pkg.instantiate(); ## Switching AD Modes -Turing currently supports four automatic differentiation (AD) backends for sampling: [ForwardDiff](https://github.com/JuliaDiff/ForwardDiff.jl) for forward-mode AD; and [Mooncake](https://github.com/compintell/Mooncake.jl), [ReverseDiff](https://github.com/JuliaDiff/ReverseDiff.jl), and [Zygote](https://github.com/FluxML/Zygote.jl) for reverse-mode AD. -`ForwardDiff` is automatically imported by Turing. To utilize `Mooncake`, `Zygote`, or `ReverseDiff` for AD, users must explicitly import them with `import Mooncake`, `import Zygote` or `import ReverseDiff`, alongside `using Turing`. +Turing currently supports four automatic differentiation (AD) backends for sampling: [ForwardDiff](https://github.com/JuliaDiff/ForwardDiff.jl) for forward-mode AD; and [Mooncake](https://github.com/compintell/Mooncake.jl) and [ReverseDiff](https://github.com/JuliaDiff/ReverseDiff.jl) for reverse-mode AD. +`ForwardDiff` is automatically imported by Turing. To utilize `Mooncake`, or `ReverseDiff` for AD, users must explicitly import them with `import Mooncake`, alongside `using Turing`. As of Turing version v0.30, the global configuration flag for the AD backend has been removed in favour of [`AdTypes.jl`](https://github.com/SciML/ADTypes.jl), allowing users to specify the AD backend for individual samplers independently. Users can pass the `adtype` keyword argument to the sampler constructor to select the desired AD backend, with the default being `AutoForwardDiff(; chunksize=0)`. @@ -33,8 +33,6 @@ For instance, `if`-statements with conditions that can be determined at compile However, `if`-statements that depend on the model parameters can take different branches during sampling; hence, the compiled tape might be incorrect. Thus you must not use compiled tapes when your model makes decisions based on the model parameters, and you should be careful if you compute functions of parameters that those functions do not have branching which might cause them to execute different code for different values of the parameter. -For `Zygote`, pass `adtype=AutoZygote()` to the sampler constructor. - And the previously used interface functions including `ADBackend`, `setadbackend`, `setsafe`, `setchunksize`, and `setrdcache` are deprecated and removed. ## Compositional Sampling with Differing AD Modes @@ -70,9 +68,22 @@ Generally, reverse-mode AD, for instance `ReverseDiff`, is faster when sampling If the differentiation method is not specified in this way, Turing will default to using whatever the global AD backend is. Currently, this defaults to `ForwardDiff`. -The most reliable way to ensure you are using the fastest AD that works for your problem is to benchmark them using [`TuringBenchmarking`](https://github.com/TuringLang/TuringBenchmarking.jl): +The most reliable way to ensure you are using the fastest AD that works for your problem is to benchmark them using the functionality in DynamicPPL (see [the API documentation](https://turinglang.org/DynamicPPL.jl/stable/api/#AD-testing-and-benchmarking-utilities)): ```{julia} -using TuringBenchmarking -benchmark_model(gdemo(1.5, 2), adbackends=[AutoForwardDiff(), AutoReverseDiff()]) +using DynamicPPL.TestUtils.AD: run_ad, ADResult +using ForwardDiff, ReverseDiff + +model = gdemo(1.5, 2) + +for adtype in [AutoForwardDiff(), AutoReverseDiff()] + result = run_ad(model, adtype; benchmark=true) + @show result.time_vs_primal +end ``` + +In this specific instance, ForwardDiff is clearly faster (due to the small size of the model). + +We also have a table of benchmarks for various models and AD backends in [the ADTests website](https://turinglang.org/ADTests/). +These models aim to capture a variety of different Turing.jl features. +If you have suggestions for things to include, please do let us know by [creating an issue on GitHub](https://github.com/TuringLang/ADTests/issues/new)! From f1e6dc0edb78fe5a61fd0340f3a3400afe56f2d5 Mon Sep 17 00:00:00 2001 From: Penelope Yong Date: Fri, 9 May 2025 19:17:52 +0100 Subject: [PATCH 2/8] Fix links to API docs --- tutorials/hidden-markov-models/index.qmd | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tutorials/hidden-markov-models/index.qmd b/tutorials/hidden-markov-models/index.qmd index 2e318a8c8..51aa68d5c 100755 --- a/tutorials/hidden-markov-models/index.qmd +++ b/tutorials/hidden-markov-models/index.qmd @@ -123,11 +123,11 @@ The priors on our transition matrix are noninformative, using `T[i] ~ Dirichlet( end; ``` -We will use a combination of two samplers ([HMC](https://turinglang.org/dev/docs/library/#Turing.Inference.HMC) and [Particle Gibbs](https://turinglang.org/dev/docs/library/#Turing.Inference.PG)) by passing them to the [Gibbs](https://turinglang.org/dev/docs/library/#Turing.Inference.Gibbs) sampler. The Gibbs sampler allows for compositional inference, where we can utilize different samplers on different parameters. +We will use a combination of two samplers (HMC and Particle Gibbs) by passing them to the Gibbs sampler. The Gibbs sampler allows for compositional inference, where we can utilize different samplers on different parameters. (For API details of these samplers, please see [Turing.jl's API documentation](https://turinglang.org/Turing.jl/stable/api/Inference/).) In this case, we use HMC for `m` and `T`, representing the emission and transition matrices respectively. We use the Particle Gibbs sampler for `s`, the state sequence. You may wonder why it is that we are not assigning `s` to the HMC sampler, and why it is that we need compositional Gibbs sampling at all. -The parameter `s` is not a continuous variable. It is a vector of **integers**, and thus Hamiltonian methods like HMC and [NUTS](https://turinglang.org/dev/docs/library/#Turing.Inference.NUTS) won't work correctly. Gibbs allows us to apply the right tools to the best effect. If you are a particularly advanced user interested in higher performance, you may benefit from setting up your Gibbs sampler to use [different automatic differentiation]({{}}#compositional-sampling-with-differing-ad-modes) backends for each parameter space. +The parameter `s` is not a continuous variable. It is a vector of **integers**, and thus Hamiltonian methods like HMC and NUTS won't work correctly. Gibbs allows us to apply the right tools to the best effect. If you are a particularly advanced user interested in higher performance, you may benefit from setting up your Gibbs sampler to use [different automatic differentiation]({{}}#compositional-sampling-with-differing-ad-modes) backends for each parameter space. Time to run our sampler. From 584f1d5ff4b3d1367b620b50d7da428dd172442d Mon Sep 17 00:00:00 2001 From: Penelope Yong Date: Fri, 9 May 2025 19:18:24 +0100 Subject: [PATCH 3/8] Bump version in _quarto.yml --- _quarto.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_quarto.yml b/_quarto.yml index cf43d47c1..250b6cc58 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -32,7 +32,7 @@ website: text: Team right: # Current version - - text: "v0.37" + - text: "v0.38" menu: - text: Changelog href: https://turinglang.org/docs/changelog.html From 9d172815262b071f3c76743d85470b6eaea215d6 Mon Sep 17 00:00:00 2001 From: Penelope Yong Date: Fri, 9 May 2025 20:20:48 +0100 Subject: [PATCH 4/8] Update generated_quantities -> returned; add some docs on := --- _quarto.yml | 4 +- .../bayesian-time-series-analysis/index.qmd | 2 +- tutorials/gaussian-mixture-models/index.qmd | 2 +- .../gaussian-processes-introduction/index.qmd | 2 +- usage/generated-quantities/index.qmd | 68 ------------- usage/tracking-extra-quantities/index.qmd | 98 +++++++++++++++++++ 6 files changed, 103 insertions(+), 73 deletions(-) delete mode 100755 usage/generated-quantities/index.qmd create mode 100755 usage/tracking-extra-quantities/index.qmd diff --git a/_quarto.yml b/_quarto.yml index 250b6cc58..81cd0613d 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -60,7 +60,7 @@ website: - usage/custom-distribution/index.qmd - usage/probability-interface/index.qmd - usage/modifying-logprob/index.qmd - - usage/generated-quantities/index.qmd + - usage/tracking-extra-quantities/index.qmd - usage/mode-estimation/index.qmd - usage/performance-tips/index.qmd - usage/sampler-visualisation/index.qmd @@ -190,7 +190,7 @@ using-turing-external-samplers: tutorials/docs-16-using-turing-external-samplers using-turing-mode-estimation: tutorials/docs-17-mode-estimation usage-probability-interface: tutorials/usage-probability-interface usage-custom-distribution: tutorials/usage-custom-distribution -usage-generated-quantities: tutorials/usage-generated-quantities +usage-tracking-extra-quantities: tutorials/tracking-extra-quantities usage-modifying-logprob: tutorials/usage-modifying-logprob contributing-guide: developers/contributing diff --git a/tutorials/bayesian-time-series-analysis/index.qmd b/tutorials/bayesian-time-series-analysis/index.qmd index 3f722dcaf..33dcb9962 100755 --- a/tutorials/bayesian-time-series-analysis/index.qmd +++ b/tutorials/bayesian-time-series-analysis/index.qmd @@ -175,7 +175,7 @@ end function get_decomposition(model, x, cyclic_features, chain, op) chain_params = Turing.MCMCChains.get_sections(chain, :parameters) - return generated_quantities(model(x, cyclic_features, op), chain_params) + return returned(model(x, cyclic_features, op), chain_params) end function plot_fit(x, y, decomp, ymax) diff --git a/tutorials/gaussian-mixture-models/index.qmd b/tutorials/gaussian-mixture-models/index.qmd index 145d55c62..b93bb6f3e 100755 --- a/tutorials/gaussian-mixture-models/index.qmd +++ b/tutorials/gaussian-mixture-models/index.qmd @@ -403,7 +403,7 @@ chains = sample(model, sampler, MCMCThreads(), nsamples, nchains, discard_initia Given a sample from the marginalized posterior, these assignments can be recovered with: ```{julia} -assignments = mean(generated_quantities(gmm_recover(x), chains)); +assignments = mean(returned(gmm_recover(x), chains)); ``` ```{julia} diff --git a/tutorials/gaussian-processes-introduction/index.qmd b/tutorials/gaussian-processes-introduction/index.qmd index 5f7378157..649f80484 100755 --- a/tutorials/gaussian-processes-introduction/index.qmd +++ b/tutorials/gaussian-processes-introduction/index.qmd @@ -146,7 +146,7 @@ posterior probability of success at any distance we choose: ```{julia} d_pred = 1:0.2:21 -samples = map(generated_quantities(m_post, chn)[1:10:end]) do x +samples = map(returned(m_post, chn)[1:10:end]) do x return logistic.(rand(posterior(x.fx, x.f_latent)(d_pred, 1e-4))) end p = plot() diff --git a/usage/generated-quantities/index.qmd b/usage/generated-quantities/index.qmd deleted file mode 100755 index c702e215e..000000000 --- a/usage/generated-quantities/index.qmd +++ /dev/null @@ -1,68 +0,0 @@ ---- -title: Generated Quantities -engine: julia -aliases: - - ../../tutorials/usage-generated-quantities/index.html ---- - -```{julia} -#| echo: false -#| output: false -using Pkg; -Pkg.instantiate(); -``` - -Often, the most natural parameterization for a model is not the most computationally feasible. -Consider the following (efficiently reparametrized) implementation of Neal's funnel [(Neal, 2003)](https://arxiv.org/abs/physics/0009028): - -```{julia} -using Turing - -@model function Neal() - # Raw draws - y_raw ~ Normal(0, 1) - x_raw ~ arraydist([Normal(0, 1) for i in 1:9]) - - # Transform: - y = 3 * y_raw - x = exp.(y ./ 2) .* x_raw - - # Return: - return [x; y] -end -``` - -In this case, the random variables exposed in the chain (`x_raw`, `y_raw`) are not in a helpful form — what we're after are the deterministically transformed variables `x` and `y`. - -More generally, there are often quantities in our models that we might be interested in viewing, but which are not explicitly present in our chain. - -We can generate draws from these variables — in this case, `x` and `y` — by adding them as a return statement to the model, and then calling `generated_quantities(model, chain)`. Calling this function outputs an array of values specified in the return statement of the model. - -For example, in the above reparametrization, we sample from our model: - -```{julia} -chain = sample(Neal(), NUTS(), 1000; progress=false) -``` - -Notice that only `x_raw` and `y_raw` are stored in the chain; `x` and `y` are not because they do not appear on the left-hand side of a tilde-statement. - -To get `x` and `y`, we can then call: - -```{julia} -generated_quantities(Neal(), chain) -``` - -Each element of this corresponds to an array with the values of `x1, x2, ..., x9, y` for each posterior sample. - -In this case, it might be useful to reorganize our output into a matrix for plotting: - -```{julia} -reparam_chain = reduce(hcat, generated_quantities(Neal(), chain))' -``` - -from which we can recover a vector of our samples: - -```{julia} -x1_samples = reparam_chain[:, 1] -y_samples = reparam_chain[:, 10] -``` diff --git a/usage/tracking-extra-quantities/index.qmd b/usage/tracking-extra-quantities/index.qmd new file mode 100755 index 000000000..2a2cad453 --- /dev/null +++ b/usage/tracking-extra-quantities/index.qmd @@ -0,0 +1,98 @@ +--- +title: Tracking Extra Quantities +engine: julia +aliases: + - ../../tutorials/usage-generated-quantities/index.html + - ../generated-quantities/index.html +--- + +```{julia} +#| echo: false +#| output: false +using Pkg; +Pkg.instantiate(); +``` + +Often, the most natural parameterization for a model is not the most computationally feasible. +Consider the following (efficiently reparametrized) implementation of Neal's funnel [(Neal, 2003)](https://arxiv.org/abs/physics/0009028): + +```{julia} +using Turing + +@model function Neal() + # Raw draws + y_raw ~ Normal(0, 1) + x_raw ~ arraydist([Normal(0, 1) for i in 1:9]) + + # Transform: + y = 3 * y_raw + x = exp.(y ./ 2) .* x_raw + return nothing +end +``` + +In this case, the random variables exposed in the chain (`x_raw`, `y_raw`) are not in a helpful form — what we're after are the deterministically transformed variables `x` and `y`. + +More generally, there are often quantities in our models that we might be interested in viewing, but which are not explicitly present in our chain. + +There are two ways of tracking such extra quantities. + +## Using `:=` (during inference) + +The first way is to use the `:=` operator, which behaves exactly like `=` except that the values of the variables on its left-hand side are automatically added to the chain returned by the sampler. +For example: + +```{julia} +@model function Neal_coloneq() + # Raw draws + y_raw ~ Normal(0, 1) + x_raw ~ arraydist([Normal(0, 1) for i in 1:9]) + + # Transform: + y := 3 * y_raw + x := exp.(y ./ 2) .* x_raw +end + +sample(Neal_coloneq(), NUTS(), 1000; progress=false) +``` + +## Using `returned` (post-inference) + +Alternatively, one can specify the extra quantities as part of the model function's return statement: + +```{julia} +@model function Neal_return() + # Raw draws + y_raw ~ Normal(0, 1) + x_raw ~ arraydist([Normal(0, 1) for i in 1:9]) + + # Transform and return as a NamedTuple + y = 3 * y_raw + x = exp.(y ./ 2) .* x_raw + return [x; y] +end + +chain = sample(Neal_return(), NUTS(), 1000; progress=false) +``` + +This chain does not contain `x` and `y`, but we can extract the values using the `returned` function. +Calling this function outputs an array of values specified in the return statement of the model. + +```{julia} +returned(Neal_return(), chain) +``` + +Each element of this corresponds to an array with the values of `x1, x2, ..., x9, y` for each posterior sample. + +In this case, it might be useful to reorganize our output into a matrix for plotting: + +```{julia} +reparam_chain = reduce(hcat, returned(Neal_return(), chain))' +``` + +from which we can recover a vector of our samples: + +```{julia} +x1_samples = reparam_chain[:, 1] +y_samples = reparam_chain[:, 10] +``` From 6888f24f2a1b57c7b4166c9ee80af6284ee076ec Mon Sep 17 00:00:00 2001 From: Penelope Yong Date: Sat, 10 May 2025 01:39:09 +0100 Subject: [PATCH 5/8] Expand on docs --- usage/tracking-extra-quantities/index.qmd | 86 ++++++++++++++++++----- 1 file changed, 70 insertions(+), 16 deletions(-) diff --git a/usage/tracking-extra-quantities/index.qmd b/usage/tracking-extra-quantities/index.qmd index 2a2cad453..4ba9a96f0 100755 --- a/usage/tracking-extra-quantities/index.qmd +++ b/usage/tracking-extra-quantities/index.qmd @@ -13,11 +13,14 @@ using Pkg; Pkg.instantiate(); ``` -Often, the most natural parameterization for a model is not the most computationally feasible. +Often, there are quantities in models that we might be interested in viewing the values of, but which are not random variables in the model that are explicitly drawn from a distribution. + +As a motivating example, the most natural parameterization for a model might not the most computationally feasible. Consider the following (efficiently reparametrized) implementation of Neal's funnel [(Neal, 2003)](https://arxiv.org/abs/physics/0009028): ```{julia} using Turing +setprogress!(false) @model function Neal() # Raw draws @@ -33,9 +36,7 @@ end In this case, the random variables exposed in the chain (`x_raw`, `y_raw`) are not in a helpful form — what we're after are the deterministically transformed variables `x` and `y`. -More generally, there are often quantities in our models that we might be interested in viewing, but which are not explicitly present in our chain. - -There are two ways of tracking such extra quantities. +There are two ways to track these extra quantities in Turing.jl. ## Using `:=` (during inference) @@ -53,7 +54,7 @@ For example: x := exp.(y ./ 2) .* x_raw end -sample(Neal_coloneq(), NUTS(), 1000; progress=false) +sample(Neal_coloneq(), NUTS(), 1000) ``` ## Using `returned` (post-inference) @@ -69,30 +70,83 @@ Alternatively, one can specify the extra quantities as part of the model functio # Transform and return as a NamedTuple y = 3 * y_raw x = exp.(y ./ 2) .* x_raw - return [x; y] + return (x=x, y=y) end -chain = sample(Neal_return(), NUTS(), 1000; progress=false) +chain = sample(Neal_return(), NUTS(), 1000) ``` -This chain does not contain `x` and `y`, but we can extract the values using the `returned` function. -Calling this function outputs an array of values specified in the return statement of the model. +The sampled chain does not contain `x` and `y`, but we can extract the values using the `returned` function. +Calling this function outputs an array: ```{julia} -returned(Neal_return(), chain) +nts = returned(Neal_return(), chain) ``` -Each element of this corresponds to an array with the values of `x1, x2, ..., x9, y` for each posterior sample. +where each element of which is a NamedTuple, as specified in the return statement of the model. + +```{julia} +nts[1] +``` + +## Which to use? + +There are some pros and cons of using `returned`, as opposed to `:=`. + +Firstly, `returned` is more flexible, as it allows you to track any type of object; `:=` only works with variables that can be inserted into an `MCMCChains.Chains` object. +(Notice that `x` is a vector, and in the first case where we used `:=`, reconstructing the vector value of `x` can also be rather annoying as the chain stores each individual element of `x` separately.) + +However, if used carelessly, `returned` can lead to unnecessary computation. +For example, in `Neal_return()` above, the `x` and `y` variables are also calculated during the inference process (i.e. the call to `sample()`), but are then thrown away. +They are then calculated _again_ when `returned()` is called. + +To avoid this, you will essentially have to create two different models, one for inference and one for post-inference. +The simplest way of doing this is to add a parameter to the model argument: + +```{julia} +@model function Neal_coloneq_optional(track::Bool) + # Raw draws + y_raw ~ Normal(0, 1) + x_raw ~ arraydist([Normal(0, 1) for i in 1:9]) + + if track + y = 3 * y_raw + x = exp.(y ./ 2) .* x_raw + return (x=x, y=y) + else + return nothing + end +end -In this case, it might be useful to reorganize our output into a matrix for plotting: +chain = sample(Neal_coloneq_optional(false), NUTS(), 1000) +``` + +The above ensures that `x` and `y` are not calculated during inference, but allows us to still use `returned` to extract them: ```{julia} -reparam_chain = reduce(hcat, returned(Neal_return(), chain))' +returned(Neal_coloneq_optional(true), chain) ``` -from which we can recover a vector of our samples: +Another equivalent option is to use a submodel: ```{julia} -x1_samples = reparam_chain[:, 1] -y_samples = reparam_chain[:, 10] +@model function Neal() + y_raw ~ Normal(0, 1) + x_raw ~ arraydist([Normal(0, 1) for i in 1:9]) + return (x_raw=x_raw, y_raw=y_raw) +end + +chain = sample(Neal(), NUTS(), 1000) + +@model function Neal_with_extras() + neal ~ to_submodel(Neal(), false) + y = 3 * neal.y_raw + x = exp.(y ./ 2) .* neal.x_raw + return (x=x, y=y) +end + +returned(Neal_with_extras(), chain) ``` + +Note that for the `returned` call to work, the `Neal_with_extras()` model must have the same variable names as stored in `chain`. +This means the submodel `Neal()` must not be prefixed, i.e. `to_submodel()` must be passed a second parameter `false`. From 6625db8da30597dde53bcd3158ebf2ce8fa2be1f Mon Sep 17 00:00:00 2001 From: Penelope Yong Date: Mon, 12 May 2025 00:54:06 +0100 Subject: [PATCH 6/8] Fix typo --- usage/automatic-differentiation/index.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usage/automatic-differentiation/index.qmd b/usage/automatic-differentiation/index.qmd index 7b1da817f..a72a19550 100755 --- a/usage/automatic-differentiation/index.qmd +++ b/usage/automatic-differentiation/index.qmd @@ -15,7 +15,7 @@ Pkg.instantiate(); ## Switching AD Modes Turing currently supports four automatic differentiation (AD) backends for sampling: [ForwardDiff](https://github.com/JuliaDiff/ForwardDiff.jl) for forward-mode AD; and [Mooncake](https://github.com/compintell/Mooncake.jl) and [ReverseDiff](https://github.com/JuliaDiff/ReverseDiff.jl) for reverse-mode AD. -`ForwardDiff` is automatically imported by Turing. To utilize `Mooncake`, or `ReverseDiff` for AD, users must explicitly import them with `import Mooncake`, alongside `using Turing`. +`ForwardDiff` is automatically imported by Turing. To utilize `Mooncake` or `ReverseDiff` for AD, users must explicitly import them with `import Mooncake` or `import ReverseDiff`, alongside the usual `using Turing`. As of Turing version v0.30, the global configuration flag for the AD backend has been removed in favour of [`AdTypes.jl`](https://github.com/SciML/ADTypes.jl), allowing users to specify the AD backend for individual samplers independently. Users can pass the `adtype` keyword argument to the sampler constructor to select the desired AD backend, with the default being `AutoForwardDiff(; chunksize=0)`. From 1a6d726246813ba54e801dfa553219b5675aedc5 Mon Sep 17 00:00:00 2001 From: Penelope Yong Date: Mon, 12 May 2025 22:26:26 +0100 Subject: [PATCH 7/8] Add Mooncake note on AD --- usage/automatic-differentiation/index.qmd | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/usage/automatic-differentiation/index.qmd b/usage/automatic-differentiation/index.qmd index a72a19550..9143712a6 100755 --- a/usage/automatic-differentiation/index.qmd +++ b/usage/automatic-differentiation/index.qmd @@ -24,8 +24,6 @@ For `ForwardDiff`, pass `adtype=AutoForwardDiff(; chunksize)` to the sampler con For `ReverseDiff`, pass `adtype=AutoReverseDiff()` to the sampler constructor. An additional keyword argument called `compile` can be provided to `AutoReverseDiff`. It specifies whether to pre-record the tape only once and reuse it later (`compile` is set to `false` by default, which means no pre-recording). This can substantially improve performance, but risks silently incorrect results if not used with care. - - Pre-recorded tapes should only be used if you are absolutely certain that the sequence of operations performed in your code does not change between different executions of your model. Thus, e.g., in the model definition and all implicitly and explicitly called functions in the model, all loops should be of fixed size, and `if`-statements should consistently execute the same branches. @@ -33,7 +31,9 @@ For instance, `if`-statements with conditions that can be determined at compile However, `if`-statements that depend on the model parameters can take different branches during sampling; hence, the compiled tape might be incorrect. Thus you must not use compiled tapes when your model makes decisions based on the model parameters, and you should be careful if you compute functions of parameters that those functions do not have branching which might cause them to execute different code for different values of the parameter. -And the previously used interface functions including `ADBackend`, `setadbackend`, `setsafe`, `setchunksize`, and `setrdcache` are deprecated and removed. +The previously used interface functions including `ADBackend`, `setadbackend`, `setsafe`, `setchunksize`, and `setrdcache` have been removed. + +For `Mooncake`, pass `adtype=AutoMooncake(; config=nothing)` to the sampler constructor. ## Compositional Sampling with Differing AD Modes From ced224b0043703cce4d5f12a5bacffc60e503be9 Mon Sep 17 00:00:00 2001 From: Penelope Yong Date: Mon, 12 May 2025 22:26:38 +0100 Subject: [PATCH 8/8] Clarify extra computation in returned() --- usage/tracking-extra-quantities/index.qmd | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/usage/tracking-extra-quantities/index.qmd b/usage/tracking-extra-quantities/index.qmd index 4ba9a96f0..40017716d 100755 --- a/usage/tracking-extra-quantities/index.qmd +++ b/usage/tracking-extra-quantities/index.qmd @@ -15,7 +15,7 @@ Pkg.instantiate(); Often, there are quantities in models that we might be interested in viewing the values of, but which are not random variables in the model that are explicitly drawn from a distribution. -As a motivating example, the most natural parameterization for a model might not the most computationally feasible. +As a motivating example, the most natural parameterization for a model might not be the most computationally feasible. Consider the following (efficiently reparametrized) implementation of Neal's funnel [(Neal, 2003)](https://arxiv.org/abs/physics/0009028): ```{julia} @@ -96,9 +96,9 @@ There are some pros and cons of using `returned`, as opposed to `:=`. Firstly, `returned` is more flexible, as it allows you to track any type of object; `:=` only works with variables that can be inserted into an `MCMCChains.Chains` object. (Notice that `x` is a vector, and in the first case where we used `:=`, reconstructing the vector value of `x` can also be rather annoying as the chain stores each individual element of `x` separately.) -However, if used carelessly, `returned` can lead to unnecessary computation. -For example, in `Neal_return()` above, the `x` and `y` variables are also calculated during the inference process (i.e. the call to `sample()`), but are then thrown away. -They are then calculated _again_ when `returned()` is called. +A drawback is that naively using `returned` can lead to unnecessary computation during inference. +This is because during the sampling process, the return values are also calculated (since they are part of the model function), but then thrown away. +So, if the extra quantities are expensive to compute, this can be a problem. To avoid this, you will essentially have to create two different models, one for inference and one for post-inference. The simplest way of doing this is to add a parameter to the model argument: