This PR changes run_three_layer_constant_fluxes_simulation (which builds andrun! a simulation) to three_layer_constant_fluxes_simulation, which simply constructs the simulation.
This makes it possible to edit the simulation after building it and before calling run!, eg, changing callbacks, or maybe just calling time_step!(simulation) rather than run! for doing timings or debugging, etc.
cc @sandreza @navidcy important for you two if you implement constructors for the baroclinic adjustment experiment or eddying channel experiment.
@christophernhill this change is useful for squeezing metrics out of "three layer, constant fluxes" LES on a cloud instance or something.
It also tests this function on CI (we wrote the test, but forgot to add it to runtests.jl).
This PR changes
run_three_layer_constant_fluxes_simulation
(which builds andrun!
a simulation) tothree_layer_constant_fluxes_simulation
, which simply constructs the simulation.This makes it possible to edit the
simulation
after building it and before callingrun!
, eg, changing callbacks, or maybe just callingtime_step!(simulation)
rather thanrun!
for doing timings or debugging, etc.cc @sandreza @navidcy important for you two if you implement constructors for the baroclinic adjustment experiment or eddying channel experiment.
@christophernhill this change is useful for squeezing metrics out of "three layer, constant fluxes" LES on a cloud instance or something.
It also tests this function on CI (we wrote the test, but forgot to add it to
runtests.jl
).