Open juntyr opened 3 months ago
:warning: Please install the to ensure uploads and comments are reliably processed by Codecov.
Attention: Patch coverage is 2.51451%
with 504 lines
in your changes missing coverage. Please review.
Project coverage is 15.37%. Comparing base (
c8c3023
) to head (6f0bc53
).
:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Let's follow the path of least resistance / easiest implementation for now
@NicoFirbas I've now got a minimal prototype that ... sort of works
Here's the Python script to orchestrate the gradual downscaling of the habitat https://gist.github.com/juntyr/4e98b3cb7e30e30c8a20ef27ad0c0ba1
The issue is that even though the event-skipping algorithm is fast and can speed up the simulation tail, it also needs a fast dispersal sampler. In particular, it needs fast non-self-dispersal. A version based on rejection sampling was just far too slow, so this current code just cheats and switches to nearest-neighbour dispersal when in downsampled mode ... yeah.
What could be done is to precompute the non-self-dispersal target distribution and to then just use that. However, that would be not fully accurate (but then again we're already simplifying in major ways) but most importantly probably not target all possible locations, since a finite pre-computation might only learn about a few.
Improvement ideas
maybe a very hacky habitat-dependent pre-processing and post-processing hook?could only downscale internally and then remap to fake upscaled coords before and afterdefault impl for habitats would do nothing