trixi-framework / trixi-framework/TrixiParticles.jl
Extend interpolation functions to integrator/callback
Nobody has claimed this yet.
- Dominant language
- Julia
- Stars
- 83
- Forks
- 24
- Avg merge
- 8d 18h
- Merged PRs (30d)
- 3
Description
The current interpolation definition only allows you to interpolate over the final value of a solution. I would like to be able to include an interpolation in a PostprocessCallback so I can see how pressure at a point (for example) evolves over time.
From what I can tell from a glance at the code, it wouldn't be a small change. Since the system data you get during a PostProcessCallback is isolated to a single system, I don't think its possible to do an interpolation.
I could see a simple fix using the custom_quantities interface, which provides u_ode and v_ode, and then if these versions of the interpolation functions were made public, it could be accessed there
From what I can tell, the custom_quantities code is the only public description of u_ode and v_ode. I wasn't sure if you consider using u_ode, v_ode = sol.u[end].x to be valid API (for breaking changes purposes)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with src/general/interpolation.jl, especially the interpolation functions linked in the issue, and trace how PostprocessCallback exposes system data. Read the custom_quantities interface and its u_ode and v_ode values before deciding how the public API should work. Done means a callback can use interpolation to observe a quantity such as pressure over time without relying on an undocumented access pattern.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- api
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 28/100