oceanmodeling / ondemand-storm-workflow

Other
2 stars 1 forks source link

Find landfall time #26

Closed SorooshMani-NOAA closed 8 months ago

SorooshMani-NOAA commented 1 year ago

Currently the approach to find 48 hours before landfall for perturbing the storm is to take the US shape (from NaturalEarth features) and intersect it with the storm track. The reasoning behind this is that storms might have multiple landfalls and the current workflow is focused on storms landfall on the US.

However, there are cases that the storm track doesn't actually coincide with the US at all, but come very close. As a remedy, we added a fix to check the landfall with another country's polygon if it doesn't intersect US. Still this might fail, so we might want to consider using another method, like finding closest approach point or something like that.

Also the country to check can become an input parameter.

SorooshMani-NOAA commented 1 year ago

See https://github.com/saeed-moghimi-noaa/Next-generation-psurge-tasks/issues/14

SorooshMani-NOAA commented 1 year ago

For now I added the ability to read lead times prescribed in a json file for different storms, by passing the path to the file as --leadt-times command line argument.

The file format is:

{ 'StormName1': { 'ALnumber': '<nhc_code>', `leadtime`: { 0: '<YYYYMMDDHH>', 12: '<YYYYMMDDHH>', ... } }, ... }
SorooshMani-NOAA commented 11 months ago

In the json file provided by the NHC, some storms might have multiple lead time entries due to multiple landfalls (e.g. Irere 2011). For now we just take the first landfall for perturbations.

SorooshMani-NOAA commented 9 months ago

~It looks like the code is actually ignoring the JSON and calculates the landfall time based on the first on land point (NaturalEarth continent shape)~ Actually it's getting storms based on the nhc code (e.g. al022019)

https://github.com/oceanmodeling/ondemand-storm-workflow/blob/dd9019bfe0e90ec18e19c47c9a4be2921a29eb8c/singularity/info/files/hurricane_data.py#L64-L79

So as mentioned in the earlier comment, in storms with multiple landfalls, the first landfall is picked up for lead time. https://github.com/oceanmodeling/ondemand-storm-workflow/blob/dd9019bfe0e90ec18e19c47c9a4be2921a29eb8c/singularity/info/files/hurricane_data.py#L76-L77

SorooshMani-NOAA commented 8 months ago

Since we moved to predefined landfall times for the storms of interest, for now we can mark this as closed. Missing landfall times are still calculated the old way!