StormR R package

June 24, 2026 ยท View on GitHub

Conda Version GitHub Release DOI codecov R-CMD-check Zenodo SWH

Overview

StormR is an R package allowing to easily extract storm track data for given locations or areas of interests, to generate wind speed and direction fields, and to compute summary statistics characterising the behaviour of winds generated by tropical storms and cyclones: maximum sustained wind speed, power dissipation index, and duration of exposure to winds reaching defined speed thresholds.

Usage

Installing StormR

StormR is available on CRAN. You can install it as follows:

install.packages("StormR")

The latest development version can be installed from GitHub as follows,

#install.packages("devtools")
devtools::install_github("umr-amap/StormR")

Alternatively, you can install StormR using conda / mamba. Check here for more info.

conda config --add channels conda-forge      # make sure you add conda-forge to your channel list
conda config --set channel_priority strict
conda install r-stormr    # or mamba install r-stormr

Loading StormR package

library(StormR)

Main functions

NameDescriptionInputsOutputs
defStormsDataset()Creates a stormsDataset object (1)".nc" (NetCDF) filestormsDataset object
defStormsList()Extracts storms (2)stormsDataset objectstormsList object
plotStorms()Plots storms track datastormsList object
temporalBehaviour()Computes wind speed, direction time series, and summary statistics for a given set of point coordinates (3)stormsList objectlist of data.frame objects
spatialBehaviour()Computes 2D wind fields and summary statistics over a given location of interest (3)stormsList objectSpatRaster object
plotBehaviour()Plots 2D wind fields and summary statistics (4)stormsList + SpatRaster objects
plotTemporal()Computes wind speed, direction time series, and summary statistics for a given set of point coordinatesstormsList & data.frame objects
computeTEW()Computes Topographic Exposure to Wind (TEW) for a given set of storms and a given location of interest (5)stormsList + "Digital Terrain Model" + SpatRaster or data.frame objectsSpatRaster object
plotTEW()Plots TEW fields (6)stormsList + SpatRaster
plotTemporalTEW()Plots TEW time series for a given set of point coordinates (6)data.frame coordinates + list of data.frame TEW
writeRast()Exports wind fields, TEW and summary statistics to file (4, 6)SpatRaster object.tiff or .nc file

Workflow

Workflow StormR

Simplified workflow and main functions of the StormR R package. External storm track database and Digital Terrain Model in grey, main functions in blue, and R objects created by the stormR functions in yellow. The numbers (1 to 6) indicate the suggested step-by-step workflow.

Contributing

You are welcome to contribute to the StormR package. Just fork the project and create a pull request with your changes and we will review it as soon as possible.

Reporting issues

Issues can be reported here. Simply choose the appropriate template and fill in the requested information.

Seeking help

If you need help with the StormR package, please open a new discussion on the Q&A section on github. We will do our best to answer your questions. Other users are also welcome to help you.

Funding

This work was supported by Hermon Slade Foundation, grant HSF 19105.