diff --git a/config/perf_configs/flame_perf_target_prognostic_edmfx_aquaplanet.yml b/config/perf_configs/flame_perf_target_prognostic_edmfx_aquaplanet.yml index 33c7648e68f..270e25b020d 100644 --- a/config/perf_configs/flame_perf_target_prognostic_edmfx_aquaplanet.yml +++ b/config/perf_configs/flame_perf_target_prognostic_edmfx_aquaplanet.yml @@ -3,6 +3,8 @@ surface_setup: DefaultExchangeCoefficients rad: gray vert_diff: "false" turbconv: prognostic_edmfx +implicit_diffusion: true +implicit_sgs_advection: true prognostic_tke: true edmfx_upwinding: first_order edmfx_entr_model: "Generalized" diff --git a/src/prognostic_equations/implicit/implicit_solver.jl b/src/prognostic_equations/implicit/implicit_solver.jl index c3f98b91b99..1e65bcc3574 100644 --- a/src/prognostic_equations/implicit/implicit_solver.jl +++ b/src/prognostic_equations/implicit/implicit_solver.jl @@ -408,12 +408,16 @@ NVTX.@annotate function Wfact!(A, Y, p, dtγ, t) p.atmos.turbconv_model isa AbstractEDMF ? (; p.precomputed.ᶜtke⁰, p.precomputed.ᶜmixing_length) : (;) )..., + ( + use_derivative(A.diffusion_flag) && + p.atmos.turbconv_model isa PrognosticEDMFX ? + (; p.precomputed.ᶜρa⁰) : (;) + )..., ( use_derivative(A.sgs_advection_flag) && p.atmos.turbconv_model isa PrognosticEDMFX ? (; p.core.ᶜgradᵥ_ᶠΦ, - p.precomputed.ᶜρa⁰, p.precomputed.ᶜρʲs, p.precomputed.ᶠu³ʲs, p.precomputed.ᶜtsʲs,