tropycal.recon.ReconDataset

class tropycal.recon.ReconDataset(storm)[source]

Creates an instance of a ReconDataset object containing all recon data for a single storm.

Parameters

storm (tropycal.tracks.Storm) – Requested Storm object.

Returns

ReconDataset – An instance of ReconDataset.

Notes

Warning

Recon data is currently only available from 1989 onwards.

ReconDataset and its subclasses (hdobs, dropsondes and vdms) consist the storm-centric part of the recon module, meaning that recon data is retrieved specifically for tropical cyclones, and all recon missions for the requested storm are additionally transformed to storm-centric coordinates. This differs from realtime recon functionality, which is mission-centric.

This storm-centric functionality allows for additional recon analysis and visualization functions, such as derived hovmollers and spatial maps for example. As of Tropycal v0.4, Recon data can only be retrieved for tropical cyclones, not for invests.

ReconDataset will contain nothing the first time it’s initialized, but contains methods to retrieve the three sub-classes of recon:

Class

Description

hdobs

Class containing all High Density Observations (HDOBs) for this Storm.

dropsondes

Class containing all dropsondes for this Storm.

vdms

Class containing all Vortex Data Messages (VDMs) for this Storm.

Each of these sub-classes can be initialized as a sub-class of ReconDataset as follows. Note that this may take some time, especially for storms with many recon missions.

#Retrieve Hurricane Michael (2018) from TrackDataset
basin = tracks.TrackDataset()
storm = basin.get_storm(('michael',2018))

#Retrieve all HDOBs for this storm
storm.recon.get_hdobs()

#Retrieve all dropsondes for this storm
storm.recon.get_dropsondes()

#Retrieve all VDMs for this storm
storm.recon.get_vdms()

Once this data has been read in, these subclasses and their associated methods and attributes can be accessed from within the recon object as follows, using HDOBs for example:

#Retrieve Pandas DataFrame of all HDOB observations
storm.recon.hdobs.data

#Plot all HDOB points
storm.recon.hdobs.plot_points()

#Plot derived hovmoller from HDOB points
storm.recon.hdobs.plot_hovmoller()

Individual missions can also be retrieved as Mission objects. For example, this code retrieves a Mission object for the second mission of this storm:

#This line prints all available mission IDs from this storm
print(storm.recon.find_mission())

#This line retrieves the 2nd mission from this storm
mission = storm.recon.get_mission(2)

Methods Summary

ReconDataset.find_mission([time, distance])

Returns the name of a mission or list of recon missions for this storm.

ReconDataset.get_dropsondes([data])

Retrieve dropsondes for this storm.

ReconDataset.get_hdobs([data])

Retrieve High Density Observations (HDOBs) for this storm.

ReconDataset.get_mission(number)

Retrieve a Mission object for a given mission number for this storm.

ReconDataset.get_track([time])

Retrieve coordinates of recon track for one or more times.

ReconDataset.get_vdms([data])

Retrieve Vortex Data Messages (VDMs) for this storm.

ReconDataset.plot_summary([mission, save_path])

Plot summary map of all recon data.

ReconDataset.update()

Update with the latest data for an ongoing storm.