Open kthyng opened 10 months ago
Hi, Yes, currently the stranding in OpenDrift is simply binary, either immediate stranding/deactivation, or "wait at shore" until there is offshore drift component ("previous"). Something more sophisticated has been on the TODO-list for a long time, but not yet implemented.
Here is the method that handles interaction with coastline: https://github.com/OpenDrift/opendrift/blob/master/opendrift/models/basemodel/__init__.py#L647
I think it should be fairly straightforward to implement another concept, e.g. using "half-life":
1) A new item/name (e.g. "half-life") has to be added to the config options: https://github.com/OpenDrift/opendrift/blob/master/opendrift/models/basemodel/__init__.py#L310
2) If some new particle properties are needed (e.g. "coastline_half_life"), these should be added as a new "element property/variable": https://github.com/OpenDrift/opendrift/blob/master/opendrift/elements/elements.py#L51
If this should be the same for all elements, it could also be a config setting.
3) The actual algorithm should be added to the interact_with_coastline
method.
The main challenge would be to ensure that this does not interfere with existing modules and readers. You are welcome to give it a go, and I can help later if it would be relevant to incorporate it as a permanent feature - but then some thorough (unit)testing is needed to avoid inducing undesired side-effects for other users.
@knutfrode Ok thank you, I'll probably be in touch about this over time!
Hi! From what I can tell, you can have drifters either strand on the coastline and then stay there, or strand and then move when the relevant physics are amenable to moving. Is there a concept in OpenDrift of partial refloating such that not all drifters would move when the currents are amenable? A reference for this is the GNOME technical doc: https://response.restoration.noaa.gov/sites/default/files/GNOME_Tech_Doc.pdf pg 15 under "Refloating":
and there is an equation given.
If not currently available, I would be curious how difficult this might be for me to add. Thank you!