Skip to content

Commit f5983ae

Browse files
committed
Use ustar^3 surface tke boundary condition
1 parent e743a79 commit f5983ae

File tree

8 files changed

+35
-46
lines changed

8 files changed

+35
-46
lines changed

.buildkite/Manifest-v1.11.toml

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -361,13 +361,13 @@ version = "0.5.17"
361361
deps = ["Adapt", "ArgParse", "Artifacts", "AtmosphericProfilesLibrary", "ClimaComms", "ClimaCore", "ClimaDiagnostics", "ClimaParams", "ClimaTimeSteppers", "ClimaUtilities", "CloudMicrophysics", "Dates", "Insolation", "Interpolations", "LazyArtifacts", "LazyBroadcast", "LinearAlgebra", "Logging", "NCDatasets", "NVTX", "NullBroadcasts", "RRTMGP", "Random", "SciMLBase", "StaticArrays", "Statistics", "SurfaceFluxes", "Thermodynamics", "UnrolledUtilities", "YAML"]
362362
path = ".."
363363
uuid = "b2c96348-7fb7-4fe0-8da9-78d88439e717"
364-
version = "0.30.1"
364+
version = "0.30.2"
365365

366366
[[deps.ClimaComms]]
367367
deps = ["Adapt", "Logging", "LoggingExtras"]
368-
git-tree-sha1 = "40ad44466dfe0092e18c04bc02c849fe8e095d30"
368+
git-tree-sha1 = "2a96bdd5339bdcd903867a46d1f00110f7b890cc"
369369
uuid = "3a4d1b5c-c61d-41fd-a00a-5873ba7a1b0d"
370-
version = "0.6.6"
370+
version = "0.6.7"
371371
weakdeps = ["CUDA", "MPI"]
372372

373373
[deps.ClimaComms.extensions]
@@ -399,15 +399,15 @@ version = "0.3.18"
399399

400400
[[deps.ClimaDiagnostics]]
401401
deps = ["Accessors", "ClimaComms", "ClimaCore", "ClimaUtilities", "Dates", "NCDatasets", "OrderedCollections", "SciMLBase"]
402-
git-tree-sha1 = "ec2ee9e870e51a9d8b76decf941f6c9d3d3b1365"
402+
git-tree-sha1 = "e931fd003740b97fa525246a6ea7c14143d12051"
403403
uuid = "1ecacbb8-0713-4841-9a07-eb5aa8a2d53f"
404-
version = "0.2.13"
404+
version = "0.2.14"
405405

406406
[[deps.ClimaParams]]
407407
deps = ["TOML"]
408-
git-tree-sha1 = "acf6c80c7ad59fe9dac9cc49625d52f4b8e1f4b7"
408+
git-tree-sha1 = "f82183583b42d08bccad3f1f466e014b04189a2d"
409409
uuid = "5c42b081-d73a-476f-9059-fd94b934656c"
410-
version = "0.10.30"
410+
version = "0.10.31"
411411

412412
[[deps.ClimaReproducibilityTests]]
413413
deps = ["OrderedCollections", "PrettyTables"]
@@ -417,9 +417,9 @@ version = "0.1.1"
417417

418418
[[deps.ClimaTimeSteppers]]
419419
deps = ["ClimaComms", "DataStructures", "DiffEqBase", "KernelAbstractions", "Krylov", "LinearAlgebra", "LinearOperators", "NVTX", "SciMLBase", "StaticArrays"]
420-
git-tree-sha1 = "f71d6c31fdfeaa66516ccf904a916e99904e5078"
420+
git-tree-sha1 = "23c8346606e165aa8805f25063f24e39bd8e148d"
421421
uuid = "595c0a79-7f3d-439a-bc5a-b232dc3bde79"
422-
version = "0.8.4"
422+
version = "0.8.5"
423423
weakdeps = ["BenchmarkTools", "CUDA", "OrderedCollections", "PrettyTables", "StatsBase"]
424424

425425
[deps.ClimaTimeSteppers.extensions]
@@ -447,9 +447,9 @@ version = "0.1.13"
447447

448448
[[deps.CloudMicrophysics]]
449449
deps = ["ClimaParams", "DocStringExtensions", "ForwardDiff", "HCubature", "LazyArtifacts", "LogExpFunctions", "QuadGK", "RootSolvers", "SpecialFunctions", "Thermodynamics"]
450-
git-tree-sha1 = "4ebcb248a7849621f5d34dbe1b6c6e4afe83e36e"
450+
git-tree-sha1 = "8f1965abc1a35d3b08f9d95d19c2a59b647fed9b"
451451
uuid = "6a9e3e04-43cd-43ba-94b9-e8782df3c71b"
452-
version = "0.22.11"
452+
version = "0.22.13"
453453

