Pipeline damage#
Description
This analysis computes pipeline damage based on a particular hazard. Currently supported hazards are: earthquake and tsunami.
The process for computing the structural damage is similar to other parts of the built environment. First, a fragility is obtained based on the hazard type and attributes of the pipeline. Based on the fragility, the hazard intensity at the location of the pipeline is computed. Using this information, the probability of exceeding each limit state is computed, along with the probability of damage. If the pipeline dataset contains soil information, the median value of the associated fragility can be modified to account for liquefaction in the damage.
The outputs of this analysis are CSV file with probabilities of damage and JSON file with information about hazard and fragilities.
Input Parameters
key name |
type |
name |
description |
---|---|---|---|
|
|
Result name |
Name of the result dataset. |
|
|
Hazard type (earthquake and tsunami). |
|
|
|
Hazard id |
ID of the hazard from the Hazard service. |
|
|
Fragility key |
Fragility key used in mapping dataset. |
|
|
Geology id |
A geology dataset for liquefaction adjustment. |
|
|
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 |
---|---|---|---|
|
Pipeline dataset |
A pipeline 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 Pipeline damage analysis
pipeline_dmg = PipelineDamage(client)
# Load pipeline inventory for Seaside, OR
pipeline_dmg.load_remote_input_dataset("pipeline", pipeline_id)
# Load fragility mapping
fragility_service = FragilityService(client)
mapping_set = MappingSet(fragility_service.get_mapping(mapping_id))
pipeline_dmg.set_input_dataset('dfr3_mapping_set', mapping_set)
# Set result name
pipeline_dmg.set_parameter("result_name", "seaside_tsunami_pipeline_result")
# Set a hazard: Seaside Tsunami
pipeline_dmg.set_parameter("hazard_type", "tsunami")
pipeline_dmg.set_parameter("hazard_id", hazard_id)
# Set number of CPU for computation
pipeline_dmg.set_parameter("num_cpu", 4)
# Run pipeline damage analysis
result = pipeline_dmg.run_analysis()
full analysis: pipeline_dmg.ipynb