Skip to content
Snippets Groups Projects
Commit 9a94d8cf authored by Florian Atteneder's avatar Florian Atteneder
Browse files

dg1d: use separate CallbackTimings for separate callbacks...

dg1d: use separate CallbackTimings for separate callbacks (!226)

Our CallbackTimings ensure that only forward progress is made.
When the same timing is shared by multiple callbacks, e.g.
one for 0d and one for 1d output, then firing for 0d prevents
firing for 1d.
parent fb6dc01d
No related branches found
No related tags found
1 merge request!226dg1d: use separate CallbackTimings for separate callbacks
Pipeline #7282 passed
......@@ -276,22 +276,24 @@ function setup_callbacks(env, project, bdryconds, prms, outputdir)
mesh = env.mesh
# Add some 'global' callbacks
savecb_timing = CallbackTiming(every_dt=prms["Output"]["every_dt"],
every_iteration=prms["Output"]["every_iteration"])
savecb_timing_0d = CallbackTiming(every_dt=prms["Output"]["every_dt"],
every_iteration=prms["Output"]["every_iteration"])
vars0d = prms["Output"]["variables0d"]
savecb_0d = SaveCallback(Symbol.(vars0d), mesh.cache, mesh,
joinpath(outputdir, "output0d"),
savecb_timing;
savecb_timing_0d;
format0d=prms["Output"]["format0d"])
savecb_timing_1d = deepcopy(savecb_timing_0d)
vars1d = prms["Output"]["variables1d"]
savecb_1d = SaveCallback(Symbol.(vars1d), mesh.cache, mesh,
joinpath(outputdir, "output1d"),
savecb_timing;
savecb_timing_1d;
format1d=prms["Output"]["format1d"])
savecb_timing_2d = deepcopy(savecb_timing_0d)
vars2d = prms["Output"]["variables2d"]
savecb_2d = SaveCallback(Symbol.(vars2d), mesh.cache, mesh,
joinpath(outputdir, "output2d"),
savecb_timing;
savecb_timing_2d;
format2d=prms["Output"]["format2d"])
savecbs = [ cb for cb in (savecb_0d, savecb_1d, savecb_2d) if !isnothing(cb) ]
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment