Building Nonstructural Damage#
Description
This analysis computes the non-structural damage to buildings based on a particular hazard. Currently, supported hazard is: earthquake, flood, and hurricane.
The process is similar to evaluating other structural damages. The probabilities for building damage state are obtained using fragility curves and a hazard definition, each building site will have a specific PGA (Peak Ground Acceleration), a measurement of an earthquake hazard for each scenario. Liquefaction effect, which is defined as a change in stress condition, in which material that is ordinarily a solid behaves like a liquid can be considered as well. The LMF (Liquefaction Modification Factor) values are implemented as multiplication factors to the median fragility values and they must be present in the dataset. This analysis can support various types of fragility curves assigned to the building: e.g.acceleration-sensitive (AS) and drift-sensitive (DS).
The code covers Normal and LogNormal fragilities with 3 limit states and creates an output CSV file with corresponding damage states. The second output file is a JSON with information about hazard and fragilities.
Input Parameters
key name |
type |
name |
description |
---|---|---|---|
|
|
Result name |
Name of the result dataset. |
|
|
Hazard type |
Hazard type (earthquake, flood, hurricane). |
|
|
Hazard id |
ID of the hazard from the Hazard service. |
|
|
Fragility Key |
Fragility key used in mapping dataset. |
|
|
Liquefaction |
Use liquefaction, if applicable to the hazard. |
|
|
Liquefaction id |
A liquefaction susceptibility dataset. |
|
|
Uncertainty |
Use hazard uncertainty. Default is |
|
|
Number of CPUs |
Number of CPUs used for parallel computations. |
Input Hazards
key name |
type |
name |
description |
---|---|---|---|
|
|
Hazard |
Supported hazard object for using local and remote hazards. |
Input Datasets
key name |
type |
name |
description |
---|---|---|---|
|
|
Building dataset |
A building dataset. |
|
DFR3 Mapping Set |
DFR3 Mapping Set. |
Output datasets
key name |
type |
parent key |
name |
description |
---|---|---|---|---|
|
|
Results |
A dataset containing results |
|
|
|
Results |
Information about applied hazard value and fragility |
(* required)
Execution
code snippet:
# Create an instance
non_structural_building_dmg = NonStructBuildingDamage(client)
# Load input datasets
non_structural_building_dmg.load_remote_input_dataset("buildings", building_dataset_id)
# Load fragility mapping
fragility_service = FragilityService(client)
mapping_set = MappingSet(fragility_service.get_mapping(mapping_id))
non_structural_building_dmg.set_input_dataset('dfr3_mapping_set', mapping_set)
# Specify the result name
result_name = "non_structural_building_dmg_result"
# Set analysis parameters
non_structural_building_dmg.set_parameter("result_name", result_name)
non_structural_building_dmg.set_parameter("hazard_type", hazard_type)
non_structural_building_dmg.set_parameter("hazard_id", hazard_id)
non_structural_building_dmg.set_parameter("fragility_key", NonStructBuildingUtil.DEFAULT_FRAGILITY_KEY_AS)
non_structural_building_dmg.set_parameter("num_cpu", 4)
# Shelby County Liquefaction Susceptibility
use_liquefaction = True
liq_geology_dataset_id = "5a284f55c7d30d13bc0824ba"
non_structural_building_dmg.set_parameter("use_liquefaction", use_liquefaction)
non_structural_building_dmg.set_parameter("liq_geology_dataset_id", liq_geology_dataset_id)
non_structural_building_dmg.run_analysis()
full analysis: building_nonstructural_dmg.ipynb