Skip to content

Releases: gem/oq-engine

OpenQuake Engine 3.10.1

18 Oct 21:09
Compare
Choose a tag to compare

[Matteo Nastasi (@nastasi-oq)]

  • Add info to doc about OpenQuake manual path for linux and mac installers

[Laurentiu Danciu (@danciul) and Athanasios Papadopoulos]

  • Implemented intensity prediction equations for use in the Swiss Risk Model.
    The new IPEs refer to models obtained from the ECOS (2009), Faccioli and
    Cauzzi (2006), Bindi et al. (2011), and Baumont et al. (2018) studies.
  • Added new float site parameter 'amplfactor'
  • Extended the ModifiableGMPE class to allow amplification of the
    intensity of the parent IPE based on the ‘amplfactor’ site parameter

[Anirudh Rao (@raoanirudh)]

  • Fixed the glossary in the manual

[Michele Simionato (@micheles)]

  • Avoided storing too much performance_data when pointsource_distance is on
  • Fixed performance regression in classical_risk, classical_damage,
    classical_bcr
  • Fixed oq engine --run job.ini for ShakeMap calculations

OpenQuake Engine 3.10.0

29 Sep 14:32
Compare
Choose a tag to compare

[Richard Styron (@cossatot)]

  • Added secondary perils ZhuLiquefactionGeneral and HazusLateralSpreading,
    supplementing HazusLiquefaction and NewmarkDisplacement

[Michele Simionato (@micheles)]

  • Fixed a bug with site models containing non-float parameters
  • Raised the limit on the asset ID from 20 to 50 characters
  • Changed the /extract/events API to extract only the relevant events
  • Removed the GMF npz exporter
  • Speed-up risk saving in scenario_risk and scenario_damage

[Antonio Ettorre (@vot4anto)]

  • Bumped GDAL to version 3.1.2

[Michele Simionato (@micheles)]

  • Optimized scenario_damage for the case of many sites
  • Implemented secondary perils
  • Fixed a 32 bit/64 bit bug in oq prepare_site_model when sites.csv is
    the same as the vs30.csv file
  • Parallelized by GSIM when there is a single rupture

[Francis Bernales (@ftbernales)]

  • Added the Stewart et al. (2016) GMPE
  • Added the Bozorgnia & Campbell (2016) GMPE
  • Added the Gulerce et al. (2017) GMPE

[Michele Simionato (@micheles)]

  • Unified source model logic tree sampling with gsim logic tree sampling
  • Added early_latin and late_latin sampling algorithms
  • Changed the logic tree sampling algorithm and made it possible to use
    both early_weights and late_weights
  • Restored magnitude-dependent maximum distance
  • Displaying the hazard maps in the WebUI for debugging purposes
  • Used the hazard map to get the disaggregation IML from the disaggregation
    PoE and added a warning for zero hazard
  • Internal: implemented multi-run functionality (oq engine --multi --run)
  • Reduced tremendously the data transfer in disaggregation calculations
  • Internal: introduced compress/decompress utilities
  • Reduced the memory and disk space occupation in classical calculations with
    few sites; also changed slightly the rupture collapsing mechanism
  • In disaggregation, force poes_disagg == poes
  • Fixed multi-site disaggregation: ruptures far away were not discarded,
    just considered distant 9999 km

[Marco Pagani (@mmpagani)]

  • Added a prototype implementation of the kernel method

[Michele Simionato (@micheles)]

  • Added zipcode site parameter
  • Added command oq renumber_sm ssmLT.xml

[Robin Gee (@rcgee)]

  • Set DEFINED_FOR_REFERENCE_VELOCITY for GMPEs modified for Switzerland

[Michele Simionato (@micheles)]

  • Added parameter max_num_loss_curves to the job.ini file
  • Changed oq engine --reuse-hazard to just reuse the source model, if
    possible
  • Added command oq recompute_losses <calc_id> <aggregate_by>
  • Fixed noDamageLimit, minIML, maxIML not being honored in continuous
    fragility functions
  • Unified the scenario calculator with the event based one, with
    minor differences in the numbers akin to a change of seed
  • Fixed a bug in event based when a rupture occurs more than 65535 times
  • Added a demo EventBasedDamage
  • Fixed bug in event_based_damage: the number of buildings in no damage
    state was incorrect
  • Added commands oq nrml_to csv and oq nrml_to gpkg
  • Supported year and ses_id >= 65536 in event based

[Graeme Weatherill (@g-weatherill)]

  • Implements a heteroskedastic standard deviation model for the Kotha et al.
    (2020) GMPE

[Michele Simionato (@micheles)]

  • Called check_complex_fault when serializing the source in XML
  • Restored scenario_damage with fractional asset number
  • Added a view oq extract disagg_by_src
  • Fixed error with large ShakeMap calculations ('events' not found)
  • Raised an error when using disagg_by_src with too many point sources
  • The minimum_magnitude parameter was incorrectly ignored in UCERF

