Modify velocity, kinetic energy, and curl terms to match dycore paper #3552
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Purpose
This PR modifies the reconstructions of cell face velocity, cell center kinetic energy, and the curl terms in the velocity tendencies to exactly match the dycore paper.
Content
curlₕin the vorticity componentsᶠωʰ,ᶠωʲʰ, andᶜω³towcurlₕᶠu³fromᶠ⌈ᶜg³ʰ ᶜuₕ⌋ + ᶠg³³ ᶠu₃toᶠ⌈ᶜg³ʰ ᶜuₕ⌋ + ᶠ⌈ᶜg³³⌋ ᶠu₃ᶜ⟨ᶠg³³ ᶠu₃ ᶠu₃⟩in the kinetic energy toᶜg³³ ᶜ⟨ᶠu₃ ᶠu₃⟩ᶠg³³ ᶠu₃ ᶠu₃in the SGS kinetic energy toᶜg³³ ᶠu₃ ᶠu₃ᶠu = ᶠ⌈ᶜuʰ⌋ + ᶠu³to the list of precomputed quantities, along withᶠu⁰andᶠuʲsfor prognostic EDMFᶠu = ᶠ⟨ᶜuʰ⟩ + ᶠu³, but this was not clarified anywhereᶜ⌈ᶠωʰ × ᶠuᵛ⌋in the tendency ofᶜuₕtoᶜ⟨ᶠωʰ × ᶠuᵛ⟩, and changeᶠωʰ × ᶠ⟨ᶜuʰ⟩in the tendency ofᶠu₃toᶠωʰ × ᶠuʰᶠωʲʰ × ᶠ⟨ᶜuʲʰ⟩in the tendency ofᶠu₃ʲtoᶠωʲʰ × ᶠuʲʰᶠuincompute_gm_mixing_length!instead of recomputing itᶠu⁰inset_prognostic_edmf_precomputed_quantities_closures!instead of recomputing itset_velocity_quantities!into two lazy functionscenter_velocity(ᶜuₕ, ᶠu₃)andface_velocity(ᶜρ, ᶜu, ᶠu₃), where the latter is a function of the grid-scale densityᶜρset_diagnostic_edmf_precomputed_quantities_env_closures!to usecenter_velocityandface_velocityinstead of redefining them, and clarify where we are ignoring the effects of topographycompute_kinetic!(for grid-mean and prognostic EDMF) andkinetic_energy(for diagnostic EDMF)set_velocity_at_surface!