Skip to content

v0.16.0

Compare
Choose a tag to compare
@github-actions github-actions released this 03 Jan 21:06
· 116 commits to main since this release

Release Notes

New Features

  • Add a new function called get_map_vrt for getting DEM within a bounding box and saving it as a VRT file. This function has low memory usage and is useful for cases where the DEM is needed for a large area. Moreover, even for usual use cases it can be much faster than get_dem since it loads the data lazily, at the cost of higher disk usage.
  • In the get_map function, check if the input geometry is within the bounds of the 3DEP's WMS service and if not, raise an exception.
  • In the fill_depressions function add a new argument called outlets for specifying outlet detection method: At the edge of all cells (edge) or only the minimum elevation edge cell (min; default).
  • Significantly improve the performance of check_3dep_availability function by minimizng the number of requests to the service and sending all requests asynchronously. Also, the returned dict now uses Failed for those resolutions where the service fails to return a valid response. It will remove the failed responses from the cache, so next time the function is called, it will try to get only the failed resolutions.
  • Add four new options to add_elevation: mask for passing a mask and resolution for specifying the resolution of the source DEM, and x_dim and y_dim for passing the names of spatial dimensions in the input dataset. The mask option is useful for cases where the input xarray.DataArray or xarray.Dataset has a mask and the user wants to use that mask for the elevation data as well. The resolution option is useful for cases where the user wants to get the elevation data at a higher resolution that will be downsampled by bilinear interpolation to the resolution of the input xarray.DataArray or xarray.Dataset. The default is resolution=None which means the resolution of the input xarray.DataArray or xarray.Dataset will be used. The x_dim and y_dim options are useful for cases where the input xarray.DataArray or xarray.Dataset has different names for spatial dimensions than x and y. The default is x_dim="x" and y_dim="y".

Breaking Changes

  • In the elevation_profile function remove the res argument and use 10-m resolution DEM from 3DEP. Also, add two new attributes to the output xarray.Dataset: source for the dataset to state the data source used and units for the distance variable to state the units of the distance, which is meters.

Internal Changes

  • Improve initial load time by moving import pyflwdir to the fill_depressions function.

Bug Fixes

  • Decrease the number of pixels per request from 10e6 to 8e6 to reduce the request load (65{.interpreted-text role="issue_3dep"}).