diff --git a/Manifest.toml b/Manifest.toml index c96f130..e021ed4 100644 --- a/Manifest.toml +++ b/Manifest.toml @@ -3,16 +3,21 @@ julia_version = "1.7.3" manifest_format = "2.0" +[[deps.ADTypes]] +git-tree-sha1 = "41c37aa88889c171f1300ceac1313c06e891d245" +uuid = "47edcb42-4c32-4615-8424-f2b9edc5f35b" +version = "0.2.6" + [[deps.ANSIColoredPrinters]] git-tree-sha1 = "574baf8110975760d391c710b6341da1afa48d8c" uuid = "a4c015fc-c6ff-483c-b24f-f7ea428134e9" version = "0.0.1" [[deps.AbstractFFTs]] -deps = ["ChainRulesCore", "LinearAlgebra"] -git-tree-sha1 = "69f7020bd72f069c219b5e8c236c1fa90d2cb409" +deps = ["ChainRulesCore", "LinearAlgebra", "Test"] +git-tree-sha1 = "d92ad398961a3ed262d8bf04a1a2b8340f915fef" uuid = "621f4979-c628-5d54-868e-fcf4e3e8185c" -version = "1.2.1" +version = "1.5.0" [[deps.ActiveSpaceSolvers]] deps = ["Arpack", "BenchmarkTools", "BlockDavidson", "Documenter", "InCoreIntegrals", "InteractiveUtils", "JLD2", "KrylovKit", "LinearAlgebra", "LinearMaps", "NPZ", "OrderedCollections", "Parameters", "Printf", "Profile", "QCBase", "StaticArrays", "TensorOperations", "TimerOutputs"] @@ -23,10 +28,10 @@ uuid = "f8e94ea7-44cc-4f7e-92b7-2a8da6f47aca" version = "0.1.0" [[deps.Adapt]] -deps = ["LinearAlgebra"] -git-tree-sha1 = "195c5505521008abea5aee4f96930717958eac6f" +deps = ["LinearAlgebra", "Requires"] +git-tree-sha1 = "cde29ddf7e5726c9fb511f340244ea3481267608" uuid = "79e6a3ab-5dfb-504d-930d-738a2a938a0e" -version = "3.4.0" +version = "3.7.2" [[deps.ArgTools]] uuid = "0dad84c5-d112-42e6-8d28-ef12dabb789f" @@ -43,11 +48,35 @@ git-tree-sha1 = "5ba6c757e8feccf03a1554dfaf3e26b3cfc7fd5e" uuid = "68821587-b530-5797-8361-c406ea357684" version = "3.5.1+1" +[[deps.ArrayInterface]] +deps = ["ArrayInterfaceCore", "Compat", "IfElse", "LinearAlgebra", "SnoopPrecompile", "Static"] +git-tree-sha1 = "dedc16cbdd1d32bead4617d27572f582216ccf23" +uuid = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9" +version = "6.0.25" + [[deps.ArrayInterfaceCore]] -deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse"] -git-tree-sha1 = "5bb0f8292405a516880a3809954cb832ae7a31c5" +deps = ["LinearAlgebra", "SnoopPrecompile", "SparseArrays", "SuiteSparse"] +git-tree-sha1 = "e5f08b5689b1aad068e01751889f2f615c7db36d" uuid = "30b0a656-2188-435a-8636-2ec0e6a096e2" -version = "0.1.20" +version = "0.1.29" + +[[deps.ArrayInterfaceOffsetArrays]] +deps = ["ArrayInterface", "OffsetArrays", "Static"] +git-tree-sha1 = "3d1a9a01976971063b3930d1aed1d9c4af0817f8" +uuid = "015c0d05-e682-4f19-8f0a-679ce4c54826" +version = "0.1.7" + +[[deps.ArrayInterfaceStaticArrays]] +deps = ["Adapt", "ArrayInterface", "ArrayInterfaceCore", "ArrayInterfaceStaticArraysCore", "LinearAlgebra", "Static", "StaticArrays"] +git-tree-sha1 = "f12dc65aef03d0a49650b20b2fdaf184928fd886" +uuid = "b0d46f97-bff5-4637-a19a-dd75974142cd" +version = "0.1.5" + +[[deps.ArrayInterfaceStaticArraysCore]] +deps = ["ArrayInterfaceCore", "LinearAlgebra", "StaticArraysCore"] +git-tree-sha1 = "01a9f8e6cfc2bfdd01d333f70b8014a04893103c" +uuid = "dd5226c6-a4d4-4bc7-8575-46859f9c95b9" +version = "0.1.4" [[deps.Artifacts]] uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" @@ -63,9 +92,15 @@ uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" [[deps.BenchmarkTools]] deps = ["JSON", "Logging", "Printf", "Profile", "Statistics", "UUIDs"] -git-tree-sha1 = "4c10eee4af024676200bc7752e536f858c6b8f93" +git-tree-sha1 = "f1f03a9fa24271160ed7e73051fba3c1a759b53f" uuid = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf" -version = "1.3.1" +version = "1.4.0" + +[[deps.BitTwiddlingConvenienceFunctions]] +deps = ["Static"] +git-tree-sha1 = "0c5f81f47bbbcf4aea7b2959135713459170798b" +uuid = "62783981-4cbd-42fc-bca8-16325de8dc4b" +version = "0.1.5" [[deps.BlockDavidson]] deps = ["Arpack", "InteractiveUtils", "LinearAlgebra", "LinearMaps", "Printf", "Random"] @@ -80,29 +115,46 @@ git-tree-sha1 = "eb4cb44a499229b3b8426dcfb5dd85333951ff90" uuid = "fa961155-64e5-5f13-b03f-caf6b980ea82" version = "0.4.2" +[[deps.CPUSummary]] +deps = ["CpuId", "IfElse", "PrecompileTools", "Static"] +git-tree-sha1 = "601f7e7b3d36f18790e2caf83a882d88e9b71ff1" +uuid = "2a0fbf3d-bb9c-48f3-b0a9-814d99fd7ab9" +version = "0.2.4" + [[deps.CUDA]] deps = ["AbstractFFTs", "Adapt", "BFloat16s", "CEnum", "CompilerSupportLibraries_jll", "ExprTools", "GPUArrays", "GPUCompiler", "LLVM", "LazyArtifacts", "Libdl", "LinearAlgebra", "Logging", "Printf", "Random", "Random123", "RandomNumbers", "Reexport", "Requires", "SparseArrays", "SpecialFunctions", "TimerOutputs"] -git-tree-sha1 = "49549e2c28ffb9cc77b3689dc10e46e6271e9452" +git-tree-sha1 = "6717cb9a3425ebb7b31ca4f832823615d175f64a" uuid = "052768ef-5323-5732-b1bb-66c8b64840ba" -version = "3.12.0" +version = "3.13.1" [[deps.ChainRulesCore]] deps = ["Compat", "LinearAlgebra", "SparseArrays"] -git-tree-sha1 = "e7ff6cadf743c098e08fca25c91103ee4303c9bb" +git-tree-sha1 = "2118cb2765f8197b08e5958cdd17c165427425ee" uuid = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" -version = "1.15.6" +version = "1.19.0" [[deps.ChangesOfVariables]] -deps = ["ChainRulesCore", "LinearAlgebra", "Test"] -git-tree-sha1 = "38f7a08f19d8810338d4f5085211c7dfa5d5bdd8" +deps = ["InverseFunctions", "LinearAlgebra", "Test"] +git-tree-sha1 = "2fba81a302a7be671aefe194f0525ef231104e7f" uuid = "9e997f8a-9a97-42d5-a9f1-ce6bfc15e2c0" -version = "0.1.4" +version = "0.1.8" + +[[deps.CloseOpenIntervals]] +deps = ["ArrayInterface", "Static"] +git-tree-sha1 = "d61300b9895f129f4bd684b2aff97cf319b6c493" +uuid = "fb6a15b2-703c-40df-9091-08a04967cfa9" +version = "0.1.11" [[deps.CodeTracking]] deps = ["InteractiveUtils", "UUIDs"] -git-tree-sha1 = "1833bda4a027f4b2a1c984baddcf755d77266818" +git-tree-sha1 = "c0216e792f518b39b22212127d4a84dc31e4e386" uuid = "da1fd8a2-8d9e-5ec2-8556-3022fb5608a2" -version = "1.1.0" +version = "1.3.5" + +[[deps.CommonSolve]] +git-tree-sha1 = "0eee5eb66b1cf62cd6ad1b460238e60e4b09400c" +uuid = "38540f10-b2f7-11e9-35d8-d573e4eb0ff2" +version = "0.2.4" [[deps.CommonSubexpressions]] deps = ["MacroTools", "Test"] @@ -112,9 +164,9 @@ version = "0.3.0" [[deps.Compat]] deps = ["Base64", "Dates", "DelimitedFiles", "Distributed", "InteractiveUtils", "LibGit2", "Libdl", "LinearAlgebra", "Markdown", "Mmap", "Pkg", "Printf", "REPL", "Random", "SHA", "Serialization", "SharedArrays", "Sockets", "SparseArrays", "Statistics", "Test", "UUIDs", "Unicode"] -git-tree-sha1 = "78bee250c6826e1cf805a88b7f1e86025275d208" +git-tree-sha1 = "d476eaeddfcdf0de15a67a948331c69a585495fa" uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" -version = "3.46.0" +version = "3.47.0" [[deps.CompilerSupportLibraries_jll]] deps = ["Artifacts", "Libdl"] @@ -122,26 +174,32 @@ uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" [[deps.Conda]] deps = ["Downloads", "JSON", "VersionParsing"] -git-tree-sha1 = "6e47d11ea2776bc5627421d59cdcc1296c058071" +git-tree-sha1 = "51cab8e982c5b598eea9c8ceaced4b58d9dd37c9" uuid = "8f4d0f93-b110-5947-807f-2305c1781a2d" -version = "1.7.0" +version = "1.10.0" [[deps.ConstructionBase]] deps = ["LinearAlgebra"] -git-tree-sha1 = "fb21ddd70a051d882a1686a5a550990bbe371a95" +git-tree-sha1 = "c53fc348ca4d40d7b371e71fd52251839080cbc9" uuid = "187b0558-2788-49d3-abe0-74a17ed4e7c9" -version = "1.4.1" +version = "1.5.4" + +[[deps.CpuId]] +deps = ["Markdown"] +git-tree-sha1 = "fcbb72b032692610bfbdb15018ac16a36cf2e406" +uuid = "adafc99b-e345-5852-983c-f28acb93d879" +version = "0.3.1" [[deps.DataAPI]] -git-tree-sha1 = "1106fa7e1256b402a86a8e7b15c00c85036fef49" +git-tree-sha1 = "8da84edb865b0b5b0100c0666a9bc9a0b71c553c" uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a" -version = "1.11.0" +version = "1.15.0" [[deps.DataStructures]] deps = ["Compat", "InteractiveUtils", "OrderedCollections"] -git-tree-sha1 = "d1fff3a548102f48987a52a2e0d114fa97d730f0" +git-tree-sha1 = "ac67408d9ddf207de5cfa9a97e114352430f01ed" uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8" -version = "0.18.13" +version = "0.18.16" [[deps.DataValueInterfaces]] git-tree-sha1 = "bfc1187b79289637fa0ef6d4436ebdfe6905cbd6" @@ -164,9 +222,9 @@ version = "1.1.0" [[deps.DiffRules]] deps = ["IrrationalConstants", "LogExpFunctions", "NaNMath", "Random", "SpecialFunctions"] -git-tree-sha1 = "992a23afdb109d0d2f8802a30cf5ae4b1fe7ea68" +git-tree-sha1 = "23163d55f885173722d1e4cf0f6110cdbaf7e272" uuid = "b552c78f-8df3-52c6-915a-8e097449b14b" -version = "1.11.1" +version = "1.15.1" [[deps.Distributed]] deps = ["Random", "Serialization", "Sockets"] @@ -174,51 +232,73 @@ uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" [[deps.DocStringExtensions]] deps = ["LibGit2"] -git-tree-sha1 = "5158c2b41018c5f7eb1470d558127ac274eca0c9" +git-tree-sha1 = "2fb1e02f2b635d0845df5d7c167fec4dd739b00d" uuid = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" -version = "0.9.1" +version = "0.9.3" [[deps.Documenter]] deps = ["ANSIColoredPrinters", "Base64", "Dates", "DocStringExtensions", "IOCapture", "InteractiveUtils", "JSON", "LibGit2", "Logging", "Markdown", "REPL", "Test", "Unicode"] -git-tree-sha1 = "6030186b00a38e9d0434518627426570aac2ef95" +git-tree-sha1 = "39fd748a73dce4c05a9655475e437170d8fb1b67" uuid = "e30172f5-a6a5-5a46-863b-614d45cd2de4" -version = "0.27.23" +version = "0.27.25" [[deps.Downloads]] deps = ["ArgTools", "FileWatching", "LibCURL", "NetworkOptions"] uuid = "f43a241f-c20a-4ad4-852c-f6b1247861c6" +[[deps.EnumX]] +git-tree-sha1 = "bdb1942cd4c45e3c678fd11569d5cccd80976237" +uuid = "4e289a0a-7415-4d19-859d-a7e5c4648b56" +version = "1.0.4" + [[deps.ExprTools]] -git-tree-sha1 = "56559bbef6ca5ea0c0818fa5c90320398a6fbf8d" +git-tree-sha1 = "27415f162e6028e81c72b82ef756bf321213b6ec" uuid = "e2ba6199-217a-4e67-a87a-7c52f15ade04" -version = "0.1.8" +version = "0.1.10" + +[[deps.FastLapackInterface]] +deps = ["LinearAlgebra"] +git-tree-sha1 = "c1293a93193f0ae94be7cf338d33e162c39d8788" +uuid = "29a986be-02c6-4525-aec4-84b980013641" +version = "1.2.9" [[deps.FileIO]] deps = ["Pkg", "Requires", "UUIDs"] -git-tree-sha1 = "94f5101b96d2d968ace56f7f2db19d0a5f592e28" +git-tree-sha1 = "c5c28c245101bd59154f649e19b038d15901b5dc" uuid = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549" -version = "1.15.0" +version = "1.16.2" [[deps.FileWatching]] uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee" [[deps.FillArrays]] deps = ["LinearAlgebra", "Random", "SparseArrays", "Statistics"] -git-tree-sha1 = "87519eb762f85534445f5cda35be12e32759ee14" +git-tree-sha1 = "7072f1e3e5a8be51d525d64f63d3ec1287ff2790" uuid = "1a297f60-69ca-5386-bcde-b61e274b549b" -version = "0.13.4" +version = "0.13.11" [[deps.FiniteDiff]] deps = ["ArrayInterfaceCore", "LinearAlgebra", "Requires", "Setfield", "SparseArrays", "StaticArrays"] -git-tree-sha1 = "5a2cff9b6b77b33b89f3d97a4d367747adce647e" +git-tree-sha1 = "04ed1f0029b6b3af88343e439b995141cb0d0b8d" uuid = "6a86dc24-6348-571c-b903-95158fe2bd41" -version = "2.15.0" +version = "2.17.0" [[deps.ForwardDiff]] deps = ["CommonSubexpressions", "DiffResults", "DiffRules", "LinearAlgebra", "LogExpFunctions", "NaNMath", "Preferences", "Printf", "Random", "SpecialFunctions", "StaticArrays"] -git-tree-sha1 = "187198a4ed8ccd7b5d99c41b69c679269ea2b2d4" +git-tree-sha1 = "cf0fe81336da9fb90944683b8c41984b08793dad" uuid = "f6369f11-7733-5829-9624-2563aa707210" -version = "0.10.32" +version = "0.10.36" + +[[deps.FunctionWrappers]] +git-tree-sha1 = "d62485945ce5ae9c0c48f124a84998d755bae00e" +uuid = "069b7b12-0de2-55c6-9aab-29f3d0a68a2e" +version = "1.1.3" + +[[deps.FunctionWrappersWrappers]] +deps = ["FunctionWrappers"] +git-tree-sha1 = "b104d487b34566608f8b4e1c39fb0b10aa279ff8" +uuid = "77dc65aa-8811-40c2-897b-53d922fa7daf" +version = "0.1.3" [[deps.Future]] deps = ["Random"] @@ -226,21 +306,21 @@ uuid = "9fa8497b-333b-5362-9e8d-4d0656e87820" [[deps.GPUArrays]] deps = ["Adapt", "GPUArraysCore", "LLVM", "LinearAlgebra", "Printf", "Random", "Reexport", "Serialization", "Statistics"] -git-tree-sha1 = "45d7deaf05cbb44116ba785d147c518ab46352d7" +git-tree-sha1 = "2e57b4a4f9cc15e85a24d603256fe08e527f48d1" uuid = "0c68f7d7-f131-5f86-a1c3-88cf8149b2d7" -version = "8.5.0" +version = "8.8.1" [[deps.GPUArraysCore]] deps = ["Adapt"] -git-tree-sha1 = "6872f5ec8fd1a38880f027a26739d42dcda6691f" +git-tree-sha1 = "2d6ca471a6c7b536127afccfa7564b5b39227fe0" uuid = "46192b85-c4d5-4398-a991-12ede77f4527" -version = "0.1.2" +version = "0.1.5" [[deps.GPUCompiler]] deps = ["ExprTools", "InteractiveUtils", "LLVM", "Libdl", "Logging", "TimerOutputs", "UUIDs"] -git-tree-sha1 = "ebb892e1df16040a845e1d11087e4fbfe10323a8" +git-tree-sha1 = "19d693666a304e8c371798f4900f7435558c7cde" uuid = "61eb1bfa-7361-4325-ad38-22787b887f55" -version = "0.16.4" +version = "0.17.3" [[deps.Highlights]] deps = ["DocStringExtensions", "InteractiveUtils", "REPL"] @@ -248,11 +328,22 @@ git-tree-sha1 = "0341077e8a6b9fc1c2ea5edc1e93a956d2aec0c7" uuid = "eafb193a-b7ab-5a9e-9068-77385905fa72" version = "0.5.2" +[[deps.HostCPUFeatures]] +deps = ["BitTwiddlingConvenienceFunctions", "IfElse", "Libdl", "Static"] +git-tree-sha1 = "eb8fed28f4994600e29beef49744639d985a04b2" +uuid = "3e5b6fbb-0976-4d2c-9146-d79de83f2fb0" +version = "0.1.16" + [[deps.IOCapture]] deps = ["Logging", "Random"] -git-tree-sha1 = "f7be53659ab06ddc986428d3a9dcc95f6fa6705a" +git-tree-sha1 = "d75853a0bdbfb1ac815478bacd89cd27b550ace6" uuid = "b5f81e59-6552-4d32-b1f0-c071b021bf89" -version = "0.2.2" +version = "0.2.3" + +[[deps.IfElse]] +git-tree-sha1 = "debdd00ffef04665ccbb3e150747a77560e8fad1" +uuid = "615f187c-cbe4-4ef1-ba3b-2fcf58d6d173" +version = "0.1.1" [[deps.InCoreIntegrals]] deps = ["Documenter", "JLD2", "LinearAlgebra", "NPZ", "QCBase", "Random", "TensorOperations"] @@ -268,14 +359,20 @@ uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" [[deps.InverseFunctions]] deps = ["Test"] -git-tree-sha1 = "b3364212fb5d870f724876ffcd34dd8ec6d98918" +git-tree-sha1 = "68772f49f54b479fa88ace904f6127f0a3bb2e46" uuid = "3587e190-3f89-42d0-90ee-14403ec27112" -version = "0.1.7" +version = "0.1.12" [[deps.IrrationalConstants]] -git-tree-sha1 = "7fd44fd4ff43fc60815f8e764c0f352b83c49151" +git-tree-sha1 = "630b497eafcc20001bba38a4651b327dcfc491d2" uuid = "92d709cd-6900-40b7-9082-c6be49f344b6" -version = "0.1.1" +version = "0.2.2" + +[[deps.IterativeSolvers]] +deps = ["LinearAlgebra", "Printf", "Random", "RecipesBase", "SparseArrays"] +git-tree-sha1 = "b435d190ef8369cf4d79cc9dd5fba88ba0165307" +uuid = "42fd0dbc-a981-5370-80f2-aaf504508153" +version = "0.9.3" [[deps.IteratorInterfaceExtensions]] git-tree-sha1 = "a3f24677c21f5bbe9d2a714f95dcd58337fb2856" @@ -289,39 +386,63 @@ uuid = "033835bb-8acc-5ee8-8aae-3f567f8a3819" version = "0.4.23" [[deps.JLLWrappers]] -deps = ["Preferences"] -git-tree-sha1 = "abc9885a7ca2052a736a600f7fa66209f96506e1" +deps = ["Artifacts", "Preferences"] +git-tree-sha1 = "7e5d6779a1e09a36db2a7b6cff50942a0a7d0fca" uuid = "692b3bcd-3c85-4b1f-b108-f13ce0eb3210" -version = "1.4.1" +version = "1.5.0" [[deps.JSON]] deps = ["Dates", "Mmap", "Parsers", "Unicode"] -git-tree-sha1 = "3c837543ddb02250ef42f4738347454f95079d4e" +git-tree-sha1 = "31e996f0a15c7b280ba9f76636b3ff9e2ae58c9a" uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" -version = "0.21.3" +version = "0.21.4" + +[[deps.KLU]] +deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse_jll"] +git-tree-sha1 = "884c2968c2e8e7e6bf5956af88cb46aa745c854b" +uuid = "ef3ab10e-7fda-4108-b977-705223b18434" +version = "0.4.1" + +[[deps.Krylov]] +deps = ["LinearAlgebra", "Printf", "SparseArrays"] +git-tree-sha1 = "8a6837ec02fe5fb3def1abc907bb802ef11a0729" +uuid = "ba0b0d4f-ebba-5204-a429-3ac8c609bfb7" +version = "0.9.5" [[deps.KrylovKit]] -deps = ["LinearAlgebra", "Printf"] -git-tree-sha1 = "49b0c1dd5c292870577b8f58c51072bd558febb9" +deps = ["ChainRulesCore", "GPUArraysCore", "LinearAlgebra", "Printf"] +git-tree-sha1 = "1a5e1d9941c783b0119897d29f2eb665d876ecf3" uuid = "0b1a1467-8014-51b9-945f-bf0ae24f4b77" -version = "0.5.4" +version = "0.6.0" [[deps.LLVM]] deps = ["CEnum", "LLVMExtra_jll", "Libdl", "Printf", "Unicode"] -git-tree-sha1 = "e7e9184b0bf0158ac4e4aa9daf00041b5909bf1a" +git-tree-sha1 = "f044a2796a9e18e0531b9b3072b0019a61f264bc" uuid = "929cbde3-209d-540e-8aea-75f648917ca0" -version = "4.14.0" +version = "4.17.1" [[deps.LLVMExtra_jll]] -deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl", "Pkg", "TOML"] -git-tree-sha1 = "7718cf44439c676bc0ec66a87099f41015a522d6" +deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl", "TOML"] +git-tree-sha1 = "070e4b5b65827f82c16ae0916376cb47377aa1b5" uuid = "dad2f222-ce93-54a1-a47d-0025e8a3acab" -version = "0.0.16+2" +version = "0.0.18+0" [[deps.LRUCache]] -git-tree-sha1 = "d64a0aff6691612ab9fb0117b0995270871c5dfc" +git-tree-sha1 = "5930ef949f30a9a947c69ef6b069c0b1aa27619d" uuid = "8ac3fa9e-de4c-5943-b1dc-09c6b5f20637" -version = "1.3.0" +version = "1.6.0" + +[[deps.LayoutPointers]] +deps = ["ArrayInterface", "ArrayInterfaceOffsetArrays", "ArrayInterfaceStaticArrays", "LinearAlgebra", "ManualMemory", "SIMDTypes", "Static"] +git-tree-sha1 = "0ad6f0c51ce004dadc24a28a0dfecfb568e52242" +uuid = "10f19ff3-798f-405d-979b-55457f8fc047" +version = "0.1.13" + +[[deps.Lazy]] +deps = ["MacroTools"] +git-tree-sha1 = "1370f8202dac30758f3c345f9909b97f53d87d3f" +uuid = "50d2b5c4-7a5e-59d5-8109-a42b560f39c0" +version = "0.15.1" [[deps.LazyArtifacts]] deps = ["Artifacts", "Pkg"] @@ -357,25 +478,42 @@ deps = ["Libdl", "libblastrampoline_jll"] uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" [[deps.LinearMaps]] -deps = ["LinearAlgebra", "SparseArrays", "Statistics"] -git-tree-sha1 = "d1b46faefb7c2f48fdec69e6f3cc34857769bc15" +deps = ["ChainRulesCore", "LinearAlgebra", "SparseArrays", "Statistics"] +git-tree-sha1 = "9df2ab050ffefe870a09c7b6afdb0cde381703f2" uuid = "7a12625a-238d-50fd-b39a-03d52299707e" -version = "3.8.0" +version = "3.11.1" + +[[deps.LinearSolve]] +deps = ["ArrayInterface", "DocStringExtensions", "FastLapackInterface", "GPUArraysCore", "IterativeSolvers", "KLU", "Krylov", "KrylovKit", "LinearAlgebra", "Preferences", "RecursiveFactorization", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SnoopPrecompile", "SparseArrays", "Sparspak", "SuiteSparse", "UnPack"] +git-tree-sha1 = "d1fce810e9a4213607f0182cf25ffd6ce13e19b6" +uuid = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae" +version = "1.37.0" [[deps.LogExpFunctions]] deps = ["ChainRulesCore", "ChangesOfVariables", "DocStringExtensions", "InverseFunctions", "IrrationalConstants", "LinearAlgebra"] -git-tree-sha1 = "94d9c52ca447e23eac0c0f074effbcd38830deb5" +git-tree-sha1 = "7d6dd4e9212aebaeed356de34ccf262a3cd415aa" uuid = "2ab3a3ac-af41-5b50-aa03-7779005ae688" -version = "0.3.18" +version = "0.3.26" [[deps.Logging]] uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" +[[deps.LoopVectorization]] +deps = ["ArrayInterface", "ArrayInterfaceCore", "ArrayInterfaceOffsetArrays", "ArrayInterfaceStaticArrays", "CPUSummary", "ChainRulesCore", "CloseOpenIntervals", "DocStringExtensions", "ForwardDiff", "HostCPUFeatures", "IfElse", "LayoutPointers", "LinearAlgebra", "OffsetArrays", "PolyesterWeave", "SIMDTypes", "SLEEFPirates", "SnoopPrecompile", "SpecialFunctions", "Static", "ThreadingUtilities", "UnPack", "VectorizationBase"] +git-tree-sha1 = "9696a80c21a56b937e3fd89e972f8db5db3186e2" +uuid = "bdcacae8-1622-11e9-2a5c-532679323890" +version = "0.12.150" + [[deps.MacroTools]] deps = ["Markdown", "Random"] -git-tree-sha1 = "3d3e902b31198a27340d0bf00d6ac452866021cf" +git-tree-sha1 = "b211c553c199c111d998ecdaf7623d1b89b69f93" uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" -version = "0.5.9" +version = "0.5.12" + +[[deps.ManualMemory]] +git-tree-sha1 = "bcaef4fc7a0cfe2cba636d84cda54b5e4e4ca3cd" +uuid = "d125e4d3-2237-4719-b19c-fa641b8a4667" +version = "0.1.8" [[deps.Markdown]] deps = ["Base64"] @@ -387,9 +525,9 @@ uuid = "c8ffd9c3-330d-5841-b78e-0817d7145fa1" [[deps.Missings]] deps = ["DataAPI"] -git-tree-sha1 = "bf210ce90b6c9eed32d25dbcae1ebc565df2687f" +git-tree-sha1 = "f66bdc5de519e8f8ae43bdc598782d35a25b1272" uuid = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28" -version = "1.0.2" +version = "1.1.0" [[deps.Mmap]] uuid = "a63ad114-7e13-5084-954f-fe012c677804" @@ -404,9 +542,9 @@ version = "0.3.0" [[deps.NLSolversBase]] deps = ["DiffResults", "Distributed", "FiniteDiff", "ForwardDiff"] -git-tree-sha1 = "50310f934e55e5ca3912fb941dec199b49ca9b68" +git-tree-sha1 = "a0b464d183da839699f4c79e7606d9d186ec172c" uuid = "d41bc354-129a-5804-8e4c-c37616107c6c" -version = "7.8.2" +version = "7.8.3" [[deps.NPZ]] deps = ["Compat", "FileIO", "ZipFile"] @@ -416,13 +554,19 @@ version = "0.4.2" [[deps.NaNMath]] deps = ["OpenLibm_jll"] -git-tree-sha1 = "a7c3d1da1189a1c2fe843a3bfa04d18d20eb3211" +git-tree-sha1 = "0877504529a3e5c3343c6f8b4c0381e57e4387e4" uuid = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" -version = "1.0.1" +version = "1.0.2" [[deps.NetworkOptions]] uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908" +[[deps.OffsetArrays]] +deps = ["Adapt"] +git-tree-sha1 = "6a731f2b5c03157418a20c12195eb4b74c8f8621" +uuid = "6fe1bfb0-de20-5000-8ca7-80f57d26f881" +version = "1.13.0" + [[deps.OpenBLAS_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"] uuid = "4536629a-c528-5b80-bd46-f80d51c5b363" @@ -444,9 +588,9 @@ uuid = "429524aa-4258-5aef-a3af-852621145aeb" version = "1.7.3" [[deps.OrderedCollections]] -git-tree-sha1 = "85f8e6578bf1f9ee0d11e7bb1b1456435479d47c" +git-tree-sha1 = "dfdf5519f235516220579f949664f1bf44e741c5" uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" -version = "1.4.1" +version = "1.6.3" [[deps.Parameters]] deps = ["OrderedCollections", "UnPack"] @@ -455,26 +599,44 @@ uuid = "d96e819e-fc66-5662-9728-84c9c7592b0a" version = "0.12.3" [[deps.Parsers]] -deps = ["Dates"] -git-tree-sha1 = "3d5bf43e3e8b412656404ed9466f1dcbf7c50269" +deps = ["Dates", "PrecompileTools", "UUIDs"] +git-tree-sha1 = "8489905bcdbcfac64d1daa51ca07c0d8f0283821" uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" -version = "2.4.0" +version = "2.8.1" [[deps.Pkg]] deps = ["Artifacts", "Dates", "Downloads", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"] uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f" +[[deps.Polyester]] +deps = ["ArrayInterface", "BitTwiddlingConvenienceFunctions", "CPUSummary", "IfElse", "ManualMemory", "PolyesterWeave", "Requires", "Static", "StrideArraysCore", "ThreadingUtilities"] +git-tree-sha1 = "e8e0fabcff4df8686c4267503887202a783d498e" +uuid = "f517fe37-dbe3-4b94-8317-1923a5111588" +version = "0.7.2" + +[[deps.PolyesterWeave]] +deps = ["BitTwiddlingConvenienceFunctions", "CPUSummary", "IfElse", "Static", "ThreadingUtilities"] +git-tree-sha1 = "240d7170f5ffdb285f9427b92333c3463bf65bf6" +uuid = "1d0040c9-8b98-4ee7-8388-3f51789ca0ad" +version = "0.2.1" + [[deps.PositiveFactorizations]] deps = ["LinearAlgebra"] git-tree-sha1 = "17275485f373e6673f7e7f97051f703ed5b15b20" uuid = "85a6dd25-e78a-55b7-8502-1745935b8125" version = "0.2.4" +[[deps.PrecompileTools]] +deps = ["Preferences"] +git-tree-sha1 = "03b4c25b43cb84cee5c90aa9b5ea0a78fd848d2f" +uuid = "aea7be01-6a6a-4083-8856-8a6e6704d82a" +version = "1.2.0" + [[deps.Preferences]] deps = ["TOML"] -git-tree-sha1 = "47e5f437cc0e7ef2ce8406ce1e7e24d44915f88d" +git-tree-sha1 = "00805cd429dcb4870060ff49ef443486c262e38e" uuid = "21216c6a-2e73-6563-6e65-726566657250" -version = "1.3.0" +version = "1.4.1" [[deps.Printf]] deps = ["Unicode"] @@ -522,9 +684,9 @@ uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" [[deps.Random123]] deps = ["Random", "RandomNumbers"] -git-tree-sha1 = "7a1a306b72cfa60634f03a911405f4e64d1b718b" +git-tree-sha1 = "c860e84651f58ce240dd79e5d9e055d55234c35a" uuid = "74087812-796a-5b5d-8853-05524746bad3" -version = "1.6.0" +version = "1.6.2" [[deps.RandomNumbers]] deps = ["Random", "Requires"] @@ -532,6 +694,24 @@ git-tree-sha1 = "043da614cc7e95c703498a491e2c21f58a2b8111" uuid = "e6cf234a-135c-5ec9-84dd-332b85af5143" version = "1.5.3" +[[deps.RecipesBase]] +deps = ["PrecompileTools"] +git-tree-sha1 = "5c3d09cc4f31f5fc6af001c250bf1278733100ff" +uuid = "3cdcf5f2-1ef4-517c-9805-6587b60abb01" +version = "1.3.4" + +[[deps.RecursiveArrayTools]] +deps = ["Adapt", "ArrayInterfaceCore", "ArrayInterfaceStaticArraysCore", "ChainRulesCore", "DocStringExtensions", "FillArrays", "GPUArraysCore", "IteratorInterfaceExtensions", "LinearAlgebra", "RecipesBase", "Requires", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables", "ZygoteRules"] +git-tree-sha1 = "54e055256bbd41fd10566880bc4baa5316bca6fe" +uuid = "731186ca-8d62-57ce-b412-fbd966d074cd" +version = "2.37.0" + +[[deps.RecursiveFactorization]] +deps = ["LinearAlgebra", "LoopVectorization", "Polyester", "PrecompileTools", "StrideArraysCore", "TriangularSolve"] +git-tree-sha1 = "8bc86c78c7d8e2a5fe559e3721c0f9c9e303b2ed" +uuid = "f2c3362d-daeb-58d1-803e-2bc74f2840b4" +version = "0.2.21" + [[deps.Reexport]] git-tree-sha1 = "45e428421666073eab6f2da5c9d310d99bb12f9b" uuid = "189a3867-3050-52da-a836-e630ba90ab69" @@ -543,9 +723,38 @@ git-tree-sha1 = "838a3a4188e2ded87a4f9f184b4b0d78a1e91cb7" uuid = "ae029012-a4dd-5104-9daa-d747884805df" version = "1.3.0" +[[deps.RuntimeGeneratedFunctions]] +deps = ["ExprTools", "SHA", "Serialization"] +git-tree-sha1 = "6aacc5eefe8415f47b3e34214c1d79d2674a0ba2" +uuid = "7e49a35a-f44a-4d26-94aa-eba1b4ca6b47" +version = "0.5.12" + [[deps.SHA]] uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" +[[deps.SIMDTypes]] +git-tree-sha1 = "330289636fb8107c5f32088d2741e9fd7a061a5c" +uuid = "94e857df-77ce-4151-89e5-788b33177be4" +version = "0.1.0" + +[[deps.SLEEFPirates]] +deps = ["IfElse", "Static", "VectorizationBase"] +git-tree-sha1 = "3aac6d68c5e57449f5b9b865c9ba50ac2970c4cf" +uuid = "476501e8-09a2-5ece-8869-fb82de89a1fa" +version = "0.6.42" + +[[deps.SciMLBase]] +deps = ["ADTypes", "ArrayInterface", "ChainRulesCore", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables", "TruncatedStacktraces", "ZygoteRules"] +git-tree-sha1 = "c0781c7ebb65776e9770d333b5e191d20dd45fcf" +uuid = "0bca4576-84f4-4d90-8ffe-ffa030f20462" +version = "1.97.0" + +[[deps.SciMLOperators]] +deps = ["ArrayInterfaceCore", "DocStringExtensions", "Lazy", "LinearAlgebra", "Setfield", "SparseArrays", "StaticArraysCore", "Tricks"] +git-tree-sha1 = "c737d575c18bdf9aba0a3c7071d5249d09f45dd8" +uuid = "c0aeaf25-5076-4817-a8d5-81caf7dfa961" +version = "0.1.21" + [[deps.Serialization]] uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" @@ -560,28 +769,41 @@ deps = ["Distributed", "Mmap", "Random", "Serialization"] uuid = "1a1011a3-84de-559e-8e89-a11a2f7dc383" [[deps.SnoopPrecompile]] -git-tree-sha1 = "f604441450a3c0569830946e5b33b78c928e1a85" +deps = ["Preferences"] +git-tree-sha1 = "e760a70afdcd461cf01a575947738d359234665c" uuid = "66db9d55-30c0-4569-8b51-7e840670fc0c" -version = "1.0.1" +version = "1.0.3" [[deps.Sockets]] uuid = "6462fe0b-24de-5631-8697-dd941f90decc" [[deps.SortingAlgorithms]] deps = ["DataStructures"] -git-tree-sha1 = "b3363d7460f7d098ca0912c69b082f75625d7508" +git-tree-sha1 = "66e0a8e672a0bdfca2c3f5937efb8538b9ddc085" uuid = "a2af1166-a08f-5f64-846c-94a0d3cef48c" -version = "1.0.1" +version = "1.2.1" [[deps.SparseArrays]] deps = ["LinearAlgebra", "Random"] uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" +[[deps.Sparspak]] +deps = ["Libdl", "LinearAlgebra", "Logging", "OffsetArrays", "Printf", "SparseArrays", "Test"] +git-tree-sha1 = "342cf4b449c299d8d1ceaf00b7a49f4fbc7940e7" +uuid = "e56a9233-b9d6-4f03-8d0f-1825330902ac" +version = "0.3.9" + [[deps.SpecialFunctions]] deps = ["ChainRulesCore", "IrrationalConstants", "LogExpFunctions", "OpenLibm_jll", "OpenSpecFun_jll"] -git-tree-sha1 = "d75bda01f8c31ebb72df80a46c88b25d1c79c56d" +git-tree-sha1 = "e2cfc4012a19088254b3950b85c3c1d8882d864d" uuid = "276daf66-3868-5448-9aa4-cd146d93841b" -version = "2.1.7" +version = "2.3.1" + +[[deps.Static]] +deps = ["IfElse"] +git-tree-sha1 = "f295e0a1da4ca425659c57441bcb59abb035a4bc" +uuid = "aedffcd0-7271-4cad-89d0-dc628f76c6d3" +version = "0.8.8" [[deps.StaticArrays]] deps = ["LinearAlgebra", "Random", "StaticArraysCore", "Statistics"] @@ -590,9 +812,9 @@ uuid = "90137ffa-7385-5640-81b9-e52037218182" version = "1.5.8" [[deps.StaticArraysCore]] -git-tree-sha1 = "6b7ba252635a5eff6a0b0664a41ee140a1c9e72a" +git-tree-sha1 = "36b3d696ce6366023a0ea192b4cd442268995a0d" uuid = "1e83bf80-4336-4d27-bf5d-d5a4f845583c" -version = "1.4.0" +version = "1.4.2" [[deps.Statistics]] deps = ["LinearAlgebra", "SparseArrays"] @@ -600,9 +822,9 @@ uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" [[deps.StatsAPI]] deps = ["LinearAlgebra"] -git-tree-sha1 = "f9af7f195fb13589dd2e2d57fdb401717d2eb1f6" +git-tree-sha1 = "1ff449ad350c9c4cbc756624d6f8a8c3ef56d3ed" uuid = "82ae8749-77ed-4fe6-ae5f-f523153014b0" -version = "1.5.0" +version = "1.7.0" [[deps.StatsBase]] deps = ["DataAPI", "DataStructures", "LinearAlgebra", "LogExpFunctions", "Missings", "Printf", "Random", "SortingAlgorithms", "SparseArrays", "Statistics", "StatsAPI"] @@ -610,6 +832,12 @@ git-tree-sha1 = "d1bf48bfcc554a3761a133fe3a9bb01488e06916" uuid = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" version = "0.33.21" +[[deps.StrideArraysCore]] +deps = ["ArrayInterface", "CloseOpenIntervals", "IfElse", "LayoutPointers", "ManualMemory", "SIMDTypes", "Static", "ThreadingUtilities"] +git-tree-sha1 = "8114ba9c3694827838d45ea3c9f6b9ccb4182cf2" +uuid = "7792a7ef-975c-4747-a70f-980b88e8d1da" +version = "0.4.7" + [[deps.Strided]] deps = ["LinearAlgebra", "TupleTools"] git-tree-sha1 = "a7a664c91104329c88222aa20264e1a05b6ad138" @@ -620,6 +848,16 @@ version = "1.2.3" deps = ["Libdl", "LinearAlgebra", "Serialization", "SparseArrays"] uuid = "4607b0f0-06f3-5cda-b6b1-a6196a1729e9" +[[deps.SuiteSparse_jll]] +deps = ["Artifacts", "Libdl", "Pkg", "libblastrampoline_jll"] +uuid = "bea87d4a-7f5b-5778-9afe-8cc45184846c" + +[[deps.SymbolicIndexingInterface]] +deps = ["DocStringExtensions"] +git-tree-sha1 = "f8ab052bfcbdb9b48fad2c80c873aa0d0344dfe5" +uuid = "2efcf032-c050-4f8e-a9bb-153293bab1f5" +version = "0.2.2" + [[deps.TOML]] deps = ["Dates"] uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76" @@ -631,10 +869,10 @@ uuid = "3783bdb8-4a98-5b6b-af9a-565f29a5fe9c" version = "1.0.1" [[deps.Tables]] -deps = ["DataAPI", "DataValueInterfaces", "IteratorInterfaceExtensions", "LinearAlgebra", "OrderedCollections", "TableTraits", "Test"] -git-tree-sha1 = "2d7164f7b8a066bcfa6224e67736ce0eb54aef5b" +deps = ["DataAPI", "DataValueInterfaces", "IteratorInterfaceExtensions", "LinearAlgebra", "OrderedCollections", "TableTraits"] +git-tree-sha1 = "cb76cf677714c095e535e3501ac7954732aeea2d" uuid = "bd369af6-aec1-5ad0-b16a-f7cc5008161c" -version = "1.9.0" +version = "1.11.1" [[deps.Tar]] deps = ["ArgTools", "SHA"] @@ -656,22 +894,45 @@ version = "1.0.4" deps = ["InteractiveUtils", "Logging", "Random", "Serialization"] uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" +[[deps.ThreadingUtilities]] +deps = ["ManualMemory"] +git-tree-sha1 = "eda08f7e9818eb53661b3deb74e3159460dfbc27" +uuid = "8290d209-cae3-49c0-8002-c8c24d57dab5" +version = "0.5.2" + [[deps.TimerOutputs]] deps = ["ExprTools", "Printf"] -git-tree-sha1 = "9dfcb767e17b0849d6aaf85997c98a5aea292513" +git-tree-sha1 = "f548a9e9c490030e545f72074a41edfd0e5bcdd7" uuid = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f" -version = "0.5.21" +version = "0.5.23" [[deps.TranscodingStreams]] deps = ["Random", "Test"] -git-tree-sha1 = "8a75929dcd3c38611db2f8d08546decb514fcadf" +git-tree-sha1 = "9a6ae7ed916312b41236fcef7e0af564ef934769" uuid = "3bb67fe8-82b1-5028-8e26-92a6c54297fa" -version = "0.9.9" +version = "0.9.13" + +[[deps.TriangularSolve]] +deps = ["CloseOpenIntervals", "IfElse", "LayoutPointers", "LinearAlgebra", "LoopVectorization", "Polyester", "Static", "VectorizationBase"] +git-tree-sha1 = "fadebab77bf3ae041f77346dd1c290173da5a443" +uuid = "d5829a12-d9aa-46ab-831f-fb7c9ab06edf" +version = "0.1.20" + +[[deps.Tricks]] +git-tree-sha1 = "eae1bb484cd63b36999ee58be2de6c178105112f" +uuid = "410a4b4d-49e4-4fbc-ab6d-cb71b17b3775" +version = "0.1.8" + +[[deps.TruncatedStacktraces]] +deps = ["InteractiveUtils", "MacroTools", "Preferences"] +git-tree-sha1 = "ea3e54c2bdde39062abf5a9758a23735558705e1" +uuid = "781d530d-4396-4725-bb49-402e4bee1e77" +version = "1.4.0" [[deps.TupleTools]] -git-tree-sha1 = "3c712976c47707ff893cf6ba4354aa14db1d8938" +git-tree-sha1 = "155515ed4c4236db30049ac1495e2969cc06be9d" uuid = "9d95972d-f1c8-5527-a6e0-b4b365fa01f6" -version = "1.3.0" +version = "1.4.3" [[deps.UUIDs]] deps = ["Random", "SHA"] @@ -691,6 +952,12 @@ git-tree-sha1 = "53915e50200959667e78a92a418594b428dffddf" uuid = "1cfade01-22cf-5700-b092-accc4b62d6e1" version = "0.4.1" +[[deps.VectorizationBase]] +deps = ["ArrayInterface", "CPUSummary", "HostCPUFeatures", "IfElse", "LayoutPointers", "Libdl", "LinearAlgebra", "SIMDTypes", "Static"] +git-tree-sha1 = "4c59c2df8d2676c4691a39fa70495a6db0c5d290" +uuid = "3d5dd08c-fd9d-11e8-17fa-ed2836048c2f" +version = "0.21.58" + [[deps.VersionParsing]] git-tree-sha1 = "58d6e80b4ee071f5efd07fda82cb9fbe17200868" uuid = "81def892-9a0e-5fdd-b105-ffc91e053289" @@ -706,6 +973,12 @@ version = "0.9.4" deps = ["Libdl"] uuid = "83775a58-1f1d-513f-b197-d71354ab007a" +[[deps.ZygoteRules]] +deps = ["ChainRulesCore", "MacroTools"] +git-tree-sha1 = "9d749cd449fb448aeca4feee9a2f4186dbb5d184" +uuid = "700de1a5-db45-46bc-99cf-38207098b444" +version = "0.2.4" + [[deps.libblastrampoline_jll]] deps = ["Artifacts", "Libdl", "OpenBLAS_jll"] uuid = "8e850b90-86db-534c-a0d3-1478176c7d93" diff --git a/Project.toml b/Project.toml index cf34018..87836de 100644 --- a/Project.toml +++ b/Project.toml @@ -10,6 +10,7 @@ BlockDavidson = "b4c031f8-e7c9-4879-896c-063a10ff8103" InCoreIntegrals = "d8079e1f-d74b-4a3d-abb0-c0b53e3a8379" JLD2 = "033835bb-8acc-5ee8-8aae-3f567f8a3819" LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" +LinearSolve = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae" NPZ = "15e1cf62-19b3-5cfa-8e77-841668bca605" Optim = "429524aa-4258-5aef-a3af-852621145aeb" Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7" diff --git a/examples/rasci_cmf.jl b/examples/rasci_cmf.jl index e75e9ee..3a13605 100644 --- a/examples/rasci_cmf.jl +++ b/examples/rasci_cmf.jl @@ -61,9 +61,9 @@ cluster_list = [collect(1:6), collect(7:12)] clusters = [MOCluster(i,collect(cluster_list[i])) for i = 1:length(cluster_list)] init_fspace = [ (3,3) for i in 1:n_clusters] display(clusters) -ansatze = [RASCIAnsatz(6, 3, 3, (1,4,1), max_h=2, max_p=2), RASCIAnsatz(6,3,3,(1,4,1), max_h=2, max_p=2)] #FCI type RASCI calculation +# ansatze = [RASCIAnsatz(6, 3, 3, (1,4,1), max_h=2, max_p=2), RASCIAnsatz(6,3,3,(1,4,1), max_h=2, max_p=2)] #FCI type RASCI calculation #ansatze = [RASCIAnsatz(6, 3, 3, (1,4,1), max_h=1, max_p=1), RASCIAnsatz(6,3,3,(1,4,1), max_h=1, max_p=1)] #Single excitation RASCI calculation -#ansatze = [RASCIAnsatz(6, 3, 3, (1,4,1), max_h=0, max_p=0), RASCIAnsatz(6,3,3,(1,4,1), max_h=0, max_p=0)] #CAS type RASCI calculation +ansatze = [RASCIAnsatz(6, 3, 3, (1,4,1), max_h=0, max_p=0), RASCIAnsatz(6,3,3,(1,4,1), max_h=0, max_p=0)] #CAS type RASCI calculation for i in ansatze display(i) end @@ -72,7 +72,7 @@ end rdm1 = zeros(size(ints.h1)) #run cmf_oo -e_cmf, U_cmf, d1 = ClusterMeanField.cmf_oo_diis(ints, clusters, init_fspace, ansatze, RDM1(rdm1, rdm1), maxiter_oo = 100, zero_intra_rots=true, orb_hessian=true, tol_oo=1e-6, tol_ci=1e-8, verbose=0, diis_start=1); +e_cmf, U_cmf, d1 = ClusterMeanField.cmf_oo_newton(ints, clusters, init_fspace, ansatze, RDM1(n_orb(ints)), maxiter_oo = 100, zero_intra_rots=true, tol_oo=1e-6, tol_ci=1e-8, verbose=0, diis_start=1); ints_cmf = orbital_rotation(ints,U_cmf) C_cmf = Cact*U_cmf pyscf.tools.molden.from_mo(pymol, "examples/two_benzene/C_cmf.molden", C_cmf) diff --git a/src/finite_difference.jl b/src/finite_difference.jl index cce1aec..61a4f9e 100644 --- a/src/finite_difference.jl +++ b/src/finite_difference.jl @@ -667,3 +667,138 @@ end + +""" + orbital_hessian_finite_difference(ints, clusters, kappa, fspace, d; + ci_conv = 1e-8, + verbose = 1, + stepsize = 1e-6) +Compute orbital hessian with finite difference for cMF using orbital energy +""" +function orbital_hessian_finite_difference(ints, clusters, kappa, fspace, ansatze,d::RDM1; ci_conv = 1e-8, verbose = 0,stepsize = 1e-5) + n = length(kappa) + # error("here") + hessian = zeros(n, n) + for i in 1:n + kappa_plus=deepcopy(kappa) + kappa_plus[i]+=stepsize + + kappa_minus=deepcopy(kappa) + kappa_minus[i]-=stepsize + #hessian[i,i]=(orbital_objective_function(ints, clusters, kappa_plus, fspace, d, ci_conv = ci_conv, verbose = verbose)-2*orbital_objective_function(ints, clusters, kappa, fspace, d, ci_conv = ci_conv, verbose = verbose)+orbital_objective_function(ints, clusters, kappa_minus, fspace, d, ci_conv = ci_conv, verbose = verbose))/(stepsize^2) + kappa_2plus=deepcopy(kappa) + kappa_2plus[i] +=(2*stepsize) + kappa_2minus=deepcopy(kappa) + kappa_2minus[i]-=(2*stepsize) + + + k0 = deepcopy(kappa) + e0 = orbital_objective_function(ints, clusters, k0, fspace,ansatze, d, ci_conv=ci_conv, verbose=verbose) + + k1 = deepcopy(kappa) + k1[i] += stepsize + e1 = orbital_objective_function(ints, clusters, k1, fspace, ansatze,d, ci_conv=ci_conv, verbose=verbose) + + k2 = deepcopy(kappa) + k2[i] -= stepsize + e2 = orbital_objective_function(ints, clusters, k2, fspace, ansatze,d, ci_conv=ci_conv, verbose=verbose) + + grad = (e1-e2)/(2*stepsize) + hessian[i,i] = (e1 - 2*e0 + e2) / (stepsize^2) + + # @printf(" e0: %12.8f e1: %12.8f e2: %12.8f grad: %12.8f\n", e0, e1, e2, grad) + + for j in (i+1):n + # Perturb parameters in both directions + kappa_plus_plus = deepcopy(kappa) + kappa_plus_plus[i] += stepsize + kappa_plus_plus[j] += stepsize + + kappa_plus_minus = deepcopy(kappa) + kappa_plus_minus[i] += stepsize + kappa_plus_minus[j] -= stepsize + + kappa_minus_plus = deepcopy(kappa) + kappa_minus_plus[i] -= stepsize + kappa_minus_plus[j] += stepsize + + kappa_minus_minus = deepcopy(kappa) + kappa_minus_minus[i] -= stepsize + kappa_minus_minus[j] -= stepsize + + # Calculate finite difference approximation + hessian[i, j] = (orbital_objective_function(ints, clusters, kappa_plus_plus, fspace, ansatze,d, ci_conv = ci_conv, verbose = verbose) - + orbital_objective_function(ints, clusters, kappa_plus_minus, fspace, ansatze,d, ci_conv = ci_conv, verbose = verbose) - + orbital_objective_function(ints, clusters, kappa_minus_plus, fspace, ansatze,d, ci_conv = ci_conv, verbose = verbose) + + orbital_objective_function(ints, clusters, kappa_minus_minus, fspace, ansatze,d, ci_conv = ci_conv, verbose = verbose))/(4*(stepsize^2)) + # Fill in the symmetric entry + hessian[j, i] = hessian[i, j] + end + end + + return hessian +end + + +""" + orbital_hessian_numerical(ints, clusters, kappa, fspace, d; + ci_conv = 1e-8, + verbose = 1, + stepsize = 1e-6) +Compute orbital hessian with finite difference for cMF using orbital gradient +""" +function orbital_hessian_numerical(ints, clusters, kappa, fspace, ansatze,d::RDM1; verbose = 0,step_size = 5e-5,zero_intra_rots = true,maxiter_ci = 100, maxiter_d1 = 100, tol_d1 = 1e-6, tol_ci = 1e-8,sequential = false) + n = length(kappa) + #error("here.....") + hessian = zeros(n, n) + function step_numerical!(ints, d1, k) + norb = n_orb(ints) + K = unpack_gradient(k, norb) + # if zero_intra_rots + # # Remove intracluster rotations + # for ci in clusters + # K[ci.orb_list, ci.orb_list] .= 0 + # end + # end + + Ui = exp(K) + + tmp_ints = orbital_rotation(ints,Ui) + + e, rdm1_dict, rdm2_dict = cmf_ci(tmp_ints, clusters, fspace,ansatze, d1, + maxiter_d1 = maxiter_d1, + maxiter_ci = maxiter_ci, + tol_d1 = tol_d1, + tol_ci = tol_ci, + verbose = 0, + sequential = sequential) + + gd1, gd2 = assemble_full_rdm(clusters, rdm1_dict, rdm2_dict) + G = build_orbital_gradient(tmp_ints, gd1, gd2) + # G=orbital_gradient_numerical(ints,clusters,k,fspace,gd1) + return G + end + + norb = n_orb(ints) + #central difference + for i in 1:n + println(i) + x_plus_i = deepcopy(kappa) + x_minus_i = deepcopy(kappa) + x_plus_i[i] += step_size + x_minus_i[i] -= step_size + g_plus_i=step_numerical!(ints,d,x_plus_i) + g_minus_i=step_numerical!(ints,d,x_minus_i) + + gnum = (g_plus_i .- g_minus_i)./(2*step_size) + # display(gnum) + for j in 1:n + hessian[i,j] = gnum[j] + #error("dfdg") + end + + + end + # display(hessian) + return hessian +end \ No newline at end of file diff --git a/src/incore_cmf.jl b/src/incore_cmf.jl index cf83415..3037a2b 100644 --- a/src/incore_cmf.jl +++ b/src/incore_cmf.jl @@ -1,6 +1,6 @@ using ClusterMeanField using ActiveSpaceSolvers - +using LinearSolve @@ -140,7 +140,7 @@ function cmf_ci_iteration(ints::InCoreInts{T}, clusters::Vector{MOCluster}, in_r d2 = RDM2(d2aa, d2ab, d2bb) else solver = SolverSettings(verbose=1, tol=tol_ci, maxiter=maxiter_ci) - solution = solve(ints_i, ansatz, solver) + solution = ActiveSpaceSolvers.solve(ints_i, ansatz, solver) d1a, d1b, d2aa, d2bb, d2ab = compute_1rdm_2rdm(solution) verbose < 2 || display(solution) @@ -276,7 +276,7 @@ function cmf_ci_iteration(ints::InCoreInts{T}, clusters::Vector{MOCluster}, in_r else solver = SolverSettings(verbose=1, tol=tol_ci, maxiter=maxiter_ci) - solution = solve(ints_i, ansatz, solver) + solution = ActiveSpaceSolvers.solve(ints_i, ansatz, solver) d1a, d1b, d2aa, d2bb, d2ab = compute_1rdm_2rdm(solution) verbose < 2 || display(solution) @@ -440,6 +440,7 @@ function cmf_ci(ints, clusters, fspace, ansatze::Vector{<:Ansatz}, in_rdm1::RDM1 use_pyscf = true, sequential = false) rdm1 = deepcopy(in_rdm1) + # println(size(rdm1)) energies = [] e_prev = 0 @@ -463,7 +464,7 @@ function cmf_ci(ints, clusters, fspace, ansatze::Vector{<:Ansatz}, in_rdm1::RDM1 sequential = sequential ) rdm1_curr = assemble_full_rdm(clusters, rdm1_dict) - + # println(size(rdm1_curr)) append!(energies,e_curr) error = (rdm1_curr.a+rdm1_curr.b) - (rdm1.a+rdm1.b) d_err = norm(error) @@ -1375,10 +1376,12 @@ function cmf_oo_diis(ints_in::InCoreInts{T}, clusters::Vector{MOCluster}, fspace max_ss_size = 8, diis_start = 1, alpha = .1, - use_pyscf=true, + step_trust_region=0.95, + use_pyscf = true, zero_intra_rots = true, orb_hessian = true, - sequential = false + sequential = false, + trust_region = false ) where T #={{{=# println(" Solve OO-CMF with DIIS") @@ -1410,8 +1413,9 @@ function cmf_oo_diis(ints_in::InCoreInts{T}, clusters::Vector{MOCluster}, fspace tol_d1 = tol_d1, tol_ci = tol_ci, use_pyscf=use_pyscf, - verbose = 0, - sequential = sequential) + verbose = verbose, + sequential = sequential + ) d1_i, d2_i = assemble_full_rdm(clusters, rdm1_dict, rdm2_dict) d1_i = orbital_rotation(d1_i, Ui') @@ -1474,8 +1478,13 @@ function cmf_oo_diis(ints_in::InCoreInts{T}, clusters::Vector{MOCluster}, fspace else step_i = alpha*g_i end - + if trust_region==true + if norm(step_i)> step_trust_region + step_i=step_i*step_trust_region/norm(step_i) + end + end k_i = k_i - step_i + if nss < max_ss_size nss += 1 @@ -1567,7 +1576,7 @@ function cmf_oo_diis(ints_in::InCoreInts{T}, clusters::Vector{MOCluster}, fspace if norm(g_i) < tol_oo - @printf("*ooCMF Iter: %4i Total= %16.15f G= %12.3e #SS: %4s\n", i, e_i, norm(g_i), nss) + @printf("*ooCMF Iter: %4i Total= %16.15f G= %12.3e step_size= %12.3e #SS: %4s\n", i, e_i, norm(g_i),norm(k_i), nss) break end @@ -1577,7 +1586,7 @@ function cmf_oo_diis(ints_in::InCoreInts{T}, clusters::Vector{MOCluster}, fspace - @printf(" ooCMF Iter: %4i Total= %16.15f G= %12.3e #SS: %4s\n", i, e_i, norm(g_i), nss) + @printf("*ooCMF Iter: %4i Total= %16.15f G= %12.3e step_size= %12.3e #SS: %4s\n", i, e_i, norm(g_i),norm(k_i), nss) end U = exp(unpack_gradient(k_i,norb)) @@ -1617,7 +1626,7 @@ end - `use_pyscf`: Use pyscf for FCI calculation - `sequential`: If true use the density matrix of the previous cluster in a cMF iteration to form effective integrals. Improves convergence, may depend on cluster orderings - `verbose`: Printing level - +- `step_trust_region` to control the size of trust region with the step-size # Returns - `e`: Energy @@ -1633,9 +1642,13 @@ function cmf_oo_newton( ints_in::InCoreInts{T}, clusters::Vector{MOCluster}, fsp tol_d1 = 1e-7, tol_ci = 1e-8, verbose = 0, + step_trust_region=0.95, use_pyscf=true, zero_intra_rots =true, - sequential = false + sequential = false, + trust_region=false, + use_linearsolve=true + ) where T #={{{=# println(" Solve OO-CMF with newton") @@ -1667,15 +1680,16 @@ function cmf_oo_newton( ints_in::InCoreInts{T}, clusters::Vector{MOCluster}, fsp maxiter_ci = maxiter_ci, tol_d1 = tol_d1, tol_ci = tol_ci, - verbose = 0, + verbose = verbose, use_pyscf=use_pyscf, - sequential = sequential) + sequential = sequential + ) gd1, gd2 = assemble_full_rdm(clusters, rdm1_dict, rdm2_dict) g_i = build_orbital_gradient(ints, gd1, gd2) # energy_computed=compute_energy(ints, gd1,gd2) packed_hessian=RDM.build_orbital_hessian(ints,gd1,gd2) - + # display(packed_hessian) # if zero_intra_rots # g_i = unpack_gradient(g_i, norb) # for ci in clusters @@ -1698,10 +1712,30 @@ function cmf_oo_newton( ints_in::InCoreInts{T}, clusters::Vector{MOCluster}, fsp g_i=g if zero_intra_rots #project out invariant orbital rotations - tmp_step = (pinv(proj_vec'*h_i*proj_vec))*(proj_vec'*g_i) + if use_linearsolve + prob_h=LinearSolve.LinearProblem(proj_vec'*h_i*proj_vec,proj_vec'*g_i) + sol_h=LinearSolve.solve(prob_h) + # sol_h=LinearSolve.solve(prob_h,KrylovJL_GMRES()) + tmp_step=sol_h.u + else + tmp_step = (pinv(proj_vec'*h_i*proj_vec))*(proj_vec'*g_i) + end step_i = -proj_vec*tmp_step else - step_i=-(pinv(h_i)*(g_i))#;atol=1e-8 + + if use_linearsolve + prob_h=LinearSolve.LinearProblem(h_i,g_i) + sol_h=LinearSolve.solve(prob_h) + # sol_h=LinearSolve.solve(prob_h,KrylovJL_GMRES()) + step_i=-sol_h.u + else + step_i=-(pinv(h_i)*(g_i))#;atol=1e-8 + end + end + if trust_region==true + if norm(step_i)> step_trust_region + step_i=step_i*step_trust_region/norm(step_i) + end end e = ei U = U*Ui @@ -1711,7 +1745,7 @@ function cmf_oo_newton( ints_in::InCoreInts{T}, clusters::Vector{MOCluster}, fsp # display(packed_hessian) break else - @printf(" Step: %4i E: %16.12f G: %12.2e \n", i, ei, norm(g_i)) + @printf(" Step: %4i E: %16.12f G: %12.2e step_size: %12.2e \n", i, ei, norm(g_i), norm(step_i)) end end return e,U,d1 @@ -1719,7 +1753,7 @@ function cmf_oo_newton( ints_in::InCoreInts{T}, clusters::Vector{MOCluster}, fsp end function convert_pairs(original_list, rearranged_pairs) - # Create a mapping from the rearranged index to the original index + # Create a mapping from the rearranged i6dex to the original index index_mapping = Dict{Int,Int}() for (original_idx, orbital) in enumerate(original_list) index_mapping[original_idx] = orbital @@ -1730,7 +1764,7 @@ function convert_pairs(original_list, rearranged_pairs) return reverted_pairs end -function projection_vector(ansatze::Vector{<:Ansatz}, clusters, norb;gradient=false) +function projection_vector(ansatze::Vector{<:Ansatz}, clusters, norb) n_dim = norb * (norb - 1) รท 2 #={{{=# tmp_mat = Matrix(1I, n_dim, n_dim) @@ -1741,14 +1775,39 @@ function projection_vector(ansatze::Vector{<:Ansatz}, clusters, norb;gradient=fa # println(cluster) count += 1 tmp = ActiveSpaceSolvers.invariant_orbital_rotations(cluster) + # println(tmp) tmp_global = convert_pairs(clusters_new[count], tmp) + # println(tmp_global) append!(invar, tmp_global) # println(invar) end - if gradient == true - return invar + for (index_i, i) in enumerate(ansatze) + if typeof(i) == RASCIAnsatz + ras1i, ras2i, ras3i = ActiveSpaceSolvers.RASCI.make_rasorbs(i.ras_spaces[1], i.ras_spaces[2], i.ras_spaces[3], i.no) + for (index_j, j) in enumerate(ansatze) + ras1j, ras2j, ras3j = ActiveSpaceSolvers.RASCI.make_rasorbs(j.ras_spaces[1], j.ras_spaces[2], j.ras_spaces[3], j.no) + pairs = [] + if index_j>index_i + for a in 1:length(ras1i) + for b in a:length(ras1j) + # println(ras1i[a]) + push!(pairs, (ras1i[a]+clusters[index_i].orb_list[1]-1,clusters[index_j].orb_list[1]+ras1j[b]-1)) + end + end + + for e in 1:length(ras3i) + for f in e:length(ras3j) + push!(pairs, (ras3i[e]+clusters[index_i].orb_list[1]-1,clusters[index_j].orb_list[1]+ras3j[f]-1)) + end + end + # println(pairs) + append!(invar,pairs) + end + end + end end - + # append!(invar,ras13_ras13_pairs) + # println(invar) fci = ActiveSpaceSolvers.FCIAnsatz(norb, 0, 0) #dummie FCI anstaz to generate all pairs full_list = ActiveSpaceSolvers.invariant_orbital_rotations(fci)