v3.3.0
Dependency Changes
new:
- sparse (>=0.13) for #578
updated:
- python 3.9 - python 3.8 will still work, but python 3.9 is now the default version for installing climada (#614)
- contextily >=1.0 (no longer restricted to <1.2 as
contextily.sources
has been replaced in #517) - cartopy >=0.20.0,<0.20.3 (>=0.20.3 has an issue with geographic crs in plots)
- matplotlib >=3.2,<3.6 (3.6 depends on cartopy 0.21)
Added
climada.hazard.Hazard.from_xarray_raster(_file)
class methods for readingHazard
objects from anxarray.Dataset
, or from a file that can be read byxarray
.
#507, #589, #652.climada.engine.impact.Impact
objects have new methodsfrom_hdf5
andwrite_hdf5
for reading their data from, and writing it to, H5 files #606climada.engine.impact.Impact
objects has a new class methodconcat
for concatenation of impacts based on the same exposures #529.climada.engine.impact_calc
: this module was separated fromclimada.engine.impact
and contains the code that dealing with impact calculation while the latter focuses on impact data #560.- The classes
Hazard
,Impact
andImpactFreqCurve
have a novel attributefrequency_unit
. Before it was implicitly set to annual, now it can be specified and accordingly displayed in plots.
#532. - CONTRIBUTING.md #518.
- Changelog based on the CLIMADA release overview and https://keepachangelog.com template #626.
Changed
- The
Impact
calculation underwent a major refactoring. Now the suggested way to run an impact calculation is byclimada.engine.impact_calc.ImpactCalc.impact()
. #436, #527. - Addition of uncertainty helper methods variables: list of hazard, list of impact function sets, and hazard fraction. This allows to pre-compute hazards or impact function sets from different sources from which one can then sample uniformly. #513
- Full initialization of most Climada objects is now possible (and suggested!) in one step, by simply calling the constructor with all arguments required for coherently filling the object with data: #560, #553, #550, #564, #563, #565, #573, #569, #570, #574, #559, #571, #549, #567, #568, #562.
- It is possible now to set the
fraction
of aHazard
object toNone
which will have the same effect as if it were1
everywhere. This saves a lot of memory and calculation time, #541. - The online documentation has been completely overhauled: #597, #600, #609, #620, #615, #617, #622, #656.
- Updated installation instructions #644
Fixed
- several antimeridian issues: #524, #551, #613.
- bug in
climada.hazard.Centroids.set_on_land()
when coordinates go around the globe: #542, #543. - bug in
climada.util.coordinates.get_country_code()
when all coordinates are on sea. - suppress pointless warnings in plotting functions, #520.
- test coverage improved: #583, #594, #608, #616, #637.
- deprecated features removed: #517, #535,#566,
Deprecated
climada.enginge.impact.Impact.calc()
andclimada.enginge.impact.Impact.calc_impact_yearset()
, #436.