Hurricane Tracks Download

259 views
Skip to first unread message

Ram Krishna Mazumder

unread,
Jan 22, 2021, 2:58:01 PM1/22/21
to IBTrACS Q&A
Hi,
I want to download historical Hurricane tracks shapefiles for a specific area (Onslow County, NC). I want to obtain all the historical tracks available within 50/100 mi of distance from the county. Although I can visualize from NOAA website here Link but can't download them. Can anyone help me with this. Thanks

Ken Knapp - NOAA Federal

unread,
Jan 22, 2021, 3:25:06 PM1/22/21
to Ram Krishna Mazumder, IBTrACS Q&A
At present, it isn't possible to do what you ask. While you can select and idntify specific storms from the historic hurricane track mapper there is no way to directly use that information when downloading IBTrACS.
Thanks for your interest-
-Ken

On Fri, Jan 22, 2021 at 2:58 PM Ram Krishna Mazumder <rkmaz...@gmail.com> wrote:
Hi,
I want to download historical Hurricane tracks shapefiles for a specific area (Onslow County, NC). I want to obtain all the historical tracks available within 50/100 mi of distance from the county. Although I can visualize from NOAA website here Link but can't download them. Can anyone help me with this. Thanks

--
You received this message because you are subscribed to the Google Groups "IBTrACS Q&A" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ibtracs-qa+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ibtracs-qa/b73d6058-f740-4dbe-9a64-bd4de414109fn%40googlegroups.com.


--
Ken Knapp,
Climatic Science and Development Branch Chief
NOAA National Centers for Environmental Information

Disclaimer: The opinions expressed in this email are those of the author. They do not necessarily reflect the official views or policies of NOAA, Department of Commerce, or the US Government.

Ram Krishna Mazumder

unread,
Jan 22, 2021, 4:06:34 PM1/22/21
to IBTrACS Q&A
Thank you, Ken!
Got it, I will identify and list them manually.

Prof Simon Tett

unread,
Jan 22, 2021, 4:22:37 PM1/22/21
to Ram Krishna Mazumder, IBTrACS Q&A
I did a similar analysis when I wanted to find all TC/TCs within 500 km of Socotra. The trick is to compute the great circle distance from the central point and then select out the cases which are within your target distance. Easy if you use pandas!

Simon

Ram Krishna Mazumder

unread,
Jan 22, 2021, 4:27:48 PM1/22/21
to IBTrACS Q&A
Thank you, Prof Tett! I use pandas. But I am not sure how to execute that. Would you mind to tell a bit detail about this?

Prof Simon Tett

unread,
Jan 23, 2021, 10:05:08 AM1/23/21
to Ram Krishna Mazumder, IBTrACS Q&A
Here you are -- code below  works out dates when there were TCs or TSs within 500 km of the Island of Socotra
Simon
-------------------

def gc_distance(lat1, long1, lat2, long2,earth_radius=None):
"""
Compute great circle distance between a two sets of points on the Earth (or any other near-spherical object)
from https://www.johndcook.com/blog/python_longitude_latitude/ and converted to use numpy.
:param lat1: first latitude -- a float or a numpy array. Should be in degrees
:param long1: first longitude -- a float or a numpy array. Should be in degrees
:param lat2: second latitude -- a float or a numpy array. Should be in degrees
:param long2: second longitude -- a float or a numpy array. Should be in degrees
:param earth_radius: raidus of Earth in m. Default is None which uses 6371 km.
Distance is computed between (lat1,long1) & (lat2,long2). If using numpy broadcasting should handle sizes sensibly...
"""
if earth_radius is None:
radius = 6371e3 # mean radius of the earth for WGS74 -- see https://en.wikipedia.org/wiki/World_Geodetic_System
else:
radius = earth_radius
degrees_to_radians = np.pi/180.0

# phi = 90 - latitude
phi1 = (90.0 - lat1)*degrees_to_radians
phi2 = (90.0 - lat2)*degrees_to_radians

# theta = longitude
theta1 = long1*degrees_to_radians
theta2 = long2*degrees_to_radians

# Compute spherical distance from spherical coordinates.
# For two locations in spherical coordinates
# (1, theta, phi) and (1, theta', phi')
# cosine( arc length ) = sin phi sin phi' cos(theta-theta') + cos phi cos phi'
# distance = rho * arc length

cos = (np.sin(phi1)*np.sin(phi2)*np.cos(theta1 - theta2) +
np.cos(phi1)*np.cos(phi2))
arc = np.arccos( cos )
return arc*radius # convert from radians to m

# get in the hurricane track info.
tc_ni = pd.read_csv('data/ibtracs.NI.list.v04r00.csv',header=0,index_col=['SID','ISO_TIME'],skiprows=[1],
parse_dates=['ISO_TIME'],cache_dates=True,skipinitialspace=True)
# read the North Indian IBTrACS (version 4 data) -- got from#:
# https://www.ncdc.noaa.gov/ibtracs/index.php..
# find cyclones "near" Socotra
near_dist = 500e3 # within 500 km.
gc = gc_distance(tc_ni.LAT,tc_ni.LON,
socrotaLib.socrota_centre['latitude'],socrotaLib.socrota_centre['longitude'])
near_soc = (gc < near_dist) & (tc_ni.USA_SSHS >= 0) # an actual cyclone or tropical storm.
cyclone_dates = np.unique(near_soc[near_soc].index.get_level_values('ISO_TIME').normalize())

Ram Krishna Mazumder

unread,
Feb 13, 2021, 12:09:56 AM2/13/21
to IBTrACS Q&A
Hi Prof. Tett,

Apology for the delayed response. Thank you a lot.I leftover to send you a message. It worked. 
However,  I didn't able to get other information (e.g. category, name). I able to extract it from the NOAA website to csv.
Have a good weekend.
Reply all
Reply to author
Forward
0 new messages