You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We'd like to use OrdinaryDiffEq.jl for time stepping. This will require a lot of work, but I wanted to open an issue for reference. Here's a rough sketch / pseudo code of what we need:
functionstep!(gm, edmf, ...)
pre_filter!(gm_model, edmf_model, state, tendencies, ...) # apply pre-aux/state filtersupdate_aux!(gm_model, edmf_model, state, tendencies, ...)
compute_tendencies!(gm_model, edmf_model, state, tendencies, ...)
# `solve!` will _only_ perform# x = x + Δt * x_tendencies for explicit variables# solve Ax = b for implicit variables (A, b) should be cached at this point.# given x, A, b, Δt and x_tendenciessolve!(gm, edmf, ...) # This will eventually be replaced by calls to OrdinaryDiffEq.jl, with the appropriate tendencies / matricespost_filter!(gm_model, edmf_model, state, tendencies, ...) # apply post-aux/state filterscallbacks!(gm, edmf, ...) # for exporting diagnostics / ioendfunctioncompute_tendencies!(gm_model, edmf_model, state, tendencies, ...)
# compute grid mean tendencies for all explicit / implicit stepped equationscompute_material_tendencies!(edmf_model, gm_model, state, tendencies, ...)
end# This is where all edmf specific functions should live:functioncompute_material_tendencies!(edmf_model, gm_model, state, tendencies, ...)
# compute edmf tendencies for all explicit / implicit stepped equationsendfunctionupdate_aux!(gm_model, edmf_model, state, tendencies, ...)
# Update grid mean aux variablesupdate_aux!(edmf_model, gm_model, state, tendencies, ...)
endfunctionupdate_aux!(edmf_model, gm_model, state, tendencies, ...)
# Update edmf aux variablesend
The text was updated successfully, but these errors were encountered:
271: Restructure-- split tendencies from solve r=charleskawczynski a=charleskawczynski
This PR restructures the code to split tendency computations from the solve by adding some data structures to `EDMF_PrognosticTKE`.
A step towards #270.
Co-authored-by: Charles Kawczynski <kawczynski.charles@gmail.com>
We'd like to use OrdinaryDiffEq.jl for time stepping. This will require a lot of work, but I wanted to open an issue for reference. Here's a rough sketch / pseudo code of what we need:
The text was updated successfully, but these errors were encountered: