Recent Releases of HuracanPy

HuracanPy - v1.4.0

Added

  • huracanpy.info.beaufort_category
  • huracanpy.calc.corral_radius
  • Load SuperBT from github file
  • Load IBTrACS from a netCDF file
  • Allow huracanpy.load to load non-ragged netCDF files. Essentially just calls xarray.load without modification
  • Add optional keywords to huracanpy.save to allow them to be passed to pandas to_csv or xarray to_netcdf
  • Add option to assess.match to only match tracks if the number of matching points needed are consecutive
  • assess.match now uses calc.distance for the separation distance, so can use geodesic distance (as well as haversine)
  • info.timestep gives the best guess of timestep given a set of tracks
  • Centring options for delta-like functions (delta, rate, azimuth, distance, translation_speed)
    • centering="centre" - Centred difference, NaN at the start and end of tracks
    • centering="adaptive" - Centered difference. Forward difference at the start of tracks. Backward difference at the end of tracks
  • Basin definitions from Knutson et al. (2020) ("Knutson2020")
  • Add spherical option to calc.density. Divides by area of gridboxes for method="histogram" and implements haversine weighting with scikit-learn for method="kde"
  • Add info.landfall_points which returns each point where a track crosses a coastline
  • New module convert and function convert.to_geodataframe to convert tracks to a geodataframe of points or linestrings (if track_id is given)
  • tc.pressure_wind_relation to get/apply the model for a pressure wind relation without having to use tc.pace. The return model is als wrapped so that the fitting and predicting of the model uses units.
  • plot.pressure_wind_relation
  • tc.saffir_simpson_category has the option to use thresholds for 10-minute or 1-minute sustained winds. Previously it was only 10-minute by default
  • Optional mean distance (instead of default maximum distance) when matching tracks with assess.match

Changed

  • Speed up huracanpy.save for netCDF files
  • Remove NaN only variables when loading online IBTrACS data.
  • Add a cyclic point when using plot.density so that the dateline doesn't show up as empty
  • huracanpy.calc.apex_vals always gives the first point when there a multiple minima/maxima with the same values. Consistent with the behaviour of argmin/argmax

Fixed

  • -180 and 180 no longer treated as different longitudes. -180 is always used instead
  • When a point is exactly on the boundary of basin, give the first basin in the list rather than no basin

Climate Change - Natural Hazard and Storms - Python
Published by leosaffin about 1 month ago

HuracanPy - v1.3.1

Fixed

  • calc.density with crop=True will only crop the region outside of where there are tracks rather than all empty longitudes/latitudes

Climate Change - Natural Hazard and Storms - Python
Published by leosaffin 6 months ago

HuracanPy - V1.3.0

Added

  • Include missing accessor functions
    • get_beta_drift and add_beta_drift
    • plot_fancyline
  • plot.tracks and plot.density can be placed on existing axes if they are explicitly passed to the function
  • Load tracks from the Imperial College Storm Model (IRIS)
  • huracanpy.infer_track_id to generate a track ID from unique combinations of variables. e.g. "year" and "storm number in year".
    • Also add as an option to huracanpy.load
  • Can use huracanpy.load with a list of files
  • huracanpy.concat_tracks to concatenate tracks while keeping the track_id as a unique identifier

Changed

  • Reduced unnecessary warning messages
  • Always use var_name as the accessor keyword for choosing a specific variable. Previously some functions used varname

Fixed

  • Consistent use of track_id in delta calculations
  • Correctly convert units in category functions
  • Always do the beta_drift calculation with wind speed in metres per second
  • Allow requesting other time components than year/month/day/hour from add_time_components, consistent with info.time_components
  • get_azimuth was calling the wrong function
  • Correctly use wind in "knots" and pressure in "hPa" when using pre-calculated pressure-wind relations ("holland", "z2021") in tc.pace
  • Use a lower precision datetime64 when times are outside the default representable range

Climate Change - Natural Hazard and Storms - Python
Published by stella-bourdin 12 months ago

HuracanPy - v1.2.0

What's Changed

Full Changelog: https://github.com/Huracan-project/huracanpy/compare/v1.2.0-beta1...v1.2.0

Climate Change - Natural Hazard and Storms - Python
Published by leosaffin about 1 year ago

HuracanPy - v1.2.0-beta1

What's Changed

Manage TRACK files with timesteps instead of dates by @stella-bourdin in https://github.com/Huracan-project/huracanpy/pull/88
Add "Old HURAT"/ECMWF track data reader by @stella-bourdin in https://github.com/Huracan-project/huracanpy/pull/89
Update doc with old HURDAT/ECMWF by @stella-bourdin in https://github.com/Huracan-project/huracanpy/pull/90
Add function to compute azimuth by @stella-bourdin in https://github.com/Huracan-project/huracanpy/pull/91
Testing for v1.2 by @leosaffin in https://github.com/Huracan-project/huracanpy/pull/93
Update python version by @leosaffin in https://github.com/Huracan-project/huracanpy/pull/94

Full Changelog: https://github.com/Huracan-project/huracanpy/compare/v1.2.0-beta...v1.2.0-beta1

Climate Change - Natural Hazard and Storms - Python
Published by stella-bourdin over 1 year ago

HuracanPy - v1.2.0-beta

What's Changed

Full Changelog: https://github.com/Huracan-project/huracanpy/compare/v1.1.0...v1.2.0-beta

Climate Change - Natural Hazard and Storms - Python
Published by stella-bourdin over 1 year ago

HuracanPy - v1.1.0

Added

Support for WiTRACK text files in huracanpy.load
Beta-drift computation (along with RMW support within distance function)
Full documentation incuding new examples
kde option for densities
Reference track set option for matching
Basin definitions from E. Sainsbury's papers

Fixes

Accessor was not behaving in the right way when the object was modified after the accessor's first call;
Allow for ISO time to be called "isotime" in csv/parquet

Climate Change - Natural Hazard and Storms - Python
Published by stella-bourdin over 1 year ago

HuracanPy - Version 1.0.0

Added

  • xarray Dataset accessor (hrcn)
  • Extra keyword arguments to huracanpy.load
    • rename
    • units
    • baselon
  • sel_id function to select a single track by track_id from a Dataset but faster than using groupby

Changed

  • Simplified module namespaces
    • utils.{module}.{function} -> info.{function}
    • diags.{module}.{function} -> calc.{function} or tc.{function}
    • subset.trackswhere -> trackswhere
  • Simplified function naming
    • plot_ prefix removed functions in plot module
  • Modified arguments to load
    • keyword tracker renamed source to reflect not all tracks are from trackers, e.g. IBTrACS or statistical-dynamical downscaling models
    • Use ibtracs_subset to determine whether the subset is online or not, removing ibtracs_online keyword
    • When filename is specified for an online IBTrACS dataset, save the downloaded data to that file, rather than using ibtracs_clean=False and a default filename
  • Use a single matching function assess.match for 2 or more datasets instead of assess.match_pair and assess.match_multiple
  • Remove get_ from functions in info. Instead this syntax is used to differentiate get_ and add_ functions in the hrcn accessor
  • Split info.get_land_or_ocean into is_land and is_ocean
  • Renamed tc.sshs_cat to tc.saffir_simpson_category and tc.pres_cat to tc.pressure_category
  • Improved support for calculations with units (using metpy style functions)
  • Updated IBTrACS data

Removed

  • add_info argument from huracanpy.load
  • add_all_info function. Instead use add_ functions on hrcn accessor
  • get_time. Functionality already covered by pandas.to_datetime

Fixed

  • huracanpy.info.season now works with cftime.datetime

Climate Change - Natural Hazard and Storms - Python
Published by leosaffin over 1 year ago

HuracanPy - Improvements

  • New loaders: CHAZ, MIT, parquet
  • Climatological functions: frequency, TC days, ACE
  • Rate computation
  • Donut plots
  • Bug fixes, new minor features, acceleration, documentation

Climate Change - Natural Hazard and Storms - Python
Published by stella-bourdin over 1 year ago

HuracanPy - First beta with a few bug fixes

Add utils wrapper
Fix few bugs
Increase documentation

Climate Change - Natural Hazard and Storms - Python
Published by stella-bourdin almost 2 years ago

HuracanPy - First beta release

This version of HuracanPy is meant for beta-testing of the very first version of the package. It has all the basic features, but has not been tested outside the development team.

Climate Change - Natural Hazard and Storms - Python
Published by stella-bourdin almost 2 years ago