454454
[deps.CloudMicrophysics.extensions]
455455
EmulatorModelsExt = ["DataFrames", "MLJ"]
@@ -880,9 +880,9 @@ version = "1.3.7"
880880

881881
[[deps.ForwardDiff]]
882882
deps = ["CommonSubexpressions", "DiffResults", "DiffRules", "LinearAlgebra", "LogExpFunctions", "NaNMath", "Preferences", "Printf", "Random", "SpecialFunctions"]
883-
git-tree-sha1 = "a2df1b776752e3f344e5116c06d75a10436ab853"
883+
git-tree-sha1 = "910febccb28d493032495b7009dce7d7f7aee554"
884884
uuid = "f6369f11-7733-5829-9624-2563aa707210"
885-
version = "0.10.38"
885+
version = "1.0.1"
886886
weakdeps = ["StaticArrays"]
887887

888888
[deps.ForwardDiff.extensions]
@@ -1627,9 +1627,9 @@ version = "1.11.0"
16271627

16281628
[[deps.MathTeXEngine]]
16291629
deps = ["AbstractTrees", "Automa", "DataStructures", "FreeTypeAbstraction", "GeometryBasics", "LaTeXStrings", "REPL", "RelocatableFolders", "UnicodeFun"]
1630-
git-tree-sha1 = "f5a6805fb46c0285991009b526ec6fae43c6dec2"
1630+
git-tree-sha1 = "31a99cb7537f812e1d6be893a71804c35979f1be"
16311631
uuid = "0a4f8689-d25c-4efe-a92b-7142dfc1aa53"
1632-
version = "0.6.3"
1632+
version = "0.6.4"
16331633

16341634
[[deps.MbedTLS_jll]]
16351635
deps = ["Artifacts", "Libdl"]
@@ -1826,9 +1826,9 @@ uuid = "91d4177d-7536-5919-b921-800302f37372"
18261826
version = "1.3.3+0"
18271827

18281828
[[deps.OrderedCollections]]
1829-
git-tree-sha1 = "cc4054e898b852042d7b503313f7ad03de99c3dd"
1829+
git-tree-sha1 = "05868e21324cede2207c6f0f466b4bfef6d5e7ee"
18301830
uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d"
1831-
version = "1.8.0"
1831+
version = "1.8.1"
18321832

18331833
[[deps.PCRE2_jll]]
18341834
deps = ["Artifacts", "Libdl"]
@@ -2152,10 +2152,10 @@ uuid = "94e857df-77ce-4151-89e5-788b33177be4"
21522152
version = "0.1.0"
21532153

