OpenQuake Engine 3.11.0
[Michele Simionato (@micheles)]
- Extended the
collapse_logic_tree
feature to scenarios and event based
calculations - Extended the taxonomy mapping feature to multiple loss types
- The error was not stored in the database if the calculation failed
before starting - Made ground_motion_fields=true mandatory in event_based_risk
[Robin Gee (@rcgee)]
- Added a check for missing
soil_intensities
in classical calculations
with site amplification
[Michele Simionato (@micheles)]
- Documented all the parameters in a job.ini file, and removed some
obsolete ones - Added a CSV exporter for the output
avg_gmf
- Fixed reporting in case of
CorrelationButNoInterIntraStdDevs
errors - Better error message when the rupture is far away from the sitesa
- Made the calculation report exportable with
--exports rst
- The boolean fields
vs30measured
andbackarc
where not cast correctly
when read from a CSV field (the engine read them always as True) - Extended
oq plot
to draw more than 2 plots - Raised an early error for zero probabilities in the hypocenter distribution
or the nodal plane distribution - Extended the autostart zmq distribution logic to celery and dask
- Stored the _poes during the classical phase and not after, to save time
- Implemented a memory-saving logic in the classical calculator based on
thememory.limit
parameter in openquake.cfg;
[Richard Styron (@cossatot)]
- Added TaperedGRMFD to hazardlib
[Michele Simionato (@micheles)]
- Fixed a wrong check failing in the case of multi-exposures with multiple
cost types - Removed a check causing a false error "Missing vulnerability function
for taxonomy" - Consequence functions associated to a taxonomy missing in the exposure
are now simply discarded, instead of raising an error - Added a warning when there are zero losses for nonzero GMFs
- Added a command
oq plot avg_gmf?imt=IMT
- Internal: stored
avg_gmf
as a DataFrame - Honored the
individual_curves
parameter in avg_losses, agg_losses and
and agg_curves (i.e. by default only expose the statistical results) - Refactored the
oq commands
and removed the redundantoq help
since
there isoq --help
instead - Support for input URLs associated to an input archive
- Introduced
deformation_component
parameter in the secondary perils - Optimized the storage of the risk model with a speedup of 60x
for a calculation with ~50,000 fragility functions (2 minutes->2seconds)
and a 3x reduction on disk space - Accepted aggregate_by=id in scenario/event based calculations
- Accepted aggregate_by=site_id in scenario/event based calculations
- Removed the generation of asset loss maps from event_based_risk
- Made the "Aggregate Losses" output in scenario_risk consistent with
event_based_risk and scenario_risk and supportedaggregate_by
- Perform the disaggregation checks before starting the classical part
- Changed the "Aggregate Loss Curves" CSV exporter to generate a file for
each realization, for consistency with the other exporters - The ebrisk outputs "Total Losses" and "Total Loss Curves" are now included
in the outputs "Aggregate Losses" and "Aggregate Curves" - Introduced an
agg_loss_table
dataset and optimized the generation of
aggregate loss curves (up to 100x speedup) - Removed misleading zero losses in agg_losses.csv
- Fixed
oq recompute_losses
and renamed it tooq reaggregate
- Bug fix: ignore_covs=true now sets the coefficient of variations to zero
[Anirudh Rao (@raoanirudh)]
- Improved error handling of bad or zero coefficients of variation
for the Beta distribution for vulnerability
[Michele Simionato (@micheles)]
- Fixed 32 bit rounding issues in scenario_risk: now the total losses and
and the sum of the average losses are much closer - Internal: made the loss type
occupants
a bit less special - Documented
oq to_nrml
[Claudia Mascandola (@mascandola)]
- Added the Lanzano et al. (2019) GMPE
[Michele Simionato (@micheles)]
- Honored
minimum_asset_loss
also in the fully aggregated loss table,
not only in the partially aggregated loss tables and average losses - Bug fixed: the log was disappearing in presence of an unrecognized
variable in the job.ini - Implemented
minimum_asset_loss
in scenario_risk for consistency
with theebrisk
calculator - Added a command
oq plot gridded_sources?
- Fixed
oq recompute_losses
to expose the outputs to the database - Fixed
oq engine --run --params
that was not working for
thepointsource_distance
- Changed the meaning of the
pointsource_distance
approximation
[Marco Pagani (@mmpagani), Michele Simionato (@micheles), Thomas Chartier (@tomchartier)]
- Added experimental version of KiteSource and KiteSurface
[Michele Simionato (@micheles)]
- Changed the serialization of ruptures to support MultiSurfaces
- Fixed a small bug of logic in the WebUI: if the authentication is
turned off, everyone must be able to see all calculations - Fixed a bug in the calculation of averages losses in scenario_risk
calculations in presence of sites with zero hazard - Optimized the prefiltering by using a KDTree
- Experimental: implemented gridding of point sources
- Reduced slow tasks due to big complex fault sources
- Moved the parameter
num_cores
into openquake.cfg - Internal: introduced the environment variable OQ_REDUCE
- Using pandas to export the GMF in CSV format
- Internal: required h5py == 2.10.0
- Internal: made the classical ruptures pandas-friendly
- Internal: made the damage distributions pandas-friendly
[Marco Pagani (@mmpagani)]
- Added a new type of undertainty for the seismic source characterisation
logic tree calledTruncatedGRFromSlipAbsolute
- Added a get_fault_surface_area method to sources
[Michele Simionato (@micheles)]
- Changed the source seed algorithm in event based calculations
- Added an estimate of the portfolio damage error due to the seed dependency
- Stored the damage distributions in a pandas-friendly way and extended
DataStore.read_df
to accept multi-indices
[Viktor Polak (@viktor76525)]
- Added the Phung et al. (2020) GMPE
[Michele Simionato (@micheles)]
- Implemented
truncGutenbergRichterMFD
from slip rate and rigidity - Fixed bug when computing the damage distributions per asset and event
- Simplified/optimized the UCERF filtering
[Viktor Polak (@viktor76525)]
- Added the Chao et al. (2020) GMPE
[Michele Simionato (@micheles)]
- Introduced an early memory check in classical calculations
- Reduced the memory occupation in classical calculations
- Implemented AvgPoeGMPE
- Forbidded the usage of
aggregate_by
except in ebrisk calculations - Added a check on valid branch ID names: only letters, digits and
the characters "#:-_." are accepted - Huge performance improvement for very complex logic trees
- Shortened the logic tree paths when exporting the realizations
[Graeme Weatherill (@g-weatherill)]
- Refactor of the Kotha et al. (2020) GMM and its adjustments for ESHM20
[Michele Simionato (@micheles)]
- Huge speedup in models with src_multiplicity > 1
- Fixed bug in source model logic tree sampling with more than 2 branchsets
- Fixed hazard maps all zeros for individual_curves=true and more than 1 site
- Fixed a bug in
oq prepare_site_model
when sites.csv is
the same as the vs30.csv file and there is a grid spacing - Speeding up the preclassical calculator
- Added an entry point /extract/eids_by_gsim for the QGIS plugin
- Internal: automatically convert the source IDs into unique IDs
- Changed scenario calculations to depend on the
ses_seed
, not the
random_seed
- Added check on the versions of numpy, scipy and pandas between master and
workers - Added a check for large seed dependency in the GMFs and an estimate of the
portfolio error due to the seed dependency
[Viktor Polak (@viktor76525)]
- Added fpeak site parameter
- Added the Hassani and Atkinson (2020) GMPE
[Marco Pagani (@mmpagani)]
- Added a check on DEFINED_FOR_REFERENCE_VELOCITY when using amplification
- Added a method to create a TruncatedGRMFD from a value of scalar seismic
moment - Added a method to the modifiable GMPE to add (or subtract) a delta std
- Added a method to the modifiable GMPE to set the total std as the sum of
tau plus a delta