Powered by OpenAIRE graph
Found an issue? Give us feedback
image/svg+xml art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos Open Access logo, converted into svg, designed by PLoS. This version with transparent background. http://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos http://www.plos.org/ ZENODOarrow_drop_down
image/svg+xml art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos Open Access logo, converted into svg, designed by PLoS. This version with transparent background. http://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos http://www.plos.org/
ZENODO
Software . 2026
License: CC BY
Data sources: ZENODO
ZENODO
Software . 2026
License: CC BY
Data sources: Datacite
ZENODO
Software . 2026
License: CC BY
Data sources: Datacite
versions View all 2 versions
addClaim

NHERI-SimCenter/pelicun: v3.9

Authors: Adam Zsarnoczay; Ioannis Vouvakis Manousakis; Jinyan Zhao; Sina Naeimi; Pouria Kourehpaz; Kuanshi Zhong; Frank McKenna; +2 Authors

NHERI-SimCenter/pelicun: v3.9

Abstract

The headline change in 3.9.0 is multi-hazard regional simulation: the regional_sim tool now handles Hazus Hurricane Wind alongside earthquake, and has been restructured around a configuration-driven Intensity Measure model and a conditional loss-assessment framework that generalizes cleanly to additional hazards. Alongside this, a building inventory filter lets users run on any subset of an asset list, and the NNR resampler has been extended to operate on 3D per-realization arrays with a configurable neighbor count. On the runtime side, pelicun is now fully numpy 2 compatible, and its dependency ranges have been revisited against what the code actually uses — raising the pandas, numpy, and scipy floors, widening the upper bounds, and clearing the ~720 pandas / numpy deprecation warnings previously emitted by the test suite. Added Multi-Hazard Regional Simulation: The regional_sim tool now supports configurable hazards beyond earthquake. Add support for the Hazus Hurricane Wind damage and loss methodology. Introduce a new end-to-end integration test for the hurricane wind scenario, with a dedicated, hazard-specific pytest fixture. Building Inventory Filter: Run simulations on a specific subset of assets. Add a filter key to the regional_sim configuration that selects buildings by ID and ID ranges (e.g., "1, 5-10"). Add a parametrized test suite covering success and error-handling scenarios for the filter. Enhanced Regional Simulation Testing: Add the first comprehensive integration tests for the regional_sim tool, establishing a testing baseline for future changes. NNR (Nearest Neighbor Resampling) Enhancements: The "expected value" mode now operates on each realization of a 3D input array independently. The 2D expected value path is now vectorized for improved performance. The number of nearest neighbors is now a configurable parameter. numpy 2 Support: Pelicun now runs against numpy 2 (verified on numpy 2.0 through 2.4). Module Entry Point: python -m pelicun now dispatches to the CLI, complementing the existing pelicun console script. Changed Regional Simulation Workflow: Major refactoring of the regional_sim script for improved flexibility and robustness. Generalize the Intensity Measure (IM) handling to be dynamically driven by the configuration file, removing all hardcoded "PGA" logic. Rearchitect the loss assessment logic into a conditional framework, with a dedicated path for complex Hazus Earthquake models and an efficient 1-to-1 mapping path for other methods. Reorganize the output stage to save results sequentially, improving robustness against failures in later-stage calculations. Upsample demand realizations when the requested sample size is larger than the available data. Runtime Dependency Ranges: Broadened upper bounds and raised lower bounds to reflect what the code actually supports. numpy: >=1.23, >=1.8.0, =1.4.0 -> >=2.2.3, object upcast warning. ~27 DataFrame.groupby(..., axis=1) call sites in the damage / loss / regional-sim / DL_calculation paths: rewritten as df.T.groupby(...)...T. Damage Model — Fragility Scaling with Unspecified Distribution: ScalingSpecification entries targeting components whose distribution family is missing (stored as NaN, e.g., Hazus collapse-0-1) are now scaled as deterministic capacities instead of being silently ignored with a warning. This aligns damage_model.ds_model._create_dmg_rvs with the existing behavior of uq.rv_class_map. Code Quality and Documentation: Continued compliance with ruff, full type hints and docstring added to the NNR function. CLI Subprocess Tests: The three pelicun CLI integration tests now invoke the CLI via [sys.executable, '-m', 'pelicun', ...] so they use the same interpreter / virtualenv as the test runner, instead of whichever pelicun script happens to come first on PATH.

Related Organizations
  • BIP!
    Impact byBIP!
    selected citations
    These citations are derived from selected sources.
    This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    0
    popularity
    This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
    Average
    influence
    This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    Average
    impulse
    This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
    Average
Powered by OpenAIRE graph
Found an issue? Give us feedback
selected citations
These citations are derived from selected sources.
This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Citations provided by BIP!
popularity
This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
BIP!Popularity provided by BIP!
influence
This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Influence provided by BIP!
impulse
This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
BIP!Impulse provided by BIP!
0
Average
Average
Average