21542154
[[deps.SciMLBase]]
2155-
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"]
2156-
git-tree-sha1 = "44397dee277159f224492bcf99c442d2a907c6f5"
2155+
deps = ["ADTypes", "Accessors", "Adapt", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "Moshi", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "SciMLStructures", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface"]
2156+
git-tree-sha1 = "6d3c00e72dce943e4430e443bd0c531974618176"
21572157
uuid = "0bca4576-84f4-4d90-8ffe-ffa030f20462"
2158-
version = "2.91.0"
2158+
version = "2.93.0"
21592159

21602160
[deps.SciMLBase.extensions]
21612161
SciMLBaseChainRulesCoreExt = "ChainRulesCore"
@@ -2505,9 +2505,9 @@ version = "1.0.2"
25052505

25062506
[[deps.Thermodynamics]]
25072507
deps = ["DocStringExtensions", "KernelAbstractions", "Random", "RootSolvers"]
2508-
git-tree-sha1 = "efe74e0344fd7fb68b831316055290d80a62d9c1"
2508+
git-tree-sha1 = "f708faaf347760e9dcd82beb1a9455c86bdf9911"
25092509
uuid = "b60c26fb-14c3-4610-9d3e-2d17fe7ff00c"
2510-
version = "0.12.11"
2510+
version = "0.12.12"
25112511
weakdeps = ["ClimaParams"]
25122512

25132513
[deps.Thermodynamics.extensions]
@@ -2527,9 +2527,9 @@ version = "0.11.3"
25272527

25282528
[[deps.TimerOutputs]]
25292529
deps = ["ExprTools", "Printf"]
2530-
git-tree-sha1 = "f57facfd1be61c42321765d3551b3df50f7e09f6"
2530+
git-tree-sha1 = "3748bd928e68c7c346b52125cf41fff0de6937d0"
25312531
uuid = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f"
2532-
version = "0.5.28"
2532+
version = "0.5.29"
25332533
weakdeps = ["FlameGraphs"]
25342534

25352535
[deps.TimerOutputs.extensions]

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ AtmosphericProfilesLibrary = "0.1.7"
4343
ClimaComms = "0.6.6"
4444
ClimaCore = "0.14.24"
4545
ClimaDiagnostics = "0.2.12"
46-
ClimaParams = "0.10.30"
46+
ClimaParams = "0.10.31"
4747
ClimaTimeSteppers = "0.8.2"
4848
ClimaUtilities = "0.1.22"
4949
CloudMicrophysics = "0.22.9"

reproducibility_tests/ref_counter.jl

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
241
1+
242
22

33
# **README**
44
#
@@ -20,6 +20,9 @@
2020

2121

2222
#=
23+
242
24+
- Use ustar^3 surface tke boundary condition
25+
2326
241
2427
- Add triangle inequality limiter from Horn (2012) and apply it in microphysics
2528

src/cache/diagnostic_edmf_precomputed_quantities.jl

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1032,9 +1032,7 @@ NVTX.@annotate function set_diagnostic_edmf_precomputed_quantities_env_closures!
10321032
@. ρatke_flux_values = surface_flux_tke(
10331033
turbconv_params,
10341034
ρ_int_values,
1035-
u_int_values,
10361035
ustar_values,
1037-
int_local_geometry_values,
10381036
sfc_local_geometry_values,
10391037
)
10401038
return nothing

src/cache/prognostic_edmf_precomputed_quantities.jl

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -549,9 +549,7 @@ NVTX.@annotate function set_prognostic_edmf_precomputed_quantities_explicit_clos
549549
@. ρatke_flux_values = surface_flux_tke(
550550
turbconv_params,
551551
ρ_int_values,
552-
u_int_values,
553552
ustar_values,
554-
int_local_geometry_values,
555553
sfc_local_geometry_values,
556554
)
557555

src/parameters/Parameters.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ Base.@kwdef struct TurbulenceConvectionParameters{FT, VFT1, VFT2} <: ATCP
2626
tke_ed_coeff::FT
2727
tke_diss_coeff::FT
2828
tke_surf_scale::FT
29+
tke_surf_flux_coeff::FT
2930
diagnostic_covariance_coeff::FT
3031
static_stab_coeff::FT
3132
Prandtl_number_scale::FT

src/parameters/create_parameters.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,7 @@ function TurbulenceConvectionParameters(
200200
:min_area_limiter_scale => :min_area_limiter_scale,
201201
:max_area_limiter_scale => :max_area_limiter_scale,
202202
:mixing_length_tke_surf_scale => :tke_surf_scale,
203+
:mixing_length_tke_surf_flux_coeff => :tke_surf_flux_coeff,
203204
:mixing_length_diss_coeff => :tke_diss_coeff,
204205
:diagnostic_covariance_coeff => :diagnostic_covariance_coeff,
205206
:detr_buoy_coeff => :detr_buoy_coeff,

src/prognostic_equations/edmfx_closures.jl

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -32,23 +32,11 @@ end
3232
"""
3333
Return surface flux of TKE, a C3 vector used by ClimaAtmos operator boundary conditions
3434
"""
35-
function surface_flux_tke(
36-
turbconv_params,
37-
ρ_int,
38-
u_int,
39-
ustar,
40-
interior_local_geometry,
41-
surface_local_geometry,
42-
)
43-
c_d = CAP.tke_diss_coeff(turbconv_params)
44-
c_m = CAP.tke_ed_coeff(turbconv_params)
45-
k_star² = CAP.tke_surf_scale(turbconv_params)
46-
speed = Geometry._norm(
47-
CA.CT12(u_int, interior_local_geometry),
48-
interior_local_geometry,
49-
)
35+
function surface_flux_tke(turbconv_params, ρ_int, ustar, surface_local_geometry)
36+
37+
c_k = CAP.tke_surf_flux_coeff(turbconv_params)
5038
c3_unit = C3(unit_basis_vector_data(C3, surface_local_geometry))
51-
return ρ_int * (1 - c_d * c_m * k_star²^2) * ustar^2 * speed * c3_unit
39+
return c_k * ρ_int * ustar^3 * c3_unit
5240
end
5341

5442
"""

0 commit comments

Comments
 (0)