-
Notifications
You must be signed in to change notification settings - Fork 168
Description
We need to decide how to treat particles that are on land. @Abobie has worked hard on the boundaries branch where particles are 'pushed back' using ghost points, when they come very close to land. However, there can still be instances where particles end up on land. For example when the timestep is so large that particles step over multiple grid cells in one timestep. Or if random-walk diffusion is added
My thinking is that at the end of the kernel, we need a function that, for each timestep, assesses whether a particle is on land (and whether it has gone out of the domain, see #47). If that function return True, the user should have a few options:
- Remove the particle (to simulate beaching)
- Try computing the particle position again (essentially redrawing the random number in the diffusion; this should probably be defualt behaviour)
- Move the particle to the closest ocean point (might be difficult/expensive to compute, though)
@Jacketless, you have been thinking about this too for your diffusion steps, right? Any comments?
And @mlange05 what do you think about a general test at the end of each particle timestep to accept/reject the move in that timestep? Would that be feasible?