trixi-framework / trixi-framework/Trixi.jl
Taal: AMR callback should "notify" "all" parts of the code when the mesh has changed
- Dominant language
- Julia
- Stars
- 731
- Forks
- 166
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 25
Description
I think now that you are already optimizing the dt calculation on have_constant_speed, we should probably skip calculating dt in each time step for those cases and only calculate it once after each mesh adaptation and store it in some cache.
_Originally posted by @sloede in https://github.com/trixi-framework/Trixi.jl/pull/200#discussion_r500534895_
That's a good suggestion but requires additional logic. For example, the AMR callback and the stepsize callback need to know each other to do that. As you may have seen in other TODO notes, I was thinking about letting the AMR callback notify everything when something has been adapted. If we implement that, we can also add this optimization. Could you please open an issue for that?
_Originally posted by @ranocha in https://github.com/trixi-framework/Trixi.jl/pull/200#discussion_r502207846_
Contributor guide
Research direction
Start by tracing the AMR callback and stepsize callback to understand how mesh adaptation and timestep calculation currently interact. Done means the AMR callback can notify all affected parts of the code, including the stepsize callback, so adapted meshes can trigger the required recalculation and caching behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- hpc
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100