diff --git a/Project.toml b/Project.toml index f7af59508d..8fdf3ef200 100644 --- a/Project.toml +++ b/Project.toml @@ -22,7 +22,6 @@ Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" SurfaceFluxes = "49b00bb7-8bd4-4f2b-b78c-51cd0450215f" TempestRemap_jll = "8573a8c5-1df0-515e-a024-abad257ee284" Thermodynamics = "b60c26fb-14c3-4610-9d3e-2d17fe7ff00c" -UnPack = "3a884ed6-31ef-47d7-9d2a-63182c4928ed" [compat] CLIMAParameters = "0.4, 0.5, 0.6, 0.7" @@ -43,5 +42,4 @@ Statistics = "1" SurfaceFluxes = "0.8" TempestRemap_jll = "2" Thermodynamics = "0.11" -UnPack = "1" julia = "1.8" diff --git a/experiments/AMIP/modular/Manifest.toml b/experiments/AMIP/modular/Manifest.toml index 8eed046942..7b85b44064 100644 --- a/experiments/AMIP/modular/Manifest.toml +++ b/experiments/AMIP/modular/Manifest.toml @@ -2,7 +2,7 @@ julia_version = "1.9.4" manifest_format = "2.0" -project_hash = "f9930640d41fb661fa56427b6e532a1097e825cd" +project_hash = "51945627ab4a5bce03b6e1cc416e4ae07bac2bff" [[deps.ADTypes]] git-tree-sha1 = "332e5d7baeff8497b923b730b994fa480601efc7" @@ -263,7 +263,7 @@ uuid = "d934ef94-cdd4-4710-83d6-720549644b70" version = "0.3.10" [[deps.ClimaCoupler]] -deps = ["CLIMAParameters", "ClimaAtmos", "ClimaComms", "ClimaCore", "ClimaCoreTempestRemap", "ClimaLSM", "Dates", "DocStringExtensions", "Insolation", "JLD2", "NCDatasets", "Plots", "SciMLBase", "StaticArrays", "Statistics", "SurfaceFluxes", "TempestRemap_jll", "Thermodynamics", "UnPack"] +deps = ["CLIMAParameters", "ClimaAtmos", "ClimaComms", "ClimaCore", "ClimaCoreTempestRemap", "ClimaLSM", "Dates", "DocStringExtensions", "Insolation", "JLD2", "NCDatasets", "Plots", "SciMLBase", "StaticArrays", "Statistics", "SurfaceFluxes", "TempestRemap_jll", "Thermodynamics"] path = "../../.." uuid = "4ade58fe-a8da-486c-bd89-46df092ec0c7" version = "0.1.0" diff --git a/experiments/AMIP/modular/Project.toml b/experiments/AMIP/modular/Project.toml index 9cbe0909a8..14454049d3 100644 --- a/experiments/AMIP/modular/Project.toml +++ b/experiments/AMIP/modular/Project.toml @@ -44,7 +44,6 @@ TempestRemap_jll = "8573a8c5-1df0-515e-a024-abad257ee284" TerminalLoggers = "5d786b92-1e48-4d6f-9151-6b4477ca9bed" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" Thermodynamics = "b60c26fb-14c3-4610-9d3e-2d17fe7ff00c" -UnPack = "3a884ed6-31ef-47d7-9d2a-63182c4928ed" YAML = "ddb6d928-2868-570f-bddf-ab3f9cf99eb6" [compat] diff --git a/experiments/AMIP/modular/coupler_driver_modular.jl b/experiments/AMIP/modular/coupler_driver_modular.jl index b8163a6968..e9c73c5a1e 100644 --- a/experiments/AMIP/modular/coupler_driver_modular.jl +++ b/experiments/AMIP/modular/coupler_driver_modular.jl @@ -56,7 +56,6 @@ using OrdinaryDiffEq: ODEProblem, solve, SSPRK33, savevalues!, Euler using LinearAlgebra import Test: @test using Dates -using UnPack using Plots using Statistics: mean import ClimaAtmos as CA @@ -583,8 +582,8 @@ update_model_sims!(cs.model_sims, cs.fields, turbulent_fluxes) function solve_coupler!(cs) @info "Starting coupling loop" - @unpack model_sims, Δt_cpl, tspan = cs - @unpack atmos_sim, land_sim, ocean_sim, ice_sim = model_sims + (; model_sims, Δt_cpl, tspan) = cs + (; atmos_sim, land_sim, ocean_sim, ice_sim) = model_sims ## step in time walltime = @elapsed for t in ((tspan[1] + Δt_cpl):Δt_cpl:tspan[end]) diff --git a/experiments/ClimaCore/Project.toml b/experiments/ClimaCore/Project.toml index e7b9560b6f..46eec54c6b 100644 --- a/experiments/ClimaCore/Project.toml +++ b/experiments/ClimaCore/Project.toml @@ -14,11 +14,9 @@ RecursiveArrayTools = "731186ca-8d62-57ce-b412-fbd966d074cd" SciMLBase = "0bca4576-84f4-4d90-8ffe-ffa030f20462" TerminalLoggers = "5d786b92-1e48-4d6f-9151-6b4477ca9bed" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" -UnPack = "3a884ed6-31ef-47d7-9d2a-63182c4928ed" [compat] IntervalSets = "0.6" OrdinaryDiffEq = "6.15" SciMLBase = "1.40" TerminalLoggers = "0.1" -UnPack = "1.0" diff --git a/experiments/ClimaCore/bc-wave-slab/Manifest.toml b/experiments/ClimaCore/bc-wave-slab/Manifest.toml index cbed6a8acd..ab58acbfd3 100644 --- a/experiments/ClimaCore/bc-wave-slab/Manifest.toml +++ b/experiments/ClimaCore/bc-wave-slab/Manifest.toml @@ -2,6 +2,7 @@ julia_version = "1.7.1" manifest_format = "2.0" +project_hash = "76ed02fff745b8d35c713258782ec9ac17ca37a0" [[deps.AbstractFFTs]] deps = ["ChainRulesCore", "LinearAlgebra"] diff --git a/experiments/ClimaCore/bc-wave-slab/Project.toml b/experiments/ClimaCore/bc-wave-slab/Project.toml index e239349966..33707f744d 100644 --- a/experiments/ClimaCore/bc-wave-slab/Project.toml +++ b/experiments/ClimaCore/bc-wave-slab/Project.toml @@ -15,7 +15,6 @@ StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" TerminalLoggers = "5d786b92-1e48-4d6f-9151-6b4477ca9bed" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" Thermodynamics = "b60c26fb-14c3-4610-9d3e-2d17fe7ff00c" -UnPack = "3a884ed6-31ef-47d7-9d2a-63182c4928ed" [extras] CPUSummary = "2a0fbf3d-bb9c-48f3-b0a9-814d99fd7ab9" diff --git a/experiments/ClimaCore/bc-wave-slab/atmos.jl b/experiments/ClimaCore/bc-wave-slab/atmos.jl index 0c6133fbb4..667097a264 100644 --- a/experiments/ClimaCore/bc-wave-slab/atmos.jl +++ b/experiments/ClimaCore/bc-wave-slab/atmos.jl @@ -1,8 +1,7 @@ -# from ClimaAtmos:test/test_cases/run_3d_baroclinic_wave.jl, removing `step!` +# from ClimaAtmos:test/test_cases/run_3d_baroclinic_wave.jl, removing `step!` using OrdinaryDiffEq: SSPRK33 using ClimaCorePlots, Plots -using UnPack import ClimaCore import ClimaCore: Fields, Geometry, Operators @@ -66,7 +65,7 @@ function atmos_init(::Type{FT}, tspan; stepper = SSPRK33(), nelements = (6, 10), simulation = Simulation(model, stepper, dt = dt, tspan = tspan) # test set function - @unpack ρ, uh, w, ρe_tot = init_3d_baroclinic_wave(FT, params) + (; ρ, uh, w, ρe_tot) = init_3d_baroclinic_wave(FT, params) set!(simulation, :base, ρ = ρ, uh = uh, w = w) set!(simulation, :thermodynamics, ρe_tot = ρe_tot) diff --git a/experiments/ClimaCore/sea_breeze/Manifest.toml b/experiments/ClimaCore/sea_breeze/Manifest.toml index 46576ca025..dea170677a 100644 --- a/experiments/ClimaCore/sea_breeze/Manifest.toml +++ b/experiments/ClimaCore/sea_breeze/Manifest.toml @@ -1,13 +1,13 @@ # This file is machine-generated - editing it directly is not advised -julia_version = "1.9.3" +julia_version = "1.9.4" manifest_format = "2.0" -project_hash = "611b5e1a4a3d0a56deb02707202cae2cba6c4b50" +project_hash = "d8266eea50eeaba5c2a0feab114ac07a15343ef5" [[deps.ADTypes]] -git-tree-sha1 = "5d2e21d7b0d8c22f67483ef95ebdc39c0e6b6003" +git-tree-sha1 = "332e5d7baeff8497b923b730b994fa480601efc7" uuid = "47edcb42-4c32-4615-8424-f2b9edc5f35b" -version = "0.2.4" +version = "0.2.5" [[deps.AMD]] deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse_jll"] @@ -59,9 +59,9 @@ version = "0.2.0" [[deps.ArrayInterface]] deps = ["Adapt", "LinearAlgebra", "Requires", "SparseArrays", "SuiteSparse"] -git-tree-sha1 = "16267cf279190ca7c1b30d020758ced95db89cd0" +git-tree-sha1 = "247efbccf92448be332d154d6ca56b9fcdd93c31" uuid = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9" -version = "7.5.1" +version = "7.6.1" [deps.ArrayInterface.extensions] ArrayInterfaceBandedMatricesExt = "BandedMatrices" @@ -124,9 +124,9 @@ version = "0.4.2" [[deps.BandedMatrices]] deps = ["ArrayLayouts", "FillArrays", "LinearAlgebra", "PrecompileTools"] -git-tree-sha1 = "e63330a7d2dcc6245514d9035f4fab798ea6ca74" +git-tree-sha1 = "67bcff3f50026b6fa952721525d3a04f0570d432" uuid = "aae01518-5342-5314-be14-df237901396f" -version = "1.2.0" +version = "1.2.1" weakdeps = ["SparseArrays"] [deps.BandedMatrices.extensions] @@ -136,9 +136,9 @@ weakdeps = ["SparseArrays"] uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" [[deps.BitFlags]] -git-tree-sha1 = "43b1a4a8f797c1cddadf60499a8a077d4af2cd2d" +git-tree-sha1 = "2dc09997850d68179b69dafb58ae806167a32b1b" uuid = "d1d4a3ce-64b1-5f1a-9ba4-7e7e69966f35" -version = "0.1.7" +version = "0.1.8" [[deps.BitTwiddlingConvenienceFunctions]] deps = ["Static"] @@ -171,9 +171,9 @@ version = "0.1.2" [[deps.CLIMAParameters]] deps = ["DocStringExtensions", "TOML", "Test"] -git-tree-sha1 = "ffd50a9d2aab03ef016dbd0cb5273c86224b3302" +git-tree-sha1 = "a085251dfe4b0f732fe2b65d5354e6af91a8e931" uuid = "6eacf6c3-8458-43b9-ae03-caf5306d3d53" -version = "0.7.25" +version = "0.7.26" [[deps.CPUSummary]] deps = ["CpuId", "IfElse", "PrecompileTools", "Static"] @@ -183,9 +183,9 @@ version = "0.2.4" [[deps.CUDA]] deps = ["AbstractFFTs", "Adapt", "BFloat16s", "CEnum", "CUDA_Driver_jll", "CUDA_Runtime_Discovery", "CUDA_Runtime_jll", "Crayons", "DataFrames", "ExprTools", "GPUArrays", "GPUCompiler", "KernelAbstractions", "LLVM", "LLVMLoopInfo", "LazyArtifacts", "Libdl", "LinearAlgebra", "Logging", "NVTX", "Preferences", "PrettyTables", "Printf", "Random", "Random123", "RandomNumbers", "Reexport", "Requires", "SparseArrays", "Statistics", "UnsafeAtomicsLLVM"] -git-tree-sha1 = "64461b0e9df3069248979113ce8ab6d11bd371cf" +git-tree-sha1 = "76582ae19006b1186e87dadd781747f76cead72c" uuid = "052768ef-5323-5732-b1bb-66c8b64840ba" -version = "5.1.0" +version = "5.1.1" weakdeps = ["ChainRulesCore", "SpecialFunctions"] [deps.CUDA.extensions] @@ -257,16 +257,16 @@ uuid = "d934ef94-cdd4-4710-83d6-720549644b70" version = "0.3.10" [[deps.ClimaCoupler]] -deps = ["CLIMAParameters", "ClimaAtmos", "ClimaComms", "ClimaCore", "ClimaCoreTempestRemap", "ClimaLSM", "Dates", "DocStringExtensions", "Insolation", "JLD2", "NCDatasets", "Plots", "SciMLBase", "StaticArrays", "Statistics", "SurfaceFluxes", "TempestRemap_jll", "Thermodynamics", "UnPack"] +deps = ["CLIMAParameters", "ClimaAtmos", "ClimaComms", "ClimaCore", "ClimaCoreTempestRemap", "ClimaLSM", "Dates", "DocStringExtensions", "Insolation", "JLD2", "NCDatasets", "Plots", "SciMLBase", "StaticArrays", "Statistics", "SurfaceFluxes", "TempestRemap_jll", "Thermodynamics"] path = "../../.." uuid = "4ade58fe-a8da-486c-bd89-46df092ec0c7" version = "0.1.0" [[deps.ClimaLSM]] deps = ["ArtifactWrappers", "CFTime", "ClimaComms", "ClimaCore", "ClimaCoreTempestRemap", "Dates", "DocStringExtensions", "IntervalSets", "JLD2", "LinearAlgebra", "NCDatasets", "SciMLBase", "StaticArrays", "SurfaceFluxes", "Thermodynamics", "UnPack"] -git-tree-sha1 = "3c492b75037f5c2afcfc37a7c1e7959429a4abc4" +git-tree-sha1 = "987e2bd6121028a1545c0507c429cf61c685aa63" uuid = "7884a58f-fab6-4fd0-82bb-ecfedb2d8430" -version = "0.3.4" +version = "0.4.0" [[deps.ClimaTimeSteppers]] deps = ["CUDA", "ClimaComms", "Colors", "DataStructures", "DiffEqBase", "DiffEqCallbacks", "KernelAbstractions", "Krylov", "LinearAlgebra", "LinearOperators", "NVTX", "SciMLBase", "StaticArrays"] @@ -603,9 +603,9 @@ version = "3.3.10+0" [[deps.FastBroadcast]] deps = ["ArrayInterface", "LinearAlgebra", "Polyester", "Static", "StaticArrayInterface", "StrideArraysCore"] -git-tree-sha1 = "9d77cb1caf03e67514ba60bcfc47c6e131b1950c" +git-tree-sha1 = "a6e756a880fc419c8b41592010aebe6a5ce09136" uuid = "7034ab61-46d4-4ed7-9d0f-46aef9175898" -version = "0.2.7" +version = "0.2.8" [[deps.FastClosures]] git-tree-sha1 = "acebe244d53ee1b461970f8910c235b259e772ef" @@ -962,9 +962,9 @@ version = "0.4.1" [[deps.KernelAbstractions]] deps = ["Adapt", "Atomix", "InteractiveUtils", "LinearAlgebra", "MacroTools", "PrecompileTools", "Requires", "SparseArrays", "StaticArrays", "UUIDs", "UnsafeAtomics", "UnsafeAtomicsLLVM"] -git-tree-sha1 = "95063c5bc98ba0c47e75e05ae71f1fed4deac6f6" +git-tree-sha1 = "b0737cbbe1c8da6f1139d1c23e35e7cea129c0af" uuid = "63c18a36-062a-441e-b654-da1e3ab1ce7c" -version = "0.9.12" +version = "0.9.13" weakdeps = ["EnzymeCore"] [deps.KernelAbstractions.extensions] @@ -1006,9 +1006,9 @@ weakdeps = ["BFloat16s"] [[deps.LLVMExtra_jll]] deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl", "TOML"] -git-tree-sha1 = "a84f8f1e8caaaa4e3b4c101306b9e801d3883ace" +git-tree-sha1 = "98eaee04d96d973e79c25d49167668c5c8fb50e2" uuid = "dad2f222-ce93-54a1-a47d-0025e8a3acab" -version = "0.0.27+0" +version = "0.0.27+1" [[deps.LLVMLoopInfo]] git-tree-sha1 = "2e5c102cfc41f48ae4740c7eca7743cc7e7b75ea" @@ -1071,12 +1071,12 @@ version = "0.2.0" [[deps.LibCURL]] deps = ["LibCURL_jll", "MozillaCACerts_jll"] uuid = "b27032c2-a3e7-50c8-80cd-2d36dbcbfd21" -version = "0.6.3" +version = "0.6.4" [[deps.LibCURL_jll]] deps = ["Artifacts", "LibSSH2_jll", "Libdl", "MbedTLS_jll", "Zlib_jll", "nghttp2_jll"] uuid = "deac9b47-8bc7-5906-a0fe-35ac56dc84c0" -version = "7.84.0+0" +version = "8.4.0+0" [[deps.LibGit2]] deps = ["Base64", "NetworkOptions", "Printf", "SHA"] @@ -1085,7 +1085,7 @@ uuid = "76f85450-5226-5b5a-8eaa-529ad045b433" [[deps.LibSSH2_jll]] deps = ["Artifacts", "Libdl", "MbedTLS_jll"] uuid = "29816b5a-b9ab-546f-933c-edad1886dfa8" -version = "1.10.2+0" +version = "1.11.0+1" [[deps.Libdl]] uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb" @@ -1288,9 +1288,9 @@ uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" [[deps.MbedTLS]] deps = ["Dates", "MbedTLS_jll", "MozillaCACerts_jll", "NetworkOptions", "Random", "Sockets"] -git-tree-sha1 = "f512dc13e64e96f703fd92ce617755ee6b5adf0f" +git-tree-sha1 = "c067a280ddc25f196b5e7df3877c6b226d390aaf" uuid = "739be429-bea8-5141-9913-cc70e7f3736d" -version = "1.1.8" +version = "1.1.9" [[deps.MbedTLS_jll]] deps = ["Artifacts", "Libdl"] @@ -1443,9 +1443,9 @@ uuid = "91d4177d-7536-5919-b921-800302f37372" version = "1.3.2+0" [[deps.OrderedCollections]] -git-tree-sha1 = "2e73fe17cac3c62ad1aebe70d44c963c3cfdc3e3" +git-tree-sha1 = "dfdf5519f235516220579f949664f1bf44e741c5" uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" -version = "1.6.2" +version = "1.6.3" [[deps.OrdinaryDiffEq]] deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "ExponentialUtilities", "FastBroadcast", "FastClosures", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "IfElse", "InteractiveUtils", "LineSearches", "LinearAlgebra", "LinearSolve", "Logging", "LoopVectorization", "MacroTools", "MuladdMacro", "NLsolve", "NonlinearSolve", "Polyester", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLNLSolve", "SciMLOperators", "SimpleNonlinearSolve", "SimpleUnPack", "SparseArrays", "SparseDiffTools", "StaticArrayInterface", "StaticArrays", "TruncatedStacktraces"] @@ -1820,9 +1820,9 @@ uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" [[deps.SparseDiffTools]] deps = ["ADTypes", "Adapt", "ArrayInterface", "Compat", "DataStructures", "FiniteDiff", "ForwardDiff", "Graphs", "LinearAlgebra", "PackageExtensionCompat", "Random", "Reexport", "SciMLOperators", "Setfield", "SparseArrays", "StaticArrayInterface", "StaticArrays", "Tricks", "UnPack", "VertexSafeGraphs"] -git-tree-sha1 = "e162b74fd1ce6d371ff5c584b53e34538edb9212" +git-tree-sha1 = "07272c80c278947baca092df0a01da4a10622ad5" uuid = "47a9eef4-7e08-11e9-0b38-333d64bd3804" -version = "2.11.0" +version = "2.13.0" [deps.SparseDiffTools.extensions] SparseDiffToolsEnzymeExt = "Enzyme" @@ -2080,9 +2080,9 @@ version = "0.4.1" [[deps.Unitful]] deps = ["Dates", "LinearAlgebra", "Random"] -git-tree-sha1 = "a72d22c7e13fe2de562feda8645aa134712a87ee" +git-tree-sha1 = "242982d62ff0d1671e9029b52743062739255c7e" uuid = "1986cc42-f94f-5a68-af5c-568840ba703d" -version = "1.17.0" +version = "1.18.0" [deps.Unitful.extensions] ConstructionBaseUnitfulExt = "ConstructionBase" @@ -2146,15 +2146,15 @@ version = "1.25.0+0" [[deps.WoodburyMatrices]] deps = ["LinearAlgebra", "SparseArrays"] -git-tree-sha1 = "de67fa59e33ad156a590055375a30b23c40299d3" +git-tree-sha1 = "5f24e158cf4cee437052371455fe361f526da062" uuid = "efce3f68-66dc-5838-9240-27a6d6f5f9b6" -version = "0.5.5" +version = "0.5.6" [[deps.XML2_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Libiconv_jll", "Zlib_jll"] -git-tree-sha1 = "24b81b59bd35b3c42ab84fa589086e19be919916" +git-tree-sha1 = "da69178aacc095066bad1f69d2f59a60a1dd8ad1" uuid = "02c8fc9c-b97f-50b9-bbe4-9be30ff0a78a" -version = "2.11.5+0" +version = "2.12.0+0" [[deps.XSLT_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgcrypt_jll", "Libgpg_error_jll", "Libiconv_jll", "Pkg", "XML2_jll", "Zlib_jll"] @@ -2415,7 +2415,7 @@ version = "1.1.6+0" [[deps.nghttp2_jll]] deps = ["Artifacts", "Libdl"] uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d" -version = "1.48.0+0" +version = "1.52.0+1" [[deps.p7zip_jll]] deps = ["Artifacts", "Libdl"] diff --git a/experiments/ClimaCore/sea_breeze/Project.toml b/experiments/ClimaCore/sea_breeze/Project.toml index c260409af7..2a30c9d1c3 100644 --- a/experiments/ClimaCore/sea_breeze/Project.toml +++ b/experiments/ClimaCore/sea_breeze/Project.toml @@ -13,7 +13,6 @@ StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" TerminalLoggers = "5d786b92-1e48-4d6f-9151-6b4477ca9bed" Thermodynamics = "b60c26fb-14c3-4610-9d3e-2d17fe7ff00c" -UnPack = "3a884ed6-31ef-47d7-9d2a-63182c4928ed" [compat] PrettyTables = "2" diff --git a/experiments/ClimaCore/sea_breeze/atmos_rhs.jl b/experiments/ClimaCore/sea_breeze/atmos_rhs.jl index b931818116..14255b136f 100644 --- a/experiments/ClimaCore/sea_breeze/atmos_rhs.jl +++ b/experiments/ClimaCore/sea_breeze/atmos_rhs.jl @@ -101,7 +101,7 @@ and for vertical-momentum, as: push!(LOAD_PATH, joinpath(@__DIR__, "..", "..", "..")) using Test -using StaticArrays, IntervalSets, LinearAlgebra, UnPack +using StaticArrays, IntervalSets, LinearAlgebra import ClimaCore: ClimaCore, slab, Spaces, Domains, Meshes, Geometry, Topologies, Spaces, Fields, Operators using ClimaCore.Geometry diff --git a/experiments/ClimaCore/sea_breeze/land_rhs.jl b/experiments/ClimaCore/sea_breeze/land_rhs.jl index 33f4891fec..51cbebf5e6 100644 --- a/experiments/ClimaCore/sea_breeze/land_rhs.jl +++ b/experiments/ClimaCore/sea_breeze/land_rhs.jl @@ -20,8 +20,8 @@ function lnd_rhs!(du, u, (parameters, F_accumulated), t) where F_accumulated = F_integrated / Δt_coupler """ - @unpack lnd_h, lnd_ρ, lnd_c = parameters - @unpack T_sfc = du + (; lnd_h, lnd_ρ, lnd_c) = parameters + (; T_sfc = du) @. T_sfc = (-F_accumulated) / (lnd_h * lnd_ρ * lnd_c) end diff --git a/experiments/ClimaCore/sea_breeze/ocean_rhs.jl b/experiments/ClimaCore/sea_breeze/ocean_rhs.jl index 14c8accf32..5e1871c050 100644 --- a/experiments/ClimaCore/sea_breeze/ocean_rhs.jl +++ b/experiments/ClimaCore/sea_breeze/ocean_rhs.jl @@ -20,8 +20,8 @@ function ocn_rhs!(du, u, (parameters, F_accumulated), t) where F_accumulated = F_integrated / Δt_coupler """ - @unpack ocn_h, ocn_ρ, ocn_c = parameters - @unpack T_sfc = du + (; ocn_h, ocn_ρ, ocn_c) = parameters + (; T_sfc) = du @. T_sfc = (-F_accumulated) / (ocn_h * ocn_ρ * ocn_c) end diff --git a/experiments/ClimaCore/sea_breeze/run.jl b/experiments/ClimaCore/sea_breeze/run.jl index f2e8896911..b609f51e62 100644 --- a/experiments/ClimaCore/sea_breeze/run.jl +++ b/experiments/ClimaCore/sea_breeze/run.jl @@ -265,7 +265,7 @@ where $F_{integ}$ has units of $J m^{-2}$. =# function cpl_run(simulation::AOLCoupledSim) @info "Run model" - @unpack atmos, ocean, land, coupler = simulation + (; atmos, ocean, land, coupler) = simulation Δt_coupled = coupler.Δt_coupled ## coupler stepping for t in ((t_start + Δt_coupled):Δt_coupled:t_end) diff --git a/experiments/ClimaCore/tc1_heat-diffusion-with-slab/Project.toml b/experiments/ClimaCore/tc1_heat-diffusion-with-slab/Project.toml index a763f0cbe2..86c6aea550 100644 --- a/experiments/ClimaCore/tc1_heat-diffusion-with-slab/Project.toml +++ b/experiments/ClimaCore/tc1_heat-diffusion-with-slab/Project.toml @@ -13,4 +13,3 @@ RecursiveArrayTools = "731186ca-8d62-57ce-b412-fbd966d074cd" SciMLBase = "0bca4576-84f4-4d90-8ffe-ffa030f20462" Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" TerminalLoggers = "5d786b92-1e48-4d6f-9151-6b4477ca9bed" -UnPack = "3a884ed6-31ef-47d7-9d2a-63182c4928ed" diff --git a/experiments/ClimaCore/tc1_heat-diffusion-with-slab/run.jl b/experiments/ClimaCore/tc1_heat-diffusion-with-slab/run.jl index 8c79e41b63..dafc401180 100644 --- a/experiments/ClimaCore/tc1_heat-diffusion-with-slab/run.jl +++ b/experiments/ClimaCore/tc1_heat-diffusion-with-slab/run.jl @@ -83,7 +83,7 @@ ## import Pkg; Pkg.add(url="https://github.com/CliMA/ClimaCore.jl",rev="main") # - load external packages: -import LinearAlgebra, UnPack +import LinearAlgebra import ClimaCore: Fields, Domains, Topologies, Meshes, DataLayouts, Operators, Geometry, Spaces using Base: show_supertypes diff --git a/experiments/ClimaCore/tc2_ekman-column-with-slab/atmos_rhs_fully_coupled.jl b/experiments/ClimaCore/tc2_ekman-column-with-slab/atmos_rhs_fully_coupled.jl index 901db4eec0..61aaa9dec9 100644 --- a/experiments/ClimaCore/tc2_ekman-column-with-slab/atmos_rhs_fully_coupled.jl +++ b/experiments/ClimaCore/tc2_ekman-column-with-slab/atmos_rhs_fully_coupled.jl @@ -2,40 +2,40 @@ #= Ekman column: - ∂_t ρ = ∇ (μ ∇ ρ - w ρ) + ∂_t ρ = ∇ (μ ∇ ρ - w ρ) ∂_t ρθ = ∇ (μ ∇ ρθ - w ρθ) ∂_t u = ∇ (μ ∇ u - w u) + (v - v_g) - ∂_t v = ∇ (μ ∇ v - w v) - (u - u_g) - ∂_t w = ∇ (μ ∇ w - w w) - g - c_p θ ∂_z Π + ∂_t v = ∇ (μ ∇ v - w v) - (u - u_g) + ∂_t w = ∇ (μ ∇ w - w w) - g - c_p θ ∂_z Π -where +where Π = (p/p_0)^{R/c_p} top BCs are insulating and impenetrable: - ∂_t T = 0 - u = u_g - v = v_g - w = 0.0 - ∂_t ρ = 0 + ∂_t T = 0 + u = u_g + v = v_g + w = 0.0 + ∂_t ρ = 0 and bottom BCs use bulk formulae for surface fluxes of heat and momentum: - ∂_t ρθ = F₃ = -Ch ρ ||u|| (T_sfc - ρθ / ρ) - ∂_t u = F₁ = -Cd u ||u|| - ∂_t v = F₂ = -Cd v ||u|| - w = 0.0 - ∂_t ρ = 0 + ∂_t ρθ = F₃ = -Ch ρ ||u|| (T_sfc - ρθ / ρ) + ∂_t u = F₁ = -Cd u ||u|| + ∂_t v = F₂ = -Cd v ||u|| + w = 0.0 + ∂_t ρ = 0 We also use this model to accumulate fluxes it calculates ∂_t F_accum = -(F₁, F₂, F₃) =# function ∑tendencies_atm!(dY, Y, (parameters, T_sfc), t) - UnPack.@unpack Cd, f, ν, ug, vg, C_p, MSLP, R_d, R_m, C_v, grav = parameters + (; Cd, f, ν, ug, vg, C_p, MSLP, R_d, R_m, C_v, grav) = parameters (Yc, Yf, _) = Y.x (dYc, dYf, dF_sfc) = dY.x - UnPack.@unpack ρ, u, v, ρθ = Yc - UnPack.@unpack w = Yf + (; ρ, u, v, ρθ) = Yc + (; w) = Yf dρ = dYc.ρ du = dYc.u dv = dYc.v @@ -50,7 +50,7 @@ function ∑tendencies_atm!(dY, Y, (parameters, T_sfc), t) θ_1 = parent(If(ρθ))[1] / parent(If(ρ))[1] u_wind = sqrt(u_1^2 + v_1^2) - # surface flux calculations + # surface flux calculations F_sfc = -calculate_sfc_fluxes_energy(DryBulkFormulaWithRadiation(), parameters, T_sfc[1], θ_1, u_1, v_1, ρ_1, t) # W / m2 dY.x[3] .= -F_sfc[1] diff --git a/experiments/ClimaCore/tc2_ekman-column-with-slab/atmos_rhs_generator_propagator.jl b/experiments/ClimaCore/tc2_ekman-column-with-slab/atmos_rhs_generator_propagator.jl index 0823194119..020eb02a64 100644 --- a/experiments/ClimaCore/tc2_ekman-column-with-slab/atmos_rhs_generator_propagator.jl +++ b/experiments/ClimaCore/tc2_ekman-column-with-slab/atmos_rhs_generator_propagator.jl @@ -2,9 +2,9 @@ function ∑tendencies_atm!(dY, Y, (parameters, T_sfc), t) # Heat diffusion: - # ∂_t ρ = ∇ (μ ∇ ρ - w ρ) - # ∂_t ρθ = ∇ (μ ∇ ρθ - w ρθ) - # ∂_t w = ∇ (μ ∇ w - w w) + # ∂_t ρ = ∇ (μ ∇ ρ - w ρ) + # ∂_t ρθ = ∇ (μ ∇ ρθ - w ρθ) + # ∂_t w = ∇ (μ ∇ w - w w) # where # ∂_t T = n \cdot F at z = zmin_atm @@ -27,12 +27,12 @@ function ∑tendencies_atm!(dY, Y, (parameters, T_sfc), t) # @. du.x[1] = gradf2c( μ * gradc2f(T)) # du.x[2] .= - F_sfc[1] - UnPack.@unpack Cd, f, ν, ug, vg, C_p, MSLP, R_d, R_m, C_v, grav = parameters + (; Cd, f, ν, ug, vg, C_p, MSLP, R_d, R_m, C_v, grav) = parameters (Yc, Yf, F_sfc) = Y.x (dYc, dYf, dF_sfc) = dY.x - UnPack.@unpack ρ, u, v, ρθ = Yc - UnPack.@unpack w = Yf + (; ρ, u, v, ρθ) = Yc + (; w) = Yf dρ = dYc.ρ du = dYc.u dv = dYc.v diff --git a/experiments/ClimaCore/tc2_ekman-column-with-slab/run.jl b/experiments/ClimaCore/tc2_ekman-column-with-slab/run.jl index 7c2e744d3e..2a98aaee0a 100644 --- a/experiments/ClimaCore/tc2_ekman-column-with-slab/run.jl +++ b/experiments/ClimaCore/tc2_ekman-column-with-slab/run.jl @@ -5,7 +5,7 @@ using Base: show_supertypes # add https://github.com/CliMA/ClimaAtmos.jl/#main # import required modules -import ClimaCore.Geometry, LinearAlgebra, UnPack +import ClimaCore.Geometry, LinearAlgebra import ClimaCore: Fields, Domains, Topologies, Meshes, DataLayouts, Operators, Geometry, Spaces using ClimaAtmos @@ -105,7 +105,7 @@ face_space_atm = Spaces.FaceFiniteDifferenceSpace(center_space_atm) # Set up inital conditions ######## function init_centers(zc, parameters) - UnPack.@unpack T_surf, T_min_ref, grav, C_p, MSLP, R_d = parameters + (; T_surf, T_min_ref, grav, C_p, MSLP, R_d) = parameters # temperature Γ = grav / C_p diff --git a/experiments/ClimaCore/tc3_atm-ocn-lnd/atmos_rhs.jl b/experiments/ClimaCore/tc3_atm-ocn-lnd/atmos_rhs.jl index 1f42ba761b..52008ff279 100644 --- a/experiments/ClimaCore/tc3_atm-ocn-lnd/atmos_rhs.jl +++ b/experiments/ClimaCore/tc3_atm-ocn-lnd/atmos_rhs.jl @@ -2,28 +2,28 @@ #= Ekman column: - ∂_t ρ = ∇ (μ ∇ ρ - w ρ) + ∂_t ρ = ∇ (μ ∇ ρ - w ρ) ∂_t ρθ = ∇ (μ ∇ ρθ - w ρθ) ∂_t u = ∇ (μ ∇ u - w u) + (v - v_g) - ∂_t v = ∇ (μ ∇ v - w v) - (u - u_g) - ∂_t w = ∇ (μ ∇ w - w w) - g - c_p θ ∂_z Π + ∂_t v = ∇ (μ ∇ v - w v) - (u - u_g) + ∂_t w = ∇ (μ ∇ w - w w) - g - c_p θ ∂_z Π -where +where Π = (p/p_0)^{R/c_p} top BCs are insulating and impenetrable: - ∂_t T = 0 - u = u_g - v = v_g - w = 0.0 - ∂_t ρ = 0 + ∂_t T = 0 + u = u_g + v = v_g + w = 0.0 + ∂_t ρ = 0 and bottom BCs use bulk formulae for surface fluxes of heat and momentum: - ∂_t ρθ = F₃ = -Ch ρ ||u|| (T_sfc - ρθ / ρ) - ∂_t u = F₁ = -Cd u ||u|| - ∂_t v = F₂ = -Cd v ||u|| - w = 0.0 - ∂_t ρ = 0 + ∂_t ρθ = F₃ = -Ch ρ ||u|| (T_sfc - ρθ / ρ) + ∂_t u = F₁ = -Cd u ||u|| + ∂_t v = F₂ = -Cd v ||u|| + w = 0.0 + ∂_t ρ = 0 We also use this model to accumulate fluxes it calculates ∂_t F_accum = -(F₁, F₂, F₃) @@ -31,14 +31,14 @@ We also use this model to accumulate fluxes it calculates function ∑tendencies_atm!(dY, Y, (parameters, T_sfc), t) - UnPack.@unpack Ch, Cd, f, ν, ug, vg, C_p, MSLP, R_d, R_m, C_v, grav = parameters + (; Ch, Cd, f, ν, ug, vg, C_p, MSLP, R_d, R_m, C_v, grav) = parameters - #@show(t, Y.x[3]) + #@show(t, Y.x[3]) (Yc, Yf, F_sfc) = Y.x (dYc, dYf, dF_sfc) = dY.x - UnPack.@unpack ρ, u, v, ρθ = Yc - UnPack.@unpack w = Yf + (; ρ, u, v, ρθ) = Yc + (; w) = Yf dρ = dYc.ρ du = dYc.u dv = dYc.v @@ -52,7 +52,7 @@ function ∑tendencies_atm!(dY, Y, (parameters, T_sfc), t) ρθ_1 = parent(ρθ)[1] u_wind = sqrt(u_1^2 + v_1^2) - # surface flux calculations + # surface flux calculations surface_flux_ρθ = -calculate_sfc_fluxes_energy( DryBulkFormulaWithRadiation(), @@ -69,15 +69,15 @@ function ∑tendencies_atm!(dY, Y, (parameters, T_sfc), t) # accumulate in the required right units @inbounds begin - dY.x[3][1] = -ρ_1 * surface_flux_u # - dY.x[3][2] = -ρ_1 * surface_flux_v # + dY.x[3][1] = -ρ_1 * surface_flux_u # + dY.x[3][2] = -ρ_1 * surface_flux_v # dY.x[3][3] = -C_p * surface_flux_ρθ # W / m^2 end # @inbounds begin - # dY.x[3][1] = - 10.0 - # dY.x[3][2] = - 1.0 - # dY.x[3][3] = - 1.0 + # dY.x[3][1] = - 10.0 + # dY.x[3][2] = - 1.0 + # dY.x[3][3] = - 1.0 # end # Density tendency (located at cell centers) diff --git a/experiments/ClimaCore/tc3_atm-ocn-lnd/atmos_simulation.jl b/experiments/ClimaCore/tc3_atm-ocn-lnd/atmos_simulation.jl index f03826ba0a..be6344eafe 100644 --- a/experiments/ClimaCore/tc3_atm-ocn-lnd/atmos_simulation.jl +++ b/experiments/ClimaCore/tc3_atm-ocn-lnd/atmos_simulation.jl @@ -7,7 +7,6 @@ using ClimaAtmos.Interface: PeriodicRectangle, BarotropicFluidModel using ClimaCore: Fields, Domains, Topologies, Meshes, Spaces using IntervalSets -using UnPack using OrdinaryDiffEq: SSPRK33 using OrdinaryDiffEq: ODEProblem, solve, SSPRK33 using Logging: global_logger @@ -55,7 +54,7 @@ parameters = ( τ_d = 10, # idealized daily cycle period [s] # surface fluxes - λ = FT(0.01),#FT(1e-5) # coupling transfer coefficient for LinearRelaxation() SurfaceFluxType + λ = FT(0.01),#FT(1e-5) # coupling transfer coefficient for LinearRelaxation() SurfaceFluxType ) function atmos_simulation( @@ -82,7 +81,7 @@ function atmos_simulation( """ Initialize fields located at cell centers in the vertical. """ function init_centers(zc, parameters) - UnPack.@unpack grav, C_p, MSLP, R_d = parameters + (; grav, C_p, MSLP, R_d) = parameters # temperature Γ = grav / C_p diff --git a/experiments/ClimaCore/tc3_atm-ocn-lnd/land_simulation.jl b/experiments/ClimaCore/tc3_atm-ocn-lnd/land_simulation.jl index 51cb2c29a3..52a579d457 100644 --- a/experiments/ClimaCore/tc3_atm-ocn-lnd/land_simulation.jl +++ b/experiments/ClimaCore/tc3_atm-ocn-lnd/land_simulation.jl @@ -1,4 +1,4 @@ -import ClimaCore.Geometry, LinearAlgebra, UnPack +import ClimaCore.Geometry, LinearAlgebra import ClimaCore: Fields, Domains, Topologies, Meshes, DataLayouts, Operators, Geometry, Spaces using CLIMAParameters @@ -10,7 +10,6 @@ using RecursiveArrayTools using OrdinaryDiffEq: ODEProblem, solve, SSPRK33, Rosenbrock23, Tsit5, SSPRK432, Feagin14, TsitPap8, CarpenterKennedy2N54 using DifferentialEquations -using UnPack using LandHydrology using LandHydrology.SoilHeatParameterizations using LandHydrology.SoilWaterParameterizations @@ -31,8 +30,8 @@ function compute_soil_rhs!(dY, Y, t, p) sp = p[1] param_set = p[2] zc = p[3] - @unpack top_heat_flux, btm_heat_flux, top_water_flux, btm_water_flux = p[4] - @unpack ν, vgn, vgα, vgm, ksat, θr, ρc_ds, κ_sat_unfrozen, κ_sat_frozen = sp + (; top_heat_flux, btm_heat_flux, top_water_flux, btm_water_flux) = p[4] + (; ν, vgn, vgα, vgm, ksat, θr, ρc_ds, κ_sat_unfrozen, κ_sat_frozen) = sp ϑ_l = Y.x[1] θ_i = Y.x[2] ρe_int = Y.x[3] diff --git a/experiments/ClimaCore/tc4_atm-lnd-sfc-fluxes/Project.toml b/experiments/ClimaCore/tc4_atm-lnd-sfc-fluxes/Project.toml index ae01255129..bed9a28921 100644 --- a/experiments/ClimaCore/tc4_atm-lnd-sfc-fluxes/Project.toml +++ b/experiments/ClimaCore/tc4_atm-lnd-sfc-fluxes/Project.toml @@ -17,4 +17,3 @@ Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" SurfaceFluxes = "49b00bb7-8bd4-4f2b-b78c-51cd0450215f" TerminalLoggers = "5d786b92-1e48-4d6f-9151-6b4477ca9bed" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" -UnPack = "3a884ed6-31ef-47d7-9d2a-63182c4928ed" diff --git a/experiments/ClimaCore/tc4_atm-lnd-sfc-fluxes/atmos_rhs.jl b/experiments/ClimaCore/tc4_atm-lnd-sfc-fluxes/atmos_rhs.jl index a8b5be6cfe..8b0807c5fe 100644 --- a/experiments/ClimaCore/tc4_atm-lnd-sfc-fluxes/atmos_rhs.jl +++ b/experiments/ClimaCore/tc4_atm-lnd-sfc-fluxes/atmos_rhs.jl @@ -6,41 +6,41 @@ This is a slightly modified ClimaAtmos Ekman column model #= Ekman column: - ∂_t ρ = ∇ (μ ∇ ρ - w ρ) + ∂_t ρ = ∇ (μ ∇ ρ - w ρ) ∂_t ρθ = ∇ (μ ∇ ρθ - w ρθ) ∂_t u = ∇ (μ ∇ u - w u) + (v - v_g) - ∂_t v = ∇ (μ ∇ v - w v) - (u - u_g) - ∂_t w = ∇ (μ ∇ w - w w) - g - c_p θ ∂_z Π + ∂_t v = ∇ (μ ∇ v - w v) - (u - u_g) + ∂_t w = ∇ (μ ∇ w - w w) - g - c_p θ ∂_z Π -where +where Π = (p/p_0)^{R/c_p} top BCs are insulating and impenetrable: - ∂_t T = 0 - u = u_g - v = v_g - w = 0.0 - ∂_t ρ = 0 + ∂_t T = 0 + u = u_g + v = v_g + w = 0.0 + ∂_t ρ = 0 and bottom BCs use bulk formulae for surface fluxes of heat and momentum: - ∂_t ρθ = F₃ = -Ch ρ ||u|| (T_sfc - ρθ / ρ) - ∂_t u = F₁ = -Cd u ||u|| - ∂_t v = F₂ = -Cd v ||u|| - w = 0.0 - ∂_t ρ = 0 + ∂_t ρθ = F₃ = -Ch ρ ||u|| (T_sfc - ρθ / ρ) + ∂_t u = F₁ = -Cd u ||u|| + ∂_t v = F₂ = -Cd v ||u|| + w = 0.0 + ∂_t ρ = 0 We also use this model to accumulate fluxes it calculates ∂_t F_accum = -(F₁, F₂, F₃) =# function ∑tendencies_atm!(dY, Y, (parameters, T_sfc), t) - @unpack Cd, f, ν, uvg, C_p, MSLP, R_d, R_m, C_v, grav = parameters + (; Cd, f, ν, uvg, C_p, MSLP, R_d, R_m, C_v, grav) = parameters # unpack tendencies and state (Yc, Yf, F_sfc) = Y.x (dYc, dYf, dF_sfc) = dY.x - UnPack.@unpack ρ, uv, ρθ = Yc + (; ρ, uv, ρθ) = Yc w = Yf dρ = dYc.ρ @@ -54,7 +54,7 @@ function ∑tendencies_atm!(dY, Y, (parameters, T_sfc), t) uv_1 = Operators.getidx(uv, Operators.Interior(), 1) u_wind = LinearAlgebra.norm(uv_1) - # surface flux calculations + # surface flux calculations fluxes = calculate_sfc_fluxes(DryMonin(), parameters, T_sfc[1], ρθ_1 / ρ_1, uv_1, ρ_1, t) surface_flux_ρθ = fluxes.SH @@ -126,11 +126,11 @@ function ∑tendencies_atm!(dY, Y, (parameters, T_sfc), t) end -""" -Initialize fields located at cell centers in the vertical. +""" +Initialize fields located at cell centers in the vertical. """ @inline function init_ekman_column_1d_c(z, params::NamedTuple) - @unpack grav, C_p, MSLP, R_d, T_surf_atm, T_min_ref, u0, v0, w0 = params + (; grav, C_p, MSLP, R_d, T_surf_atm, T_min_ref, u0, v0, w0) = params T_surf = T_surf_atm Γ = grav / C_p @@ -155,11 +155,11 @@ Initialize fields located at cell centers in the vertical. end -""" -Initialize fields located at cell interfaces in the vertical. +""" +Initialize fields located at cell interfaces in the vertical. """ @inline function init_ekman_column_1d_f(z, params::NamedTuple) - @unpack grav, C_p, MSLP, R_d, T_surf_atm, T_min_ref, u0, v0, w0 = params + (; grav, C_p, MSLP, R_d, T_surf_atm, T_min_ref, u0, v0, w0) = params w = Geometry.Cartesian3Vector(w0) # w component diff --git a/experiments/ClimaCore/tc4_atm-lnd-sfc-fluxes/experiment.jl b/experiments/ClimaCore/tc4_atm-lnd-sfc-fluxes/experiment.jl index 1c7e89daf0..acb875eedb 100644 --- a/experiments/ClimaCore/tc4_atm-lnd-sfc-fluxes/experiment.jl +++ b/experiments/ClimaCore/tc4_atm-lnd-sfc-fluxes/experiment.jl @@ -11,7 +11,6 @@ using ClimaCore: DataLayouts, Operators, Geometry using ClimaAtmos.Simulations: Simulation using ClimaCore: Fields, Domains, Topologies, Meshes, Spaces -using UnPack using OrdinaryDiffEq: ODEProblem, solve, SSPRK33 using Logging: global_logger using TerminalLoggers: TerminalLogger @@ -48,12 +47,12 @@ include("dummy_surface_fluxes.jl") include("atmos_rhs.jl") parameters_ = ( - # timestepping parameters + # timestepping parameters Δt_min = 0.01, # minimum model timestep [s] timerange = (0.0, 10.0), # start time and end time [s] odesolver = SSPRK33(), # timestepping method from DifferentialEquations.jl (used in both models here) - nsteps_atm = 1, # no. time steps of atm before coupling - nsteps_lnd = 1, # no. time steps of lnd before coupling + nsteps_atm = 1, # no. time steps of atm before coupling + nsteps_lnd = 1, # no. time steps of lnd before coupling saveat = 0.2, # interval at which to save diagnostics [s] # atmos domain @@ -95,7 +94,7 @@ parameters_ = ( τ_d = 10, # idealized daily cycle period [s] # surface fluxes - λ = FT(0.01),#FT(1e-5) # coupling transfer coefficient for LinearRelaxation() SurfaceFluxType + λ = FT(0.01),#FT(1e-5) # coupling transfer coefficient for LinearRelaxation() SurfaceFluxType Ch = 0.0015, # bulk transfer coefficient for sensible heat Cd = 0.0015, # drag coefficient ) @@ -294,7 +293,7 @@ function postprocess(sol_atm, sol_lnd; visualize = false) end return rel_error end -#= +#= sol_atm, sol_lnd = exp_tc4(parameters_) rel_error = postprocess(sol_atm, sol_lnd, visualize = false ); =# diff --git a/perf/Manifest.toml b/perf/Manifest.toml index 0a75043ab8..997785c093 100644 --- a/perf/Manifest.toml +++ b/perf/Manifest.toml @@ -2,7 +2,7 @@ julia_version = "1.9.4" manifest_format = "2.0" -project_hash = "4395aff0b4a929c0d533ece0ab581fe18dd1733c" +project_hash = "406540672da10e937122481e687936d7f9c5deed" [[deps.ADTypes]] git-tree-sha1 = "332e5d7baeff8497b923b730b994fa480601efc7" @@ -263,7 +263,7 @@ uuid = "d934ef94-cdd4-4710-83d6-720549644b70" version = "0.3.10" [[deps.ClimaCoupler]] -deps = ["CLIMAParameters", "ClimaAtmos", "ClimaComms", "ClimaCore", "ClimaCoreTempestRemap", "ClimaLSM", "Dates", "DocStringExtensions", "Insolation", "JLD2", "NCDatasets", "Plots", "SciMLBase", "StaticArrays", "Statistics", "SurfaceFluxes", "TempestRemap_jll", "Thermodynamics", "UnPack"] +deps = ["CLIMAParameters", "ClimaAtmos", "ClimaComms", "ClimaCore", "ClimaCoreTempestRemap", "ClimaLSM", "Dates", "DocStringExtensions", "Insolation", "JLD2", "NCDatasets", "Plots", "SciMLBase", "StaticArrays", "Statistics", "SurfaceFluxes", "TempestRemap_jll", "Thermodynamics"] path = ".." uuid = "4ade58fe-a8da-486c-bd89-46df092ec0c7" version = "0.1.0" diff --git a/perf/Project.toml b/perf/Project.toml index 93da954275..2f5d844bac 100644 --- a/perf/Project.toml +++ b/perf/Project.toml @@ -45,7 +45,6 @@ TempestRemap_jll = "8573a8c5-1df0-515e-a024-abad257ee284" TerminalLoggers = "5d786b92-1e48-4d6f-9151-6b4477ca9bed" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" Thermodynamics = "b60c26fb-14c3-4610-9d3e-2d17fe7ff00c" -UnPack = "3a884ed6-31ef-47d7-9d2a-63182c4928ed" YAML = "ddb6d928-2868-570f-bddf-ab3f9cf99eb6" [compat] diff --git a/src/ConservationChecker.jl b/src/ConservationChecker.jl index b905e47883..9c4f5f9b3d 100644 --- a/src/ConservationChecker.jl +++ b/src/ConservationChecker.jl @@ -11,7 +11,6 @@ using NCDatasets using ClimaCoreTempestRemap using Dates using JLD2 -using UnPack using Plots using ClimaAtmos: RRTMGPI using ClimaLSM @@ -85,7 +84,7 @@ function check_conservation!( ) ccs = cc.sums - @unpack model_sims = coupler_sim + (; model_sims) = coupler_sim boundary_space = coupler_sim.boundary_space # thin shell approx (boundary_space[z=0] = boundary_space[z_top]) @@ -158,7 +157,7 @@ function check_conservation!( ) ccs = cc.sums - @unpack model_sims = coupler_sim + (; model_sims) = coupler_sim boundary_space = coupler_sim.boundary_space # thin shell approx (boundary_space[z=0] = boundary_space[z_top])