Support for writing ParticleSetView#2620
Conversation
|
@VeckoTheGecko, keen to hear your thoughts about these four items above! |
|
Sorry for the delay in reviewing this. I think that its a good feature to have. I am wondering about how it interacts with the rest of the codebase and how we use Particle file (ideally how does testing of this look like, and what is the robustness of that testing?) This bigger picture isn't something I have at the moment, but also isn't something I think that we should wait on either - I just wanted to flag it. I hope to come back and revisit it. I'm happy to merge this as is. I think the tutorial running in CI is sufficient for testing for now as a first iteration? Also, do you want to flag this as an experimental feature? (e..g, by adding a callout block in the tutorial saying such) I'm happy to leave that up to your discretion if that's ok - you have more of a feel for this feature than I do. |
|
Thanks for the feedback, @VeckoTheGecko! I will then indeed add a flag to warn this is experimental in the tutorial. One question though: do you think we could/should add the Or would you want me to implement this first, before you can assess what works better? |
I think having it as an argument to I wouldn't add it to the ParticleSetView class |
Description
This PR implements a way to write a ParticleSetView into a ParticleFile, and adds a tutorial to show how it works. I think this could be a killer feature, as it provides the user much more control over when particles are written (an often-asked feature pre-v4!)
Note that there are still a few rough edges about this implementation. Notably:
ParticleSetView.fieldset?timeto write, but the Kernel itself doesn't know the timestep. Users can provide particles.time, but this may result in particles being written that have not yet started (to be explored)outputdtargument on initialisation, even though that has no effect. Would be better to also allowNonehere?Once we settled on these four open questions here, I will add unit tests etc
Checklist
mainfor normal development,v3-supportfor v3 support)AI Disclosure