[Iason Grigoratos (@jasongrig)]

  • Implemented the Zalachoris & Rathje (2019) GMM

[Michele Simionato (@micheles)]

  • Optimized the disaggregation outputs, saving storage time

[Graeme Weatherill (@g-weatherill)]

  • Adds PGV coefficients to USGS CEUS GMPE tables (where applicable)

[Michele Simionato (@micheles)]

  • Removed the disagg_by_src exporter
  • Internal: added filtering features to the datastore
  • Calculations with a number of levels non-homogenous across IMTs are
    now an error
  • Implemented rupture collapsing in disaggregation (off by default)
  • Fixed a bug in the dmg_by_event exporter: the damage distributions could
    be associated to the wrong GMPE in some cases
  • Solved a bug with nonparametric ruptures: due to rounding errors,
    the disaggregation matrix could contain (small) negative probabilities
  • Extended the scenario calculators to compute the statistical outputs
    if there is more than one GMPE
  • Fixed the formula used for the avg_damages-rlzs outputs in event based
    damage calculations
  • Raised an error if investigation_time is set in scenario calculations

[Graeme Weatherill (@g-weatherill)]

  • Fixed a bug in the mixture model application when running multiple GMPEs

[Michele Simionato (@micheles)]

  • Replaced outputs losses_by_asset with avg_losses-rlzs, and
    dmg_by_asset with ``avg_damages-rlzs`, for consistency with the
    event based outputs
  • Extended the /extract/ API to manage JSON and removed the oqparam API
  • Added a check on ebrisk to avoid generating too many loss curves
  • Introduced an output "Source Loss Table" for event based risk calculations
  • Raised an early error when max_sites_disagg is below the number of
    sites in disaggregation calculations
  • Extended the amplification framework to use different intensity levels
    for different amplification functions
  • Optimized the disaggregation in the case of multiple realizations
  • Fixed bug in GMF amplification without intensity_measure_types_and_levels
  • Optimized the computation of the disaggregation PMFs by orders of magnitude
    by using numpy.prod
  • Changed the disaggregation calculator to distribute by magnitude bin,
    thus reducing a lot the data transfer
  • Vectorized the disaggregation formula
  • Do not perform the disaggregation by epsilon when not required
  • Introduced management of uncertainty in the GMF amplifi
  • Changed the disaggregation calculator to distribute by IMT, thus reducing
    a lot the data transfer in calculations with many IMTs
  • Changed /extract/disagg_layer to produce a single big layer
  • Changed the binning algorithm for lon, lat in disaggregation, to make
    sure that the number of bins is homogeneous across sites

[Marco Pagani (@mmpagani)]

  • Fixed a bug in the ParseNDKtoGCMT parser + updated tests.
  • Ported the method serialise_to_hmtk_csv implemented in the corresponding
    class of the catalogue toolkit + added a test into the GCMTCatalogue class.
  • Added a modifiable GMPE using the site term of CY14.
  • Added a generalised modificable GMPE. This first version allows the
    definition of the epsilon of the within event residual.

[Michele Simionato (@micheles)]

  • Introduced a mixed XML+HDF5 format for gridded sources
  • Internal: added a check on gridded sources: the arrays prob_occurs must
    have homogeneous length across ruptures
  • Removed the dependency from PyYAML, replaced the .yml files in the HMTK with
    .toml files and added an utility utils/yaml2toml

OpenQuake Engine 3.9.0

27 Apr 15:44
Compare
Choose a tag to compare

[Michele Simionato (@micheles)]

  • Fixed a type error in the command oq engine --run --params
  • Restored the flag split_sources for testing purposes
  • Fixed a BOM bug in CSV exposures
  • When exporting the loss curves per asset now we also export the loss ratio
    and the inverse return period, for consistency with the other exporters
  • Fixed the exporter of the loss curves per asset: due to an ordering bug
    in some cases it was exporting wrong losses
  • Added a flag save_disk_space to avoid storing the inputs
  • Changed the logic underlying the pointsource_distance approximation and
    added the syntax pointsource_distance=?
  • Logged a warning when the pointsource_distance is too small

[Graeme Weatherill (@g-weatherill)]

  • Implemented Pitilakis et al. (2020) Site Amplification Model

[Michele Simionato (@micheles)]

  • Fixed an export bug with modal_damage_state=true in scenario_damage
    calculations
  • Fixed a bug in calc_hazard_curves with multiple TRTs
  • Fixed how AvgGMPE was stored and made it applicable with correlation models
    if all underlying GMPEs are such

[Paolo Tormene (@ptormene)]

  • Added a second tectonic region type to the EventBasedPSHA demo

[Michele Simionato (@micheles)]

  • Fixed an ordering bug in /extract/rupture_info affecting the QGIS plugin
  • Fixed oq engine --eo output_id output_dir for the Full Report output
  • Added year and ses_id to the events table
  • Removed NaNs in the low return period part of the loss curves
  • Fixed the tot_curves and tot_losses exporters in ebrisk calculations
  • Reduced the rupture storage in classical calculations by using compression
  • Improved the task distribution in the classical calculator, avoiding
    generating too few or too many tasks
  • Enhanced oq check_input to check complex fault geometries
  • Added a warning against magnitude-dependent maximum_distance

[Marco Pagani (@mmpagani)]

  • Fixed a bug in the coeff table of YEA97

[Graeme Weatherill (@g-weatherill)]

  • Implemented support for Gaussian Mixture Model approach to characterise
    ground motion model uncertainty

[Michele Simionato (@micheles)]

  • Enhanced oq reduce_sm to read the source models in parallel
  • Deprecated the usage of a different number of intensity levels per IMT

[Matteo Nastasi (@nastasi-oq)]

  • Internal: added 'oq-taxonomy' to docker images

[Michele Simionato (@micheles)]

  • Extended the pointsource_distance approximation to work on single site
    calculations, with a spectacular performance benefit in most calculations
  • Added Bindi2011, Bindi2014 and Cauzzi2014 scaled GMPEs contributed by
    the INGV
  • Added a check on classical calculations which are too large to run
  • Added a parameter collapse_level and a new collapsing algorithm
  • Added a check for missing TRTs in the GSIM logic tree file
  • Reduced the storage required for site specific calculations
    with complex logic trees by removing duplicated ruptures
  • Restored the computation of the mean disaggregation when multiple
    realizations are requested
  • Slightly changed the syntax of oq info (see oq info --help) and added
    information about the available IMTs, MFDs and source classes
  • Optimized get_composite_source_model (in the case of a complex source
    specific logic trees a speedup of 80x was measured)
  • Internal: fixed oq info source_model_logic_tree.xml
  • Avoided reading multiple times the source models in the case of complex
    logic trees
  • Moved the check on invalid TRTs earlier, before processing the source models
  • Removed the ucerf_classical calculator (just use the classical one)

[Paolo Tormene (@ptormene)]

  • Added a warning in oq reduce_sm listing duplicate source IDs

[Michele Simionato (@micheles)]

  • Improved oq reduce_sm to reduce also duplicated source IDs if they
    belong to different source types
  • Removed the ucerf_hazard calculator (just use the event_based one)
  • Changed the seed algorithm in all event based calculators including UCERF
  • Fixed the ShakeMap code to use the formula for the median and not the mean
  • Added a check on excessive data transfer in disaggregation calculations
  • Changed back the disaggregation calculator to read the rupture data from
    the workers, thus saving a lot of memory and time
  • Fixed a bug that made it impossible to abort/remove a failed task
  • Added extendModel feature to the source model logic tree parser

[Graeme Weatherill (@g-weatherill)]

  • Fixed bug in the HMTK: the bin_width parameter was not passed to
    mtkActiveFaultModel.build_fault_model

[Michele Simionato (@micheles)]

  • Avoided submitting too many tasks in the disaggregation calculator
  • Added a parameter discard_trts for manual reduction of GSIM logic tree
  • Fixed a bug in case of duplicated nodal planes affecting the Italy model
  • Removed dynamic reduction of the GSIM logic tree (i.e. now the
    logic tree is known upfront, before calculating the PoES)

[Paolo Tormene (@ptormene)]

  • Fixed an encoding issue in reading configuration files on Windows

[Michele Simionato (@micheles)]

  • Internal: started the zmq workers when the DbServer starts
  • Fixed a bug when reading rupture.txt files
  • Internal: added an option --calc-id to oq run
  • Added a check against negative number of cores in openquake.cfg
  • Raised a clear error message if the enlarged bounding box of the sources
    does not contain any site or if it is larger than half the globe

[Kendra Johnson (@kejohnso)]

  • Correction to catalogue plotting tool in hmtk to include the last bins
    in density plots

[Paolo Tormene (@ptormene)]

  • Added Classical PSHA Non-parametric sources Demo

[Robin Gee (@rcgee)]

  • Change the header of the exported sigma_epsilon_XX.csv file to indicate
    that values correspond to inter event sigma

[Graeme Weatherill (@g-weatherill)]

  • Adds independent verification tables for the USGS CEUS models and revises
    implementation for collapsed epistemic uncertainty on sigma and site
    amplification
  • Enhances SERA adaptation of the Abrahamson et al. (2015) BC Hydro GMPE to
    add in a configurable smoothed tapering term on the forearc/backarc scaling

[Michele Simionato (@micheles)]

  • Added a check on the engine version between master and workers

[Paolo Tormene (@ptormene)]

  • Removed the multi_node flag, that is not used anymore

[Michele Simionato (@micheles)]

  • Added a command oq postzip to send small calculations to the WebUI
  • Added a limit of 1000 sources when disagg_by_src=true
  • Internal: fixed oq export input -e zip that was flattening the tree
    structure of the input files in the exported zip archive
  • Implemented GMFs amplification
  • Introduced the flag approx_ddd to support the old algorithm in
    scenario_damage calculations; it is automatically used for exposures
    with fractional asset numbers

[Paolo Tormene (@ptormene)]

  • Modified the server views in order to allow using
    numpy.load(allow_pickle=False) in the QGIS IRMT plugin
  • Internal: changed some copy.deepcopy calls into copy.copy in hazardlib

[Michele Simionato (@micheles)]

  • Removed implicit intensity_measure_types_and_levels
  • Added a check to forbid case-similar headers in the exposures
  • Improved the error message in case of CSV exposures with wrong headers
  • Reduced the slow tasks issue in event_based/ebrisk with many sites
  • Enhanced oq compare to accept a file with the control sites
  • Improved the error message for duplicate sites
  • Speedup of the ebrisk calculator
  • Extended the minimum_intensity feature to the classical calculator
  • Solved a memory bug when using the nrcan site term: due to a deepcopy
    the engine could run out of memory in the workers for large site collections
  • Added a check to forbid multiple complexFaultGeometry nodes
  • Internal: we are now shutting down the ProcessPool explicitly in order
    to support Python 3.8
  • Internal: removed the class hazardlib.gsim.base.IPE
  • Changed the aggregate loss curves generation to not use the partial
    asset loss table, with a huge memory reduction
  • Extended oq check_input to accept multiple files
  • Changed the scenario damage calculator to use discrete damage distributions
  • Forced the "number" attribute in the exposure must be an integer in the
    range 1..65535, extrema included

OpenQuake Engine 3.8.1

12 Feb 13:19
Compare
Choose a tag to compare

[Michele Simionato (@micheles)]

  • Fixed random HDF5 bug in disaggregation calculations
  • Fixed memory issue in nrcan15_site_term.p
  • Fixed get_duplicates check in the SiteCollection
  • Fixed bug in case of MMI (log(imls) -> imls)

OpenQuake Engine 3.8.0

20 Jan 12:36
Compare
Choose a tag to compare

[Graeme Weatherill (@g-weatherill)]

  • Updates SERA Craton GMPE to incorporate NGA East site response and reflect
    changes in CEUS USGS model

[Michele Simionato (@micheles)]

  • The total loss curves in event_based_risk are now built with pandas
  • Added an option oq engine --param to override the job.ini parameters
  • Internal: reduced the number of NGAEastUSGS classes from 39 to 1
  • Internal: reduced the number of NGAEast classes from 44 to 2
  • Internal: reduced the 15 NSHMP2014 classes to a single class
  • Internal: reduced the 22 NBCC2015_AA13 classes to a single class

[Graeme Weatherill (@g-weatherill)]

  • Adds complete suite of GMPEs for the Central and Eastern US, as adopted
    within the 2018 US National Seismic Hazard Map

  • Implements NGA East site amplification model within NGA East Base class

  • Implemented site amplification by convolution

  • Improved the error message if the event_id does not start from zero in
    the gmfs.csv files

  • Changed the rupture exporter to export LINESTRINGs instead of degenerate
    POLYGONs

  • Introduced minimum_loss_fraction functionality in ebrisk

  • Refined the rupture prefiltering mechanism, possibly changing the numbers
    in calculations with nonzero coefficients of variations

  • Optimized the generation of aggregate loss curves in ebrisk

  • Introduced an experimental AvgGMPE and used it to implement (optional)
    reduction of the gsim logic tree

[Graeme Weatherill (@g-weatherill)]

  • Implemented Abrahamson et al (2018) update of the BC Hydro GMPE
  • Added configurable nonergodic sigma option to BC Hydro and SERA GMPEs
  • Small refactoring and bug fix in average SA GMPE

[Michele Simionato (@micheles)]

  • Avoided reading multiple times the GSIM logic tree
  • Changed the GSIM logic tree sampling by ordering the branches by TRT
  • Ignored IMT-dependent weights when using sampling to make such calculations
    possible
  • Storing (partially) the asset loss table

[Robin Gee (@rcgee)]

  • Set DEFINED_FOR_REFERENCE_VELOCITY in CampbellBozorgnia2003NSHMP2007

[Graeme Weatherill (@g-weatherill)]

  • Re-adjustment of SERA Subduction model epistemic scaling factors

[Michele Simionato (@micheles)]

  • Improved the task distribution in the ebrisk calculator
  • Fixed a bug in ebrisk with aggregate_by when building the rup_loss_table
  • Storing the asset loss table in scenario_risk, but only for assets and
    events above over a loss_ratio_threshold parameter
  • Storing the asset damage table in scenario_damage and event based damage,
    but only for assets and events above a collapse_threshold parameter
  • Avoided transferring the GMFs upfront in scenario_damage, scenario_risk
    and event_based_damage

[Daniele Viganò (@daniviga)]

  • Included pandas in the engine distribution

[Michele Simionato (@micheles)]

  • Avoided reading multiple time the gsim logic tree file and relative files
  • Added a check for duplicate sites in the site model file
  • Implemented an event_based_damage calculator
  • Added an API /v1/calc/ID/extract/gmf_data?event_id=XXX
  • Added an API /v1/calc/ID/extract/num_events
  • Fixed the /v1/calc/ID/status endpoint to return an error 404 when needed
  • Removed the "sites are overdetermined" check, since it now unneeded
  • Turned the calculation of consequences into a plugin architecture

[Matteo Nastasi (@nastasi-oq)]

  • Add '/v1/ini_defaults' web api entry point to retrieve all default
    values for ini attributes (attrs without a default are not returned)

[Michele Simionato (@micheles)]

  • Renamed rlzi -> rlzi in the sigma-epsilon dataset and exporter
  • Renamed id -> asset_id in all the relevant CSV exporters
  • Renamed rlzi -> rlz_id in the dmg_by_event.csv output
  • Renamed rupid -> rup_id in the ruptures.csv output
  • Renamed id -> event_id in the events.csv output and gmfs.csv output
  • Renamed sid -> site_id in the gmfs.csv output
  • Renamed ordinal -> rlz_id in the realizations.csv output

[Alberto Chiusole (@bebosudo)]

  • Changed the way how the available number of CPU cores is computed

[Kendra Johnson (@kejohnso), Robin Gee (@rcgee)]

  • Added GMPEs for Rietbrock-Edwards (2019) and Yenier-Atkinson (2015)

[Michele Simionato (@micheles)]

  • Added more check on the IMTs and made it possible to import a GMF.csv
    file with more IMTs than needed
  • Enabled magnitude-dependent pointsource_distance
  • Removed the syntax for magnitude-dependent maximum distance, since
    now it can be automatically determined by the engine
  • Saving more information in the case of single-site classical hazard
  • Extended pointsource_distance to generic sources
  • Removed the boundary information from the CSV rupture exporter
  • Changed the /extract/rupture/XXX API to returns a TOML that can be
    used by a scenario calculator
  • Added general support for file-reading GMPEs
  • Made it possible to disaggregate on multiple realizations
    with the parameters rlz_index or num_rlzs_disagg
  • Fixed downloading the ShakeMaps (again)
  • Better error message in case of too large maximum_distance
  • Optimized the case of point sources with an hypocenter distribution and
    GSIMs independent from it and in general the case of ruptures with
    similar distances

[Graeme Weatherill (@g-weatherill)]

  • Updates SERA craton GMPE to reflect updates to NGA East site response model

[Michele Simionato (@micheles)]

  • Fixed and HDF5 SWMR issue in large disaggregation calculations
  • Made rrup the unique acceptable filter_distance
  • Fixed disaggregation with a parent calculation
  • Models with duplicated values in the hypocenter and/or nodal plane
    distributions are now automatically optimized
  • Fixed an issue with missing noDamageLimit causing NaN values in
    scenario_damage calculations
  • Added more validations for predefined hazard, like forbidding the site model

[Marco Pagani (@mmpagani)]

  • Adding the shift_hypo option for distributed seismicity

[Michele Simionato (@micheles)]

  • Raised an early error for extra-large GMF calculations
  • Reduced the GMF storage by using 32 bit per event ID instead of 64 bit
  • Raised an error in case of duplicated sites in the site model
  • Fixed the case of implicit grid with a site model: sites could be
    incorrectly discarded
  • Fixed the ShakeMap downloader to find also unzipped uncertaintly.xml
    files
  • Fixed the rupture exporters to export the rupture ID and not the
    rupture serial
  • Removed the non-interesting agg_maps outputs
  • Changed the task distribution in the classical calculator and added
    a task_multiplier parameter

[Marco Pagani (@mmpagani)]

  • Fixed a bug in the GenericGmpeAvgSA

[Michele Simionato (@micheles)]

  • Added a /v1/calc/validate_zip endpoint to validate input archives
  • Deprecated inferring the intensity measure levels from the risk functions
  • Fixed a too strict check on the minimum intensities of parent an child
    calculations
  • Extended the ebrisk calculator to compute at the same time both the
    aggregate curves by tag and the total curves

[Marco Pagani (@mmpagani)]

  • Implemented Morikawa and Fujiwara (2013) GMM

[Michele Simionato (@micheles)]

  • Changed the seed algorithm in sampling with more than one source model,
    thus avoiding using more GMPEs than needed in some cases
  • If ground_motion_fields=false is set, the GMFs are not stored even
    if hazard_curves_from_gmfs=true
  • oq show job_info now works while the calculation is running
  • Reduced the sent data transfer in ebrisk calculations
  • Deprecated the old syntax for the reqv feature
  • Added short aliases for hazard statistics mean, max and std
  • Reduced substantially the memory occupation in the task queue
  • Added an API /extract/sources and an experimental oq plot sources
  • Added a check on valid input keys in the job.ini
  • Fixed the check on dependent calculations
  • Specifying at the same time both a grid and individual sites is an error

[Daniele Viganò (@daniviga)]

  • Docker containers rebased on CentOS 8
  • Fixed an issue causing zombie ssh processes
    when using zmq as task distribution mechanism
  • Introduced support for RHEL/CentOS 8

[Michele Simionato (@micheles)]

  • Added a check for no GMFs in event_based_risk
  • Avoided transferring the site collection
  • Storing the sources in TOML format

OpenQuake Engine 3.7.1

25 Oct 09:32
Compare
Choose a tag to compare

[Michele Simionato (@micheles)]

  • Fixed disaggregation with a parent calculation
  • Fixed the case of implicit grid with a site model: sites could be
    incorrectly discarded
  • Fixed the ShakeMap downloader to find also unzipped uncertaintly.xml
    files
  • Fixed the rupture exporters to export the rupture ID and not the
    rupture serial

[Marco Pagani (@mmpagani)]

  • Fixed a bug in the GenericGmpeAvgSA

OpenQuake Engine 3.7.0

26 Sep 09:52
Compare
Choose a tag to compare

[Michele Simionato (@micheles)]

  • Hiding calculations that fail before the pre-execute phase (for instance,
    because of missing files); they already give a clear error
  • Added an early check on truncation_level in presence of correlation model

[Guillaume Daniel (@guyomd)]

  • Implemented Ameri (2017) GMPE

[Michele Simionato (@micheles)]

  • Changed the ruptures CSV exporter to use commas instead of tabs
  • Added a check forbidding aggregate_by for non-ebrisk calculators
  • Introduced a task queue
  • Removed the cache_XXX.hdf5 files by using the SWMR mode of h5py

[Kris Vanneste (@krisvanneste)]

  • Updated the coefficients table for the atkinson_2015 to the actual
    values in the paper.

[Michele Simionato (@micheles)]

  • Added an /extract/agg_curves API to extract both absolute and relative
    loss curves from an ebrisk calculation
  • Changed oq reset --yes to remove oqdata/user only in single-user mode
  • Now the engine automatically sorts the user-provided intensity_measure_types
  • Optimized the aggregation by tag
  • Fixed a bug with the binning when disaggregating around the date line
  • Fixed a prefiltering bug with complex fault sources: in some cases, blocks
    ruptures were incorrectly discarded
  • Changed the sampling algorithm for the GMPE logic trees: now it does
    not require building the full tree in memory
  • Raised clear errors for geometry files without quotes or with the wrong
    header in the multi_risk calculator
  • Changed the realizations.csv exporter to export '[FromShakeMap]' instead
    of '[FromFile]' when needed
  • Changed the agg_curves exporter to export all realizations in a single file
    and all statistics in a single file
  • Added rlz_id, rup_id and year to the losses_by_event output for ebrisk
  • Fixed a bug in the ruptures XML exporter: the multiplicity was multiplied
    (incorrectly) by the number of realizations
  • Fixed the pre-header of the CSV outputs to get proper CSV files
  • Replaced the 64 bit event IDs in event based and scenario calculations
    with 32 bit integers, for the happiness of Excel users

[Daniele Viganò (@daniviga)]

  • Numpy 1.16, Scipy 1.3 and h5py 2.9 are now required

[Michele Simionato (@micheles)]

  • Changed the ebrisk calculator to read the CompositeRiskModel directly
    from the datastore, which means 20x less data transfer for Canada

[Anirudh Rao (@raoanirudh)]

  • Fixed a bug in the gmf CSV importer: the coordinates were being
    sorted and new site_ids assigned even though the user input sites
    csv file had site_ids defined

[Michele Simionato (@micheles)]

  • Fixed a bug in the rupture CSV exporter: the boundaries of a GriddedRupture
    were exported with lons and lats inverted
  • Added some metadata to the CSV risk outputs
  • Changed the distribution mechanism in ebrisk to reduce the slow tasks

[Graeme Weatherill (@g-weatherill)]

  • Updates Kotha et al. (2019) GMPE to July 2019 coefficients
  • Adds subclasses to Kotha et al. (2019) to implement polynomial site
    response models and geology+slope site response model
  • Adds QA test to exercise all of the SERA site response calculators

[Michele Simionato (@micheles)]

  • Internal: there is not need to call gsim.init() anymore

[Graeme Weatherill (@g-weatherill)]

  • Adds parametric GMPE for cratonic regions in Europe

[Michele Simionato (@micheles)]

  • In the agglosses output of scenario_risk the losses were incorrectly
    multiplied by the realization weight
  • Removed the output sourcegroups and added the output events

[Graeme Weatherill (@g-weatherill)]

  • Adds new meta ground motion models to undertake PSHA using design code
    based amplification coefficients (Eurocode 8, Pitilakis et al., 2018)
  • Adds site amplification model of Sandikkaya & Dinsever (2018)

[Marco Pagani (@mmpagani)]

  • Added a new rupture-site metric: the azimuth to the closest point on the
    rupture

[Michele Simionato (@micheles)]

  • Fixed a regression in disaggregation with nonparametric sources, which
    were effectively discarded
  • The site amplification has been disabled by default in the ShakeMap
    calculator, since it is usually already taken into account by the USGS

[Daniele Viganò (@daniviga)]

  • Deleted calculations are not removed from the database anymore
  • Removed the 'oq dbserver restart' command since it was broken

[Richard Styron (@cossatot)]

  • Fixed YoungsCoppersmith1985MFD.from_total_moment_rate(): due to numeric
    errors it was producing incorrect seismicity rates

[Michele Simionato (@micheles)]

  • Now we generate the output disagg_by_src during disaggregation even in the
    case of multiple realizations
  • Changed the way the random seed is set for BT and PM distributions
  • The filenames generated by disagg_by_src exporter now contains the site ID
    and not longitude and latitude, consistently with the other exporters
  • Accepted again meanLRs greater than 1 in vulnerability functions of kind LN
  • Fixed a bug in event based with correlation and a filtered site collection
  • Fixed the CSV exporter for the realizations in the case of scenarios
    with parametric GSIMs
  • Removed some misleading warnings for calculations with a site model
  • Added a check for missing risk_investigation_time in ebrisk
  • Reduced drastically (I measured improvements over 40x) memory occupation,
    data transfer and data storage for multi-sites disaggregation
  • Sites for which the disaggregation PoE cannot be reached are discarded
    and a warning is printed, rather than killing the whole computation
  • oq show performance can be called in the middle of a computation again
  • Filtered out the far away distances and reduced the time spent in
    saving the performance info by orders of magnitude in large disaggregations
  • Reduced the data transfer by reading the data directly from the
    datastore in disaggregation calculations
  • Reduced the memory consumption sending disaggregation tasks incrementally
  • Added an extract API disagg_layer
  • Moved max_sites_disagg from openquake.cfg into the job.ini
  • Fixed a bug with the --config option: serialize_jobs could not be overridden
  • Implemented insured losses

OpenQuake Engine 3.6.0

16 Jul 10:15
Compare
Choose a tag to compare

[Michele Simionato (@micheles)]

  • In some cases applyToSources was giving a fake error about the source
    not being in the source model even if it actually was

[Chris Van Houtte (@cvanhoutte)]

  • Adds the Van Houtte et al. (2018) significant duration model for New
    Zealand

[Michele Simionato (@micheles)]

  • Added a way to compute and plot the MFD coming from an event based
  • Storing the MFDs in TOML format inside the datastore

[Robin Gee (@rcgee)]

  • Moves b4 constant into COEFFS table for GMPE Sharma et al., 2009

[Graeme Weatherill (@g-weatherill)]

  • Adds functionality to Cauzzi et al. (2014) and Derras et al. (2014)
    calibrated GMPEs for Germany to use either finite or point source distances

[Michele Simionato (@micheles)]

  • Restored the ability to associate site model parameters to a grid of sites
  • Made it possible to set hazard_curves_from_gmfs=true with
    ground_motion_fields=false in the event based hazard calculator
  • Introduced a mechanism to split the tasks based on an estimated duration
  • Integrated oq plot_memory into oq plot
  • Removed NaN values for strike and dip when exporting griddedRuptures
  • Fixed oq reset to work in multi-user mode
  • Extended the source_id-filtering feature in the job.ini to multiple sources
  • Supported WKT files for the binary perils in the multi_risk calculator
  • Added an early check on the coefficients of variation and loss ratios of
    vulnerability functions with the Beta distribution
  • Made sure that oq engine --dc removes the HDF5 cache file too
  • Removed the flag optimize_same_id_sources because it is useless now
  • Introduced a soft limit at 65,536 sites for event_based calculations
  • Fixed a performance regression in ucerf_classical that was filtering
    before splitting, thus becoming extra-slow
  • Improved the progress log, that was delayed for large classical calculations
  • Exported the ruptures as 3D multi-polygons (instead of 2D ones)
  • Changed the aggregate_by exports for consistency with the others
  • Changed the losses_by_event exporter for ebrisk, to make it more
    consistent with scenario_risk and event_based_risk
  • Changed the agglosses and losses_by_event exporters in scenario_risk,
    by adding a column with the realization index
  • Changed the generation of the hazard statistics to consume very little
    memory
  • Fixed a bug with concurrent_tasks being inherited from the parent
    calculation instead of using the standard default
  • Removed the dependency from mock, since it is included in unittest.mock
  • For scenario, replaced the branch_path with the GSIM representation in
    the realizations output
  • Added a check for suspiciously large source geometries
  • Deprecated the XML disaggregation exporters in favor of the CSV exporters
  • Turned the disaggregation calculator into a classical post-calculator
    to use the precomputed distances and speedup the computation even more
  • Fixed the disaggregation calculator by discarding the ruptures outside
    the integration distance
  • Optimized the speed of the disaggregation calculator by moving a statistical
    functions outside of the inner loop
  • Changed the file names of the exported disaggregation outputs
  • Fixed an export agg_curves issue with pre-imported exposures
  • Fixed an export agg_curves issue when the hazard statistics are different
    from the risk statistics
  • Removed the disaggregation statistics: now the engine disaggregates only on
    a single realization (default: the closest to the mean)
  • Forbidden disaggregation matrices with more than 1 million elements
  • Reduced the data transfer when computing the hazard curves
  • Optimized the reading of large CSV exposures
  • Fixed the --hc functionality across users
  • Optimized the reduction of the site collection on the exposure sites
  • Made more robust the gsim logic tree parser: lines like
    <uncertaintyModel gmpe_table="../gm_tables/Woffshore_low_clC.hdf5">
    are accepted again
  • Added a check against duplicated values in nodal plane distributions and
    hypocenter depth distributions
  • Changed the support for zipped exposures and source models: now the
    name of the archive must be written explicitly in the job.ini
  • Added support for numpy 1.16.3, scipy 1.3.0, h5py 2.9.0
  • Removed the special case for event_based_risk running two calculations

[Graeme Weatherill (@g-weatherill)]

  • Adds the Tromans et al. (2019) adjustable GMPE for application to PSHA
    in the UK

[Michele Simionato (@micheles)]

  • Optimized src.sample_ruptures for (multi)point sources and are sources
  • Fixed a mutability bug in the DistancesContext and made all context
    arrays read-only: the fix may affect calculations using the GMPEs
    berge_thierry_2003, cauzzi_faccioli_2008 and zhao_2006;
  • Fixed a bug with the minimum_distance feature
  • Fixed a bug in the exporter of the aggregate loss curves: now the loss
    ratios are computed correctly even in presence of occupants
  • Removed the (long time deprecated) capability to read hazard curves and
    ground motion fields from XML files: you must use CSV files instead

[Marco Pagani (@mmpagani)]

  • Implemented a modified GMPE that add between and within std to GMPEs only
    supporting total std

[Michele Simionato (@micheles)]

  • Added the ability to use a taxonomy_mapping.csv file
  • Fixed a bug in classical_damage from CSV: for hazard intensity measure
    levels different from the fragility levels, the engine was giving incorrect
    results
  • Serialized also the source model logic tree inside the datastore
  • Added a check on missing intensity_measure_types in event based
  • Fixed oq prepare_site_model in the case of an empty datadir
  • Added a comment line with useful metadata to the engine CSV outputs
  • Removed the long time deprecated event loss table exporter for event based
    risk and enhanced the losses_by_event exporter to export the realization ID
  • Removed the long time deprecated GMF XML exporter for scenario
  • IMT-dependent weights in the gsim logic tree can be zero, to discard
    contributions outside the range of validity of (some of the) GSIMs
  • Now it is possible to export individual hazard curves from an event
  • Added a view gmvs_to_hazard

OpenQuake Engine 3.5.2

31 May 08:41
Compare
Choose a tag to compare

[Daniele Viganò (@daniviga)]

  • Fixed packaging issue, the .hdf5 tables for Canada were missing

[Michele Simionato (@micheles)]

  • Fixed regression in the gsim logic tree parser for the case
    of .hdf5 tables

OpenQuake Engine 3.5.1

20 May 14:18
Compare
Choose a tag to compare

[Michele Simionato (@micheles)]

  • Added a rlzi column to to sig_eps.csv output
  • Accepted GMF CSV files without a rlzi column
  • Accepted a list-like syntax like return_periods=[30, 60, 120, 240, 480]
    in the job.ini, as written in the manual
  • Fixed a bug in the asset_risk exporter for uppercase tags

[Paul Henshaw (@pslh)]

  • Fixed an encoding bug while reading XML files on Windows