diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/00-document-info.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/00-document-info.mdx index 3aced1b39..c6aac6e75 100644 --- a/docs/desktop-applications/lifesim/applications-guide/v1.0/00-document-info.mdx +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/00-document-info.mdx @@ -1,28 +1,24 @@ --- title: Document Info -reportDate: March 2026 +reportDate: September 2026 reportType: Computer Program Document reportTitle: LifeSim reportSubTitle: Applications Guide reportAuthors: ['Susie Byrd, Risk Management Center'] reportAbstract: -reportAcknowledgments: A special thank you to Jordan McMaster, Kurt Buchanan, Woodrow Fields, and Karen Mai for their contributions and support to make the LifeSim Applications Guide a reality. +reportAcknowledgments: A special thank you to Karen Mai, Jordan McMaster, Kurt Buchanan, Woodrow Fields, and Paul Risher, for their contributions and support to make the LifeSim Applications Guide a reality. reportSubjectTerms: -responsiblePersonName: xx -responsiblePersonNumber: ###-###-#### -citationGuide: "S. E. Byrd and xx, LifeSim Applications Guide, Davis, CA: U.S. Army Corps of Engineers, Risk Management Center, 2026. Accessed on {enter current date here}." +responsiblePersonName: Susie Byrd +responsiblePersonNumber: 412-735-0037 +citationGuide: 'S. E. Byrd et al., LifeSim Applications Guide, Davis, CA: U.S. Army Corps of Engineers, Risk Management Center, 2026. Accessed on {enter current date here}.' --- -import Link from "@docusaurus/Link"; -import addBaseUrl from "@docusaurus/useBaseUrl"; -import DocumentMetadata from "@site/src/components/DocumentMetadata"; -import NavContainer from "@site/src/components/NavContainer"; +import Link from '@docusaurus/Link'; +import addBaseUrl from '@docusaurus/useBaseUrl'; +import DocumentMetadata from '@site/src/components/DocumentMetadata'; +import NavContainer from '@site/src/components/NavContainer'; - + # Document Information diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/00-version-history.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/00-version-history.mdx index a78fe5c3a..aef6c7cb9 100644 --- a/docs/desktop-applications/lifesim/applications-guide/v1.0/00-version-history.mdx +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/00-version-history.mdx @@ -2,23 +2,27 @@ title: Version History --- -import Link from "@docusaurus/Link"; -import NavContainer from "@site/src/components/NavContainer"; -import TableVersionHistory from "@site/src/components/TableVersionHistory"; +import Link from '@docusaurus/Link'; +import NavContainer from '@site/src/components/NavContainer'; +import TableVersionHistory from '@site/src/components/TableVersionHistory'; - + # Version History + Paul Risher +
+ Sarah Mattingly +
+ Ariel Feldman + , + ]} + approvedBy={['-']} /> diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/01-preface.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/01-preface.mdx index 3da9ec20d..871ba74aa 100644 --- a/docs/desktop-applications/lifesim/applications-guide/v1.0/01-preface.mdx +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/01-preface.mdx @@ -1,52 +1,32 @@ --- -title: "Preface" +title: 'Preface' --- -import Link from "@docusaurus/Link"; -import addBaseUrl from "@docusaurus/useBaseUrl"; -import Citation from "@site/src/components/Citation"; -import CitationFootnote from "@site/src/components/CitationFootnote"; -import NavContainer from "@site/src/components/NavContainer"; -import VersionSelector from "@site/src/components/VersionSelector"; - - +import Link from '@docusaurus/Link'; +import addBaseUrl from '@docusaurus/useBaseUrl'; +import Citation from '@site/src/components/Citation'; +import CitationFootnote from '@site/src/components/CitationFootnote'; +import Figure from '@site/src/components/Figure'; +import FigureInline from '@site/src/components/FigureInline'; +import FigReference from '@site/src/components/FigureReference'; +import NavContainer from '@site/src/components/NavContainer'; +import ProcessList from '@site/src/components/ProcessList'; +import TableReference from '@site/src/components/TableReference'; +import TableVertical from '@site/src/components/TableVertical'; +import VersionSelector from '@site/src/components/VersionSelector'; + + # Preface -LifeSim is the life loss and direct damage estimation software used by the U.S. Army Corps of Engineers. LifeSim is designed to simulate the entire -warning and evacuation process for estimating potential life loss and direct economic damages resulting from floods. The following is a description of - the major capabilities of LifeSim: - -- Graphical User Interface -- Agent Based Modeling -- Uncertainty -- Graphics and Reporting - -The user interacts with LifeSim through a graphical user interface (GUI). The interface is designed to make it easy to use the software, while still -maintaining a high level of efficiency for the user. - -LifeSim uses an agent-based approach to track individuals throughout the warning and evacuation process. During an evacuation, agents are interacting -with the roads, other vehicles, and the incoming hazard. After the warning and evacuation process has been simulated, LifeSim calculates lethality for - those people who are exposed to the hazard and the associated direct damages. By tracking individual people and their movements, LifeSim can help -identify where people are most at risk of losing their lives, whether it is on roads or in structures. - -Three modes of evacuation are included in LifeSim: cars, sports utility vehicles (SUVs), and pedestrians. For vehicular evacuation, a dual regime -modified Greenshields model (USDOT) in conjunction with spillback enforcement is used for traffic propagation to represent the effects of traffic -density and road capacity on vehicle speed. Each road is assigned default values for the number of lanes, free flow speed, traffic jam densities, and -minimum stop-and-go speeds based on the Highway Capacity Manual (HCM) (TRB 2000). - -To define the routes people use to evacuate, a road network is provided where each segment of the network contains information such as road category, -directionality, ground offset (for bridges), and interconnectivity. The road network can be imported from an existing GIS polyline shapefile or from -OpenStreetMap. OpenStreetMap is a collaborative project to create a free editable map of the world. During each timestep at the user defined interval -Δt, evacuating groups (PAR evacuating from a structure in a single vehicle) move as far as the model allows until the group reaches a destination -point, gets caught, or becomes stranded. More information on the evacuation simulation can be found in the (RMC 2021). - -LifeSim applies both natural variability and knowledge uncertainty through Monte Carlo analysis. Multiple parameters can be entered with uncertainty -including those that influence the warning and evacuation timeline. Each iteration in a simulation represents a scenario that could occur given the -data uncertainties in the model. The results of the analysis provide a distribution of estimated consequences from a given hazard. - - \ No newline at end of file +The idea for the LifeSim Applications Guide stemmed from the need to provide additional assistance and examples to the consequences field of practice. The User's +Guide and Technical Reference Manual provide some detailed information on how to use LifeSim. The Applications Guide walks through several real-life dam projects +and studies, and details how the LifeSim model was built and why. Some applications focus on using LifeSim to support dam and levee safety risk assessments; +other applications walk through Flood Risk Management (FRM) and Coastal Storm Risk Management (CSRM) studies and how LifeSim was used to support plan formulation +and decision-making. + +For additional information on LifeSim, please refer to the LifeSim User's Guide +and LifeSim Technical Reference Manual. The Applications Guide is not +intended to be a stand-alone document, and it is recommended that users have a basic understanding of LifeSim and/or consequence estimation before using this guide. +This guide is not intended to provide a comprehensive overview of all LifeSim features and capabilities, but rather to highlight how LifeSim can be used to support +various types of studies and analyses. diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/02-introduction.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/02-introduction.mdx index 3663a3bde..9d844aba3 100644 --- a/docs/desktop-applications/lifesim/applications-guide/v1.0/02-introduction.mdx +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/02-introduction.mdx @@ -1,128 +1,156 @@ --- -title: "Introduction" +title: 'Introduction' --- -import Link from "@docusaurus/Link"; -import addBaseUrl from "@docusaurus/useBaseUrl"; -import Citation from "@site/src/components/Citation"; -import CitationFootnote from "@site/src/components/CitationFootnote"; -import Figure from "@site/src/components/Figure"; -import FigureInline from "@site/src/components/FigureInline"; -import FigReference from "@site/src/components/FigureReference"; -import NavContainer from "@site/src/components/NavContainer"; -import ProcessList from "@site/src/components/ProcessList"; -import TableReference from "@site/src/components/TableReference"; -import TableVertical from "@site/src/components/TableVertical"; -import VersionSelector from "@site/src/components/VersionSelector"; +import Link from '@docusaurus/Link'; +import addBaseUrl from '@docusaurus/useBaseUrl'; +import Citation from '@site/src/components/Citation'; +import CitationFootnote from '@site/src/components/CitationFootnote'; +import Figure from '@site/src/components/Figure'; +import FigureInline from '@site/src/components/FigureInline'; +import FigReference from '@site/src/components/FigureReference'; +import NavContainer from '@site/src/components/NavContainer'; +import ProcessList from '@site/src/components/ProcessList'; +import TableReference from '@site/src/components/TableReference'; +import TableVertical from '@site/src/components/TableVertical'; +import VersionSelector from '@site/src/components/VersionSelector'; - + # Introduction -Welcome to the U.S. Army Corps of Engineers LifeSim Applications Guide. LifeSim uses an agent-based methodology for estimating life loss with the -fundamental intent to simulate population redistribution during an evacuation. Direct life loss, direct economic damages, and direct agriculture -damages are then determined by the hazard (e.g., flooding). Direct consequences, the primary focus of LifeSim, are those incurred when people, +Welcome to the LifeSim Applications Guide developed by the Risk Management Center, U.S. Army Corps of Engineers. LifeSim uses an agent-based methodology to +estimate life loss, with the primary intent of simulating population redistribution during an evacuation. Direct life loss, direct economic damages, and direct +agricultural damages are then determined by the hazard (e.g., flooding). Direct consequences, the primary focus of LifeSim, are those incurred when people, structures, or agricultural resources interact with the hazard. -LifeSim is designed to simulate the entire warning and evacuation process for estimating potential life loss and direct economic damages resulting from - catastrophic floods (e.g., riverine flooding, coastal flooding, dam breach, and levee breach). LifeSim applies both natural variability and knowledge - uncertainty (i.e., naturally occurring change in models’ parameters and outputs and gaps in what can be known by the modelers at the time) through -Monte Carlo simulation. Many parameters can be entered with uncertainty including those that influence the warning and evacuation timeline (see the , -Warning and Evacuation Timeline Section for a more detailed overview). LifeSim is a multifaceted consequence estimation tool that can be utilized for various - types of studies and analyses, including dam safety, levee safety, coastal storm risk management, flood risk management, risk communication, and -more. +LifeSim is designed to simulate the entire warning and evacuation process (see ) for estimating potential life loss and direct economic damages resulting from +catastrophic floods (e.g., riverine flooding, coastal flooding, dam failures, and levee failures). LifeSim applies both natural variability and knowledge +uncertainty (i.e., naturally occurring change in models' parameters and outputs and gaps in what can be known by the modelers at the time) through +Monte Carlo simulation. Many parameters can be entered with uncertainty, including those that influence the warning and evacuation timeline +(see LifeSim Technical Reference Manual - Warning and Evacuation Timeline for +a more detailed overview). LifeSim is a multifaceted consequence estimation tool that can be utilized for various types of studies and analyses, including dam safety, levee safety, coastal +storm risk management, flood risk management, risk communication, and more. + +
## Overview of this Guide -The LifeSim Applications Guide contains written descriptions of seven examples that demonstrate the main features of the LifeSim software. The -discussions in this manual contain detailed descriptions for the data inputs and analysis of the output for each example. The examples show and -describe various input and output screens used to enter the data and view the output. The examples are intended as a guide for performing similar -analyses in LifeSim. The manual is organized as follows: +The LifeSim Applications Guide contains written descriptions of seven examples that highlight the main ways to utilize the LifeSim software, which is +focused on estimating direct life loss and direct economic damages to structures, contents, and vehicles. The examples in this guide contain detailed descriptions +for the data inputs and analysis of the output for each example. Each example describes various inputs, different features of LifeSim, and how best to view and analyze +your results. The examples are intended as a guide for performing similar analyses in LifeSim. The manual is organized as follows: - Summary of LifeSim Inputs, details the required inputs for all LifeSim studies. This section also defines and explains the inputs. - Finally, some recommended data pre-processing is discussed. Reference back to this section for additional information on Hydraulic Data, emergency - planning zones, Structure Inventories, Alternatives, and Simulations. + Summary of LifeSim Inputs defines and explains the required inputs for all LifeSim studies, and some recommended data + pre-processing is discussed. Refer back to this section for additional information on Hydraulic Data, Emergency Planning Zones (EPZs), + Structure Inventories, Alternatives, and Simulations. It is recommended to review this section before starting any of the other applications + in this guide. ), }, - { // STEP 2 + { + // STEP 2 title: ( <> - Estimating Consequence for Levees and Floodwalls, demonstrates the data required to estimate consequences - (life loss and direct economic damages) for a levee or floodwall breach. The example details required inputs, ways to acquire emergency preparedness - information for populations at risk (PAR) and emergency management agencies (EMAs), how to simulate evacuation, and how to analyze your modeling - results. + Estimating Consequences for Levees and Floodwalls demonstrates the data required to estimate consequences (life loss and + direct economic damages) for a levee or floodwall failure and focuses on the Cache Creek Levee in Yolo County, California. This application + includes detailed step-by-step instructions. The example describes the required inputs for a levee failure analysis, how to acquire + emergency preparedness information to inform warning and evacuation parameters, best practices for simulating evacuation, and how to conduct + a quality check review of your structure inventory. This application is widely referenced in the other applications and is a good starting + point for new LifeSim users. ), }, - { // STEP 3 + { + // STEP 3 title: ( <> - Estimating Consequences for Dams, demonstrates the data required to estimate consequences for a dam breach model. The - example details potential Geospatial Information System (GIS) pre-processing needed for data inputs, editing your structure inventory for accuracy, - and inputting warning and evacuation data specific to dams. + Estimating Consequences for Dams demonstrates the data required to estimate consequences for a dam failure model and + focuses on Curwensville Dam in Clearfield County, Pennsylvania. The example details potential Geographic Information System (GIS) + pre-processing needed for data inputs, editing your structure inventory for accuracy, and inputting warning and evacuation data specific to + dams. It also demonstrates how to conduct a quality check review of your structure inventory, which includes different strategies than those + included in the levee application. This application is widely referenced in the other applications and is a good starting point for new + LifeSim users. - ), + ), }, - { // STEP 4 + { + // STEP 4 title: ( <> - Estimating Consequences for Cascading Dam Breaches, demonstrates various ways to model cascading dam breaches. The example - highlights the modeling differences if there is a downstream dam that breaches due to an upstream dam breaching. This example primarily focuses on - differences in (1) selecting the hazard occurrence time (i.e., the date and time breach or overtopping occurs in the study area) and (2) the - delineation and parameter selection of the emergency planning zones (i.e., zones in LifeSim that can uniquely sample uncertainty parameters). + Modeling Cascading Dam Failures in LifeSim demonstrates various ways to model cascading dam failures. The example + focuses on multiple dams located on the Missouri River: Oahe Dam, Big Bend Dam, Fort Randall Dam, and Gavins Point Dam. This is a unique + example that highlights the key modeling differences when a downstream dam fails due to an upstream dam failure. This example primarily + focuses on differences in (1) selecting the hazard occurrence time (i.e., the date and time breach or overtopping occurs in the study area) + and (2) the delineation and parameter selection of the emergency planning zones (i.e., zones in LifeSim that can uniquely sample uncertainty + parameters). ), }, - { // STEP 5 + { + // STEP 5 title: ( <> - Estimating Consequences for Coastal Infrastructure, illustrates how LifeSim modeling differs for coastal - structures (e.g., floodwalls, seawalls, dunes, and levees) compared to riverine infrastructure (e.g., floodwalls and levees), including differences in - hydraulic data, warning times, and other consequence nuances specific to coastal infrastructure. + Estimating Consequences for Coastal Infrastructure illustrates how LifeSim modeling differs for coastal structures (e.g., + floodwalls, seawalls, and dunes) compared to typical riverine infrastructure (e.g., dams, floodwalls, and levees), including differences in + hydraulic data, warning times, and other considerations specific to coastal infrastructure. This application focuses on the proposed South + Shore Staten Island Hurricane Storm Surge Barrier in New York City, New York; the model was originally developed to support a Risk-Informed + Design risk assessment for the barrier. ), }, - { // STEP 6 + { + // STEP 6 title: ( <> - Estimating Life Loss in Flood Risk Management Planning, details how to compare life loss across an array of Planning - alternatives in LifeSim. This example shows how to use typical Planning hydraulic outputs (e.g., eight flow-frequency events typically used in - Hydrologic Engineering Center’s Flood Damage Reduction Analysis [ HEC-FDA]) in LifeSim to estimate expected annual life loss and how to utilize these - results in the Planning process. + Estimating Life Loss in Planning: Comparing Alternatives for Riverine & Coastal Flooding details how to compare life loss across an array of Planning + alternatives in LifeSim. This example shows how to use the typical hydraulic outputs provided in a Planning study (e.g., eight + flow-frequency events often used in Hydrologic Engineering Center's Flood Damage Reduction Analysis [HEC-FDA] + ) in LifeSim to estimate expected annual life loss and how to utilize these results in the Planning process. The application focuses on the + Ala Wai Flood Risk Management Project in Honolulu, Hawaii. The example demonstrates how to use LifeSim to estimate life loss for a Planning + study, which can differ significantly from estimating life loss for a dam or levee safety risk assessment. This application also + discusses how to handle situations with multiple flood sources, which can result in portions of the population receiving warnings at + different times. ), }, - { // STEP 7 + { + // STEP 7 title: ( <> - Estimating Direct Economic Damages for Flood Risk Management Planning, focuses solely on generating accurate direct - economic damages with more uncertainty than the default parameters. The chapter details how to edit and create structure occupancy types, adjust - stage-damage curve uncertainty, adjust foundation height uncertainty, and adjust structure value uncertainty. + Estimating Direct Economic Damages for Flood Risk Management Planning focuses solely on generating accurate direct + economic damages by updating various uncertainty parameters in LifeSim. Notably, economic damages are not a focus of other applications. + LifeSim is an excellent tool to assist Planning teams in screening measures and alternatives; understanding how to update uncertainty + parameters appropriately will provide teams with confidence in their direct economic damage results. The example focuses on the Ala Wai + Flood Risk Management Project in Honolulu, Hawaii. The chapter details how to edit and create structure occupancy types, adjust stage-damage + curve uncertainty, adjust foundation height uncertainty, and adjust structure value uncertainty. ), }, - { // STEP 8 + { + // STEP 8 title: ( <> - Estimating Consequences Using Summary Grids, demonstrates how to estimate life loss and economic damages - using summary grid output which differs from using Hierarchical Data Format (HDF) files from Hydrologic Engineering Center’s River Analysis System - (HEC-RAS). This example will be helpful for individuals attempting to estimate consequences for a smaller Planning study, a study that did not utilize - unsteady flow in HEC-RAS, or a study with limited output or information from the hydraulic model. + Using Summary Grids in LifeSim demonstrates how to estimate life loss and economic damages using summary grid + output, which differs from using Hierarchical Data Format (HDF) files from Hydrologic Engineering Center's River Analysis System (HEC-RAS){' '} + . This example will be helpful for individuals attempting to estimate consequences for smaller Planning + studies, studies that utilize steady flow in HEC-RAS, or studies with limited output or information from the hydraulic model. This + application will also support Planning teams in screening measures and alternatives early in their study. ), }, ]} /> - - \ No newline at end of file + diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/03-summary-of-lifesim-inputs.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/03-summary-of-lifesim-inputs.mdx index 97547dd18..49a1673e1 100644 --- a/docs/desktop-applications/lifesim/applications-guide/v1.0/03-summary-of-lifesim-inputs.mdx +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/03-summary-of-lifesim-inputs.mdx @@ -1,67 +1,65 @@ --- -title: "Summary of LifeSim Inputs" +title: 'Summary of LifeSim Inputs' --- -import Link from "@docusaurus/Link"; -import addBaseUrl from "@docusaurus/useBaseUrl"; -import Citation from "@site/src/components/Citation"; -import CitationFootnote from "@site/src/components/CitationFootnote"; -import Figure from "@site/src/components/Figure"; -import FigureInline from "@site/src/components/FigureInline"; -import FigReference from "@site/src/components/FigureReference"; -import NavContainer from "@site/src/components/NavContainer"; -import ProcessList from "@site/src/components/ProcessList"; -import TableReference from "@site/src/components/TableReference"; -import TableVertical from "@site/src/components/TableVertical"; -import VersionSelector from "@site/src/components/VersionSelector"; - - +import Link from '@docusaurus/Link'; +import addBaseUrl from '@docusaurus/useBaseUrl'; +import Citation from '@site/src/components/Citation'; +import CitationFootnote from '@site/src/components/CitationFootnote'; +import Figure from '@site/src/components/Figure'; +import FigureInline from '@site/src/components/FigureInline'; +import FigReference from '@site/src/components/FigureReference'; +import NavContainer from '@site/src/components/NavContainer'; +import ProcessList from '@site/src/components/ProcessList'; +import TableReference from '@site/src/components/TableReference'; +import TableVertical from '@site/src/components/TableVertical'; +import VersionSelector from '@site/src/components/VersionSelector'; + + # Summary of LifeSim Inputs ## Purpose -LifeSim requires an array of inputs in order to calculate life loss and/or economic consequences. This section details the general requirements to run - a LifeSim model and some of the recommended pre-processing that should take place outside of LifeSim. The major inputs that require pre-processing -are the emergency planning zones (EPZ), structure inventory, and the summary output polygon(s) used in the simulations. Inputs required to simulate -evacuation (i.e., road network and destinations) are discussed in the Estimating Consequences for Levees and Floodwalls section. +LifeSim requires an array of inputs to calculate life loss and/or economic consequences. This section details the general requirements for running +a LifeSim model, and some recommended pre-processing to be performed outside of LifeSim. The major inputs that require pre-processing +are the emergency planning zones (EPZ), hydraulic data, structure inventory, and the summary output polygon(s) used in the simulations. Inputs required to simulate +evacuation (i.e., road network and destinations) are discussed in detail +in Estimating Consequences for Levees and Floodwalls. ## Hydraulic Data -Each of the applications in this guide details how to import hydraulic data from Hydrologic Engineering Center’s River Analysis System (HEC-RAS), -including various import sources (e.g., summary grids and Hierarchical Data Format files) from HEC-RAS. There are nuances in selecting the correct -hazard occurrence time for dams, levees, cascading dam failures, etc. The hazard occurrence time is defined as the point in time in which the hazard -(e.g., dam breach, levee overtopping) occurs. It is the anchor point for all other time-dependent warning and evacuation parameters within the +Each application in this guide details how to import hydraulic data from Hydrologic Engineering Center's River Analysis System (HEC-RAS), +including various import sources (e.g., summary grids and HDF files). There are nuances in selecting the correct +hazard occurrence time for dams, levees, cascading dam failures, etc. The hazard occurrence time is defined as the point in time at which the hazard +(e.g., dam failure, levee overtopping) occurs. It is the anchor point for all other time-dependent warning and evacuation parameters within the simulation. -It is recommended to reference the Hydraulic Data section for your specific application. There are other hydraulic data sources that can be imported -into LifeSim that are not discussed in the Applications Guide (e.g. FLO2D ). However, they are discussed in the *LifeSim User's Guide*. +It is recommended that you refer to the Hydraulic Data section for your specific application. Other hydraulic data sources that are not discussed +in the Applications Guide can be imported into LifeSim (e.g., FLO2D ). However, they are discussed +in the LifeSim User's Guide - Hydraulic Data. ## Structure Inventory -To use LifeSim to calculate direct life loss and/or economic damages, a structure inventory must be imported into the study. LifeSim will not simulate - if any structure points are located outside of the EPZ. +The user must import a structure inventory into LifeSim to calculate direct life loss and/or economic damages. For LifeSim users located in the U.S., the best available structure inventory data is the most recent version of the National Structure Inventory -(NSI) . The NSI is now public facing and can be leveraged by all LifeSim users. See the NSI User Guide for additional information. This dataset -includes each of the LifeSim required attributes except for Ground Floor Height, Above Ground Floor Height, and Attic Height, which typically use the -default values shown above. An alternative approach to the base NSI dataset can include various county and state data including local tax assessor, -parcel, or footprint data that could help inform building location as well as some of the other attributes. Conducting a survey (direct observation or - virtually using a tool like Google Earth ) within the study area could also inform the structure inventory. +(NSI) . The NSI is now public facing and can be leveraged by all LifeSim users. +See NSI Technical Documentation for additional information. +This dataset includes each of the LifeSim required attributes except for Ground Floor Height, Above Ground Floor Height, and Attic Height, which typically use the +default values as described +in the LifeSim Technical Reference Manual. An +alternative approach to the base NSI dataset can include various county and state data including local tax assessor, +parcel, or footprint data that could help inform building location as well as some of the other attributes. Conducting a survey (direct field observation or +virtually, using a tool like Google Earth ) within the study area could also inform the structure inventory. Occasionally, there may be a local dataset (e.g., from a local university, municipality, or a different study located in the same area) that has been -calibrated specifically for the area of interest and surpasses the precision of some of the NSI’s more general assumptions. If a local dataset is -available, either using GIS software to incorporate the localized data into your inventory or choosing to only use the localized data is often -preferred. +calibrated specifically for the area of interest and surpasses the accuracy of some of the NSI's more general assumptions. If a local dataset is +available, you may want to use that dataset, or use geographic information system (GIS) software to incorporate the localized data into the NSI. The NSI was developed using parcel data, building footprints, and several other data sources to create a comprehensive statistical structure -inventory. LifeSim has the capability of downloading a base NSI inventory based on a provided study area polygon, and other methods for accessing NSI -data will likely become available in the future. If using an alternative to the NSI, a point structure inventory must be created with the following -data fields for each structure: +inventory. If using an alternative data source, your structure inventory will need to be in the form of a point shapefile (.shp) containing the following data +fields for each structure point: - Occupancy Type - Number of Stories @@ -75,125 +73,185 @@ data fields for each structure: - Content Value - Vehicle Value -The first four fields listed above define the structure types and directly impact the life loss calculations. The occupancy type and construction type - fields help to define the structure stability criteria in LifeSim (discussed in more detail in the following sections). Construction type +The first four fields listed above define the structure types and directly impact the economic damage and life loss calculations. The occupancy type and +construction type fields help to define the structure stability criteria in LifeSim (discussed in more detail in the following sections). Construction type specifically denotes outer wall materials such as wood, steel, manufactured, or concrete. The number of stories and foundation height fields help define the potential for vertical evacuation and the first-floor elevation of the structure. Population values are required to calculate life loss. -By default, LifeSim uses the 40 occupancy types from HAZUS listed and described below, although they can be customized. The user can also add new +By default, LifeSim uses the occupancy types from Hazus (listed and described below) , although they can be customized. The user can also add new occupancy types in LifeSim. RESIDENTIAL, rowSpan: 1, colSpan: 3 }, + { value: 'RES1-1SNB', rowSpan: 1, colSpan: 1 }, + { value: 'RES1-1SWB', rowSpan: 1, colSpan: 1 }, + { value: 'RES1-2SNB', rowSpan: 1, colSpan: 1 }, + { value: 'RES1-2SWB', rowSpan: 1, colSpan: 1 }, + { value: 'RES1-3SNB', rowSpan: 1, colSpan: 1 }, + { value: 'RES1-3SWB', rowSpan: 1, colSpan: 1 }, + { value: 'RES1-SLNB', rowSpan: 1, colSpan: 1 }, + { value: 'RES1-SLWB', rowSpan: 1, colSpan: 1 }, + { value: 'RES2', rowSpan: 1, colSpan: 1 }, + { value: 'RES3A', rowSpan: 1, colSpan: 1 }, + { value: 'RES3B', rowSpan: 1, colSpan: 1 }, + { value: 'RES3C', rowSpan: 1, colSpan: 1 }, + { value: 'RES3D', rowSpan: 1, colSpan: 1 }, + { value: 'RES3E', rowSpan: 1, colSpan: 1 }, + { value: 'RES3F', rowSpan: 1, colSpan: 1 }, + { value: 'RES4', rowSpan: 1, colSpan: 1 }, + { value: 'RES5', rowSpan: 1, colSpan: 1 }, + { value: 'RES6', rowSpan: 1, colSpan: 1 }, + { value: COMMERCIAL, rowSpan: 1, colSpan: 3 }, + { value: 'AGR1', rowSpan: 1, colSpan: 1 }, + { value: 'COM1', rowSpan: 1, colSpan: 1 }, + { value: 'COM2', rowSpan: 1, colSpan: 1 }, + { value: 'COM3', rowSpan: 1, colSpan: 1 }, + { value: 'COM4', rowSpan: 1, colSpan: 1 }, + { value: 'COM5', rowSpan: 1, colSpan: 1 }, + { value: 'COM6', rowSpan: 1, colSpan: 1 }, + { value: 'COM7', rowSpan: 1, colSpan: 1 }, + { value: 'COM8', rowSpan: 1, colSpan: 1 }, + { value: 'COM9', rowSpan: 1, colSpan: 1 }, + { value: 'COM10', rowSpan: 1, colSpan: 1 }, + { value: INDUSTRIAL, rowSpan: 1, colSpan: 3 }, + { value: 'IND1', rowSpan: 1, colSpan: 1 }, + { value: 'IND2', rowSpan: 1, colSpan: 1 }, + { value: 'IND3', rowSpan: 1, colSpan: 1 }, + { value: 'IND4', rowSpan: 1, colSpan: 1 }, + { value: 'IND5', rowSpan: 1, colSpan: 1 }, + { value: 'IND6', rowSpan: 1, colSpan: 1 }, + { value: PUBLIC, rowSpan: 1, colSpan: 3 }, + { value: 'EDU1', rowSpan: 1, colSpan: 1 }, + { value: 'EDU2', rowSpan: 1, colSpan: 1 }, + { value: 'GOV1', rowSpan: 1, colSpan: 1 }, + { value: 'GOV2', rowSpan: 1, colSpan: 1 }, + { value: 'REL1', rowSpan: 1, colSpan: 1 }, ], [ - { value: "Single Family, 1 Story no Basement", rowSpan: 1, colSpan: 1 }, - { value: "Single Family, 1 Story w/ Basement", rowSpan: 1, colSpan: 1 }, - { value: "Single Family, 2 Story no Basement", rowSpan: 1, colSpan: 1 }, - { value: "Single Family, 2 Story w/ Basement", rowSpan: 1, colSpan: 1 }, - { value: "Single Family, 3 Story no Basement", rowSpan: 1, colSpan: 1 }, - { value: "Single Family, 3 Story w/ Basement", rowSpan: 1, colSpan: 1 }, - { value: "Single Family, Split Level no Basement", rowSpan: 1, colSpan: 1 }, - { value: "Single Family, Split Level w/ Basement", rowSpan: 1, colSpan: 1 }, - { value: "Mobile home", rowSpan: 1, colSpan: 1 }, - { value: "Multi Family Dwelling, Duplex", rowSpan: 1, colSpan: 1 }, - { value: "Multi Family Dwelling, 3-4 Units", rowSpan: 1, colSpan: 1 }, - { value: "Multi Family Dwelling, 5-9 Units", rowSpan: 1, colSpan: 1 }, - { value: "Multi Family Dwelling, 10-19 Units", rowSpan: 1, colSpan: 1 }, - { value: "Multi Family Dwelling, 20-49 Units", rowSpan: 1, colSpan: 1 }, - { value: "Multi Family Dwelling, 50+ Units", rowSpan: 1, colSpan: 1 }, - { value: "Average Hotel, & Motel", rowSpan: 1, colSpan: 1 }, - { value: "Institutional Dormitory", rowSpan: 1, colSpan: 1 }, - { value: "Nursing Home", rowSpan: 1, colSpan: 1 }, - { value: "Average Retail", rowSpan: 1, colSpan: 1 }, - { value: "Average wholesale", rowSpan: 1, colSpan: 1 }, - { value: "Average Personal & Repair Services", rowSpan: 1, colSpan: 1 }, - { value: "Average Prof/Tech Services", rowSpan: 1, colSpan: 1 }, - { value: "Bank", rowSpan: 1, colSpan: 1 }, - { value: "Hospital", rowSpan: 1, colSpan: 1 }, - { value: "Average Medical Office", rowSpan: 1, colSpan: 1 }, - { value: "Average Entertainment/Recreation", rowSpan: 1, colSpan: 1 }, - { value: "Average Theatre", rowSpan: 1, colSpan: 1 }, - { value: "Parking Garage", rowSpan: 1, colSpan: 1 }, - { value: "Average heavy industrial", rowSpan: 1, colSpan: 1 }, - { value: "Average light industrial", rowSpan: 1, colSpan: 1 }, - { value: "Average Food/Drug/Chem", rowSpan: 1, colSpan: 1 }, - { value: "Average Metals/Minerals processing", rowSpan: 1, colSpan: 1 }, - { value: "Average High Technology", rowSpan: 1, colSpan: 1 }, - { value: "Average Construction", rowSpan: 1, colSpan: 1 }, - { value: "Average Agriculture", rowSpan: 1, colSpan: 1 }, - { value: "Church", rowSpan: 1, colSpan: 1 }, - { value: "Average government services", rowSpan: 1, colSpan: 1 }, - { value: "Average emergency response", rowSpan: 1, colSpan: 1 }, - { value: "Average school", rowSpan: 1, colSpan: 1 }, - { value: "Average college/university", rowSpan: 1, colSpan: 1 } - ] - ] + null, + { value: 'Single-Family Dwelling, 1-Story, No Basement', rowSpan: 1, colSpan: 1 }, + { value: 'Single-Family Dwelling, 1-Story, w/ Basement', rowSpan: 1, colSpan: 1 }, + { value: 'Single-Family Dwelling, 2-Story, No Basement', rowSpan: 1, colSpan: 1 }, + { value: 'Single-Family Dwelling, 2-Story, w/ Basement', rowSpan: 1, colSpan: 1 }, + { value: 'Single-Family Dwelling, 3-Story, No Basement', rowSpan: 1, colSpan: 1 }, + { value: 'Single-Family Dwelling, 3-Story, w/ Basement', rowSpan: 1, colSpan: 1 }, + { value: 'Single-Family Dwelling, Split-Level, No Basement', rowSpan: 1, colSpan: 1 }, + { value: 'Single-Family Dwelling, Split-Level, w/ Basement', rowSpan: 1, colSpan: 1 }, + { value: 'Manufactured Home', rowSpan: 1, colSpan: 1 }, + { value: 'Multi-Family Dwelling, 2 Units', rowSpan: 1, colSpan: 1 }, + { value: 'Multi-Family Dwelling, 3 to 4 Units', rowSpan: 1, colSpan: 1 }, + { value: 'Multi-Family Dwelling, 5 to 9 Units', rowSpan: 1, colSpan: 1 }, + { value: 'Multi-Family Dwelling, 10 to 19 Units', rowSpan: 1, colSpan: 1 }, + { value: 'Multi-Family Dwelling, 20 to 49 Units', rowSpan: 1, colSpan: 1 }, + { value: 'Multi-Family Dwelling, 50+ Units', rowSpan: 1, colSpan: 1 }, + { value: 'Temporary Lodging', rowSpan: 1, colSpan: 1 }, + { value: 'Institutional Dormitory', rowSpan: 1, colSpan: 1 }, + { value: 'Nursing Home', rowSpan: 1, colSpan: 1 }, + null, + { value: 'Agriculture', rowSpan: 1, colSpan: 1 }, + { value: 'Retail Trade', rowSpan: 1, colSpan: 1 }, + { value: 'Wholesale Trade', rowSpan: 1, colSpan: 1 }, + { value: 'Personal and Repair Services', rowSpan: 1, colSpan: 1 }, + { value: 'Business/Professional/Technical Services', rowSpan: 1, colSpan: 1 }, + { value: 'Banks', rowSpan: 1, colSpan: 1 }, + { value: 'Hospital', rowSpan: 1, colSpan: 1 }, + { value: 'Medical Office/Clinic', rowSpan: 1, colSpan: 1 }, + { value: 'Entertainment & Recreation', rowSpan: 1, colSpan: 1 }, + { value: 'Theaters', rowSpan: 1, colSpan: 1 }, + { value: 'Parking', rowSpan: 1, colSpan: 1 }, + null, + { value: 'Heavy Industrial', rowSpan: 1, colSpan: 1 }, + { value: 'Light Industrial', rowSpan: 1, colSpan: 1 }, + { value: 'Food/Drugs/Chemicals', rowSpan: 1, colSpan: 1 }, + { value: 'Metal/Minerals Processing', rowSpan: 1, colSpan: 1 }, + { value: 'High Technology', rowSpan: 1, colSpan: 1 }, + { value: 'Construction Facilities and Offices', rowSpan: 1, colSpan: 1 }, + null, + { value: 'Schools/Libraries', rowSpan: 1, colSpan: 1 }, + { value: 'Colleges/Universities', rowSpan: 1, colSpan: 1 }, + { value: 'General Government Services', rowSpan: 1, colSpan: 1 }, + { value: 'Emergency Response', rowSpan: 1, colSpan: 1 }, + { value: 'Church/Non-Profit Organizations', rowSpan: 1, colSpan: 1 }, + ], + [ + null, + { value: 'Family home', rowSpan: 1, colSpan: 1 }, + { value: 'Family home', rowSpan: 1, colSpan: 1 }, + { value: 'Family home', rowSpan: 1, colSpan: 1 }, + { value: 'Family home', rowSpan: 1, colSpan: 1 }, + { value: 'Family home', rowSpan: 1, colSpan: 1 }, + { value: 'Family home', rowSpan: 1, colSpan: 1 }, + { value: 'Family home', rowSpan: 1, colSpan: 1 }, + { value: 'Family home', rowSpan: 1, colSpan: 1 }, + { value: 'Mobile home, trailer', rowSpan: 1, colSpan: 1 }, + { value: 'Duplex, home with on-site rental', rowSpan: 1, colSpan: 1 }, + { value: 'Apartments, condominiums', rowSpan: 1, colSpan: 1 }, + { value: 'Apartments, condominiums', rowSpan: 1, colSpan: 1 }, + { value: 'Apartments, condominiums', rowSpan: 1, colSpan: 1 }, + { value: 'Apartments, condominiums', rowSpan: 1, colSpan: 1 }, + { value: 'Apartments, condominiums', rowSpan: 1, colSpan: 1 }, + { value: 'Hotel, motel, hostel', rowSpan: 1, colSpan: 1 }, + { value: 'Prison, school, college dorm', rowSpan: 1, colSpan: 1 }, + { value: 'Elder care facilities with staff (not senior living)', rowSpan: 1, colSpan: 1 }, + null, + { value: 'Ag product and livestock storage, offices, raw material sorting and packaging', rowSpan: 1, colSpan: 1 }, + { value: 'Department store, strip mall, stores, shops, malls', rowSpan: 1, colSpan: 1 }, + { value: 'Warehouse store, distribution centers', rowSpan: 1, colSpan: 1 }, + { value: 'Gas and service stations, hair salon', rowSpan: 1, colSpan: 1 }, + { value: 'Office buildings, shared workspaces', rowSpan: 1, colSpan: 1 }, + { value: 'Financial services', rowSpan: 1, colSpan: 1 }, + { value: 'Emergency rooms, triage, surgery (inpatient)', rowSpan: 1, colSpan: 1 }, + { value: 'Dentist, general practitioner (outpatient)', rowSpan: 1, colSpan: 1 }, + { value: 'Restaurants', rowSpan: 1, colSpan: 1 }, + { value: 'Movie theatre, performance stages', rowSpan: 1, colSpan: 1 }, + { value: 'Parking lots, parking garages (not dedicated to another building)', rowSpan: 1, colSpan: 1 }, + null, + { value: 'Factory', rowSpan: 1, colSpan: 1 }, + { value: 'Warehouse', rowSpan: 1, colSpan: 1 }, + { value: 'Oil refinery, food processing plants', rowSpan: 1, colSpan: 1 }, + { value: 'Mining, manufacture', rowSpan: 1, colSpan: 1 }, + { value: 'Research and development labs, server farms', rowSpan: 1, colSpan: 1 }, + { + value: 'Buildings under construction, construction material yards (e.g., lumber, gravel, steel), contractor offices', + rowSpan: 1, + colSpan: 1, + }, + null, + { value: 'Grade school, high school, pre-school, administrative offices', rowSpan: 1, colSpan: 1 }, + { value: 'Classrooms, dining, administration (non-living quarters)', rowSpan: 1, colSpan: 1 }, + { value: 'City, state, Federal government offices, utility maintenance buildings', rowSpan: 1, colSpan: 1 }, + { value: 'Police station, fire station, emergency operations centers, critical function offices', rowSpan: 1, colSpan: 1 }, + { value: 'Mosque, Elks Lodge, union hall, Grange (public meeting venue, sporadic use)', rowSpan: 1, colSpan: 1 }, + ], + ]} + alt="Hazus Occupancy Types" + caption={ + <> + Hazus Occupancy Types Used in LifeSim (FEMA, 2025) . + } - alt="HAZUS Occupancy Types Used in LifeSim" - caption="HAZUS Occupancy Types Used in LifeSim" - colWidths={[25, 40]} - widthMode="intrinsic" + colWidths={['13%', '33%', 'auto']} /> -When importing a structure inventory into LifeSim, if structure, content, and/or vehicle values are not readily available, you can check the “Missing” - box and enter a default value. In the example below, all structures in the structure inventory have a value of 200,000 dollars. If the purpose of the study -is only to evaluate life loss and not monetary damages, it may be appropriate to set these values to 0 dollars. +When importing a structure inventory into LifeSim, if structure, content, and/or vehicle values are not readily available, you can +check the "Missing" +box and enter a default value. In the example below, all structures in the structure inventory have a value of 200,000 dollars. If the purpose of the study +is only to evaluate life loss and not monetary damages, it may be appropriate to set these values to 0 dollars, or to 1 dollar +to obtain percent damaged for each structure and the overall structure inventory.
@@ -202,26 +260,27 @@ is only to evaluate life loss and not monetary damages, it may be appropriate to An EPZ is a geospatial area where the warning and evacuation characteristics are homogeneous; the Emergency Management Agency responsible for evacuating people within the EPZ will have the same evacuation planning and preparedness, community participation and awareness, and types of flood -warning systems available. EPZs also allow LifeSim to have different warning and mobilization parameters for areas that experience different flooding -characteristics (e.g., breach flows and non-breach flows). Depending on the study’s purpose and level of detail there could be different parameters -for different areas, communities, or counties. Refer to the for additional information regarding EPZs. +warning systems available. EPZs also allow LifeSim to include distinct warning and mobilization parameters for areas with varying flooding +characteristics (e.g., failure flows and non-failure flows). Depending on the study's purpose and level of detail, parameters may vary by area, community, or county. +Refer +to LifeSim Technical Reference Manual - Warning and Protective Action Parameters for +additional information regarding EPZs. ## Alternatives -Each of the applications in this guide include specific details regarding creating alternatives, including selecting imminent hazard identification -times (i.e., warning times), simulating evacuation, and how many alternatives to include per hydraulic scenario. There are nuances to creating +Each application in this guide includes specific details on creating alternatives, including selecting imminent hazard identification +times (i.e., warning times), simulating evacuation, and determining how many alternatives to include per hydraulic scenario. There are nuances to creating alternatives for different types of LifeSim models. -It is strongly recommended to reference each example's *Alternatives* section to better understand these nuances. +It is strongly recommended that you refer to each example's **_Alternatives_** section to understand these nuances better. ## Simulations -There are limited options to select in the Simulations window. However, a key part of LifeSim Simulations is the summary output polygon. A summary +There are limited options to select in the Simulations window. However, a key component of LifeSim Simulations is the summary output polygon. A summary output polygon is required when creating a simulation. The user may enter multiple summary output polygons in a single simulation. Similar to the -EPZs, the summary output polygon is a geospatial area and LifeSim will generate results based on the areas in the summary output polygon. The summary +EPZs, the summary output polygon is a geospatial area, and LifeSim will generate results based on the areas within it. The summary output polygon can be a shapefile that is not an input for LifeSim. An example of this is using the U.S. Census city boundaries shapefiles to receive -LifeSim results by city. Another example is simply using the study’s EPZ as the summary output polygon if the results do not need to be specifically +LifeSim results by city. Another example is simply using the study's EPZ as the summary output polygon if the results do not need to be specifically delineated by area. - - \ No newline at end of file + diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/04-estimating-consequences-for-levees-and-floodwalls.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/04-estimating-consequences-for-levees-and-floodwalls.mdx index 1a69f1fae..2e0bd3d8b 100644 --- a/docs/desktop-applications/lifesim/applications-guide/v1.0/04-estimating-consequences-for-levees-and-floodwalls.mdx +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/04-estimating-consequences-for-levees-and-floodwalls.mdx @@ -1,51 +1,77 @@ --- -title: "Estimating Consequences for Levees and Floodwalls" +title: 'Estimating Consequences for Levees and Floodwalls' --- -import Link from "@docusaurus/Link"; -import addBaseUrl from "@docusaurus/useBaseUrl"; -import Citation from "@site/src/components/Citation"; -import CitationFootnote from "@site/src/components/CitationFootnote"; -import Figure from "@site/src/components/Figure"; -import FigureInline from "@site/src/components/FigureInline"; -import FigReference from "@site/src/components/FigureReference"; -import NavContainer from "@site/src/components/NavContainer"; -import ProcessList from "@site/src/components/ProcessList"; -import TableReference from "@site/src/components/TableReference"; -import TableVertical from "@site/src/components/TableVertical"; -import VersionSelector from "@site/src/components/VersionSelector"; - - +import Link from '@docusaurus/Link'; +import addBaseUrl from '@docusaurus/useBaseUrl'; +import Citation from '@site/src/components/Citation'; +import CitationFootnote from '@site/src/components/CitationFootnote'; +import Figure from '@site/src/components/Figure'; +import FigureInline from '@site/src/components/FigureInline'; +import FigReference from '@site/src/components/FigureReference'; +import NavContainer from '@site/src/components/NavContainer'; +import ProcessList from '@site/src/components/ProcessList'; +import TableReference from '@site/src/components/TableReference'; +import TableVertical from '@site/src/components/TableVertical'; +import VersionSelector from '@site/src/components/VersionSelector'; + + # Estimating Consequences for Levees and Floodwalls ## Purpose -This example demonstrates the process for estimating consequences for levees or floodwalls in LifeSim. The general process is similar to the ***Estimating Consequences for Dams*** section, but there -are modeling nuances specific to levees or floodwalls. This chapter focuses on the Cache Creek Levee located in Yolo County, CA. This levee system was - originally modeled in 2021 by the U.S. Army Corps of Engineers’ (USACE) Modeling, Mapping and Consequences (MMC) Production Center. This chapter -includes step-by-step instructions for importing the required data into LifeSim for a levee or floodwall breach model, how to choose appropriate -warning and evacuation data for a study area, how to simulate evacuation, and how to interpret model results. +This example demonstrates the process for estimating consequences for levee or floodwall failures in LifeSim. The general process is similar to +the Estimating Consequences for Dams example, +but there are modeling nuances specific to modeling levees or floodwalls. This chapter focuses on the Cache Creek Levee located in Yolo +County, CA. This levee system was originally modeled in 2021 by the U.S. Army Corps of +Engineers (USACE) Modeling, Mapping, and Consequence (MMC) Mandatory +Center of Expertise (MCX). + +This chapter includes step-by-step instructions on importing the required data into LifeSim for a levee or floodwall, selecting appropriate warning +and evacuation data for a study area, simulating evacuation, and interpreting model results. + +_Note: The model results included in this chapter are for example purposes only and are not representative of actual life loss and +economic damage estimates for the Cache Creek Levee project._ ## Input Data The subsequent sections discuss the input data required to calculate direct damages and life loss for a levee or floodwall in LifeSim. The input data -sections include hydraulic data, emergency planning zones (EPZ), structure inventories, road networks, destinations, creating alternatives, and -simulating alternatives. +sections include Hydraulic Data, Emergency Planning Zones (EPZ), Structure Inventories, Road Networks, Destinations, Creating Alternatives, and +Simulating Alternatives. ## Hydraulic Data -The Cache Creek Levee utilized output from the Hydrologic Engineering Center’s River Analysis System (HEC-RAS) . When using HEC-RAS data in LifeSim, -the hydraulic data should be in the form of Hierarchical Data Format (HDF) files. HDF files are essentially a file package of depths, velocities, and -hydraulic timing. Using HDF files allows you to simulate evacuation in LifeSim easily and with greater detail. For most levees/floodwalls, it is -recommended to simulate evacuation to accurately capture potential life loss in structures and on roads. The HEC-RAS plan HDF file and the -HEC-RAS terrain HDF file are needed for each hydraulic scenario. +There are a few key considerations when importing hydraulics for a levee risk assessment, especially when selecting an appropriate hydrograph extraction location +and hazard occurrence time. It's important first to understand what is considered the leveed area (i.e., a conservative estimate of the lands from which flood water +would be excluded by the levee system), which you can usually find in +the National Levee Database (U.S. Government access only). For the best modeling results, coordinate with the district and +risk assessment team to ensure the leveed area is representative before moving forward with LifeSim modeling. + +For levee risk assessments, the hazard occurrence time is when inundation first reaches the leveed area. Most often, inundation first reaches the leveed area due to +levee overtopping or a levee breach. Other instances result in flooding in the leveed area before overtopping or breach occurs, including levee-flanking flow, drainage +flooding, and internal pumps. In these instances, you may need to warn a portion of the leveed area earlier relative to when they are first inundated, regardless of +the source of flooding. Refer to the Modeling Cascading Dam Failures in LifeSim +and Estimating Life Loss for Planning +examples for additional information on warning different portions of the study area based on different flood sources. + +If you are having a difficult time selecting the appropriate hazard occurrence time, include sensitivity scenarios (i.e., import the same hydraulic data with different +hazard occurrence times) into your LifeSim model. Also, consider when it is most likely that the emergency manager would issue an evacuation order and/or when people +would begin to see floodwaters and evacuate on their own accord. + +If there is flooding outside the leveed area that needs to be accounted for, these areas should have a separate EPZ and should be warned based on when overbank flooding +first occurs. + +The Cache Creek Levee utilized output from the Hydrologic Engineering Center's River Analysis System (HEC-RAS) . +When using HEC-RAS data in LifeSim, the hydraulic data should be in the form of hierarchical data format (HDF) files. HDF is an open-source file format +that supports large, complex, heterogeneous data (note: only HEC-RAS versions 5.0 and later produce the HDF files required by LifeSim). For HEC-RAS HDF plan files, the output +is essentially a package of depths, velocities, and hydraulic timing files. Using HDF files allows you to simulate evacuation in LifeSim easily and with greater detail. +For most levees/floodwalls, it is recommended to simulate evacuation to accurately capture potential life loss in structures and on roads. + +The HEC-RAS HDF plan files (i.e., _pxx.hdf_), the HEC-RAS terrain HDF file, and all associated terrain files (i.e., _.tif_ and _.vrt_ files) are required for input into +LifeSim. -To import the hydraulic data from HEC-RAS, right click on Hydraulic Data in the study pane, and select Import from +To import the hydraulic data from HEC-RAS, right-click on Hydraulic Data in the study pane and select Import from HEC-RAS.
. caption="Importing hydraulic data from HEC-RAS" /> -From the Import from HEC-RAS window, map to the project’s HEC-RAS Plan(s) Directory by clicking on the button with the three dots. The file directory -selected should contain plan HDF files from HEC-RAS (e.g., p01.hdf). Then, map to the project’s HEC-RAS Terrain File (e.g., terrain.hdf) by clicking -on the button with three dots. Note, you will also need all terrain Tagged Image Format (TIF) files. Then, you will select the specific HEC-RAS plan -you want to import by using the dropdown next to HEC-RAS Plan. Once selected, the Name of the hydraulic scenario automatically populates, but the user - can alter the Name. Once you have the hydraulic data selected in the Import from HEC-RAS window, you can either select Import from -RAS or Import from Map. +From the Import from HEC-RAS window (), map to the project's _HEC-RAS Plan(s) Directory_ by clicking on the button with the three +dots . The selected file directory +should contain the plan HDF files from HEC-RAS (e.g., _p01.hdf_). Then, map to the project's _HEC-RAS Terrain File_ (e.g., _terrain.hdf_) by clicking +on the button with three dots (the terrain +file will automatically populate if the _.hdf_ file and all other associated files are in the same folder as the HEC-RAS plan). +Then, you will select the specific HEC-RAS plan you want to import by using the dropdown next to _HEC-RAS Plan_. Once selected, the Name of the hydraulic +scenario automatically populates, but you can alter the Name. Once you have the hydraulic data selected in the Import from HEC-RAS window, you can either +select Import from RAS or Import from Map.
or Import from Map. ### Import HEC-RAS Data – Import from RAS -If you select Import from RAS, select the cross section where the hazard (e.g., overtopping or breach) occurs within the study area. -The hydraulic engineer should supply you with the project’s breach locations, which correspond to a cross section. After selecting the correct cross +If you select Import from RAS, select the cross section where the hazard (e.g., overtopping or failure) occurs within the study area. +The hydraulic engineer should supply you with the project's breach locations, which correspond to a cross section. After selecting the correct cross section, click OK.
OK. caption="Import from RAS – RAS Results Selector window" /> -You automatically return to the Import from HEC-RAS window. A representative hydrograph is now shown in the window along with hydraulic timing +You automatically return to the Import from HEC-RAS window. A representative hydrograph is now displayed in the window along with hydraulic timing information and corresponding depths at each timestep. Within this window, enter the Hazard Occurrence date and time. The Hazard Occurrence date and -time should match the time that breach or overtopping (if applicable) begins within the study area. This information can be found in the HEC-RAS model - or provided to you by the hydraulic engineer. Press OK; the hydraulic scenario is processed and imported into LifeSim. +time should match the time that failure or overtopping (if applicable) begins within the study area. You can find this information in the HEC-RAS model +or the hydraulic engineer can provide it. Press OK; the hydraulic scenario is processed and imported into LifeSim.
Import from Map, the RAS Map Data caption="RAS Map Data Selector window" /> -To view a hydrograph along with its hydraulic timing and depths, use the Select Hydrograph Tool in the toolbar (shown below). +To view a hydrograph along with its hydraulic timing and depths, use the Select Hydrograph Tool in the toolbar (shown in ).
The RAS Map Data Selector map window automatically displays the 2D areas used in the RAS modeling, the cross sections, the hydraulic animation, and a -base map. The user can change the base map and add data to the map window (e.g., breach locations shapefile, leveed area shapefile, structure -inventory, etc.) by clicking on the Add Data button (see below). +base map. You can change the base map and add data to the map window (e.g., breach locations shapefile, leveed area shapefile, structure +inventory, etc.) by clicking on the Add Data button (see ).
Add Data button (see below) caption="Add Data feature in the RAS Map Data Selector" /> -For the Cache Creek Levee, adding the breach location shapefile (“LCL” in the layers shown in the figure below) and the leveed area shapefile -(“POLYGON” in the layers shown in the figure below) to the map window was useful in finding the where the hazard first occurs near the breach +For the Cache Creek Levee, adding the breach location and leveed area shapefiles ("LCL" and "POLYGON," respectively, in the layers +shown in ) to the map window was useful in finding where the hazard first occurs near the breach location.
-Once you find a representative hydrograph for the hydraulic scenario, click OK. The Import from HEC-RAS window is now shown. The new -window displays hydraulic timing information as well as the same representative hydrograph. Again, the Hazard Occurrence date and time should match -the time that breach or overtopping (if applicable) begins within the study area. Press OK; the hydraulic scenario will be processed +Once you find a representative hydrograph for the hydraulic scenario, click OK. The Import from HEC-RAS window reopens. The +window now displays hydraulic timing information as well as the same representative hydrograph. Again, the Hazard Occurrence date and time should match +the time that failure or overtopping (if applicable) begins within the study area. Press OK; the hydraulic scenario will be processed and imported into LifeSim.
-Repeat this process for each of the study’s hydraulic scenarios. +Repeat this process for each of the study's hydraulic scenarios. ## Emergency Planning Zones -As discussed in the , EPZs are polygons that allow LifeSim to have different warning and mobilization parameters for different geographic areas and/or - for areas that experience different flooding characteristics. For most levees and floodwalls, the shapefile used for the EPZ should represent the -estimated leveed area. Otherwise, it is likely that both economic damages and life loss estimates would be inflated due to including consequences that - are outside of the leveed area. Presumably you are estimating the risk of a levee or floodwall; therefore, you need to understand where the -incremental risk (i.e., “levee risk” or the risk associated with the levee) is, which is within the leveed area. +For most levees and floodwalls, the shapefile used for the EPZ should represent the leveed area. Otherwise, it is likely that both economic damages and +life loss estimates would be inflated due to including consequences that are outside of the leveed area. Presumably you are estimating the consequences +and risk of a levee or floodwall; therefore, you need to understand where the excess risk (i.e., "levee risk" or the risk associated with the levee) is, +which is only within the leveed area. -For most levees and floodwalls, the shapefile used for the EPZ should represent the estimated leveed area. The National Levee Database (NLD) is a -resource that includes most floodwalls and levees within the U.S. . The NLD shows the leveed area for each project and allows you to download the -leveed area as a shapefile, which should be used as the EPZ for the entire study. +The National Levee Database (NLD) is a +resource that includes most floodwalls and levees within the U.S. . The NLD shows the leveed area for each project and allows you +to download the leveed area as a shapefile, which should be used as the EPZ for the study. -If the project is not included in the NLD or you are unable to access the NLD, it is recommended to obtain the HEC-RAS model’s 2D mesh area and use -this shapefile as the EPZ. It’s also recommended to discuss what should be considered the leveed area with your hydraulic engineer and any other team +If the project is not included in the NLD or you are unable to access the NLD, it is recommended to obtain the HEC-RAS model's 2D mesh area and use +this shapefile as the EPZ. It's also recommended to discuss what should be considered the leveed area with your hydraulic engineer and any other team members on the study. ### EPZ Warning and Protective Action Parameters Once you have a representative shapefile for the EPZ, the next step is to assign the Warning and Protective Action Data, including the Warning -Issuance Delay, Warning Diffusion (First Alert Curves), and Protective Action Initiation (PAI) parameters. +Issuance Delay, Warning Diffusion (First Alert Curves), and Protective Action Initiation (PAI) parameters. For additional information on the warning and evacuation parameters +and what most directly influences these parameters, reference +_A Guide +to Public Alerts and Warnings for Dam and Levee Emergencies_. + +There are a few types of resources to consider when gathering information about the area's warning and evacuation procedures: -There are a few types of resources to consider when gathering information about the area’s warning and evacuation procedures: - Any expert opinion consequence elicitations conducted in the relevent city or county within 5 years of the current analysis - - ), + { + // STEP 1 + title: <>Any expert opinion consequence elicitations conducted in the relevant city or county within 5 years of the current analysis, }, - { // STEP 2 + { + // STEP 2 title: ( <> - The Levee Screening Tool (LST) + The Levee Screening Tool (LST) ), }, - { // STEP 3 - title: ( - <> - Local, county, and/or state Emergency Management Agency (EMA) websites and social media - - ), + { + // STEP 3 + title: <>Local, county, and/or state Emergency Management Agency (EMA) websites and social media, }, ]} /> -Reaching out to communities directly, or the responsible USACE districts, and asking questions to gauge the need for a more formal consequence elicitation -is perfectly acceptable if there is some uncertainty regarding the best available data. +Reaching out to communities directly, or the responsible USACE districts, and asking questions to gauge the need for a more formal consequence elicitation +is encouraged if there is some uncertainty regarding the best available data. -If these resources are not available for your project, you should select LifeSim’s preset Unknown parameters for Warning Issuance Delay, Hazard +If these resources are not available for your project, you should select LifeSim's preset Unknown parameters for Warning Issuance Delay, Hazard Communication Delay, and Protective Action Initiation curves within the EPZ editor. -The subsequent sections discuss the three resources that should be considered when developing your warning and evacuation parameters. +The subsequent sections detail the three resources that should be considered when developing your warning and evacuation parameters. #### Using Existing Consequence Elicitation Data to Inform LifeSim Parameters -Over recent years, many consequence elicitations have been conducted within the U.S. to support risk assessments. The consequence elicitations are -generally conducted for various high-risk cities and/or counties. When starting a new LifeSim model or risk assessment, check if an elicitation was -already conducted within your study area. The current consequence elicitation directory is stored on a USACE shared drive and is for internal use only. +Over recent years, many consequence elicitations have been conducted by USACE to support risk assessments. The consequence elicitations are +generally conducted for various high-risk cities and/or counties. Information on elicitations and the questionnaire itself is available +in the LifeSim Technical Reference Manual - Appendix B. When starting a new LifeSim model or risk assessment, check if an elicitation was +already conducted within your study area. The current consequence elicitation directory is stored on a USACE shared drive and is for internal use only. If an elicitation was completed, you can likely use most of these same parameters for your LifeSim model. It is recommended to review the elicitation results, including the meeting notes and elicited LifeSim parameters, to ensure the parameters are logical for your levee project. If the elicitation @@ -221,13 +248,13 @@ decision. #### Using the Levee Screening Tool to Inform LifeSim Parameters The LST can contain helpful information regarding expected emergency action plans, community awareness, and warning systems -to inform the EPZ’s warning and evacuation data. Within the LST, a levee may have several segments with individual screenings. It is recommended to +to inform the EPZ's warning and evacuation data. Within the LST, a levee may have several segments with individual screenings. It is recommended to look at the segment with the most screenings, or to identify the screening that was completed most recently; this screening will have the most -up-to-date information. Generally, all levee units are rescreened as a system, but there can be special instances in which this is not the case. +up-to-date information. Generally, all levee units are rescreened as a system, but there can be special instances in which specific units are rescreened. -If you attempt to login to the LST and are unable, there are instructions on the login page to request/create an account. +If you attempt to log in to the LST and are unable, there are instructions on the login page to request/create an account. -The figure below shows the screenings for the segments of Cache Creek Levee available in the LST. + below shows the screenings for the segments of Cache Creek Levee available in the LST.
-As shown in the figure below, Cache Creek Levee was last screened several years ago in 2015. The user may find that this information is not recent -enough to use in the LifeSim study. Since the 6 levee segments were all screened at the same, I selected the segment that has the most screenings: -Willow Slough Bypass – Unit 1, left bank. +As shown in below, Cache Creek Levee was last screened several years ago in 2015. You may find that +this information is not recent +enough to use in the LifeSim study. Since the six levee segments were all screened at the same time, the segment with the most screenings was selected: +_Willow Slough Bypass – Unit 1, left bank_.
below.
-The Evacuation Planning factor may help determine the Warning Issuance Delay. As shown above, the latest Evacuation Planning information is from 2012 +Notably, each of the three factors (Evacuation Planning, Community Awareness, and Flood Warning Effectiveness) overlaps with the various LifeSim parameters, +and the information from each LST factor should be considered when selecting each of the LifeSim parameters for your study. + +The Evacuation Planning factor can primarily be used to inform the Warning Issuance Delay. As shown above, the latest Evacuation Planning information is from 2012 and 2013. This may not be the most up-to-date information; it is recommended to confirm the information by looking into the Emergency Management -Agency’s website (see next section for details). If the Evacuation Planning factor was given an Acceptable rating (with quality reasoning) you would +Agency's website (see next section for more details). If the Evacuation Planning factor was given an Acceptable rating (with quality reasoning) you would select an optimistic Warning Issuance Delay curve, such as Well Prepared. -The Community Awareness factor can be used to inform the Protective Action Initiation curve. If the rating is Acceptable and the explanation includes +The Community Awareness factor can primarily be used to inform the Protective Action Initiation curve. If the rating is Acceptable and the explanation includes information about recent flood events/evacuations, public education campaigns, and flood preparedness as a topic in the media, then an optimistic PAI curve could be warranted, such as the Perception: High / Preparedness: High. However, if the rating is Unacceptable and none of the previously stated factors are included in the explanation, a more pessimistic PAI curve may be warranted, such as the Perception: Low / Preparedness: Low. -The Flood Warning Effectiveness factor can be used to inform the Warning Diffusion/First Alert curves. If this factor received an Acceptable rating +The Flood Warning Effectiveness factor can primarily be used to inform the Warning Diffusion/First Alert curves. If this factor received an Acceptable rating and the explanation details several different types of warning channels (e.g., radio, media, reverse 911, and texts), then an optimistic Warning -Diffusion curve should be used, such as the Moderately Fast or the Fast curves. +Diffusion curve should potentially be used, such as the Moderately Fast or the Fast curves. -If the ratings and explanations could defend a variety of LifeSim parameters, it is recommended performing sensitivity runs using a variety of -parameters to determine if life loss changes significantly and then seek additional information from the local sponsor and/or the project’s district -office. The local personnel should be able to provide more information to determine final LifeSim parameters if necessary. Additionally, you can -provide a variety of results in your study and clearly state the differences between the sets of alternatives and simulations. The variety of -scenarios provide uncertainty to the life loss estimates, especially if there is some uncertainty regarding some of the warning and evacuation -parameters. Ensure there is defensible reasoning for each uncertainty parameter. +If the ratings and explanations could support the use of multiple LifeSim parameters (i.e., based on the information, a case could be made to use the +Moderate, Moderately Fast, or Fast Warning Diffusion Curves), it is recommended to perform sensitivity runs using a variety of parameters to determine +if life loss changes significantly and then seek additional information from the local sponsor and/or the project's district office. The local personnel +should be able to provide more information to determine final LifeSim parameters if necessary. Additionally, you can provide a variety of results in your +study and clearly state the differences between the sets of alternatives and simulations. The variety of scenarios provides uncertainty bounds to the life loss +estimates, especially if there is uncertainty regarding some of the warning and evacuation parameters. Ensure there is defensible reasoning for each +uncertainty parameter. #### Using Emergency Management Agency Websites to Inform LifeSim Parameters -Looking through the county’s Emergency Management Agency’s (EMA) website or social media provides insight on the area’s emergency procedures, recent -updates to emergency action plans or hazard mitigation plans (if applicable), and what warning channels are available, which can inform the EPZ’s +Looking through the county's Emergency Management Agency's (EMA) website or social media provides insight on the area's emergency procedures, recent +updates to emergency action plans or hazard mitigation plans (if applicable), and what warning channels are available, which can inform the EPZ's warning and evacuation data. The Cache Creek Levee is in Yolo County, CA. This section discusses the emergency procedures and resources from Yolo County Emergency Management and -demonstrates how to use this type of information to select appropriate warning and evacuation parameters. As shown in the screenshot below, Yolo -County’s website links to Current Emergencies and Incidents (listed in both English and Spanish), Flooding Resources, and the county’s relatively -recent updates to emergency preparedness and resources. +demonstrates how to use this type of information to select appropriate warning and evacuation parameters. As shown in the screenshot below, the Yolo +County Office of Emergency Services website links to Current Emergencies and Incidents (listed in both English and Spanish), +Flooding Resources, and the county's relatively recent updates to emergency preparedness and resources.
-As you scroll down this webpage, there are additional links about how to prepare for an emergency, signing up for Yolo Alert, and contact information -for the Office of Emergency Services. After clicking on the link to sign up for emergency alerts, you are sent to a webpage to sign up for Yolo -County’s warning system, Everbridge, which is an advanced public warning system. +As you scroll down this webpage, there are additional links about how to prepare for an emergency, a log of recent events (which may inform on the EMA's and +community's experience with flooding), how to sign up for Yolo Alert, and contact information for the Office of Emergency Services. After clicking on the +link to sign up for emergency alerts, you are sent to a webpage to sign up for Yolo County's warning system, Everbridge, which is an advanced public warning system.
Emergency Planning Zones in the study tree and select Import EPZs from Shapefile.
Emergency Planning Zones in the study tree and select< caption="How to Import an emergency planning zone from the LifeSim study tree" /> -The Import Emergency Planning Zones window opens. First, map to the EPZ shapefile. You can do this by either utilizing the Emergency Planning Zone +The Import Emergency Planning Zones window opens (). First, map to the EPZ shapefile. You can do this either by +utilizing the Emergency Planning Zone Polygon Shapefile dropdown, which displays the polygon shapefiles that are currently in your Map Layers, or you can map to the shapefile by clicking -on the button with the three dots next to dropdown. +on the button with the three dots next to +the dropdown.
-Then, designate one of the shapefile’s fields as the Emergency Planning Zone Name Field. If you are importing a shapefile composed of multiple areas, +Then, designate one of the shapefile's fields as the Emergency Planning Zone Name Field. If you are importing a shapefile composed of multiple areas, or EPZs (e.g., two counties), the Emergency Planning Zone Name Field needs to have unique values. After selecting the Name Field, select the warning -and evacuation data for the EPZ(s). For the Cache Creek Levee, the National Levee Database named the leveed area “Sugarfield – Woodland NE”. +and evacuation data for the EPZ(s). For the Cache Creek Levee, the National Levee Database named the leveed area "Sugarfield – Woodland NE". As stated previously, information from the Yolo County Office of Emergency Services website is heavily utilized to select warning and evacuation data. - To accurately select the Warning Issuance Delay curve to be used in the study, consider if there are message templates, if the county has recently +To accurately select the Warning Issuance Delay curve to be used in the study, consider if there are message templates, if the county has recently (within the past 10 years) sent out an evacuation warning, especially within the leveed area, and if there are trainings or standard operating procedures for writing warning messages. When utilizing only the local emergency management website, some of this information may be difficult to find. It is recommended to do additional -research about the leveed area and any flooding that may have occurred in this area. For example, after a brief internet search, there multiple -articles reporting that the Cache Creek Levee was overtopped in 2019. Yolo County Sheriff’s Office released evacuation notices via Twitter (see -screenshot below) and through Yolo County AlertSense (Everbridge). Yolo County emergency managers have recently sent out warning and evacuation -messages directly related to a levee safety emergency occurring at Cache Creek Levee. +research about the leveed area and any flooding that may have occurred in this area. For example, after a brief internet search, there are multiple +articles reporting that the Cache Creek Levee was overtopped in 2019. As shown in , the Yolo County Sheriff's Office +released evacuation notices via Twitter (i.e., X) and through Yolo County AlertSense (i.e., Everbridge). Yolo County +emergency managers have recently sent out warning and evacuation messages directly related to a levee safety emergency occurring at Cache Creek Levee.
-Because we don’t fully understand how quickly the warning was sent out relative to when Yolo County was notified of the emergency, the Moderately -Prepared Warning Issuance Delay curve was selected to allow for more uncertainty in the delay time. The most likely sampled warning issuance delay -time is 16 minutes (about 21% likelihood), but there is still probability that the delay is longer or shorter (i.e., there is a 12% likelihood that -the delay is 50 minutes; there is a 15% likelihood the delay is 10 minutes.) +In addition to researching media outlets, nearby U.S. Geological Survey (USGS) river gauges and/or associated National Weather +Service (NWS) forecast stations can be extremely helpful in understanding +the area's flooding history. These websites typically include flood thresholds (e.g., minor, moderate, and major flooding stages) and a history of record stages. +There can also be information on the timing of the flood event, which can help inform the Relative Hazard Identification Time (i.e., warning times). The screenshot +below shows details of a gauge located on Cache Creek. This information was provided by Cache Creek at Yolo, CA (YLOC1 Gauge Data). + +
+ +Because it is not fully understood how quickly the warning was sent out relative to when Yolo County was notified of the emergency, and +there is some uncertainty regarding the overall preparedness of the emergency managers, the Moderately Prepared Warning Issuance Delay +curve was selected to be more conservative and allow for more uncertainty in the delay time. The most likely sampled warning issuance +delay time is 16 minutes (about 21% likelihood), but there is still probability that the delay is longer or shorter (i.e., there is +a 12% likelihood that the delay is 50 minutes; there is a 15% likelihood the delay is 10 minutes).
-Next, select First Alert Diffusion curves for the EPZ. This parameter is heavily influenced by the amount of communication channels the county would -use during a levee safety emergency. As shown in (), Yolo County has an opt-in alert system. The website also shows Yolo County uses -Everbridge, which is a robust mass alert system. Everbridge distributes messages via phone calls, texts, and emails. Additionally, following the 2019 -Cache Creek Levee overtopping, it’s likely that several people signed up for alert messages through AlertSense. It is known that Yolo County utilizes -social media, radio, and news to distribute a warning message. +Next, select First Alert Diffusion curves for the EPZ. This parameter is heavily influenced by the number of communication channels the county would +use during a levee safety emergency. As shown in , Yolo County has an opt-in alert system. The opt-in alert system is a +robust mass alert system, which distributes messages via phone calls, texts, and emails. Following the 2019 Cache Creek Levee overtopping, it's likely that +several people signed up for alert messages through AlertSense. However, it's important to consider that opt-in systems typically +account for only a fraction of the Population at Risk (PAR) +(generally less than 25%). It is known that Yolo County utilizes social media, radio, and news to distribute a warning message. It is also clear that the county would +utilize social media to distribute warning messages during a levee safety emergency, as shown in the Twitter post from the Yolo +County Sheriff's Office during the 2019 overtopping event. -Given what we do know about the available communication channels, the warning message would likely be distributed to the relatively small leveed area -quickly. However, since AlertSense (Everbridge) is an opt-in system, and it is unclear what percentage of the population protected by Cache Creek has -signed up for this system, it is not recommended to assume the most optimistic First Alert curve. With our baseline understanding of Yolo County’s -available warning channels, the Moderately Fast First Alert Diffusion curve was selected. +Given what you do know about the available communication channels, the emergency managers would likely distribute the warning message to the relatively small leveed area +quickly. However, since AlertSense (i.e., Everbridge) is an opt-in system, and it is unclear what percentage of the population protected by Cache Creek has +signed up for this system, it is not recommended to assume the most optimistic First Alert curve. With this baseline understanding of Yolo County's +available warning channels, the Moderately Fast First Alert Diffusion curve is selected.
-Finally, select the PAI curve. Recent experiences (within the past decade) with flooding and/or evacuation are reason to assume more optimistic PAI -curves; conversely, if the community doesn’t have a history of flooding, the selected PAI curves should be more pessimistic. The residents protected -by Cache Creek Levee experienced flooding due to levee overtopping in 2019. As shown in the evacuation order posted by the Yolo County’s Sheriff +Finally, select the PAI curve. Recent experiences (within the past decade) with flooding and/or evacuation orders are reasons to assume more optimistic PAI +curves; conversely, if the community doesn't have a history of flooding, the selected PAI curves should be more pessimistic. The residents within the +leveed area experienced flooding due to a levee overtopping in 2019. As shown in the evacuation order posted by the Yolo County Sheriff's Office on Twitter, approximately 100 people were asked to evacuate from the Cache Creek leveed area. However, because the effectiveness of the -evacuation order is unknown, it is recommended to allow for more uncertainty in the PAI curve. The Perception: High / Preparedness: Low PAI curve was -selected for Cache Creek Levee to both account for the area’s recent experience with flooding and witnessing the potential consequences (Perception: -High) and uncertainty regarding the population’s readiness to mobilize (Preparedness: Low) since there is limited knowledge on preparedness. +evacuation order is unknown and there have not been other major flooding events in the area (Refer to ), +a PAI with wider uncertainty bounds was selected. The Perception: High / Preparedness: Low PAI curve was selected for Cache Creek Levee to both account +for the area's recent experience with flooding and witnessing the flooding impacts (Perception: High) and significant uncertainty regarding the effectiveness +of the warning messages and evacuation orders (Preparedness: Low).
-The user is encouraged to perform additional sensitivity tests on parameters that have significant knowledge uncertainty. In this example, there is -limited information on the community’s preparedness during a flood emergency. Therefore, the user should run simulations with the Perception: High / -Preparedness: Low PAI curve as well as the Perception: High / Preparedness: Moderate PAI curve to better understand the model’s sensitivity to the -selected PAI curve. Then, the user may want to run the Perception: Unknown / Preparedness: Unknown curve as an additional sensitivity test. Regardless +You are encouraged to perform additional sensitivity tests on parameters that have significant knowledge uncertainty. In this example, there is +limited information on the community's preparedness during a flood emergency. Therefore, you should run simulations with the Perception: High / +Preparedness: Low PAI curve as well as the Perception: High / Preparedness: Moderate PAI curve to better understand the model's sensitivity to the +selected PAI curve. Then, you may want to run the Perception: Unknown / Preparedness: Unknown curve as an additional sensitivity test. Regardless of your final model parameters, ensure there is ample justification for the selected warning evacuation parameters and that they accurately represent the impacted areas. -*Regardless of how you select your parameters, ensure the warning and evacuation parameter assumptions are clearly documented.* +_Note: Regardless of how you select your parameters, ensure the warning and evacuation parameter assumptions are clearly documented._ After selecting your uncertainty parameters, enter a name for the EPZ, press OK, and the EPZ is imported into the LifeSim study. @@ -431,32 +483,32 @@ After selecting your uncertainty parameters, enter a name for the EPZ, press Structure -Inventories, and select Import from Point Shapefile. +To import a structure inventory from an existing point shapefile, navigate to the Study pane in your model, right-click on Structure +Inventories, and select Import Structures from Shapefile.
Then, either select the Structure Inventory Shapefile from the dropdown, which is available if the shapefile is in the Map Layers pane of the LifeSim -model, or map to the shapefile by clicking on the button with the three dots next to the dropdown. Notably, there are several required attributes in +model, or map to the shapefile by clicking on the button with the three dots next to the dropdown. Notably, there are several required attributes in order for LifeSim to properly calculate economic damages and life loss. The list of required attributes from the Import from Point Shapefile window is - shown below. +shown below.
-Once you match up your shapefile’s attributes (Import Attributes) with the corresponding LifeSim Required Attributes (an example of matched up -attributes using the NSI is shown in the figure below), click Next at the bottom right. If the shapefile is missing certain -attributes (e.g., Other Value in the figure below), you can check the “Missing” checkbox and enter a default value. This value will be the same for -each structure in the inventory. +Once you match up your shapefile's attributes (see the Import Attributes dropdown in ) with the corresponding LifeSim Required Attributes +(an example of matched up attributes using the National Structure Inventory [NSI] is shown in the figure below), click Next at +the bottom right. If the shapefile is missing certain attributes (e.g., Other Value in the figure below), you can check the "Missing" checkbox and enter a default value. This +value will be the same for each structure in the inventory.
Then, match the occupancy types in LifeSim with the occupancy types included in your structure inventory shapefile. If using the NSI, typically the -occupancy types exactly match the occupancy type names in LifeSim, but the user should scan through the list to ensure everything is matched up +occupancy types exactly match the occupancy type names in LifeSim, but you should scan through the list to ensure everything is matched up correctly. If these are mismatched, the depth-damage functions, evacuation parameters, and submergence criteria will not be correct for that structure - type, which impacts the accuracy of your economic damages and life loss results. +type, which impacts the accuracy of your economic damages and life loss results.
After the occupancy types are assigned and reviewed, click Next. The final step for importing the inventory is the Stability Criteria - Assignment. LifeSim has default stability criteria assignments for wood unanchored structures (e.g., mobile homes), wood anchored structures, masonry - structures, and steel structures. For NSI users, you should use the default stability criteria shown below. +Assignment. LifeSim has default stability criteria assignments for wood unanchored structures (e.g., mobile homes), wood anchored structures, masonry +structures, and steel structures. For NSI users, you should use the default stability criteria shown in the Rule List in .
Next /> You can create additional criteria rules by clicking Create Rule. A new rule appears in the Rule List; enter a Rule Name and set the -logic for the new stability criteria. For example, if you want to adjust the criteria for Wood 2-story structures to use the USACE – Wood 2-story +logic for the new stability criteria. For example, if you want to adjust the criteria for wood anchored 2-story structures to use the USACE – Wood 2-story stability criteria, select the following information:
Fini ### Editing the Structure Inventory After importing a structure inventory into LifeSim, edits to the attribute table and/or structure placement are likely needed. To edit the imported -structure inventory, right click on the study’s structure inventory and click Show in Map Window. +structure inventory, right-click on the study's structure inventory and click Show in Map Window.
-Navigate to the Map Layers pane. Right click on the structure inventory (labeled NSI2_CacheCreek in ()) and select Edit. You can now edit the - placement of structure points in the map window and edit structure attributes in the attribute table. +Navigate to the Map Layers pane. Right click on the structure inventory (labeled NSI2_CacheCreek in ) and select Edit. You can now edit the +placement of structure points in the map window and edit structure attributes in the attribute table.
-Once you are done editing the structure inventory, right click on the structure inventory in the Map Layers pane (labeled NSI2_CacheCreek in ()) +Once you are done editing the structure inventory, right-click on the structure inventory in the Map Layers pane (labeled NSI2_CacheCreek in ) and select Stop Editing.
Stop Editing. caption="How to stop editing a layer in LifeSim" /> -A pop-up window then asks if you want to save your changes to the study’s structure inventory file. Select Yes and the changes are -reflected in the structure inventory both in the Study pane and Map Layers pane. +The Save Map Edits window then asks if you want to save the changes made to the study's structure inventory file. Select Yes and the changes are +reflected in the study's structure inventory.
- A road network - - ), - }, - { // STEP 2 - title: ( - <> - Destination points - - ), + { + // STEP 1 + title: <>A road network, + }, + { + // STEP 2 + title: <>Destination points, }, ]} /> @@ -570,22 +617,21 @@ The recommended workflow is to begin with importing a road network and then crea ### Road Network There are two ways to import a road network: + - Download and import a road network from OpenStreetMap within LifeSim - - ), - }, - { // STEP 2 - title: ( - <> - Import a polyline shapefile + Download and import a road network from OpenStreetMap within LifeSim ), }, + { + // STEP 2 + title: <>Import a polyline shapefile, + }, ]} /> @@ -594,7 +640,7 @@ OpenStreetMap. #### Downloading a Road Network in LifeSim -To download and import a road network, navigate to the Study Pane, right click on Road Networks, and select Import Road +To download and import a road network, navigate to the Study Pane, right-click on Road Networks, and select Import Road Network From OpenStreetMap.
. The Import Road Network From OpenStreetMap window opens. The primary data needed to import a road network is a bounding polygon shapefile. The bounding polygon determines what roads are downloaded from OpenStreetMap. The easiest bounding polygon to use for import is the shapefile used for the -EPZ; additionally, the bounding polygon needs to be in the same projection as the LifeSim study Once you select the polygon, type in a bounding -polygon buffer (the value represents miles). - -As shown below, the Cache Creek EPZ shapefile is being used for import. The Bounding Polygon Buffer is set to 1 mile. The additional mile of road -network allows for more realistic traffic congestion in the simulation and increases the accuracy of potential evacuation routes. There should be some -amount of buffer included on the bounding polygon for import, unless the selected shapefile is already buffered or larger than the leveed area. -Selecting an appropriate buffer size depends on the size of the study area, inundation extents, the density of the population, and known evacuation +EPZ; the bounding polygon needs to be in the same projection as the LifeSim study. Once you select the polygon, type in a bounding +polygon buffer value (in miles). This buffer value determines how much additional road network is downloaded and imported outside of the bounding polygon. +If you expect people will need to travel a significant distance to evacuate, you may want to increase the buffer size (e.g., greater than 3 miles) to +accurately capture traffic and evacuation routes. However, if the study area is small and/or the EPZ is in a rural area, a smaller buffer (e.g., 0.5 miles) +may be appropriate. + +As shown below in , the Cache Creek EPZ shapefile is being used for import. The Bounding Polygon Buffer is set to one mile. +The additional mile of road network allows for more realistic traffic congestion in the simulation and increases the accuracy of potential evacuation routes. +There should be some amount of buffer included on the bounding polygon for import, unless the selected shapefile is already buffered or larger than the +leveed area. Selecting an appropriate buffer size depends on the size of the study area, inundation extents, the density of the population, and known evacuation routes. Do not make the buffer too large as this imports many additional road segments that (1) may not improve the evacuation accuracy and (2) can significantly increase simulation run times as depths and velocities on each road segment are calculated (i.e., more road segments lead to longer simulation times). @@ -624,17 +673,18 @@ simulation times). caption="Import Road Network from OpenStreetMap – Selecting Census Feature Class Codes (CFCC)" /> -As shown above, there are several types of road segments included in OpenStreetMap road networks. LifeSim has certain road types automatically -selected and deselected for import. However, depending on the study area, you may need to include additional road segment types. For example, if the -study area is primarily rural or farmland, you would want to select tertiary (“The next most important roads in a country’s system”), residential -(“Roads which serve as an access to housing without function connecting settlements. Often lined with housing”), and track (“Roads for mostly -agricultural or forestry uses”) for import. For larger or primarily urban study areas, it is recommended to import only the default, or baseline road -types to reduce simulation run times. Once you have selected or deselected the road segment types that should be included in your road network, select - OK, and the road network downloads and imports into the study. +As shown in , there are several types of road segments included in OpenStreetMap road networks. The area within the Bounding Polygon Shapefile +will download _all_ road types; the buffer zone will only include road types that you select via the checkbox. As you'll notice, LifeSim has certain road types +automatically selected and deselected for import. However, depending on the study area, you may need to include additional road segment types. For example, +if the study area is primarily rural or farmland, you would want to select tertiary ("The next most important roads in a country's system"), residential +("Roads which serve as an access to housing without function connecting settlements. Often lined with housing"), and track ("Roads for mostly +agricultural or forestry uses") for import. For larger or primarily urban study areas, it is recommended to import only the default (i.e., the baseline road +types) to reduce simulation run times. Once you have selected or deselected the road segment types that should be included in your road network, +select OK, and the road network downloads and imports into the study. #### Import Road Network from Shapefile -The other method of importing a road network is to use an existing polyline shapefile. Navigate to the study pane, right click on Road +The other method of importing a road network is to use an existing polyline shapefile. Navigate to the study pane, right-click on Road Networks, and select Import Road Network from Shapefile.
, and select Import Road Network from Shapefile -The Import Road Network window opens. Map to the Road Network Shapefile by either using the dropdown (only polyline shapefiles that are in the map -window are shown) or by clicking the button with the three dots next to the dropdown. Then, match the Census Feature Class Code (CFCC) Name Field to the corresponding attribute from -the polyline shapefile, which should be an already existing attribute if you are importing a road network from a previous study. Then, match the -One-Way Field (with an identifier) and the Vertical Offset attribute. These fields are optional but increase the accuracy of the road network. Once -you match up the field(s) with your shapefile’s attribute(s), select OK and the road network imports. +The Import Road Network window opens (see ). Map to the Road Network Shapefile by either using the dropdown (only polyline +shapefiles that are in the map window are shown) or by clicking the button with the three dots next to the dropdown. Then, match the Census Feature Class +Code (CFCC) Name Field to the corresponding attribute from the polyline shapefile, which should be an already existing attribute +if you are importing a road network from a previous study. Then, match the One-Way Field (with an identifier) and the Vertical Offset attribute. These fields +are optional, but significantly increase the accuracy of the road network. Once you match up the field(s) with your shapefile's attribute(s), select OK +and the road network imports into the LifeSim study.
O #### Editing a Road Network -After importing a road network into LifeSim, edits to the polygon and/or the road network’s attributes are likely needed. OpenStreetMap provides a base for an +After importing a road network into LifeSim, edits to the road network's attributes are likely needed. OpenStreetMap provides a base for an accurate road network. However, there are aspects to the data that may need to be edited and confirmed. One of the key components of a road network is -the “Vertical Offset” field, which is found in the road network attribute table. This field accounts for if a road segment should have some amount of +the "Vertical Offset" field, which is found in the road network attribute table. This field accounts for whether a road segment should have some amount of vertical offset relative to the terrain elevation, such as a bridge or highway overpass. The default vertical offset for all road segments in OpenStreetMap is -0. Vertical offsets should be confirmed and edited throughout the study area. Focus on areas you can visibly see road segments over waterways (i.e., -bridges) and areas where highways are most concentrated (there may be overpasses). To view the attribute table and the Vertical Offset field, right -click on the imported road network from the Study pane and select Show in Map Window. Navigate to the Map Layers pane, right click on -the road network, and select Open Attribute Table. +zero. Vertical offsets should be confirmed and edited throughout the study area. Focus on road segments over waterways (i.e., bridges) and inundated areas +that may have overpasses. To view the attribute table and the Vertical Offset field, right-click on the imported road network from the Study pane +and select Show in Map Window (). Navigate to the Map Layers pane, right-click on the road +network, and select Open Attribute Table ().
-For Cache Creek Levee, there are several highway overpasses in the study’s road network. Many of these overpasses lead to destination points and need -to have accurate vertical offsets. The highlighted road segments shown below are parts of highways located over a different highway. A vertical offset - of 40 feet was given to both segments. Without accounting for the 40 feet of vertical offset within the attribute table, LifeSim may wrongly show -this overpass as inundated. This could negatively and incorrectly impact evacuation to the south, potentially affecting estimated direct life loss. -Use best available data to determine accurate vertical offsets (e.g., Google Street View). +For Cache Creek Levee, there are several highway overpasses in the study's road network. Many of these overpasses are within the inundated area and +lead to destination points and need to have accurate vertical offsets. The highlighted road segments shown below are parts of highways located over a +different highway. A vertical offset of 40 feet was given to both segments (). Without accounting for the 40 feet of vertical offset within the attribute table, +LifeSim may wrongly show this overpass as inundated. This could negatively and incorrectly impact evacuation to the south, potentially affecting estimated direct +life loss. Use best available data to determine accurate vertical +offsets (e.g., Google Street View).
-It is recommended to save the road network edits as you progress. For example, save the road network and the LifeSim study after making a few road -network edits, then make additional edits to the road network and save again. Several edits to one shapefile can overload LifeSim’s memory and may -crash the program prior to saving your edits. +It is recommended to **Save** the +road network edits as you progress. For example, save the road network and the LifeSim study after making a few road network edits, then make +additional edits to the road network and save again. Several edits to one shapefile can overload LifeSim's memory and may crash the program prior to +saving your edits. + +Other potential required edits to the road network include, but are not limited to, checking the direction of the one-way road segments, checking for disconnectivity +issues (i.e., display dangles in the map window), checking for missing road segments, and checking if the CFCC number of lanes are accurate (i.e., the +maximum number of lanes is 2, but highways can have several more lanes). As the study progresses, you will likely find additional edits that need to be made +to the road network to improve the accuracy of the evacuation simulation. ### Destination Points The other key element for simulating evacuation is destination points, which represent where the evacuating population should/will go to reach safety. - To import destinations, a point shapefile is needed. You can create the required point shapefile in LifeSim or in another geospatial software (e.g., +To import destinations, a point shapefile is needed. You can create the required point shapefile in LifeSim or in another geospatial software (e.g., ArcGIS Pro or QGIS). -#### Creating a Point Shapefile in LifeSim +#### Placing Destination Points in LifeSim -Locate the toolbar at the top of the map window. Click on the down arrow next to the folder with a plus sign ( -{"\n"}) and select Create - New. +Locate the toolbar at the top of the map window. Click on the down arrow next to +the **Add Data** folder with a +plus sign and select Create New.
-The Create New Vector Features File window opens. Click on the button with three dots to select the file output location. +The Create New Vector Features File window opens. Click on the button with three dots to select the file output location.
-Select the appropriate Feature Type from the dropdown (Point for a Destinations file) and either use the map projection (recommended) or map to +Select the appropriate Feature Type from the dropdown ("Point" for a destinations file) and either use the map projection (recommended) or map to another project file. Press OK and your new point shapefile is added to the map window.
OK and your new point shapefile is caption="Example of new vector file" /> -To add features within the point shapefile, navigate to the map pane, right click on the point shapefile you created, and select -Edit. Navigate to the toolbar at the top of the map window and click the Add New Features button. This now allows -you to create new points, which represent evacuation destinations. +To add features within the newly created point shapefile, navigate to the map pane, right-click on the point shapefile, and +select Edit. Navigate to the toolbar at the top of the map window and click +the Add New Features button. +This now allows +you to create new points in the map window, which represent evacuation destinations.
-It is best to place destination points directly on road segments, so it is recommended to also have your road network in the map window. If the point +It is best to place destination points directly on road segments, so it's recommended to also have your road network in the map window. If the point is not placed directly on a road segment, the closest road segment is assumed to be the destination point. When creating destination points, most of -the points should be on major highways and roadways. The destination points should generally not be shelters or large buildings because there is no -way to set a limit on how many people can evacuate to each destination point. This would lead to inaccuracies in your evacuation simulation, potentially +the points should be on major highways and roadways. The destination points should generally not be shelters because destination points do not have +capacity limits. Including destination points based on potential shelter locations leads to significant inaccuracies in the evacuation modeling, potentially resulting in inaccurate life loss estimates. -In general, attempt to place each of the destination points an equal distance away from the study area. If one destination is significantly closer to -the study area, LifeSim will direct most of the population to this destination point since it is the shortest distance and most likely the quickest +In the early phases of placing destination points, it is critical to place each point an equal distance away from the study area. If one destination is significantly +closer to the study area, LifeSim will direct most of the population to this destination point since it is the shortest distance and most likely the quickest evacuation route. The group evacuating selects which destination point to evacuate based on the shortest travel time (i.e., accounting for traffic congestion), not the shortest travel distance. Depending on the study area and available information, you may want to place some destination points -closer or farther away from the study area (e.g., If you want more people to evacuate east rather than north, place the destination points to the east - closer to the study area than the northern destination points). +closer or farther away from the study area (e.g., if you want more people to evacuate east rather than north, place the destination points to the east +closer to the study area than the northern destination points). For Cache Creek, the study area is most densely populated in the western portion of the leveed area. The flooding source is along the eastern portion -of the leveed area, so the destination points located to the west are the preferred destination routes, therefore the northern and western destination - points are closer to the population center compared to the destination points to the east of the leveed area as shown in . +of the leveed area, so the destination points located to the west are preferred. Therefore, the northern and western destination +points are closer to the population center compared to the destination points to the east of the leveed area as shown in .
-Once you have placed all your initial destination points in the map window, edit the attribute table to give each feature unique attributes. As you -place destinations, new rows are automatically created in the point shapefile’s attribute table. The figure below shows that as two new points are -placed in the map window, two new rows are created. The attribute shown in the attribute table (“Id”) automatically populates as a blank attribute; -each point needs a unique “Id” value. +Once you place all of your initial destination points in the map window, edit the attribute table to give each feature unique attributes. As you +place destinations, new rows are automatically created in the point shapefile's attribute table. shows that as two new points are +placed in the map window, two new rows are created. The attribute shown in the attribute table ("Id") automatically populates as a blank attribute; +each point needs a unique "Id" value.
To import a destinations file, at least one of the fields in the attribute table needs to have unique naming (Destinations Naming Identifier). The Id -field could be used, but it’s recommended to create a new field in the shapefile’s attribute table. To create a new field, click Open Field -Calculator. +field could be used, but it's recommended to create a new field in the shapefile's attribute table that is more easily identifiable when understanding results; +see in the Results Interpretation section for an example of how the destination point names are shown in the results. + +To create a new field, click Open Field Calculator .
. caption="Open Field Calculator tool within shapefile attribute table" /> -The Field Calculator window opens. Select Create New Column and type a field title (e.g., Name). Within the Expression box, type “=” -with some text, which automatically sets the field type to be text rather than an integer (e.g., type “=RoadName”). Then press -Execute. +The Field Calculator window opens. Select Create New Column and type a field title (e.g., Name). Within the Expression box, type "=" +with some text, which automatically sets the field type to be text rather than an integer (e.g., type "=RoadName"). Then press Execute.
-The attribute table should now include a new field with placeholder text. You are now able to edit each attribute’s name. +The attribute table should now include a new field with placeholder text. You are now able to edit each attribute's name.
-For clarity and ease of use, each destination point should be named based on the road it’s placed on. +For clarity and ease of use, each destination point should be named based on the road it's placed on, including the cardinal direction of the road +(e.g., "5-W" in ).
-Press the Stop Editing Feature Session button ( -{"\n"}) and click -Yes after the Save Map Edit dialog box pops up. +When finished revising the Destinations names, click Stop Feature Edit Session and +click Yes after the Save Map Edit dialog box pops up. #### Importing and Editing Destinations File(s) -After creating a point shapefile that represents the study area’s destination points, you can import the shapefile into LifeSim as a destinations -file. Navigate to the Study pane, right click on Destinations, click Import Destinations from Shapefile. +After creating a point shapefile that represents the study area's destination points, you can import the shapefile into LifeSim as a destinations +file. Navigate to the Study pane, right-click on Destinations, click Import Destinations from Shapefile.
The Import Destinations from Point Shapefile window opens. Enter a name for the destinations file. Then, select the point shapefile you want to import. - If the shapefile is in the Map Layers pane, it will be available via the dropdown. Otherwise, click on the three dots next to the dropdown to map to +If the shapefile is in the Map Layers pane, it will be available via the dropdown. Otherwise, click on the three dots next to the dropdown to map to the destinations shapefile file location.
Then, select the Destination Identifier Field. For the destinations to import into LifeSim, each destination must have a unique name (i.e., the field cannot contain blank attributes and the selected field cannot contain duplicate names). Press OK and the destinations import into the - study. +study.
-Once the destinations file is imported, ensure you edit the study’s destination file, not the original shapefile created in the Map Layer pane. Like -editing the study’s structure inventory, add the newly imported destination file to the map window, right click on the file (in the Map Layers pane), +Once the destinations file is imported, ensure you edit the study's destination file, not the original shapefile created in the Map Layer pane. Like +editing the study's structure inventory, add the newly imported destination file to the map window, right-click on the file (in the Map Layers pane), and select Edit. You can now add destinations, edit the destination placement, and edit the attribute table. After saving any edits, -these changes are reflected in the study’s destinations file. +these changes are reflected in the study's destinations file. ## Creating Alternatives Once you have all the input data imported in the LifeSim study, you can begin creating alternatives. To create an alternative, navigate to the Study -pane, right click on Alternatives, and click Create New Alternative. +pane, right-click on Alternatives, and click Create New Alternative.
To create an alternative for a levee, include all input data required to calculate life loss and simulate evacuation. Your alternative should include the following inputs: + - Hydraulic data -- Structure inventory +- Structure inventory - EPZ - Road network -- Destinations +- Destinations -Select the input data through the dropdown menus within the Create New Alternative window. In addition to the input data, other warning and evacuation +Select the input data through the dropdown menus within the Create New Alternative window. In addition to the input data, other warning and evacuation parameters need to be entered for each alternative. Two other inputs required to create an alternative are the Imminent Hazard Identification Time and the Hazard Communication Delay. Input values (in hour units) for both parameters. If you have multiple EPZs, you will need to include an Imminent Hazard Identification Time and Hazard Communication Delay for each EPZ.
-The example alternative shown in (LCL_TOL_Min; i.e., a minimal warning scenario for a hazard occurrence at the Levee Control Location during a Top of +The example alternative shown in (LCL_TOL_Min; i.e., a minimal warning scenario for a hazard occurrence at the Levee Control Location during a Top of Levee hydraulic loading) shows the selected data inputs required to simulate traffic and calculate life loss for the LCL TOL hydraulic scenario as well as the entries for the Imminent Hazard Identification Time and Hazard Communication Delay. The Imminent Hazard Identification Time should be -reflective of the community’s ability to monitor the project, how early the event could be forecasted in advance, and the type of failure mode. For -example, if the emergency managers would have little time to identify a rapidly developing breach, the Imminent Hazard Identification Time would be -close to the time the hazard occurs. The example alternative (LCL_TOL_Min) is representative of a situation in which the breach occurs relatively +reflective of the community's ability to monitor the project, how early the event could be forecasted in advance, and the type of failure mode. + +For example, if the emergency managers would have little time to identify a rapidly developing failure, the Imminent Hazard Identification Time would be +close to the time the hazard occurs. The example alternative (LCL_TOL_Min) is representative of a situation in which the failure occurs relatively quickly. You can create multiple alternatives for each hydraulic scenario with various warning times if there is uncertainty surrounding the relative hazard identification time. This provides a range of possible life loss outcomes. Additionally, determining the Hazard Communication Delay depends on how quickly the hazard would be communicated from the project personnel to local emergency managers. A smaller delay (or no delay) would occur if the local emergency managers were onsite with other project personnel while the situation develops. A longer delay would occur if the local emergency managers were unaware of the hazard, there are power and electricity outages, -and there are no redundant technologies available to maintain communication with project personnel. The project’s emergency action plan provides +and there are no redundant technologies available to maintain communication with project personnel. The project's emergency action plan provides insight regarding the potential communication delay. The Hazard Communication Delay in the example alternative represents a situation in which the project personnel are able to contact the local emergency managers relatively quickly, but there is still a slight delay. @@ -939,11 +1002,11 @@ the project personnel are able to contact the local emergency managers relativel ## Creating Simulations Once you have created alternatives, you need to simulate the alternatives to compute life loss and economic damages results. To create a simulation, -navigate to the Study Pane, scroll to the bottom, right click on Simulations, and select Create New Simulation. +navigate to the Study Pane, scroll to the bottom, right-click on Simulations, and select Create New Simulation.
@@ -952,14 +1015,14 @@ The Create New Simulation window will open. From this window, you can simulate a population estimates within structures. Additionally, you can specify the number of iterations, select summary polygons for result aggregation, and select which alternatives to run. - is an example of a New Simulation for breach location 2 (BL2) alternatives, including a daytime (2pm) and a nighttime (2am) hazard occurrence, that -simulates each hazard occurrence time with 1,000 iterations. LifeSim simulates the alternatives assuming the hazard occurrence time is at 2am and then - again assuming the hazard occurrence time is at 2pm. These times are generally selected because there is no interpolation of daytime and nighttime -population at these times in the model. If other times are selected, LifeSim will interpolate between the daytime and nighttime population values -included in the structure inventory. + is an example of a New Simulation for breach location 2 (BL2) alternatives, including a daytime (2pm) and a +nighttime (2am) hazard occurrence, that simulates each hazard occurrence time with 1,000 iterations. LifeSim simulates the alternatives assuming the +hazard occurrence time is at 2am and then again assuming the hazard occurrence time is at 2pm. These times are generally selected because there is no +interpolation of daytime and nighttime population at these times in the model. If other times are selected, LifeSim will interpolate between the +daytime and nighttime population values included in the structure inventory. In the example, only one summary polygon is included, which is the EPZ shapefile. You can include multiple summary polygons if you want to see results - by county, city, census tract, arrival time, depth, etc. You can include any shapefile as a summary polygon, but the Summary Name Field must include +by county, city, census tract, arrival time, depth, etc. You can include any shapefile as a summary polygon, but the Summary Name Field must include a unique name for each attribute.
-Within the Create New Simulation window, there are an array of options that the user can customize for each simulation. Click on -Options (located in the top left corner) and select Computation Engine Options. +Within the Create New Simulation window, there is an array of options that you can customize for each simulation. Click +on Options (located in the top left corner) and select Computation Engine Options.
-The Computation Engine Options window opens, and you can customize: +The Computation Engine Options window opens (see ), and you can customize: + - The number of threads for the simulation (the higher the number of threads, the faster the simulation runs) - - ), - }, - { // STEP 2 - title: ( - <> - Whether or not the simulation generates structure summary results - - ), + { + // STEP 1 + title: <>The number of threads for the simulation, }, - { // STEP 3 - title: ( - <> - Whether or not the simulation generates road summary results - - ), + { + // STEP 2 + title: <>Whether the simulation generates structure summary results, + }, + { + // STEP 3 + title: <>Whether the simulation generates road summary results, + }, + { + // STEP 4 + title: <>Whether vehicular spillback is enforced, }, - { // STEP 4 - title: ( - <> - If vehicular spillback is enforced - - ), - } ]} -/> - -More information about the appropriate times to uncheck these boxes is discussed in -the LifeSim Technical Reference Manual. +/>
+The appropriate number of threads depends on your computer's hardware capabilities. A higher number of threads generally leads +to faster simulation run times. But if the number of threads exceeds your computer's capabilities, the program may crash. +It is recommended to set the number of threads to the quantity of logical processors on your computer. You can find the +number of logical processors in your computer's Task Manager. For example, +the user's computer in has 16 logical processors, so their number of threads should be set +to 16 for optimal simulation run times. + +
+ +More information about the appropriate times to +uncheck the Computation +Engine Options is discussed in +the LifeSim Technical Reference Manual. + Click Save in the Computation Engine Options window after you make changes. Press OK in the Create New Simulation -window after selecting the hazard occurrence times, entering the number of iterations, selecting a summary polygon, and checking the alternatives to -be included in the simulation. The simulation you created is now located under Simulations in the study pane. Right click on the new simulation’s name - and select Run Simulation. +window after selecting the hazard occurrence times, entering the number of iterations, selecting a summary polygon, and +checking the alternatives to +be included in the simulation. The simulation you created is now located under Simulations in the study pane. Right click on the new simulation's name +and select Run Simulation.
Estimating +Consequences for Dams, Editing the Structure Inventory Based on Simulation Results for additional information on analyzing results and +calibrating data inputs. + +_Note: The model results included in the subsequent sections are for example purposes only and are not representative of actual life loss and +economic damage estimates for the Cache Creek Levee project._ ### Results Plots The first way to view results is by result plots. Right click on the already run simulation and select View Results Plots. The -Simulation Results Plots window opens. The first tab of the window display is the Box and Whisker – Time of Day. The user can toggle which alternative - results are displayed in the whisker plot and what data is shown in the plot (Plot Summary Data By dropdown in the bottom right corner). You can also - view results across various summary polygons or summary zones. +Simulation Results Plots window opens. The first tab of the window is the Box and Whisker – Time of Day. You can toggle which alternative +results are displayed in the whisker plot and what data is shown in the plot (Plot Summary Data By dropdown in the bottom right corner of the window). You can also +view results across various summary polygons or summary zones. -This tab is helpful in seeing if the results fall within the expected order of life loss magnitude. As an example (from the figure below), the BL2 TOL - breach scenario should result in more life loss than the BL2 75% breach due to the higher water surface elevation and because they use the same data -inputs and warning time. If the BL2 75% breach resulted in more life loss than the BL2 TOL breach, the alternatives may include the wrong hydraulic -scenarios, or the user would need to confer with the hydraulic engineer about the issue. Additionally, this tab helps the user understand if life loss - is likely to be higher at various times of day (e.g., daytime versus nighttime life loss). +This tab is helpful in seeing if the results fall within the expected order of life loss magnitude. As an example (from below), the BL2 TOL +failure scenario should result in more life loss than the BL2 75% failure due to the higher water surface elevation and because they use the same data +inputs and warning time. If the BL2 75% failure resulted in more life loss than the BL2 TOL failure, the alternatives may include the wrong hydraulic +scenarios, or you would need to confer with the hydraulic engineer about the issue. Additionally, this tab helps you understand if life loss +is likely to be higher at various times of day (e.g., daytime versus nighttime life loss).
The next tab is the Box and Whisker – Alternatives. This tab is similar to the Box and Whisker – Time of Day plot in terms of the data displayed, but the data is displayed differently. The key difference between the two tabs is you can toggle which Time of Day results are displayed in the Box and -Whisker – Alternatives tab. You can view just the 02:00 or 14:00 results. In the example below, only the 14:00 results are shown. +Whisker – Alternatives tab. You can view just the 02:00 (nighttime) or 14:00 (daytime) results. In the example below, only the 14:00 results are shown.
-Another key set of results to analyze and review is the Life Loss on Roads, which is shown in the figure below. Overall, there is little estimated life loss -on roads within the BL2 results. If the life loss on roads makes up most of the total life loss, the user should review the road network and -destinations to ensure the simulated evacuations are logical, that there is not high life loss on particular road segments, and that all the road -segments are connected properly. +Another key set of results to analyze and review is Life Loss on Roads, which is shown in below. Overall, there +is little estimated life loss on roads within the BL2 results. If the life loss on roads makes up more than 10% of the total life loss, you should review +the road network and destinations to ensure the simulated evacuations are logical, investigate individual road segments with high average life loss, and confirm that all the road +segments are connected properly. Notably, there are instances when high amounts of life loss on roads are realistic (e.g., relatively low flood depths result in minimal +life loss in structures but significant life loss on roads). However, if the life loss on roads is abnormally high and does not intuitively make sense, this may indicate +that there are issues with the road network or destination points. For example: -- Example 1: If there is significant life loss on a bridge, ensure the road segment has been assigned an appropriate vertical offset. +- Example 1: If there is significant life loss on a bridge, ensure the road segment has been assigned an appropriate vertical offset. - Example 2: If there is a single road segment with abnormally high life loss, this may indicate that the road segment is not connected to the rest of the road network. +- Example 3: If there is a single one-way road segment with abnormally high life loss, the road segment may need to be changed to a two-way road segment. It is much more + likely that evacuees will turn around on a one-way road segment rather than remain on a one-way road segment and wait for floodwaters to arrive.
@@ -1094,55 +1172,57 @@ segments are connected properly. The best ways to identify whether there are issues with the evacuation data are to (1) animate the simulated evacuation and observe if there are traffic issues of any kind and (2) understand which destinations were utilized the most by evacuees and ensure the most used destinations make sense -given the study area. To view both the evacuation animation and the cumulation destination arrivals, you’ll need to generate detailed output. To get -this output, go to the Iterations tab from the Results Plot window, left click on the iteration that you want more detailed information for, such as +given the study area. To view both the evacuation animation and the Cumulative Destination Arrivals, you need to generate detailed output. To get +this output, go to the Iterations tab from the Results Plot window, left-click on the iteration that you want more detailed information for, such as animating evacuation, and click Generate Detailed Output in the bottom right corner. -As shown in, the iteration with the highest life loss on roads was selected to better understand potential evacuation issues. - If there are several iterations with high life loss on roads, it may be best to select an iteration that is representative of the average life loss -on roads. Sometimes high life loss on roads in some iterations is solely due to a timing issue rather than a traffic issue; iterations with high life loss on -roads results may occur due to little advanced warning causing many people to enter the road network only minutes prior of the floodwaters arriving. +As shown in , the iteration with the highest life loss on roads was selected to better understand potential evacuation issues. +If there are several iterations with high life loss on roads, it may be best to select an iteration that is representative of the average life loss +on roads, or to generate detailed output for multiple iterations. Sometimes high life loss on roads in a handful of iterations is solely due to a timing issue rather than +a traffic issue; iterations with high life loss on roads may occur due to little advance warning causing many people to enter the road network only minutes +prior to the floodwaters arriving.
Within the Results Plots window, go to the Detailed Output Results to see additional information specific to the iteration you generated detailed output for. Within this tab, there are three sub-tabs (Time Evacuating Histogram, Cumulative Evacuation Outflow, and Cumulative Destination Arrivals). - Each iteration you create detailed output for is included as an option for viewing on the left side of the tab. The first sub-tab you can view is the - Time Evacuating Histogram, which shows you how long it takes for people to evacuate safely to a destination point. This histogram can be very -informative, especially if you think traffic would be an issue in your study area. For example, if the study area is very populated and everyone -evacuates within 5 minutes, this may indicate that your destination points should be placed farther away from the EPZ to allow more realistic traffic +Each iteration you create detailed output for is included as an option for viewing on the left side of the window. + +The first sub-tab you can view is the Time Evacuating Histogram, which shows how long it takes for people to evacuate safely to a destination point. +This histogram can be very informative, especially if you think traffic could be an issue in your study area. For example, if the study area is very populated +and everyone evacuates within 5 minutes, this may indicate that your destination points should be placed farther away from the EPZ to allow more realistic traffic conditions to occur in the model.
The second sub-tab is the Cumulative Evacuation Outflow, which shows the relationship between the number of evacuees and the duration of the -evacuation and compares the number of mobilized individuals to the number of people who reach safety. This provides additional information on how long - it generally takes the Population at Risk (PAR) to initiate protective action and when the hazard begins to disrupt evacuation. +evacuation and compares the number of mobilized individuals to the number of people who reach safety. This provides information on how quickly the PAR initiated +protective action and how many people reached safety. You can clearly see when the hazard begins to disrupt evacuation when the two curves diverge.
The third and final sub-tab is the Cumulative Destination Arrivals. This shows how many vehicles traveled to each destination point. This plot can be -very useful when conducting a quality control review of the evacuation results and life loss on roads. As you can see in the example plot in , the -113-S destination point was overwhelmingly utilized compared to the other destination points. To understand if the destination arrivals are logical, -you need to understand your study area. Depending on the project, the terrain of the area, the location of the hazard, and the availability of egress -routes dictates if there are viable destination points in all directions. In many situations, only a couple of directions are likely to offer -favorable destination points. For Cache Creek Levee, the inundation extents cut off egress routes to the north, east, and west. Therefore, most of the - vehicles were expected to evacuate to the south, which is exactly what is shown in the plot. +very useful when conducting a quality control review of the evacuation results and life loss on roads. As you can see in the example plot +in , the 113-S destination point was overwhelmingly utilized compared to the other destination points. To understand +if the destination arrivals are logical, you need to understand your study area. Several factors dictate where viable destination points could be +located: the project scope, the terrain of the area, the location of the hazard, and the availability of egress routes. In many situations, +only a couple of directions will be favorable for destination points. For Cache Creek Levee, the inundation extents cut off egress routes to the +north, east, and west. Therefore, most of the vehicles are expected to evacuate to the south, which is exactly what is shown in the plot.
View Results Maps, and the Result Map Selector window opens. Scroll to the alternative that you generated detailed - output for, check the box that includes “Evacuation Animation” in the title, and select the corresponding hydraulic scenario (02:00 BL2 TOL scenario -in this example). Then click Send Selected To Map Window. +output for, check the box that includes "Evacuation Animation" in the title, and select the corresponding hydraulic scenario (02:00 BL2 TOL scenario +in the example). Then click Send Selected To Map Window.
-You can then view the evacuation for this specific iteration. You can play and pause the animation by utilizing the button in the middle. You can make - the animation speed up or slow down by using the Slower to Faster scroller bar; you can also manually speed up and slow down the animation by using -the top scroller bar. The animation shows when structures are warned (yellow structures by default), when structures are inundated (red structures), -when vehicles evacuate (blue cars), and when vehicles are caught (red cars). This is a useful tool for understanding if your road network and +You can then view the evacuation for this specific iteration. You can play and pause the animation by utilizing the +**Play** button in the middle. You can make +the animation speed up or slow down by using the Slower to Faster scroller bar; you can also manually speed up and slow down the animation by using +the top scroller bar as in . The animation shows when structures are warned (yellow structures by default), when structures are inundated (red structures), +when vehicles evacuate (blue cars), and when vehicles are caught (red cars). + +
+ +This is a useful tool for understanding if your road network and destinations are set up appropriately. When animating evacuation, you can zoom into specific areas to see if there is significant traffic or significant life loss on roads and confirm if the life loss results are valid or if there are potential issues with the road network. Examples of -potential issues are disconnected road segments, road segments that may be too long and are showing vehicles as caught that are not actually +potential issues are disconnected road segments (issue and how to fix +demonstrated in LifeSim User's +Guide, Appendix C), road segments that may be too long and are showing vehicles as caught that are not actually inundated, and vertical offsets that have not been appropriately added.
### Results Maps -Another way to view if life loss on roads appears reasonable is to view various Roads Summary maps. These layers are accessible in the Result Maps +Another way to view if the life loss on roads results are reasonable is to view various Roads Summary maps. These layers are accessible in the Result Maps Selector.
Select the alternative results you want to add to the map window, adjust the value bins and corresponding symbols as needed (these can also be adjusted later in the Map Layer pane) and click Send Selected to Map Window. The Roads Summary polyline shapefile should now be in -the Map Layers pane. You can see in the map window if there are roads with high average life loss. Additionally, it’s helpful to look through Roads -Summary attribute table (right click on the shapefile; click Open Attribute Table). +the Map Layers pane. You can see in the map window if there are roads with high average life loss. Additionally, it's helpful to look through Roads +Summary attribute table (right-click on the shapefile; click Open Attribute Table).
Within the Roads Summary Attribute table, scroll to the right and find the field titled Life_Loss_Mean. Double click on this field name to sort from -the lowest life loss to the highest life loss; double click on the field name again to sort from the highest life loss to the lowest life loss (you -can also right click on the field’s header and select ascending or descending). As shown in the example below, life loss occurs on only five road +the lowest life loss to the highest life loss; double-click on the field name again to sort from the highest life loss to the lowest life loss (you +can also right-click on the field's header and select ascending or descending). As shown in the example below, life loss occurs on only five road segments for Cache Creek Levee. If the mean life loss for one of these segments was high relative to the total mean life loss, this would indicate -that there may be a road network connectivity issue or an unwanted traffic build-up. You would then look at the evacuation animation again, focusing -on those high life loss road segments to identify the potential issue. +that there may be a road network connectivity issue or potentially inaccurate traffic build-up due to the location of a destination point. You would +then watch the evacuation animation again and focus on the high life loss road segments to investigate the potential issue.
In addition to performing a quality check on the life loss on roads and evacuation data inputs, you should always review the life loss in structures -results. Common issues or errors that can be caught when looking through the results is (1) a high amount of population within structures that should -have a relatively small population (e.g., a RES1 structure containing a total population of 25), (2) the structure stability was not linked to the -correct structure types (e.g., a RES2 structure having an engineered structure stability assignment), (3) a field was not linked properly when importing - a structure inventory (e.g., absence of values assigned to vehicles, resulting in all values being populated as $0), or (4) structure points are not - placed accurately. +results. Common issues or errors that can be caught when looking through the results maps include: + + + High population values within structures that should have relatively small population values +

+ Example: A RES1 structure containing a total daytime population of 25 +

+ + ), + }, + { + // STEP 2 + title: ( + <> + Structure types assigned incorrect stability criteria +

+ Example: A RES2 structure (i.e., mobile home) is assigned the engineered structure stability criteria +

+ + ), + }, + { + // STEP 3 + title: ( + <> + Improperly linked fields in the structure inventory +

+ Example: Vehicle Values were not correctly assigned, resulting in Vehicle Values of $0 for all structures +

+ + ), + }, + { + // STEP 4 + title: ( + <> + Structure points with inaccurate locations +

+ + Example: Various structure points are located in the river or a structure point located on a school has an assigned occupancy type of + RES1 + +

+ + ), + }, + ]} +/> An efficient way of reviewing the life loss in structures results is to look through various results maps. To add these layers to the map window, -right click on the already run simulation, and select View Results Maps. The Result Map Selector window opens. Select the structure +right-click on the already run simulation, and select View Results Maps. The Result Map Selector window opens. Select the structure summaries from the scenarios you want to add to the Map Layers pane and click Send Selected to Map Window. To conduct a full quality -check on the structures, add structure summaries for all times of day. If you only analyze the daytime Structure Summary (14:00), you could miss any -errors occurring with the nighttime population (02:00). +check on the structures, add structure summaries for each time of day. If you only analyze the daytime Structure Summary (14:00), you could miss any +errors occurring with the nighttime population (02:00) and vice versa. + +Notably, life loss associated with high depths and velocities, proximity to the incipient overtopping location or breach, and structures with high PAR values +should be visible in the Structure Summary maps. Other life loss drivers, such as sensitivity to warning time, mobilization rates, or structure stability, may require +additional investigation in the tabular results.
-Once the Structure Summary shapefile(s) have been added to the Map Layers pane, right click on the shapefile, and select Open Attribute +Once the Structure Summary shapefile(s) have been added to the Map Layers pane, right-click on the shapefile, and select Open Attribute Table.
. /> Similar to viewing the Road Summary results, scroll to the Life_Loss_Total_Mean field. Double click on the field name to sort from the lowest to the -highest life loss; double click on the field name again to sort from the highest to the lowest life loss. Then, confirm that the life loss results +highest life loss; double-click on the field name again to sort from the highest to the lowest life loss. Then, confirm that the life loss results align with the structure type and that the structure point placement for the structures with relatively high average life loss is accurate.
@@ -1265,19 +1409,19 @@ on the row number (3569 in the example below) and select Zoom to Selecte
LifeSim then zooms to the selected structure, and you can confirm the point placement of the structure with the highest life loss. For Cache Creek Levee, the highest life loss occurs in a commercial building as shown in the figure below. The structure placement is in the middle of the building -footprint, which confirms that the life loss estimate for this structure is valid in terms of its location. This process should be repeated as often +footprint, which confirms that the life loss estimate for this structure is valid in terms of its location. This process should be repeated as often as necessary to confirm that the life loss estimates in structures are reasonable for the various hydraulic scenarios.
@@ -1285,12 +1429,12 @@ as necessary to confirm that the life loss estimates in structures are reasonabl ### Results Tables The final way to view results is by table. This is most helpful to clearly see results for various alternatives at once and is the easiest way to export - results for report writing. To see the results table, right click on the already run simulation and select View Results Table. The +results for report writing. To see the results table, right-click on the already run simulation and select View Results Table. The Results Table window opens.
@@ -1300,37 +1444,37 @@ included in the simulation. This table is most useful when reporting out PAR est average mobilization rates, and average life loss. The Iteration Results table shows you the life loss and economic results for each specific iteration of each alternative and time of day. You can also - generate detailed output from this tab by right clicking on the row you want to obtain detailed output for and clicking Generate Detailed +generate detailed output from this tab by right-clicking on the row you want to obtain detailed output for and clicking Generate Detailed Output.
The EPZ Results table shows iteration results as well but highlights the parameter sampling results (in hours) in addition to the total life loss results. As you scroll through this table, you can see the sampled relative warning issuance time, sampled hazard communication delay, sampled warning - issuance delay, sampled warning curve, and sampled mobilization curve for each iteration. This provides insight into which parameters drive life -loss. +issuance delay, sampled warning diffusion curve, and sampled mobilization curve for each iteration. This provides insight into which parameters correlate +to life loss.
-Finally, the Detailed Output Results table shows detailed output results by evacuation group for specific iterations. This table details if a group +Finally, the Detailed Output Results table shows detailed output results by evacuation group for specific iterations. This table details if a group received warning, if they mobilized, if they mobilized safely, how quickly they mobilized, which life loss probability zone (low hazard or high hazard) was used for sampling, what kind of vehicle was used during evacuation, and the various stability thresholds. This provides significant detail - surrounding evacuation and the life loss probability zones, which allows the user to understand why life loss occurred (or why there is little life +surrounding evacuation and the life loss probability zones, which allows you to understand why life loss occurred (or why there is little life loss) for that specific iteration.
@@ -1340,20 +1484,19 @@ clicking on this button, name the file and select the file format. Then click
-Following any edits made during the quality control check, you need to rerun all simulations. Once you confirm the new life loss and +Following any edits made during the quality control check, you need to rerun all simulations. Once you review and verify the new life loss and economic results, your levee/floodwall LifeSim model is complete. - - \ No newline at end of file + diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/05-estimating-consequences-for-dams.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/05-estimating-consequences-for-dams.mdx index 32896176d..da2e0f662 100644 --- a/docs/desktop-applications/lifesim/applications-guide/v1.0/05-estimating-consequences-for-dams.mdx +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/05-estimating-consequences-for-dams.mdx @@ -1,181 +1,208 @@ --- -title: "Estimating Consequences for Dams" +title: 'Estimating Consequences for Dams' --- -import Link from "@docusaurus/Link"; -import addBaseUrl from "@docusaurus/useBaseUrl"; -import Citation from "@site/src/components/Citation"; -import CitationFootnote from "@site/src/components/CitationFootnote"; -import Figure from "@site/src/components/Figure"; -import FigureInline from "@site/src/components/FigureInline"; -import FigReference from "@site/src/components/FigureReference"; -import NavContainer from "@site/src/components/NavContainer"; -import ProcessList from "@site/src/components/ProcessList"; -import TableReference from "@site/src/components/TableReference"; -import TableVertical from "@site/src/components/TableVertical"; -import VersionSelector from "@site/src/components/VersionSelector"; - - +import Link from '@docusaurus/Link'; +import addBaseUrl from '@docusaurus/useBaseUrl'; +import Citation from '@site/src/components/Citation'; +import CitationFootnote from '@site/src/components/CitationFootnote'; +import Figure from '@site/src/components/Figure'; +import FigureInline from '@site/src/components/FigureInline'; +import FigReference from '@site/src/components/FigureReference'; +import NavContainer from '@site/src/components/NavContainer'; +import ProcessList from '@site/src/components/ProcessList'; +import TableReference from '@site/src/components/TableReference'; +import TableVertical from '@site/src/components/TableVertical'; +import VersionSelector from '@site/src/components/VersionSelector'; + + # Estimating Consequences for Dams ## Purpose -This example demonstrates the process for estimating consequences for dam breaches in LifeSim. This chapter focuses on Curwensville Dam located in -Clearfield County, PA. This was originally modeled by the Modeling, Mapping and Consequences (MMC) Production Center of Expertise of the U.S. Army -Corps of Engineers (USACE) in 2022. This chapter walks through developing and importing the needed data and how to choose appropriate warning and -evacuation data for a LifeSim study. +This example demonstrates the process for estimating consequences for dam failures in LifeSim. This chapter focuses on Curwensville Dam located in +Clearfield County, PA. This was originally modeled by the by the U.S. Army Corps of +Engineers (USACE) Modeling, Mapping, and Consequence (MMC) Mandatory +Center of Expertise (MCX) in 2022. +This chapter walks through developing and importing the necessary data and choosing the appropriate warning and +evacuation data for a dam LifeSim study. + +_Note: The model results included in the subsequent sections are for example purposes only and are not representative of actual life loss and +economic damage estimates for the Curwensville Dam project._ ## Data Requirements -To take full advantage of LifeSim capabilities, an unsteady Hydrologic Engineering Center’s River Analysis System (HEC-RAS) dam breach model with a -range of breach and corresponding non-breach events is required. Non-breach events are needed to identify any areas flooded prior to the breach, which - allows you to understand incremental life loss and incremental risk of the dam. Alternatively, the inundation footprint from a breach model time step - just before the breach occurs can be used to identify areas flooded prior to the breach, but for this example the non-breach inundation footprint is -used to identify pre-breach flooding. This example also assumes that both maximum depth grids and inundation boundary polygons for each event have -been created in the HEC-RAS model directory using RAS Mapper. +To take full advantage of LifeSim capabilities, an unsteady Hydrologic Engineering Center's River Analysis System (HEC-RAS) +dam failure model with a range of failure and corresponding non-failure events is required. Non-failure events are needed to identify any areas flooded prior +to the failure, which allows you to understand excess life loss and excess risk of the dam. Alternatively, you can use inundation footprint from the failure +sceniario, but specifically from the time step immediately before the breach initiation time, to identify areas flooded prior to the failure. For this example, the non-failure inundation +extents were provided to identify pre-failure flooding. This example also assumes that both maximum depth grids and inundation boundary polygons for each event +have been created in the HEC-RAS model directory using RAS Mapper. The hydraulic events used in the example are shown in the table below. -LifeSim requires a structure inventory that includes the following characteristics at a minimum, (1) a structure occupancy type, (2) a construction -type, (3) the number of stories, and (4) the population within the structure. This example uses the USACE National Structure Inventory (NSI) as the -base dataset for the structure inventory. +To calculate life loss, LifeSim requires a structure inventory that includes the following characteristics at a minimum: + +- A structure occupancy type +- A construction type +- The number of stories +- The population within the structure + +This example uses the USACE National Structure Inventory (NSI) as the base dataset for the structure inventory. ## Input Data and Pre-Processing ### Study Area Polygon -The first step in modeling a dam breach in LifeSim is to identify a study area polygon that can be used as a basis for emergency planning zones (EPZ), - the structure inventory boundary, and output polygons. There are several ways to do this, but the most common methods include buffering the maximum -inundation, manually drawing a polygon boundary in GIS software (e.g., ArcGIS Pro or QGIS), or exporting a Geometry Bounding Polygon from RAS Mapper +The first step in modeling a dam failure in LifeSim is to identify a study area polygon to serve as the basis for emergency planning zones (EPZ), +the structure inventory boundary, and output polygons. There are several ways to do this, but the most common methods include buffering the maximum +inundation, manually drawing a polygon boundary in GIS software (e.g., ArcGIS Pro or QGIS) , or exporting a Geometry Bounding Polygon from RAS Mapper within HEC-RAS. The RAS Mapper geometry polygon method does not always produce an acceptable study area when there are complex geometries. When using -this method, the output must be checked for areas where inundation is not covered and for gaps within the polygon requiring vertex edits. This example - uses a method of buffering and then simplifying the maximum inundation polygon in ArcGIS Pro. +this method, you need to check the output for areas where inundation is not covered and for gaps within the polygon requiring vertex edits. This example +uses a method of buffering and then simplifying the maximum inundation polygon in ArcGIS Pro. -Create a map in ArcGIS Pro and use the Add Data button to add the inundation polygon of the maximum breach event. In the +Create a map in ArcGIS Pro and use the Add Data button to add the inundation polygon of the maximum failure event. In the Geoprocessing tools pane, navigate to Analysis Tools > Pairwise Overlay > Pairwise Buffer. Select the maximum inundation polygon as the Input Features - and designate an output shapefile name (it is not recommended to save into the default geodatabase location). The buffer will be set at 1,500 feet. +and designate an output shapefile name (it is not recommended to save into the default geodatabase location). Set the buffer distance to 1,500 feet. This allows for (1) a reasonable number of structure points outside the inundation for use in calibration of the inventory and (2) the case that a -larger breach event might be added in the future. The Dissolve Type is set to “Dissolve all output features into a single feature”. Reference the -ArcGIS Pro technical documents for additional information on tool inputs. The tool setup is shown in . +larger failure event might be added in the future. The Dissolve Type is set to "Dissolve all output features into a single feature". The tool setup +is shown on the left-hand side of . -Once the dissolve is complete, the Simplify Polygon tool is used to reduce the complexity and file size of the buffered polygon for a final study -area, which allows follow-on GIS processes and the LifeSim modeling to run more efficiently. The tool is found by navigating to Cartography Tools > +Once the dissolve is complete, the Simplify Polygon tool is used to reduce the complexity and file size of the buffered polygon to create a final study +area, enabling follow-on GIS processes and the LifeSim modeling to run more efficiently. The tool is found by navigating to Cartography Tools > Generalization in the default Geoprocessing toolboxes. The output of this tool should be your final study area polygon. The simplification tolerance determines how far the new simplified line can move. A larger number will make a simpler polygon. Make sure this number is less than the original -buffer distance. The inundation boundary can be used as an Input Barrier to ensure than the study area is larger than the inundation. The tool setup -is shown in . +buffer distance. The inundation boundary can be used as an Input Barrier to ensure that the study area is larger than the inundation area. The tool setup +is shown on the right-hand side of .
-Once the simplify polygon tool has been run, the study area is visually checked to look for areas that need to be cleaned up. Several spots had open +Once the Simplify Polygon tool has been run, visually check the new polygon for areas that need to be cleaned up. Several spots had open areas near the center of the polygon. Those vertices were removed using the Edit ribbon and the Edit Vertices tool. Vertices can be selected and -deleted by right clicking on the selected group and using the option to delete the selected vertices. This is shown in -{"\n"}. There were also several disconnected polygons caused by very small spots of disconnected inundation which -were deleted from the final study area. The edits were saved. shows some of the vertices that were removed. +deleted by right-clicking on the selected layer and using the option to delete the selected vertices. This is shown in using +ArcGIS Pro version 3.4.2.
-Alternative Methods to Get a Study Area: +There are occasionally several disconnected polygons caused by very small spots of disconnected inundation. It is best to remove these from the final study area, as +demonstrated in (ArcGIS Pro version 3.4.2). Make sure to +click **Save Edits** (not just **Save Project**), which +saves edits to the shapefile. -Create a new shapefile and draw a polygon around the maximum inundation. This can be accomplished in the LifeSim map viewer or in ArcGIS, QGIS, or -another GIS software. +
-Export the Geometry Bounding Polygon from HEC-RAS/RAS-Mapper. Check and edit the polygon for completeness). +#### Alternative Methods to Get a Study Area Polygon: + +- Create a new shapefile and draw a polygon around the maximum inundation. This can be accomplished in the LifeSim map viewer or in ArcGIS, QGIS, or + another GIS software. +- Export the Geometry Bounding Polygon from HEC-RAS/RAS-Mapper. Check and edit the polygon for completeness. ### Emergency Planning Zones EPZs are polygons that allow LifeSim to have different warning and mobilization parameters for different geographic areas and/or for areas that -experience different flooding characteristics (e.g., breach flows and non-breach flows). Depending on the study’s purpose and level of detail there -could be different parameters for different communities or counties. For this example, we will focus our geographic areas on the flood characteristics - only and assume that parameters influenced by emergency response capability and demographic characteristics can be captured by using the default -“unknown” curves in LifeSim. Reference the for additional information regarding the software’s default parameters. - -In a standard dam breach scenario where no detailed information about the communities is known, there are three primary areas that may have different -warning and mobilization characteristics: (1) the area upstream of the dam (or the reservoir), (2) the area that experiences flooding downstream of -the dam prior to (or regardless of) a breach, and (3) the area that is only flooded in the event of a breach. People living near the pool of a -reservoir would typically be more aware of the flood risk than areas downstream and would have more time to mobilize as the reservoir rises, so their -perception of risk is higher. Downstream areas subject to flooding prior to a breach (i.e., spillway flow or non-breach flows from dam releases) may -not necessarily have a higher risk perception, but they would receive flood warnings relative to when spillway flow begins. The non-breach flows rate -of rise would also be more gradual than a breach, meaning they would have more warning time and a higher likelihood of mobilization than areas only -flooded in the event of a breach. +experience different flooding characteristics (e.g., failure flows and non-failure flows). Depending on the study's purpose and level of detail there +could be different parameters for different communities or counties. For this example, you will focus your geographic areas on the flood characteristics +only and assume that parameters influenced by emergency response capability and demographic characteristics can be captured by using the default +"unknown" curves in LifeSim. Reference LifeSim +Technical Reference Manual - Warning and Protective Action Parameters for additional information regarding the software's default parameters and +the LifeSim Technical Reference Manual - Appendix B for +information on Expert Opinion Elicitation (EOE) custom curves. + +In a standard dam failure scenario where no detailed information about the communities is known, there are three primary areas that may have different +warning and mobilization characteristics: + +- The area upstream of the dam (i.e., the reservoir) +- The area that experiences flooding downstream of the dam prior to (or regardless of) a failure (i.e., non-failure inundation or spillway flow) +- The area that is only flooded in the event of a failure + +People living near the pool of a reservoir would typically be more aware of the flood risk than areas downstream and would have more time to mobilize +as the reservoir rises, so their perception of risk is higher. Downstream areas subject to flooding prior to a failure (i.e., spillway flow or non-failure +flows from dam releases) may not necessarily have a higher risk perception, but they would receive flood warnings relative to when spillway flow begins. +The non-failure flows rate of rise would also be more gradual than failure flows, meaning they would have more warning time and a higher likelihood of mobilization +than areas only flooded in the event of a failure. To simulate this effect in LifeSim, each unique event with different levels of spillway flow needs a unique EPZ polygon because the areas flooded -prior to a breach are different—this is why you need corresponding non-breach events for each of your breach events. If an event has no flooding prior - to the breach, the EPZ only needs two areas: (1) the area upstream in the reservoir and (2) the area downstream. However, this requires the hydraulic - modeling and structure inventory to be adequately calibrated so that no structures are flooded in the corresponding non-breach event (e.g., For the -Top of Active Storage breach scenario to only have two zones, there should be zero inundated damages during the Top of Active Storage non-breach -scenario. Otherwise, the EPZ would need to include the 3 zones identified above.). +prior to a failure are different — this is why you need corresponding non-failure events for each of your failure events. If an event has no flooding prior +to the failure, the EPZ only needs two areas: + +- The area upstream of the dam (i.e., the reservoir) +- The area that is only flooded in the event of a failure -The first step in creating the two zone EPZ is to make a copy of the Study Area and call it “EPZ_NoDoubleWarning”. This is done by right clicking on +However, this requires the hydraulic modeling and structure inventory to be adequately calibrated so that no structures are flooded in the corresponding non-failure +event (e.g., for the Top of Active Storage failure scenario to only have two zones, there should be zero inundated damages during the Top of Active Storage non-failure +scenario). + +The first step in creating the two zone EPZ is to make a copy of the Study Area and call it "EPZ_NoDoubleWarning". This is done by right-clicking on the layer name, selecting Data menu near the bottom, and clicking on Export Features. Save the file in a folder, not - in the default geodatabase. The resulting polygon can be split at the dam to create an “In Pool” polygon feature and a “Downstream” polygon feature. -On the Edit ribbon, click on the Split tool, select the polygon, and make a split across the polygon at the dam. Save the edits. +in the default geodatabase. The resulting polygon can be split at the dam to create an "In Pool" polygon feature and a "Downstream" polygon feature. +On the Edit ribbon, click on the Split tool, select the polygon, and make a split across the polygon +at the dam (). Save the edits.
-A name field is added so that each polygon can be named appropriately. Right click on the layer name to open the Attribute Table, then select -Add Field to bring up the Add Field dialog. Set the field name to Name and the Data Type to Text. When finished, hit the -Save button in the upper right on the Fields ribbon. +A name field is added so that each polygon can be named appropriately. Right click on the layer name to open the Attribute Table, then +select Add Field to bring up the Add Field dialog. Set the field name to Name and the Data Type to Text. When finished, click +the Save button in the upper right on the Fields ribbon.
-This results in an EPZ that can be used for any events without flooding prior to a breach (in this example, these events are Top of Active Storage +This results in an EPZ that can be used for any events without flooding prior to a failure (in this example, these events are Top of Active Storage Pool, Security Scenario Pool, and Normal High Pool). -To make the EPZ shapefiles for the events with flooding prior to breach, the non-breach polygons must be joined with the “EPZ_NoDoubleWarning” file +To make the EPZ shapefiles for the events with flooding prior to failure, the non-failure polygons must be joined with the "EPZ_NoDoubleWarning" file using the Union tool (not the Merge tool, as that will create overlapping polygons in the process). First, make sure the selections are cleared out. -Navigate to the Union tool in the Geoprocessing toolbox in Analysis Tools > Overlay > Union. Select the “EPZ_NoDoubleWarning” file and the Inundation -Boundary shapefile of the Maximum High Pool Non-Breach scenario as inputs, and name the output feature “EPZ_MHP_DoubleWarning.shp” (again, do not save - in the geodatabase). +Navigate to the Union tool in the Geoprocessing toolbox in Analysis Tools > Overlay > Union. Select the "EPZ_NoDoubleWarning" file and the Inundation +Boundary shapefile of the Maximum High Pool Non-failure scenario as inputs, and name the output feature "EPZ_MHP_DoubleWarning.shp" (again, do not save +in the geodatabase).
Once the EPZ has been created, it needs to be modified by merging some areas together and ensuring the EPZ names are correct. Open the attribute table - and zoom the map close to the dam where all three areas come together. Select Polygons to identify which one should be the -Non-Breach EPZ and change the name (“NonBreachEPZ” in the figure below). +and zoom the map close to the dam where all three areas come together. Select Polygons to identify which one should be the +Non-Failure EPZ and change the name ("NonBreachEPZ" in the figure below).
-The rest of the Downstream area can be changed to the Breach EPZ (“BreachEPZ” in the figure below). Next, the two “InPoolEPZs” can be merged together -to make a single in-pool polygon (“InPoolEPZ” in the figure below). Hold control to select both and find the Merge tool in the Edit ribbon. +The rest of the Downstream area can be changed to the Failure EPZ ("BreachEPZ" in the figure below). Next, the two "InPoolEPZs" can be merged together +to make a single in-pool polygon ("InPoolEPZ" in the figure below). Hold control to select both and find the Merge tool in the Edit ribbon.
This will leave a single unnamed feature. Right clicking on that feature and selecting Zoom To will identify this feature as two -small, disconnected inundation areas. If needed they could be merged as part of the appropriate breach or non-breach area, but in this example, they -appear to be unrelated to the breach modeling so they can be completely deleted by selecting that row and hitting the Delete button -near the top middle of the Edit ribbon (or by right clicking the row and selecting delete). Once the edits are saved, this should complete the MHP -Double Warning EPZ. The same steps, starting with the Union, must be repeated with the Intermediate High Pool (IHP) non-breach area using -“EPZ_IHP_DoubleWarning” as the Union output file name. +small, disconnected inundation areas. If needed they could be merged as part of the appropriate fail or non-fail area, but in this example, they +appear to be unrelated to the failure modeling so they can be completely deleted by selecting that row and clicking the Delete button +near the top middle of the Edit ribbon (or by right-clicking the row and selecting delete). Once the edits are saved, this should complete the MHP +Double Warning EPZ. The same steps, starting with the Union, must be repeated with the Intermediate High Pool (IHP) non-failure inundation boundary using +"EPZ_IHP_DoubleWarning" as the Union output file name. ### Simulation Output Polygons LifeSim has the capability to output results aggregated to multiple polygon shapefiles. At a minimum the EPZ polygons can be selected as output polygons, but for comprehensive understanding and reporting of the results additional polygons are needed. For this example, a polygon will be created - that has the downstream area broken out by milage zones relative to the dam. The zones are 0 to 3 miles, 3 to 7 miles, 7 to 15 miles, 15 to 60 miles, - and over 60 miles. A separate polygon shapefile will be created by selecting and exporting city boundary polygons that are significantly impacted by -the inundation. - -To make the milage reach polygon, start by exporting the “EPZ_NoDoubleWarning” layer as a new shapefile by right clicking on it in the Layers Pane and - navigating to Data > Export Features. Save to a folder and name it “Milage_Reaches.shp”. Next, identify a point along the river three miles +that has the downstream area broken out by mileage zones relative to the dam. The zones are 0 to 3 miles, 3 to 7 miles, 7 to 15 miles, 15 to 60 miles, +and over 60 miles. A separate polygon shapefile can be created by selecting and exporting city boundary polygons that are significantly impacted by +the inundation. Various boundary polygons are available from the U.S. Census +Bureau's Cartographic Boundary Files +webpage. + +To make the mileage reach polygon, start by exporting the "EPZ_NoDoubleWarning" layer as a new shapefile by right-clicking on it in the Layers Pane and +navigating to Data > Export Features. Save to a folder and name it "Mileage_Reaches.shp". Next, identify a point along the river three miles downstream of the dam. This can be done by looking at cross section stations from the RAS geometry, creating points along a river centerline every -mile, or simply by using the measure a path tool in ArcGIS Pro or Google Earth. For this example, the cross sections were exported from RAS Mapper and - included in a Geometry folder in the RAS model data. These are added to the ArcGIS Pro map and labeled with the “River Stat” field. Since the dam is -at river station 185.7, the downstream polygon needs to be split close to 182.7 (3 miles), 178.7 (7 miles), 170.7 (15 miles) and 125.7 (60 miles). -There are no cross sections with these exact river station values, but they are close enough to visually estimate a location to split the polygon. The - cross sections also provide a guide for splitting the polygons perpendicular to the river inundation. To split the polygon, use the -Split tool in the Edit ribbon, select the polygon, and draw the split between stations 182.63 and 182.79 to delineate the first reach - three miles downstream of the dam. +mile, or simply by using the measure a path tool in Google Earth or ArcGIS Pro (). + +
+ +For this example, the cross sections were exported from RAS Mapper and included in a Geometry folder in the RAS model data. These are added to the +ArcGIS Pro map and labeled with the "River Stat" field. Since the dam is at river station 185.7, the downstream polygon needs to be split close to +182.7 (3 miles), 178.7 (7 miles), 170.7 (15 miles) and 125.7 (60 miles). There are no cross sections with these exact river station values, but they are +close enough to visually estimate a location to split the polygon. The cross sections also provide a guide for splitting the polygons perpendicular to +the river inundation. To split the polygon, use the Split tool in the Edit ribbon, select the polygon, and draw the split between stations +182.63 and 182.79 to delineate the first reach three miles downstream of the dam.
Repeat the split at the remaining river stations, then save the edits. Right click on the layer and open the attribute table to assign the correct -names. A first and important step in naming is to rename the “InPoolEPZ” polygon to just say “InPool”. This will become important later in the study, -because if both the Milage Reaches and the EPZ shapefiles are used as output polygons, having two areas with the same name could cause double counting - of results if Excel pivot tables are used to analyze results. Select each row to identify what the name should be. Do not use only numbers and dashes - because most spreadsheets will attempt to convert “3-7” into a date format. Save the edits when complete. +names. A first and important step in naming is to rename the "InPoolEPZ" polygon to just say "InPool". This will become important later in the study, +because if both the Mileage Reaches and the EPZ shapefiles are used as output polygons, having two areas with the same name could cause double counting +of results if Excel pivot tables are used to analyze results. Select each row to identify what the name should be. Do not use only numbers and dashes +because most spreadsheets will attempt to convert "3-7" into a date format. Save the edits when complete.
-The second results output polygon set is a city boundary polygon. A comprehensive set of U.S. city boundaries, or Places as they are called on the -Census.gov website, can be obtained by navigating to the link below and finding the Places 1:500,000 (national) shapefile a little more than halfway -down the page. - - +The second results output polygon set is a city boundary polygon. A comprehensive set of U.S. city boundaries, or "Places" as they are called on the +Census.gov website , are available. Navigate to the cited website and locate the Places 1:500,000 (national) shapefile (about halfway +down the page). Download the file. Once the file is downloaded and unzipped, load it into the ArcGIS Pro map using the Add Data button. Use the Select by Location tool -in the Map ribbon to select the cities that intersect with the maximum inundation polygon (the MHP Breach in this example). You could intersect it -with the study area, but since that was buffered, it could result in some cities that would have no consequences. +in the Map ribbon to select the cities that intersect with the maximum inundation polygon (the MHP failure in this example). You could intersect it +with the study area, but since that was buffered, it could result in the inclusion of some cities that would have no consequences.
-Once the selection is complete, right click on the city layer and navigate to Data > Export Features to export the selected features into a new -shapefile called “City_Boundaries.shp”. This results in 79 individual cities, which is more than we want in our simulation outputs since many of them +Once the selection is complete, right-click on the city layer and navigate to Data > Export Features to export the selected features into a new +shapefile called "_City_Boundaries.shp_". This results in 79 individual cities, which is more than you want in your simulation outputs since many of them do not have significant impacts and sorting through that many rows of results creates difficulties in interpreting results. Smaller cities farther downstream can be removed, as well as cities that are barely touched by the inundation, by selecting individual polygons and using the Delete button in the Edit ribbon. Another method of removing cities is to run a test simulation in LifeSim, view the results table, and identify any cities that do -not have any life loss. The latter was done for this example and based on those results and user judgement the following nine cities were retained for - the city boundary results output polygon: - -Clearfield, PA - -Curwensville, PA - -Hyde, PA - -Jersey Shore, PA - -Lock Haven, PA - -Milton, PA - -Muncy, PA - -Plymptonville, PA - -South Renevo, PA +not have any life loss. The latter was done for this example and based on those results and user judgment the following nine cities were retained for +the city boundary results output polygon: + +- Clearfield, PA +- Curwensville, PA +- Hyde, PA +- Jersey Shore, PA +- Lock Haven, PA +- Milton, PA +- Muncy, PA +- Plymptonville, PA +- South Renovo, PA ### Structure Inventory -The Curwensville Dam structure inventory is developed using the USACE NSI dataset. Reference the for additional information on the NSI and/or importing - structure inventories into LifeSim. +The Curwensville Dam structure inventory is developed using the USACE NSI dataset. +Reference Estimating Consequences for Levees and Floodwalls, Structure Inventory for +additional information on the NSI and/or importing structure inventories into LifeSim. ## LifeSim Model Setup -The subsequent sections will discuss setting up a LifeSim model by importing data and setting EPZ parameters and alternatives. The sections will cover - hydraulic data import, EPZs, structure inventories, creating alternatives, and simulating alternatives. +The subsequent sections discuss setting up a LifeSim model by importing data and setting EPZ parameters and alternatives for dams. The sections cover +hydraulic data import, EPZs, structure inventories, creating alternatives, and simulating alternatives. ### Hydraulic Data -For estimating life safety consequences, LifeSim requires depths, velocities, and arrival times from unsteady hydraulic modeling. The most common -method of delivering this information into the LifeSim model is through HEC-RAS Hierarchical Data Format (HDF) plan files (Note: Only HEC-RAS versions - 5+ produce the HDF files required by LifeSim). For each hydraulic scenario, the user will need the plan file from HEC-RAS and the terrain files (both - the HDF and the associated Tagged Image Format (TIF) files) so that LifeSim can calculate depths and arrival times. +To calculate life loss, LifeSim requires depths, velocities, and arrival times from unsteady hydraulic modeling. The most common +method of delivering this information into the LifeSim model is through HEC-RAS HDF plan files (Note: Only HEC-RAS versions +5.0 and later produce the HDF files required by LifeSim). For each hydraulic scenario, the user needs the plan file from HEC-RAS and the terrain files (both +the HDF and the associated Tagged Image File Format (TIF) files) so that LifeSim can calculate depths and arrival times. -Prior to importing data, create a new study by specifying a name and location to save to study data. To import the hydraulic data from HEC-RAS, right +Prior to importing data, create a new study by specifying a name and location to save the study data. To import the hydraulic data from HEC-RAS, right click on Hydraulic Data in the study pane, and select Import from HEC-RAS.
Hydraulic Data in the study pane, and select I caption="Importing hydraulic data from HEC-RAS" /> -From the Import from HEC-RAS window, map to the project’s HEC-RAS Plan(s) Directory by clicking on the button with the three dots. The file directory -selected should contain plan HDF files from HEC-RAS (e.g., PA00003_Curwensvill.p01.hdf). Select the specific HEC-RAS plan you want to import by using -the dropdown next to HEC-RAS Plan. Once selected, the Name of the hydraulic scenario will automatically populate, but the user is able to alter the -Name. If the terrain is inside the HEC-RAS directory Terrain folder it usually auto populates the terrain. If not, map to the project’s HEC-RAS -Terrain File (HDF) by clicking on the button with three dots. Once you have the hydraulic data mapped and selected in the Import from HEC-RAS window, -you can either select Import from RAS or Import from Map. +From the Import from HEC-RAS window, map to the project's HEC-RAS Plan(s) Directory by clicking on the button with the three dots . The file directory +selected should contain plan HDF files from HEC-RAS (e.g., _PA00003_Curwensvill.p01.hdf_). Select the specific HEC-RAS plan you want to import by using +the dropdown next to HEC-RAS Plan. Once selected, the Name of the hydraulic scenario automatically populates, but the user is able to alter the +Name. If the terrain is inside the HEC-RAS directory Terrain folder, LifeSim auto populates the terrain file. If not, map to the project's HEC-RAS +Terrain File (HDF) by clicking on the button with three dots . +Once you have the hydraulic data mapped and selected in the Import from HEC-RAS window, you can either select Import from RAS or Import from Map.
Import from RAS or Import from Ma /> To specify the timing of the hazard being evaluated, in this case dam breach, the user can either import a hydrograph from a specific cross section or - a storage area using the Import from RAS option or select a point on the map to generate a hydrograph using the Import from Map option. This example -uses the Import from Map option for simplicity. Refer to the for guidance on utilizing the Import from RAS option. +a storage area using the Import from RAS option or select a point on the map to generate a hydrograph using the Import from Map option. This example +uses the Import from Map option for simplicity. Refer to Estimating Consequences for Levees and Floodwalls, Hydraulic Data for +guidance on utilizing the Import from RAS option. -When you select Import from Map, the RAS Map Data Selector window will open. +When you select Import from Map, the RAS Map Data Selector window opens.
-The RAS Map Data Selector map window will automatically display the 2D areas used in the RAS modeling, the cross sections, the hydraulic animation, +The RAS Map Data Selector map window automatically displays the 2D areas used in the RAS modeling, the cross sections, the hydraulic animation, and a base map. The user can change the base map and add data to the map window (e.g., breach locations shapefile, leveed area shapefile, structure -inventory, etc.) by clicking on the Add Data button (see below). +inventory, etc.) by clicking on the Add Data button.
and click in the center channel of the inundation just caption="Progress Window in the RAS Map Data Selector after clicking on an area with the Select Hydrograph tool" /> -Once a representative hydrograph for the hydraulic scenario is loaded, click OK and you will return to the Import from HEC-RAS -window. The window will now display hydraulic timing information as well as the same representative hydrograph. The Hazard Occurrence date and time -should match the time that breach or overtopping (if applicable) begins within the study area. This information can be found in HEC-RAS or the -hydraulic engineer will provide this information. For the Curwensville MH Breach, the breach initiation time is 2/3/2099 at 23:00. The red line is the - hazard occurrence time, and the first 31 feet of depth represents spillway flow. The hydrograph then increases steeply after the breach. Press -OK and the hydraulic scenario will be processed and imported into LifeSim. +Once a representative hydrograph for the hydraulic scenario is loaded, click OK and you return to the Import from HEC-RAS +window. The window now displays hydraulic timing information as well as the same representative hydrograph. The Hazard Occurrence date and time +should match the time that failure or overtopping (if applicable) begins within the study area. This information can be found in HEC-RAS or the +hydraulic engineer provides this information. For the Curwensville MHP Failure, the breach initiation time is 2/3/2099 at 23:00. The red line is the +Hazard Occurrence time, and the first 31 feet of depth represents spillway flow. The hydrograph then increases steeply after the failure. +Press OK and the hydraulic scenario is processed and imported into LifeSim.
-The user will repeat this process for each of the study’s hydraulic scenarios. For non-breach scenarios, it is recommended to use the same imminent -hazard time used for the corresponding breach scenario. LifeSim interpolates population between the 2am and 2pm time values. Therefore, using -different imminent hazard times for breach and non-breach can cause inconsistencies when calculating incremental consequences by subtracting -non-breach results from breach results. +The user repeats this process for each of the study's hydraulic scenarios. For non-failure scenarios, it is recommended to use the same imminent +hazard time used for the corresponding failure scenario. LifeSim interpolates population between the 2am and 2pm time values. Therefore, using +different imminent hazard times for failure and non-failure scenarios can cause inconsistencies when calculating excess consequences by subtracting +non-failure results from failure results. ### Importing a Structure Inventory -To import a structure inventory from an existing point shapefile, the user will navigate to the Study pane in their model, right click on -Structure Inventories, and select Import Structures from Shapefile. +To import a structure inventory from an existing point shapefile, the user navigates to the Study pane in their model, right-clicks +on Structure Inventories, and select Import Structures from Shapefile.
-The user will then be able to either select the Structure Inventory Shapefile from the dropdown, which is available if the shapefile is in the Map -Layers pane of the LifeSim model, or navigate to the shapefile by clicking on the button with the three dots next to the dropdown. Once you match up -your shapefile’s attributes (Import Attributes) with the corresponding LifeSim Required Attributes (an example of matched up attributes using the NSI +The user can then select the Structure Inventory Shapefile from the dropdown, which is available if the shapefile is in the Map +Layers pane of the LifeSim model, or navigate to the shapefile by clicking on the button with the three dots next to the dropdown. Once you match up +your shapefile's attributes (Import Attributes) with the corresponding LifeSim Required Attributes (an example of matched up attributes using the NSI is shown in the figure below), click Next at the bottom right.
Next at the bottom right. caption="Importing National Structure Inventory 2.0 into LifeSim – Defining structure attributes" /> -You will then need to match the occupancy types in LifeSim with the occupancy types included in your structure inventory shapefile. If using NSI 2019 -or NSI 2022, the occupancy types will typically exactly match the occupancy type names in LifeSim, but the user should scan through the list to ensure - everything is matched up correctly. If these are mismatched, the depth-damage functions, evacuation parameters, and submergence criteria will not be +You then match the occupancy types in LifeSim with the occupancy types included in your structure inventory shapefile. If using a version of +NSI from 2019 or later, the occupancy types typically exactly match the occupancy type names in LifeSim, but the user should scan through the list to +ensure everything is matched up correctly. If these are mismatched, the depth-damage functions, evacuation parameters, and submergence criteria are not correct for that structure, which would impact the accuracy of your economic damages and life loss. If an occupancy type is missing, the user can add occupancy types or edit the existing occupancy types, which is discussed in the next subsection. @@ -460,8 +489,8 @@ occupancy types or edit the existing occupancy types, which is discussed in the /> After the occupancy types are assigned and reviewed, click Next. The final step for importing the inventory is the Stability Criteria - Assignment. LifeSim has default stability criteria assignments for wood unanchored structures (e.g., mobile homes), wood anchored structures, masonry - structures, and steel structures. For NSI users, you should use the default stability criteria. +Assignment. LifeSim has default stability criteria assignments for wood unanchored structures (e.g., mobile homes), wood anchored structures, masonry +structures, and steel structures. For NSI users, you should use the default stability criteria.
Next caption="Importing National Structure Inventory 2.0 – Assigning stability criteria" /> -Reference the for creating new structure criteria rules. Once all structures have been assigned a stability criterion, click Finish. - The inventory will then be imported into LifeSim. +Reference +Estimating Consequences for Levees and Floodwalls, Structure Inventory for creating new structure criteria rules. Once all structures have +been assigned a stability criterion, click Finish. The inventory is then imported into LifeSim. ### Emergency Planning Zones @@ -486,13 +516,16 @@ for Warning Issuance Delay, First Alert Diffusion during daytime and nighttime, /> When conducting a detailed consequence analysis in LifeSim, the analyst would work with local emergency managers and other subject matter experts to -determine the most appropriate curves to select for the entire study area or for specific areas with the study area. However, LifeSim contains generic - “unknown” curves that represent a maximum amount of uncertainty (relative to the other preset curves) regarding EPZ parameters. The unknown warning +determine the most appropriate curves to select for the entire study area or for specific areas within the study area. However, LifeSim contains generic +"unknown" curves that represent a maximum amount of uncertainty (relative to the other preset curves) regarding EPZ parameters. The unknown warning diffusion and PAI curves are uniform distributions, so given enough iterations the range of results should provide reasonable upper and lower bounds -of life loss. These unknown parameters are used for most MMC level LifeSim models and are used in this example. Reference the and -for more information on how to develop Warning and Protective Action parameters for your specific impact areas. +of life loss. These unknown parameters are used for most MMC-level LifeSim models and are used in this example. +Reference Estimating +Consequences for Levees and Floodwalls, Emergency Planning Zones and Estimating +Consequences for Coastal Infrastructure, Emergency Planning Zones for more +information on how to develop Warning and Protective Action parameters for your specific EPZs. -To import an EPZ, right click on Emergency Planning Zones and select Import EPZs From Shapefile. +To import an EPZ, right-click on Emergency Planning Zones and select Import EPZs from Shapefile.
-In the Import Emergency Planning Zones window, use the three dots on the upper right to browse to the “EPZ_MHP_DoubleWarning.shp” shapefile that was -created in the prior GIS section. Once selected, fill in the name field with the same name as the shapefile, and in the Emergency Planning Zone Name -Field dropdown menu select the field “Name” which was added to the shapefile in the GIS section. Before proceeding, confirm that there are now three -emergency planning zones named BreachEPZ, InPoolEPZ, and NonBreachEPZ. +In the Import Emergency Planning Zones window, use the three dots +on the upper right to browse to the "_EPZ_MHP_DoubleWarning.shp_" shapefile that was created in the prior GIS section. Once selected, fill in the name field with the same name +as the shapefile, and in the Emergency Planning Zone Name Field dropdown menu select the field "Name" which was added to the shapefile in the GIS section. Before proceeding, +confirm that there are now three EPZs named BreachEPZ, InPoolEPZ, and NonBreachEPZ.
-Each of the three EPZs are now assigned a Warning Issuance Delay curve, a First Alert Curve, and a PAI curve. Each area will have the same assigned +Each of the three EPZs is now assigned a Warning Issuance Delay curve, a First Alert Curve, and a PAI curve. Each area will have the same assigned curves for each uncertainty parameter. -There is a check box for Simulate Traffic (If Applicable). The “if applicable” statement is here because there is also a checkbox in the Alternative +There is a check box for Simulate Traffic (if applicable): . The "if applicable" statement is here because there is also a checkbox in the Alternative window to either simulate traffic or not simulate traffic for each alternative. Regardless of whether this box in the EPZ editor is checked, the primary option for simulating evacuation is the one in the Alternative window. However, if the Alternative specifies that traffic will be simulated, then the checkbox in the EPZ editor becomes applicable and allows the user to select specific EPZs in which traffic will be simulated. Traffic can either be simulated in all EPZs or only in certain selected EPZs. For example, in - a dam breach with a very long inundation area traffic might only be a concern in areas close to the dam or in a few large cities. EPZ polygons could +a dam failure with a very long inundation area traffic might only be a concern in areas close to the dam or in a few large cities. EPZ polygons could be created specifically for those areas so that the model runs efficiently while still simulating traffic in high-risk areas. Since this is meant to be a more base-level analysis, the Alternatives will specify that traffic will not be simulated, so the check box in the EPZ editor is not applicable and can be left checked. @@ -530,7 +563,7 @@ and can be left checked. #### Warning Issuance Delay The Warning Issuance Delay is the time it takes from when the emergency managers receive the notification of the imminent hazard to when they issue -the first evacuation order to the public. The preset “Preparedness Unknown” warning issuance delay curve is used in this analysis. Although the range +the first evacuation order to the public. The preset "Preparedness Unknown" warning issuance delay curve is used in this analysis. Although the range of possible warning issuance delay possibilities is between 0 minutes and 360 minutes, the most likely outcome is warning issuance 30 minutes after officials are notified of the flood hazard. @@ -543,12 +576,10 @@ officials are notified of the flood hazard. #### First Alert Diffusion -The preset “Preparedness Unknown” warning diffusion curves were used in this analysis. The curves utilize a uniform distribution, and the warning +The preset "Preparedness Unknown" warning diffusion curves were used in this analysis. The curves utilize a uniform distribution, and the warning diffusion curves are sampled during each Monte Carlo iteration in LifeSim. The upper bound of the curve reaches 100% diffusion after 100 minutes, and the lower bound reaches 100% diffusion after 360 minutes. Note that there is a different diffusion curve for daytime and nighttime. - -
OK to close the EPZ editor window. Repeat the Import EPZs from Shapefile process with the -“EPZ_IHP_DoubleWarning” shapefile and the “EPZ_NoDoubleWarning” shapefile using the same uncertainty parameters for each area in each EPZ. +"EPZ_IHP_DoubleWarning" shapefile and the "EPZ_NoDoubleWarning" shapefile using the same uncertainty parameters for each area in each EPZ. ### Creating Alternatives in LifeSim -Below the EPZ section of the LifeSim study tree are Road Networks, Destinations, Agricultural Data, and ECAM Data. These sections will be skipped for -this example of a base level study, as they are not utilized on most USACE projects that follow the MMC Standard Operating Procedure (SOP). Therefore, - the next step will be to create alternatives. +Below the EPZ section of the LifeSim study tree are Road Networks, Destinations, Agricultural Data, and Economic Consequences Assessment Model (ECAM) Data. These sections are skipped for +this example of a base level study. For information on simulating evacuation, reference Estimating +Consequences for Levees and Floodwalls, Simulating Evacuation. Therefore, the next step in this example is to create alternatives. -For this study, each breach event will have two alternatives representing different warning ranges. These ranges are referred to as minimal warning -and ample warning and they allow the results to be applied to different potential breach scenarios that may have different opportunity ranges for -observation, development, and warning in relation to the breach initiation. The non-breach events will only have one alternative because only the -areas impacted by breach flows will have different warning conditions. The table below shows the different warning times used in these alternatives. - -:::danger -This table contains cells that span multiple rows or columns. Manually update the React component to properly format the table. -::: +For this study, each failure event will have two alternatives representing different warning ranges. These ranges are referred to as minimal warning +and ample warning and they allow the results to be applied to different potential failure scenarios that may have different opportunity ranges for +observation, development, and warning in relation to the breach initiation. The non-failure events will only have one alternative because only the +areas impacted by failure flows will have different warning conditions. The table below shows the different warning times used in these alternatives. -To create the first alternative, right click on Alternatives and select Create New Alternative to bring up the +To create the first alternative, right-click on Alternatives and select Create New Alternative to bring up the alternative window.
-The name for this first alternative will be “MHP_Breach_MinWarn”. Under Input Data Sources, uncheck the box for Simulate Traffic but leave the -Calculate Life Loss box checked. Fill in the remainder of the Input Data Sources box to match the following figure. +The name for this first alternative will be "MHP_Breach_MinWarn". Under Input Data Sources, uncheck the box for Simulate Traffic but leave the +Calculate Life Loss box checked . Fill in the remainder of the Input Data Sources box to match the following figure.
Finally, switch to the NonBreach EPZ and set the same warning (-72 hours) that was used for the in-pool EPZ. A similar assumption of upper-end -mobilization based on flood characteristics applies here; the non-breach flooding is a result of spillway flow from the dam which will typically be +mobilization based on flood characteristics applies here; the non-failure flooding is a result of spillway flow from the dam which will typically be forecasted in advance based on rainfall and inflows and it will occur somewhat gradually as the pool rises above the spillway crest or spillway gates are incrementally opened. Once this final warning is set, click OK to close the Alternative Editor window. -To create the additional alternatives, an easy method is to right click on the alternative just created and click Copy. This brings -up a window where the name of the new alternative can be changed. Change the name to “IHP_Breach_MinWarn” to create the next alternative. Right click -on the new alternative and select Edit. Change the hydraulic event to IH Breach and change the EPZ to the “EPZ_IHP_DoubleWarning” -file. Set the same hazard ID time and hazard communication delay for breach, non-breach, and in-pool areas to the same as they were on the MHP -alternative (-2 to 0 hours for breach and -72 hours for non-breach and in-pool). +To create the additional alternatives, an easy method is to right-click on the alternative just created and click Copy. This brings +up a window where the name of the new alternative can be changed. Change the name to "IHP_Breach_MinWarn" to create the next alternative. Right click +on the new alternative and select Edit. Change the hydraulic event to IHP Breach and change the EPZ to the "EPZ_IHP_DoubleWarning" +file. Set the same Imminent Hazard ID time and Hazard Communication Delay for failure, non-failure, and in-pool areas to the same as they were on the MHP +alternative (-2 to 0 hours for failure and -72 hours for non-failure and in-pool).
-Next, copy existing alternatives (e.g., “IHP_Breach_MinWarn”) to create alternatives for “TAS_Breach_MinWarn”, “SS_Breach_MinWarn”, and -“NH_Breach_MinWarn”. In each alternative, change the hydraulic event to the appropriate breach event (i.e., TAS, SS, or NH) and for each of these -three alternatives change the EPZ to the “EPZ_NoDoubleWarning” selection. There will be no non-breach zone for these runs because there is no -out-of-bank flooding prior to the breach. +Next, copy existing alternatives (e.g., "IHP_Breach_MinWarn") to create alternatives for "TAS_Breach_MinWarn", "SS_Breach_MinWarn", and +"NH_Breach_MinWarn". In each alternative, change the hydraulic event to the appropriate failure event (i.e., TAS, SS, or NH) and for each of these +three alternatives change the EPZ to the "EPZ_NoDoubleWarning" selection. There will be no non-fail zone for these runs because there is no +out-of-bank flooding prior to the failure. -Once the minimal warning scenarios are complete, make copies of each one and replace the “MinWarn” in the name with “AmpleWarn”. +Once the minimal warning scenarios are complete, make copies of each one and replace the "MinWarn" in the name with "AmpleWarn".
-The only edit required for each alternative is the Hazard ID time for the breach zone, which is changed to -6 to -2 hours (minimal warning was -2 to 0 - hours). +The only edit required for each alternative is the Hazard ID time for the failure zone, which is changed to -6 to -2 hours (minimal warning was -2 to 0 +hours).
-Finally, set up the non-breach alternatives. For this study we will have non-breach alternatives for only the (1) MH Pool, (2) IH Pool, and (3) TAS +Finally, set up the non-failure alternatives. For this study you will have non-failure alternatives for only the (1) MHP Pool, (2) IHP Pool, and (3) TAS Pool. The TAS event should not have any damages as it should be within control levels, but it needs to be simulated to confirm that and identify any inaccuracies in the hydraulics or structure inventory that need to be corrected. -Once all the example alternatives are created it should match the figure below. +Once all the example alternatives are created, they should match the figure below.
-Next create the “MH_Sims”, “IH_Sims”, and “TAS_SS_NH_Sims” simulations. For the “MH_Sims”, select 2am and 2pm, and use 1000 iterations (more +Next create the "MH_Sims", "IH_Sims", and "TAS_SS_NH_Sims" simulations. For the "MH_Sims", select 2am and 2pm, and use 1,000 iterations (more iterations can be used depending on need and simulation times, 1,000 is a recommended minimum). For the Summary Polygons, select the MHP double -warning EPZ, the Milage Reaches polygon that was created in ArcGIS previously, and the City Boundaries polygon. For Summary Set Name it is important +warning EPZ, the Mileage Reaches polygon that was created in ArcGIS previously, and the City Boundaries polygon. For Summary Set Name it is important to use the same names for each simulation (EPZs, Reaches, and Cities) to facilitate analysis of results in a spreadsheet.
Once all the example simulations are created, it should match the figure below. @@ -780,25 +797,25 @@ Once all the example simulations are created, it should match the figure below. caption="Curwensville Dam Simulation list" /> -## Running the TestSim +## Running a Test Simulation -The first Simulation to be run is the TestSim, as this will assist in calibration of the inventory. In theory, the TAS non-breach scenario should be +The first Simulation to be run is the TestSim, as this will assist in calibration of the inventory. In theory, the TAS non-fail scenario should be within channel and have no flood damages. If structures are flooded in this scenario, it means those structures would likely be flooded prior to the -breach in the breach scenario and would not receive any warning within the model. +failure in the modeled fail scenario and would not receive any warning within the model. -Right click on the TestSim and select Run Simulation to simulate the TAS non-breach alternative that was selected. -This simulation may take about 20 minutes or more depending on the computer. Once the simulation is finished, right click on TestSim -and select View Results Tables. +Right click on the TestSim and select Run Simulation to simulate the TAS non-failure alternative that was selected. +This simulation may take about 20 minutes or more depending on the computer. Once the simulation is finished, right-click on TestSim +and select View Results Tables.
The primary output table for the simulation has a row for each Summary area, including totals for the entire summary areas. There are also rows for -each time of day. In this example 15 structures were inundated in the TAS non-breach event and these need to be checked and modified before running +each time of day. In this example, 15 structures were inundated in the TAS non-failure event and these need to be checked and modified before running the final simulation sets.
Show in Map Window. +To edit the structure inventory, right-click the study's structure inventory in the study tree and select Show in Map Window. + +_Note: The model results included in the subsequent sections are for example purposes only and are not representative of actual life loss and +economic damage estimates for the Curwensville Dam project._
-Switch back to the study tree, right click on TestSim under Simulations and select View Results Maps. +Switch back to the study tree, right-click on TestSim under Simulations and select View Results Maps.
-Check the box next to 14:00 Structure Summary and the rest of the window should populate as follows. +Check the box next to 14:00 Structure Summary, and the rest of the window should populate as follows.
Click Send Selected to Map Window in the bottom right to add the selection(s) to the map. In the Map Layers pane, select and move the - structure inventory so it is at the top of the list. Next, right click on the TAS_NonBreach layer and select Properties. Change the +structure inventory so it is at the top of the list. Next, right-click on the TAS_NonBreach layer and select Properties. Change the Draw Style to Value, select the Attribute Max_Depth, change the number of bins to 1 and the Minimum to 0.001. Next change both the Line Color and Fill - Color to yellow and change the size to 5. Next, select the Excluded Values category, and uncheck the boxes next to Line Color and Fill Color. When -the changes are made hit Apply and then Close in the bottom right. +Color to yellow and change the size to 5. Next, select the Excluded Values category, and uncheck the boxes next to Line Color and Fill Color. When +the changes are made click Apply and then Close in the bottom right.
Apply and then Close caption="Structure Summary Properties – Editing the map properties" /> -These map properties create an effect that highlights any structures that were inundated by more than 0.001 feet in the TAS Non-breach simulation. -Four of the structures are on or just upstream of the dam itself. Zooming in it is apparent that these are not structure points that should be +These map properties create an effect that highlights any structures that were inundated by more than 0.001 feet in the TAS Non-fail simulation. +Four of the structures are on or just upstream of the dam itself. Zooming in, it is apparent that these are not structure points that should be included in the LifeSim model.
-Once edit is selected a new toolbar appears on the right side of the map buttons. +Once **Edit** is selected, the Editor Toolbar tools become active on the right side of the map buttons. The functionality of each tool is +described in LifeSim Users Guide - LifeSim Interface.
-First the three points on the dam are selected by drawing a box around them. +First, the three points on the dam are selected by drawing a box around them.
-Hit the Delete key on your keyboard to delete the structure points. Directly west of these structure, across the lake, a highlighted +Press the Delete key on your keyboard to delete the structure points. + +Directly west of these structures, across the lake, a highlighted structure point in an empty field can also be selected and deleted. The user can zoom out and scroll downstream to locate the other highlighted points - that were damaged in the TAS non-breach, either deleting points if there are no apparent structures nearby without points or moving them to +that were damaged in the TAS non-fail, either deleting points if there are no apparent structures nearby without points or moving them to structures if possible. It can be helpful to uncheck the structure inventory layer display to help locate the yellow points. Structures can be moved -by left clicking and holding down the button to drag the points to a new location as demonstrated in the figure below. +by left-clicking and holding down the button to drag the points to a new location as demonstrated in the figure below.
To finish editing, click on the Save button and then click on the Stop Editing button. Note that if saving results in an error about the number of records not matching, stop editing and remove the inventory from the map layer list, then add it to the display again from - the study tree and verify and re-edit as necessary. +the study tree and verify and re-edit as necessary.
-Editing the structure points impacted in the TAS Non-breach event represents a minimum level of structure inventory calibration that must be +Editing the structure points impacted in the TAS non-failure event represents a minimum level of structure inventory calibration that must be accomplished to avoid overestimating consequences due to structures not receiving a warning or structures being flooded deeper than they should be. There are some cases where a structure point is placed correctly but is still flooded due to either terrain inaccuracies or lack of low flow hydraulic - model calibration. In these cases, the user must determine the most efficient and effective resolution which could include steps such as moving +model calibration. In these cases, the user must determine the most efficient and effective resolution which could include steps such as moving structures to compensate for the inaccuracies, using a double warning approach to ensure the structures get a warning in the model prior to inundation, or performing additional hydraulic model calibration. Some structure points may need to be moved outside of the structure footprint to compensate. Common examples of when this may be required are structures on a hillside where the uphill side is at ground level and the downhill side is raised on blocks or piers and floating structures attached to riverside docks (there are several examples of the latter along the Columbia River). -Once the TAS non-breach calibration is complete, edit the test simulation to select both the MH Breach Minimal Warning and the TAS Non-Breach +Once the TAS non-failure calibration is complete, edit the test simulation to select both the MHP Breach Minimal Warning and the TAS non-failure alternatives, then run the simulation with those two alternatives and the inventory edits just completed. This second test will accomplish two important - tasks: (1) it will verify that the TAS Non-breach event does not flood any structures and (2) it will provide the results needed to verify the +tasks: (1) it will verify that the TAS non-failure event does not flood any structures and (2) it will provide the results needed to verify the attributes and locations of high consequence structures. -Once the simulation is complete, close the simulation then right click on TestSim and select View Results Tables. It - should look like the figure below where the TAS_NonBreach alternative has zero structures inundated. +Once the simulation is complete, close the simulation then right-click on TestSim and select View Results Tables. It +should look like the figure below where the TAS_NonBreach alternative has zero structures inundated.
-Close the table, right click on TestSim again, and select View Results Maps. Check the box next to the MHP Breach +Close the table, right-click on TestSim again, and select View Results Maps. Check the box next to the MHP Breach MinWarn 14:00 Structure Summary and click Send Selected to Map Window in the bottom right of the window. The map window will now -contain a heat map of the daytime life loss for the MH MinWarn alternative. +contain a heat map of the daytime life loss for the MHP MinWarn alternative.
-Life loss at individual structures can be checked by right clicking on the selection and opening the attribute table. Scroll the table halfway across -to the field Life_Loss_Total_Mean, right click on the field name, and select Sort Descending. The first row will now be the structure - with the highest mean life loss. Right click on the row number on the left and select Zoom to Selected to zoom to the structure +Life loss at individual structures can be checked by right-clicking on the selection and opening the attribute table. Scroll the table halfway across +to the field Life_Loss_Total_Mean, right-click on the field name, and select Sort Descending. The first row will now be the structure +with the highest mean life loss. Right click on the row number on the left and select Zoom to Selected to zoom to the structure area. Repeat the zoom a few more times to zoom to a close view of the structure.
-Now with the structure inventory displayed on top of the results map, right click on the inventory to open the attribute table. Move and organize both - attribute windows to they can be seen, and then use the Select tool (white arrow) to select the structure with the high life loss. +Now with the structure inventory displayed on top of the results map, right-click on the inventory to open the attribute table. Move and organize both +attribute windows so they can be seen, and then use the Select tool (white arrow) to select the structure with the high life loss. In the structure attribute table, click on the button to Show Selected Rows Only as shown in the figure below.
Show Selected R In this example, a significant portion of the life loss (22%) is occurring in a building with an occupancy type of EDU1, which is a school. The structure can now be investigated to determine whether the attributes and location are correct. The first obvious issues are that (1) the placement is - incorrect based on the imagery and (2) the NSI lists the school as a single-story structure, while many schools are multiple stories. +incorrect based on the satellite imagery and (2) the NSI lists the school as a single-story structure, while many schools are multiple stories.
Scrolling right on the inventory shows that there is a daytime under 65 population of 739, which should be the students and teachers combined. The -structure can be moved based on the imagery, but to check the other attributes the school must be researched on the internet. +structure can be moved based on the imagery, but to check the other attributes, the school must be researched on the internet. -Google Maps and Streetview can typically be used to verify how many stories a building is if street view is available in the area. With a school, the +Google Maps and Street View can typically be used to verify how many stories a building is if street view is available in the area. With a school, the school website also often has pictures which can be used to count stories. A Google Maps search for Clearfield Area High School will bring the user to - a completely different school location than what is shown in the inventory and in the Mapbox satellite imagery in LifeSim, which poses a unique +a completely different school location than what is shown in the inventory and in the Mapbox satellite imagery in LifeSim, which poses a unique problem.
-It’s helpful to crosscheck the stucture’s location by utilizing an alternate imagery source. LifeSim contains two streaming sources, MapBox and ESRI. +It is helpful to crosscheck the structure's location by utilizing an alternate imagery source. LifeSim contains two streaming sources, Mapbox and ESRI. The figure below shows the same area with Mapbox imagery on the left and ESRI imagery on the right.
While the ESRI imagery is lower resolution, the school buildings are clearly not there, leading to the possibility that the school has been demolished. Additional news article searches verified that a new consolidated school was built and the school location in the structure inventory was -the old school. The point can be moved to the new school location found in the Google Maps search, however, an inundation check shows that new +the old school. The point can be moved to the new school location found in the Google Maps search. However, an inundation check shows that new location to be outside of the maximum inundation footprint, so the entire school point can be deleted instead of moved. Right click on the inventory -layer in LifeSim and select Edit, then select the structure point, right click on it, and click Delete Selected +layer in LifeSim and select Edit, then select the structure point, right-click on it, and click Delete Selected Features. If the school was still operating in its original location, the point would be moved to the school structure and the number of stories would be changed to 3 stories. -Next look at the structures with the second highest mean life loss value by selecting that row in the MH_Breach_MinWarn attribute table (with the -descending sort on the Life Loss Total Mean field). Right click on the row to zoom to the structure and it comes up as the Curwensville Area School +Next, look at the structures with the second highest mean life loss value by selecting that row in the MH_Breach_MinWarn attribute table (with the +descending sort on the Life Loss Total Mean field). Right click on the row to zoom to the structure, and it comes up as the Curwensville Area School District. Open the structure attribute table and select the structure and it will show two structures on the same point, both EDU1 schools.
View Results Plots, Tables, or Maps. The results tables can be copied into Microsoft Excel and analyzed using pivot tables and formulas. Results can be displayed and compared by downstream reaches and city -boundaries; additionally, the IHP and MHP results can be viewed by non-breach and breach EPZs. - -(Page is intentionally left blank) +boundaries; additionally, the IHP and MHP results can be viewed by non-failure and failure EPZs. +Reference Estimating +Consequences for Levees and Floodwalls, Understanding and Interpreting Results for more information on analyzing results and calibrating data inputs. - \ No newline at end of file + diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/06-modeling-cascading-dam-breaches-in-lifesim.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/06-modeling-cascading-dam-breaches-in-lifesim.mdx deleted file mode 100644 index e052d4634..000000000 --- a/docs/desktop-applications/lifesim/applications-guide/v1.0/06-modeling-cascading-dam-breaches-in-lifesim.mdx +++ /dev/null @@ -1,342 +0,0 @@ ---- -title: "Modeling Cascading Dam Breaches in LifeSim" ---- - -import Link from "@docusaurus/Link"; -import addBaseUrl from "@docusaurus/useBaseUrl"; -import Citation from "@site/src/components/Citation"; -import CitationFootnote from "@site/src/components/CitationFootnote"; -import Figure from "@site/src/components/Figure"; -import FigureInline from "@site/src/components/FigureInline"; -import FigReference from "@site/src/components/FigureReference"; -import NavContainer from "@site/src/components/NavContainer"; -import ProcessList from "@site/src/components/ProcessList"; -import TableReference from "@site/src/components/TableReference"; -import TableVertical from "@site/src/components/TableVertical"; -import VersionSelector from "@site/src/components/VersionSelector"; - - - -# Modeling Cascading Dam Breaches in LifeSim - -## Purpose - -This chapter demonstrates the process for estimating consequences for a scenario in which multiple dams breach within the same modeling extents. An -example of this is a dam breaching due to extreme inflow from an upstream dam breach. This chapter focuses on a breach at Oahe Dam, located along the -Missouri River in South Dakota, and the other dams located downstream that could breach following a breach at Oahe Dam. - -There are several dams downstream of Oahe Dam that are at risk of a cascading breach. The modeled cascading breaches (originally modeled by the -Modeling, Mapping, and Consequences (MMC) Production Center of the U.S. Army Corps of Engineers’ (USACE) in 2022) include three other dams that could -potentially breach: Big Bend Dam (85 miles downstream of Oahe Dam), Fort Randall Dam (192 miles downstream of Oahe Dam), and Gavins Point Dam (261 -miles downstream of Oahe Dam). Since this example assumes there are three dams that breach following the initial Oahe Dam breach, there are multiple -ways to model this scenario in LifeSim. - -This chapter focuses on two options: (1) warning the entire downstream area relative to the Oahe Dam breach and (2) warning the in-pool area, areas -downstream of Oahe Dam, and areas downstream of Big Bend Dam relative to the Oahe Dam breach, as well as warning areas downstream of Fort Randall Dam -and Gavins Point Dam relative to the Fort Randall Dam breach. Another modeling option that is not detailed in this chapter is warning areas -downstream of specific dams relative to specific dam breaches (e.g., Warn the population between Oahe Dam and Big Bend Dam relative to the Oahe Dam -breach, warn the population between Big Bend Dam and Fort Randall Dam relative to the Big Bend Dam breach, etc.). - -## Input Data and Pre-Processing - -The subsequent sections discuss the input data required to calculate damages and life loss for a cascading dam breach. Most of the input data remains -similar to the non-cascading dam LifeSim modeling (see the for more information). The subsequent sections discuss hydraulic data, emergency planning -zones (EPZ), structure inventories, creating alternatives, and simulating alternatives. - -### Hydraulic Data - -Importing hydraulic data for a cascading dam breach follows the same process as importing hydraulic data for a standard dam breach. Although there are - multiple hazard occurrence times (i.e., multiple dam breaches), LifeSim currently only allows the user to select one hazard occurrence time. For -cascading dam breaches, the most upstream dam is often the focus of the dam safety study. To model cascading breaches, it is easiest to select the -hazard occurrence time based on the upstream dam breach, which is Oahe Dam in this example. - -Fort Randall Dam will have a separate breach time, but this will come into play when selecting warning times for the EPZs rather than the hazard -occurrence time (if using Option 2 discussed in the Purpose section). Similarly, for all LifeSim models, the hazard occurrence time is the first step -in the warning and evacuation timeline. The imminent hazard identification times in the alternatives are relative to the hazard occurrence time -selected for each hydraulic scenario. This is discussed in more detail later in the Alternatives section. - -### Structure Inventory - -The structure inventory for a cascading dam breach is the same inventory used for standard hydraulic scenarios (i.e., the breach of only Oahe Dam). -However, if the cascading breaches scenarios are tacked on later in the study/modeling process, the structure inventory may need to be expanded as -these inundation boundaries are larger than those from the Oahe Dam breach alone. If you have the cascading breach inundation boundaries from the -start of the study, it is recommended to use the highest loading breach scenario with cascading breach to select the structure inventory. Including a -buffer on this inundation boundary is recommended to accommodate any changes to the hydraulic model. - -### Emergency Planning Zones - -EPZs are a key input that are likely to differ for a cascading dam breach scenario. There are two EPZ options for this type of event: (1) use the same - double warning EPZ as the standard hydraulic scenario (see the ) and (2) create a new double warning EPZ that includes a separate zone(s) for the -area(s) downstream of a cascading dam breach(es). - -Option 1 is recommended if you believe the entire downstream area would be warned relative to the upstream dam breaching. Option 2 is recommended if -you believe portions of the downstream area would only receive an evacuation order following the breach of a downstream dam (i.e., the population and -emergency managers view the risk of the downstream dam breaching as low; they also believe risk is low following the upstream dam breach). - -For the Missouri River dams downstream of Oahe, it is possible that emergency managers believe Big Bend (85 miles downstream of Oahe Dam) is at higher - risk for breaching since it is within 100 miles of the dam. However, emergency managers in areas downstream of Fort Randall Dam may initially believe - the dam will not breach. They would then send out a warning much closer to when Fort Randall Dam breaches compared to when Oahe Dam breaches. The -rest of this chapter focuses on modeling Option 2 and separating the EPZ at Fort Randall Dam. - -#### Modeling Option 2: Creating a New Double Warning EPZ - -To model the cascading breach following modeling Option 2, you need to first create a double warning EPZ that includes a separate zone for downstream -of Fort Randall Dam. The base shapefile of any cascading breach EPZ is the non-cascading double warning EPZ; the non-breach flows remain the same -between a cascading breach and non-cascading breach. The easiest way to do this is to duplicate the existing double warning EPZ / save the existing -double warning polygon as a new shape. Then, begin an edit session in ArcGIS on the duplicate double warning shapefile, cut the polygon at Fort -Randall Dam, edit the attribute table to include an appropriate name (e.g., FtRandall_Downstream), and save edits. - -
- -Then, import the new shapefile into LifeSim with an appropriate name; exemplifies different EPZ names, including - an EPZ specifically for modeling Option 2: MHP_breach_casc_FtRandall_Warn. - -
- -### Alternatives - -Creating and setting up alternatives in LifeSim varies significantly depending on which modeling method you are using. Both modeling options are -detailed in the subsequent sections. - -#### Modeling Option 1: Warning Relative to Oahe Dam Breach - -For Option 1, the cascading dam breach alternative is almost identical to the standard hydraulic scenario. As shown in the figures below, the only -difference in the alternatives is which Hydraulic Event is selected (non-cascading breach, labeled “NC”, versus cascading, labeled “C”, breach). Both -use the Maximum High Pool (MHP) double warning EPZ, the same structure inventory, and the same Imminent Hazard ID Times. - -
- -
- -#### Modeling Option 2: Warning Areas Relative to Specific Dam Breaches - -For Option 2, first you need to use the new double warning polygon that was created for the cascading dam breaches. The only difference between the -two EPZs will be that the polygon is cut at the cascading dam (i.e., Fort Randall Dam). The separate zones are necessary in order to include different - Imminent Hazard ID Times relative to 1) Oahe Dam breaching and 2) Fort Randall Dam breaching. - -For Option 2, the key difference is warning the areas downstream of the other dam breach (e.g., Fort Randall Dam) relative to its hazard occurrence -time (i.e., overtopping or breach time). The hydraulic engineer can provide the downstream dam’s breach time and/or overtopping time. Recall, however, - that LifeSim can only have one hazard occurrence time per hydraulic scenario. A cascading dam breach has multiple hazard occurrence times; one for -each dam that overtops/breaches in the scenario. To account for the hazard occurrence time of Fort Randall Dam breaching, the Imminent Hazard ID Time -needs to be calculated to warn areas downstream of Fort Randall Dam relative to when it breaches. To obtain this information, calculate the time -difference (in hours) between the two dams breaching (shown in green in the following table). - -:::danger -This table contains cells that span multiple rows or columns. Manually update the React component to properly format the table. -::: - - - -From here, you can determine the Imminent Hazard ID Times for the various warning scenarios. The following table shows the calculated Imminent Hazard -ID Times for the Downstream of Fort Randall EPZ. The warning times shown below warn the population downstream of Fort Randall Dam between 2 hours -prior to breach and the time of breach (minimal warning) and 6 hours prior to breach to 2 hours prior to breach (ample warning) -- relative to the -time of Fort Randall Dam’s breach initiation. - -:::danger -This table contains cells that span multiple rows or columns. Manually update the React component to properly format the table. -::: - - - -Implementing the warning times from into your alternatives is shown in -and . The figures show the Maximum High Pool cascading breach. As shown in the figures, the “DS_Oahe_Fail” EPZ is - assigned the standard time of -2 to 0 hours. The “DS_FtRandall_Fail” EPZ is assigned the calculated time of +14 to +16 hours. Again, the +14 to +16 -hours is relative to the hazard occurrence, which is Oahe Dam’s breach initiation time. - -If you are unsure of which modeling method to use, implement both methods in the study to understand how the different EPZs impact life loss results. - -
- -
- -As previously mentioned, an additional modeling method is to warn the populations separately downstream of each dam (e.g., the EPZ would include a -zone downstream of Oahe Dam, a zone downstream of Big Bend Dam, a zone downstream of Fort Randall Dam, and a zone downstream of Gavins Point dam—each -with imminent hazard ID times calculated based on the respective dam’s breach initiation relative to the Oahe Dam’s breach initiation time.). The -local emergency managers and dam operators may have a general understanding of how they would respond to a breach of an upstream dam, including -if/when they would send out evacuation orders. This type of information can help inform which LifeSim modeling method is most appropriate for your -study’s cascading dam breach scenarios. - -### Simulations - -For both modeling options, creating a simulation and running it follows the same standard practice. Reference the for more detailed information on -creating simulations. The only additional reporting consideration is if you want to include unique summary polygons. For example, it may be -beneficial to summarize results by dam breach area (e.g., one area between Oahe Dam and Fort Randall Dam and another area for everything downstream of - Fort Randall Dam, etc.) If you created new EPZs for the cascading dam breach, these shapefiles may be used as the summary polygon. - - - -(Page intentionally left blank) - - \ No newline at end of file diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/06-modeling-cascading-dam-failures-in-lifesim.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/06-modeling-cascading-dam-failures-in-lifesim.mdx new file mode 100644 index 000000000..f139acf04 --- /dev/null +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/06-modeling-cascading-dam-failures-in-lifesim.mdx @@ -0,0 +1,374 @@ +--- +title: 'Modeling Cascading Dam Failures in LifeSim' +--- + +import Link from '@docusaurus/Link'; +import addBaseUrl from '@docusaurus/useBaseUrl'; +import Citation from '@site/src/components/Citation'; +import CitationFootnote from '@site/src/components/CitationFootnote'; +import Figure from '@site/src/components/Figure'; +import FigureInline from '@site/src/components/FigureInline'; +import FigReference from '@site/src/components/FigureReference'; +import NavContainer from '@site/src/components/NavContainer'; +import ProcessList from '@site/src/components/ProcessList'; +import TableReference from '@site/src/components/TableReference'; +import TableVertical from '@site/src/components/TableVertical'; +import VersionSelector from '@site/src/components/VersionSelector'; + + + +# Modeling Cascading Dam Failures in LifeSim + +## Purpose + +This chapter demonstrates the process for estimating the consequences of a scenario in which multiple dams fail within the same modeling extent. An +example of this is a dam failing due to extreme inflow from an upstream dam failure. +The Risk Management Center has a LifeSim validation study of the +real-world 2020 cascading dam failures of Edenville Dam and (subsequently) Sanford Dam available for download. + +This chapter focuses on a failure at Oahe Dam, located along the +Missouri River in South Dakota, and on other downstream dams that could fail following a failure at Oahe Dam. + +There are several dams downstream of Oahe Dam that are at risk of a cascading failure. Originally modeled +by the U.S. Army Corps of +Engineers (USACE) Modeling, Mapping, and Consequence (MMC) Mandatory +Center of Expertise (MCX) in 2022, +the modeled cascading failures include three downstream dams that could +potentially fail: Big Bend Dam (85 miles downstream of Oahe Dam), Fort Randall Dam (192 miles downstream of Oahe Dam), and Gavins Point Dam (261 +miles downstream of Oahe Dam). Since this example assumes three dams fail after the initial Oahe Dam failure, there are multiple ways to model this +scenario in LifeSim. + +This chapter focuses on two different modeling options: + +Warning the entire downstream area relative to the Oahe Dam failure., + }, + { + // STEP 2 + title: ( + <> + Warning the in-pool area, areas downstream of Oahe Dam, and areas downstream of Big Bend Dam relative to the Oahe Dam failures; and then + warning areas downstream of Fort Randall Dam and Gavins Point Dam relative to the Fort Randall Dam failure. + + ), + }, + ]} +/> + +Another modeling option that is not detailed in this chapter is warning areas downstream of specific dams relative to specific dam failures (e.g., +warn the population between Oahe Dam and Big Bend Dam relative to the Oahe Dam failure, warn the population between Big Bend Dam and Fort Randall Dam +relative to the Big Bend Dam failure, etc.). + +_Note: The model results included in the subsequent sections are for example purposes only and are not representative of actual life loss and +economic damage estimates for the Oahe Dam and Fort Randall Dam projects._ + +## Input Data and Pre-Processing + +The subsequent sections discuss the input data required to calculate damages and life loss for a cascading dam failure. Most of the input data remains +similar to non-cascading dam LifeSim +modeling (see Estimating Consequences for Dams for +more information). The subsequent sections discuss hydraulic data, emergency planning zones (EPZs), structure inventories, alternative development, +and simulating alternatives. + +### Hydraulic Data + +Importing hydraulic data for a cascading dam failure follows the same process as a standard dam failure. Although there are multiple hazard occurrence +times (i.e., multiple dam failures), LifeSim currently allows the user to select only one. For cascading dam failures, the most upstream dam is often +the focus of the dam safety study (Modeling Option 1 described in Purpose). To model +cascading failures, it is easiest to select the hazard occurrence time based on the upstream dam failure, which is Oahe Dam in this example. + +Fort Randall Dam has a different breach initiation (or overtopping) time, but this will come into play when selecting warning times for the EPZs rather than +the hazard occurrence time (if using Modeling Option 2 discussed +in Purpose). Similarly, +for all LifeSim models, the hazard occurrence time is the first step in the warning and evacuation timeline. The imminent hazard identification times +in the alternatives are relative to the hazard occurrence time selected for each hydraulic scenario. This is discussed in more detail +later in Alternatives. + +### Structure Inventory + +The structure inventory for a cascading dam failure is the same inventory used for standard failure scenarios (i.e., the failure of only Oahe Dam). This example +utilizes the NSI . Reference Estimating +Consequences for Levees and Floodwalls, Structure Inventory for additional information on the NSI and/or importing structure inventories into LifeSim. However, if the cascading dam failure scenarios are tacked +on later in the study/modeling process, the structure inventory may need to be expanded as these inundation boundaries are larger than those from the +standard Oahe Dam failure scenarios. If you have the cascading failure inundation boundaries from the start of the study, it is recommended to use the +highest loading failure scenario with cascading failure as the boundary for creating the structure inventory. Additionally, it is recommended to +include a buffer on this inundation boundary to accommodate any potential future changes to the hydraulic modeling. + +### Emergency Planning Zones + +EPZs are a key input that is likely to differ for a cascading dam failure scenario. There are two EPZ options for this type of event:. There are two EPZ options for this type of event: + + + Use the same double warning EPZ as the standard hydraulic scenario (see{' '} + + Estimating Consequences for Dams, Emergency Planning Zones + + ). + + ), + }, + { + // STEP 2 + title: <>Create a new double warning EPZ that includes separate zones for the areas downstream of each dam that fails., + }, + ]} +/> + +Option 1 is recommended if you believe the entire downstream area would be warned relative to the upstream dam failing. Option 2 is recommended if +you believe portions of the downstream area would only receive an evacuation order following the failure of a downstream dam (e.g., the population and +emergency managers view the risk of the nearby, downstream dam failing as low; they also believe risk is low even with an upstream dam failure). + +For the Missouri River dams downstream of Oahe Dam, emergency managers may believe Big Bend Dam (85 miles downstream of Oahe Dam) is at higher +risk of failure because it is within 100 miles of the dam. However, the emergency managers for areas downstream of Fort Randall Dam may initially believe +the dam will not fail. They would then send out a warning much closer to when Fort Randall Dam fails rather than relative to when Oahe Dam fails. + +#### Modeling Option 2: Creating a New Double Warning EPZ + +To model the cascading failure under Modeling Option 2, you first need to create a double warning EPZ that includes a separate zone for the area downstream +of Fort Randall Dam. The base shapefile for any cascading failure EPZ is the non-cascading scenario's double warning EPZ; the non-fail flows are the same +for both the cascading fail and non-cascading fail scenarios. The easiest way to do this is to duplicate the existing double warning EPZ or save the existing +double warning polygon as a new shape. Then, begin an edit session in ArcGIS on the duplicated double warning shapefile, cut the polygon at Fort +Randall Dam, edit the attribute table to include an appropriate name (e.g., FtRandall_Downstream), and save edits. + +
+ +Then, import the new shapefile into LifeSim with an appropriate name; exemplifies different EPZ names, including +an EPZ specifically for Modeling Option 2: MHP_breach_casc_FtRandall_Warn. + +
+ +### Alternatives + +Creating and setting up alternatives in LifeSim varies significantly depending on the modeling method you use. Both modeling options are +detailed in the subsequent sections. + +#### Modeling Option 1: Warning Relative to Oahe Dam Failure + +For Modeling Option 1, the cascading dam failure alternative is almost identical to the standard hydraulic scenario. As shown in the figures below, the only +difference in the alternatives is which Hydraulic Event is selected (non-cascading failure, labeled "NC", versus cascading, labeled "C", failure). Both alternatives +use the Maximum High Pool (MHP) double warning EPZ, the same structure inventory, and the same Imminent Hazard ID Times. + +
+ +
+ +#### Modeling Option 2: Warning Areas Relative to Specific Dam Failures + +For Modeling Option 2, first use the new double warning polygon created for the cascading dam failures. The only difference between the +two EPZs is that the polygon is cut at the Fort Randall Dam. The separate zones are necessary to include different Imminent Hazard ID Times relative to +_Oahe Dam_ failing and _Fort Randall Dam_ failing. + +For Modeling Option 2, the key difference is warning the areas downstream of the other dam failure (e.g., Fort Randall Dam) relative to its hazard occurrence +time (i.e., overtopping or breach initiation time). The hydraulic engineer can provide the downstream dam's breach time and/or overtopping time. Recall, however, +that LifeSim can only have one hazard occurrence time per hydraulic scenario. A cascading dam failure has multiple hazard occurrence times: one for +each dam that overtops/fails in the hydraulic scenario. To account for the hazard occurrence time of the Fort Randall Dam failure, the Imminent Hazard ID Time +needs to be calculated to warn the area downstream of Fort Randall Dam relative to failure. To obtain this information, calculate the time +difference (in hours) between the two dam failures. The calculation is shown in . The table +includes the hazard occurrence times for both Oahe Dam and Fort Randall Dam, as well as the calculated time difference between the two failures. + + + +From here, you can determine the Imminent Hazard ID Times for the various warning scenarios. The following table shows the calculated Imminent Hazard +ID Times for the Downstream of Fort Randall EPZ. The warning times shown below warn the population downstream of Fort Randall Dam between 2 hours +prior to failure and the time of failure (minimal warning) and 6 hours prior and failure to 2 hours prior to failure (ample warning) relative to the +time of Fort Randall Dam's breach initiation. + + + +Implementing the warning times from into your alternatives is shown in +and . The figures show the Maximum High Pool cascading failure. As shown in the figures, the "DS_Oahe_Fail" EPZ is +assigned the standard time of -2 to 0 hours. The "DS_FtRandall_Fail" EPZ is assigned the calculated time of +14 to +16 hours. Again, the +14 to +16 +hours is relative to the hazard occurrence, which is Oahe Dam's breach initiation time. + +If you are unsure which modeling method to use, implement both methods in the study to understand how different warning times affect life loss results. + +
+ +
+ +As previously mentioned, an additional modeling method is to separately warn the populations downstream of each dam (e.g., the EPZ would include a +zone downstream of Oahe Dam, a zone downstream of Big Bend Dam, a zone downstream of Fort Randall Dam, and a zone downstream of Gavins Point Dam; each +with imminent hazard ID times calculated based on the respective dam's breach initiation relative to the Oahe Dam's breach initiation time). The +local emergency managers and dam operators may have a general understanding of how they would respond to a failure of an upstream dam, including +whether/when they would issue evacuation orders. This type of information can help determine which LifeSim modeling method is most appropriate for your +study's cascading dam failure scenarios. + +### Simulations + +For both modeling options, creating and running a simulation follow the same standard practice. Refer to Estimating Consequences for Dams for +more detailed information on creating simulations. The only additional reporting consideration is if you want to include unique summary polygons. For +example, it may be beneficial to summarize results by dam failure area (e.g., one area between Oahe Dam and Fort Randall Dam and another area for +everything downstream of Fort Randall Dam, etc.). If you created new EPZs for the cascading dam failure, these shapefiles may be used as the summary +polygon. + +Refer to +Estimating Consequences for Levees and Floodwalls, Understanding and Interpreting Results +and +Estimating Consequences for Dams, Editing the Structure Inventory Based on Simulation Results +for additional information on interpreting results and editing the structure inventory based on simulation results. + + diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/07-estimating-consequences-for-coastal-infrastructure.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/07-estimating-consequences-for-coastal-infrastructure.mdx index 8b98bc06a..f436dc2f4 100644 --- a/docs/desktop-applications/lifesim/applications-guide/v1.0/07-estimating-consequences-for-coastal-infrastructure.mdx +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/07-estimating-consequences-for-coastal-infrastructure.mdx @@ -1,45 +1,47 @@ --- -title: "Estimating Consequences for Coastal Infrastructure" +title: 'Estimating Consequences for Coastal Infrastructure' --- -import Link from "@docusaurus/Link"; -import addBaseUrl from "@docusaurus/useBaseUrl"; -import Citation from "@site/src/components/Citation"; -import CitationFootnote from "@site/src/components/CitationFootnote"; -import Figure from "@site/src/components/Figure"; -import FigureInline from "@site/src/components/FigureInline"; -import FigReference from "@site/src/components/FigureReference"; -import NavContainer from "@site/src/components/NavContainer"; -import ProcessList from "@site/src/components/ProcessList"; -import TableReference from "@site/src/components/TableReference"; -import TableVertical from "@site/src/components/TableVertical"; -import VersionSelector from "@site/src/components/VersionSelector"; - - +import Link from '@docusaurus/Link'; +import addBaseUrl from '@docusaurus/useBaseUrl'; +import Citation from '@site/src/components/Citation'; +import CitationFootnote from '@site/src/components/CitationFootnote'; +import Figure from '@site/src/components/Figure'; +import FigureInline from '@site/src/components/FigureInline'; +import FigReference from '@site/src/components/FigureReference'; +import NavContainer from '@site/src/components/NavContainer'; +import ProcessList from '@site/src/components/ProcessList'; +import TableReference from '@site/src/components/TableReference'; +import TableVertical from '@site/src/components/TableVertical'; +import VersionSelector from '@site/src/components/VersionSelector'; + + # Estimating Consequences for Coastal Infrastructure ## Purpose -This example demonstrates the process for estimating consequences for coastal levees, floodwalls, dune and/or seawalls in LifeSim. The general process - is similar to estimating consequences for riverine levees, but there are modeling nuances and warning and evacuation considerations specific to -infrastructure in a coastal environment. This chapter includes step-by-step instructions (often referring to the Levee applications chapter) for importing - the required data into LifeSim, choosing appropriate warning and evacuation data for a study area, and interpreting modeling results. The Coastal -Infrastructure chapter focuses on South Shore Staten Island (SSSI) modeling that was conducted in 2020 by the Risk Management Center to support a -risk-informed design (RID) risk assessment. This RID risk assessment took place after the planning process was complete for the SSSI Coastal Storm -Risk Management planning study. The proposed SSSI Levee includes segments of buried seawalls, levees, and floodwalls. +This example demonstrates the process for estimating consequences for coastal levees, floodwalls, dunes, and seawalls in LifeSim. The general process +is similar to estimating consequences for inland levees, but there are modeling nuances and warning and evacuation considerations specific to +coastal infrastructure. This chapter includes step-by-step instructions (often referencing Estimating +Consequences for Levees and Floodwalls) for importing the required data into LifeSim, choosing appropriate warning and evacuation data +for a study area, and interpreting modeling results. The Coastal Infrastructure chapter focuses on South Shore Staten Island (SSSI) modeling +conducted in 2020 by the Risk Management Center to support a risk-informed design (RID) risk assessment. This RID risk assessment took place following the completion +of the SSSI Coastal Storm Risk Management feasibility study. The proposed SSSI project includes segments of buried seawalls, levees, and floodwalls. + +_Note: The model results included in the subsequent sections are for example purposes only and are not representative of actual life loss and +economic damage estimates for the SSSI project._ ## Input Data The subsequent sections discuss the input data required to calculate economic damages and life loss for coastal infrastructure in LifeSim. The input -data sections, many of which simply refer to the Estimating Consequences for Levees and Floodwall Chapter, include hydraulic data, emergency planning -zones (EPZ), structure inventories, road networks, destinations, creating alternatives, and simulating alternatives. For reference, -{"\n"} through Figure 155 below show the SSSI levee and seawall breach locations, structure inventory, -and road network and destinations, respectively. Refer to these figures for context regarding later sections in this chapter. +data sections, many of which simply refer to +Estimating Consequences for Levees and Floodwalls, include Hydraulic Data, Emergency Planning Zones (EPZs), Structure Inventories, Simulating Evacuation, Creating Alternatives, and Simulating +Alternatives. + +For reference, {"\n"} through below show the SSSI levee and seawall breach +locations, structure inventory, and road network and destinations, respectively. Refer back to these figures for context regarding the SSSI LifeSim inputs, which are +discussed in more detail below.
-Breach Location 1 in the above figure is the Levee Control Location (LCL). This is the lowest section of the proposed levee and will likely overtop -first in most cases. Oceanic wind/wave patterns (discussed further in the ‘Importing HEC-RAS Data’ section), however, can sometimes lead to -overtopping at a different location where levee elevations are higher. Breach Locations 2 and 3 which breach the proposed buried seawall were -selected by the USACE New York District]. These sections of the proposed project were also analyzed for wind/wave-overtopping. +Breach Location 1 in the above figure is the Levee Control Location (LCL). This is the lowest section of the proposed levee and will overtop +first in most cases. Oceanic wind/wave patterns (discussed further in Import HEC-RAS Data), +however, can sometimes lead to overtopping at a different +location where levee elevations are higher. Breach Locations 2 and 3 fail the proposed buried seawall and were selected by the USACE New York District. +These sections of the proposed project were also analyzed for wind/wave-overtopping.
-With hurricanes being the assumed source of inundation to coastal levees in the form of storm surge, local emergency managers would likely recommend a - shelter-in-place action to those who were unable to or decided not to evacuate well before this non-evacuation depth occurs. As there is no current -mechanism to stop the evacuation process at a particular time step (i.e., when high wind speeds or significant rainfall prevent mobilization at a time - preceding storm surge landfall), a LifeSim model utilizing evacuation on roads could simulate vehicles on roadways and exposed to inundation when -these last-minute evacuations do not commonly occur. +With hurricanes as the assumed source of inundation of coastal levees in the form of storm surge, local emergency managers may recommend a +shelter-in-place action to those who were unable to or chose not to evacuate well before the non-evacuation depth (i.e., 2 ft flood depths) occurs. +As there is no current mechanism to stop the evacuation process at a particular time step (e.g., when high wind speeds or significant rainfall prevent +mobilization at a time preceding storm surge landfall), the LifeSim modeling could include evacuation to capture the impact of vehicles on roadways exposed to flooding when +these last-minute evacuations may occur. Additionally, simulating evacuation in a coastal context may help emergency managers understand where major traffic congestion +is most likely to occur, especially in a densely populated area like Staten Island. However, there are also instances when simulating evacuation for coastal areas may not +be necessary. ### Hydraulic Data -When using Hydrologic Engineering Center’s River Analysis System (HEC-RAS) data as LifeSim input, the hydraulic data should be in the form of -Hierarchical Data Format (HDF) files so the user can easily simulate evacuation when necessary. Unlike riverine/inland levees or floodwalls, +When using Hydrologic Engineering Center's River Analysis System (HEC-RAS) data as LifeSim input, the hydraulic data should be +in the form of HDF files so the user can easily simulate evacuation when necessary. Unlike riverine/inland levees or floodwalls, simulating evacuation in a coastal environment may not be a critical part of estimating direct life loss. In most cases, life loss on roads in a -coastal context where the source of inundation is most associated with an infrequent storm event (e.g., hurricane) is not expected to be the primary +coastal context, where the source of inundation is most associated with an infrequent storm event (e.g., hurricane), is not expected to be the primary risk driver. Lead times for these types of events are generally expected to be greater than 24 hours (e.g., hurricane tracking begins several days prior to the storm reaching landfall). For scenarios where lead times are expected to be relatively short, the option to simulate evacuation is still -available to the user when HDF files are utilized. The HEC-RAS plan HDF file and the HEC-RAS terrain HDF file are needed for each hydraulic scenario -where evacuation is simulated. +available to the user when HDF files are utilized. The terrain HDF file and all associated terrain files are also required to import hydraulic data. #### Import HEC-RAS Data -Importing HEC-RAS data for coastal levees or floodwalls is generally the same as described in the Levee applications chapter. It remains important to -understand where and when water is entering the leveed area to best establish the Hazard Occurrence time in LifeSim. For levees in a coastal setting, -the team must be able to distinguish the source of water (i.e., breach flow, rainfall, flanking, or wind/wave-overtopping). If, for example, -wind/wave-overtopping during a storm surge leads to water entering the leveed area prior to a levee or floodwall breach, the time of -wind/wave-overtopping will be set as the Hazard Occurrence time in LifeSim. This should be discussed at length with the team’s hydraulic engineer. +Importing HEC-RAS data for coastal levees or floodwalls is generally the same as described in Estimating +Consequences for Levees and Floodwalls, Hydraulic Data. It remains important to understand where and when water is entering the leveed area +to best establish the Hazard Occurrence time in LifeSim. For levees in a coastal setting, the team must be able to distinguish the source of water (i.e., failure flow, +rainfall, flanking, or wind/wave-overtopping). If, for example, wind/wave-overtopping during a storm surge leads to water entering the leveed area prior to a levee or +floodwall failure, the time of wind/wave-overtopping will be set as the Hazard Occurrence time in LifeSim. **_You should discuss this at length with the rest of the team, +especially the hydraulic engineer._** + +When deciding on the Hazard Occurrence time, ask yourself: _What is most likely to trigger the need for warnings and evacuations? Will emergency managers base the +warning and evacuation timeline on the time of failure, or will they likely base it on the time when water first enters the leveed area (e.g., due to wind/wave-overtopping)?_ The figure below shows an example wind/wave-overtopping hydrograph from the SSSI LifeSim model. Note that the Hazard Occurrence time (red dashed line in ) aligns with the wind/wave combination that led to a peak depth capable of overtopping the levee at the -selected location (red circle in the map window in ). +selected location (red circle in the map window in ) as the wind/wave-overtopping is most likely to trigger emergency warnings +and evacuations in the area.
Estimating +Consequences for Levees and Floodwalls, Emergency Planning Zones for how best to establish the EPZ for your coastal infrastructure. It +is again recommended to discuss what should be considered the leveed area with your hydraulic engineer and potentially other team members. Multiple EPZs may be required to account for different evacuation assumptions related to hurricane events. For example, consider a situation where -effective evacuation is unlikely and the affected population must shelter-in-place. This would mean the maximum mobilization rate parameter in LifeSim - would be set to 0%, or some other static rate if some amount of shadow evacuation (evacuation without a direct order to do so) is assumed. A new EPZ -will be generated each time the warning and protective action data is customized according to the assumed event (e.g., The user needs 3 EPZs to -account for different mobilization assumptions: one EPZ to show 100% of the population shelters-in-place, one EPZ to show a 10% shadow evacuation, -one EPZ with standard mobilization assumptions). +effective evacuation is unlikely and the affected population must shelter in place. This would mean the maximum mobilization rate parameter in LifeSim +would be set to 0% or some other static rate if some amount of shadow evacuation (evacuation without a direct order to do so) is assumed. A new EPZ +will be generated each time the warning and protective action data is customized according to the assumed event. In this example, the user needs three EPZs to +account for different mobilization assumptions: + +- An EPZ to show 100% of the population shelters in place +- An EPZ to show a 10% shadow evacuation +- An EPZ with standard mobilization assumptions below shows the adjusted SSSI shelter-in-place EPZ parameters in the Warning and Protective Action Data Editor. -To access this data editor, right-click the Warning and Protective Action Data subheading just below the ‘Emergency Planning Zones’ -heading in the study tree. Select “Edit Warning and PAI Data”. Under the ‘Protective Action Initiation’ tab of the data editor, -click the green plus sign to add a custom distribution. +To access this data editor, right-click the Warning and Protective Action Data subheading just below the 'Emergency Planning Zones' +heading in the study tree. Select "Edit Warning and PAI Data". Under the 'Protective Action Initiation' tab of the data editor, click +the green plus sign to add a custom distribution. + +Additional details on how to create and edit new EPZ curves can be found in +LifeSim Users Guide - Emergency Planning Data.
-In the above figure, a deterministic distribution was selected from the dropdown and the table just below.The Time and Initiated fields can be edited. - According to , after 10,000 minutes, 0% of the affected population will have initiated evacuation in the +In the above figure, a deterministic distribution was selected from the dropdown and the table just below. The 'Time' and 'Initiated' fields can be edited. +According to , after 10,000 minutes, 0% of the affected population will have initiated evacuation in the simulations where this new Shelter-In-Place EPZ is used. If, however, 10% of the affected population has evacuated in previous disasters despite a -shelter-in-place order, change both ‘Initiated’ values to 10 instead of 0. +shelter-in-place order, change both 'Initiated' values to 10 instead of 0. #### Using Existing Data to Inform LifeSim Parameters -Refer to the if using existing consequences elicitation data, the Levee Safety Tool, or Emergency Management Agency Websites to inform LifeSim -parameters. Many counties and major metropolitan areas along the coasts publish evacuation plans for large storm events on their own websites. These -evacuation plans should be considered when selecting warning and evacuation parameters in the EPZ(s) and in the evacuation inputs (if applicable). +Refer to Estimating +Consequences for Levees and Floodwalls, Emergency Planning Zones if using existing consequences elicitation data, the Levee Screening Tool, or +Emergency Management Agency Websites to inform LifeSim parameters. Many counties and major metropolitan areas along the coasts publish evacuation plans for +large storm events on their own websites. These evacuation plans should be considered when selecting warning and evacuation parameters in the EPZ(s) and in the +evacuation inputs (if applicable). -For example, in relation to the SSSI coastal storm study, the New York City official website (NYC.gov) is linked to the site. Here, users can learn -about specific disaster plans in their area. below shows the home page of the NYC Emergency Management website. +For example, regarding the SSSI coastal storm study, the New York City (NYC) Emergency Management website provides detailed information on coastal storms and +hurricanes . Here, users can learn about specific disaster plans in their area. below +shows the home page of the NYC Emergency Management website.
-After scrolling down within the ‘Coastal Storms and Hurricanes’ page depicted in , website users have access to +After scrolling down within the 'Coastal Storms and Hurricanes' page depicted in , website users have access to the information shown in below.
Many coastal emergency management websites are organized similarly to . To inform the LifeSim model, it is important - to understand who is receiving the order, what they are being told to do, and when they will be told to do it. ‘Know Your Zone’ (often called -something similar across emergency management sites) is typically the best place to start. Coastal cities or counties usually evacuate by numbered and - color-coded zones based on storm surge, forecasted storm conditions, or wind/wave patterns. below shows an +you attempt to understand who is receiving the order, what they are being told to do, and when they will be told to do it. 'Know Your Zone' (often referred +to as something similar on emergency management sites) is typically the best place to start. Coastal cities or counties usually evacuate using numbered and +color-coded zones based on storm surge, forecasted storm conditions, or wind/wave patterns. below shows an overview of the Staten Island hurricane evacuation zones. -Notably, it is currently not recommended to include evacuation centers or shelters as Destination Points in LifeSim. As of 2024, there is no way to -assign a maximum number of persons allowed at a destination point, so this type of assumption likely overestimates the amount of people that could -evacuate to “shelter locations” in LifeSim. Generally, Destination Points are meant to represent egress routes, not final shelter locations. +Notably, it is currently not recommended to include evacuation centers or shelters as Destination Points in LifeSim. As of 2026 (or as of LifeSim version 2.2), +there is no way to assign a maximum number of persons allowed at a destination point, so this type of assumption likely overestimates the number of people that could +evacuate to "shelter locations" in LifeSim. Generally, Destination Points are meant to represent egress routes, not final shelter locations.
below shows both the general EPZ in the SSSI LifeSim model map window and the hurricane evacuation zones from the NYC emergency management website. The latter will be used (visually) -to split the general EPZ polygon in GIS software or the LifeSim model. Refer to the for creating and editing an EPZ in GIS software. +to split the general EPZ polygon in GIS software or the LifeSim model. Refer to Estimating +Consequences for Dams, Emergency Planning Zones for creating and editing an EPZ in GIS software.
-Understanding the thresholds used to evacuate each zone is the next piece of the puzzle. If, for example, a 2ft storm surge will lead to the -evacuation of Zone 1 (red) nearest the coast, the LifeSim modeler will need to communicate with the team’s hydraulic engineer and decide when this -threshold is reached in the model. The same process will be applied to each zone until the hazard occurs (e.g., breach or overtopping). +Understanding the thresholds used to evacuate each zone is the next piece of the puzzle. If, for example, a 2 ft storm surge will lead to the +evacuation of Zone 1 (red, nearest to the coast), the LifeSim modeler will need to communicate with the team's hydraulic engineer to understand when this +threshold is reached in the model. You will follow the same process for each evacuation zone. #### Importing an Emergency Planning Zone -Refer to the for instructions to import an EPZ into LifeSim. +Refer to Estimating +Consequences for Levees and Floodwalls, Emergency Planning Zones for instructions on how to import an EPZ into LifeSim. ### Structure Inventory To use LifeSim to calculate life loss and/or economic damages, a structure inventory needs to be imported into the study. For levees and floodwalls, -whether in a riverine or coastal setting, the structure inventory should be limited to including structures within the leveed area. Otherwise, it’s +whether in a riverine or coastal setting, the structure inventory should be limited to including structures within the leveed area. Otherwise, it's possible that both economic damages and life loss estimates would be inflated due to including structures that are outside of the leveed area. -Additionally, LifeSim will not simulate if any structure points are located outside of the EPZ. The National Levee Database () is a resource that -often includes the estimated leveed area (including coastal structures), which can be downloaded as a shapefile and used in LifeSim. It’s also -recommended to communicate with the hydraulic engineer when establishing a protected/leveed area. +Additionally, LifeSim will not simulate if any structure points are located outside of the EPZ. The National Levee Database (NLD) +is a resource that often includes the estimated leveed area (including coastal structures), which can be downloaded as a shapefile for use in LifeSim. +It's also recommended to communicate with the hydraulic engineer when establishing a protected/leveed area. #### Importing a Structure Inventory -Refer to the to import a structure inventory into LifeSim. +Refer to Estimating +Consequences for Levees and Floodwalls, Structure Inventory to import a structure inventory into LifeSim. #### Editing the Structure Inventory -Refer to the to edit the structure inventory. Structures attributes, specifically foundation heights and construction types, may need additional -adjustments in a coastal setting. General structure inventory assumptions may be less applicable in these areas. below shows three structures with -foundation heights that needed to be edited in the SSSI LifeSim model. +Refer to Estimating +Consequences for Levees and Floodwalls, Structure Inventory for more information on how to edit the structure inventory. Structure attributes, +specifically foundation heights and construction types, may need additional adjustments in a coastal setting. General structure inventory assumptions may be less +applicable in these areas. below shows three structures with foundation heights that needed to be edited in the SSSI LifeSim model.
-If the NSI base level data lack structure-specific data sources, some values will be generalized across larger areas (e.g., census block or tract). -In the above case, these three structures’ (structures 305, 1575, and 9095) foundation heights were increased from 1.5ft to show that the structures’ +If the NSI base-level data lacks structure-specific data sources, some values will be generalized across larger areas (e.g., census block or tract). +In the above case, these three structures' (structures 305, 1575, and 9095) foundation heights were increased from 1.5 ft to show that the structures' first floors are elevated. Moving inland, the terrain elevation increases in this area, leading to a lower assumed foundation height across the tract. - If the general NSI foundation heights were 1-foot for all three structures where terrain elevation is lower, for example, much lower flood depths -would result in the non-evacuated PAR getting “caught” in their structure and sampled for life loss. Because the structures shown in the figure above -are elevated, it’s possible that the PAR in these structures could safely shelter-in-place and life loss would not be sampled. When foundation height -errors like this example are aggregated across a shoreline, life loss estimates can potentially be inflated. It is important to spend adequate time -adjusting structure attributes, especially in a coastal setting. +If the general NSI foundation heights were 1 ft for all three structures where terrain elevation is lower, for example, much lower flood depths +would result in the non-evacuated PAR getting "caught" in their structure and sampled for life loss. Because the structures shown in the figure above +are elevated, it's possible that the PAR in these structures could safely shelter in place and life loss would not be sampled. When foundation heights +are errant, like in this example, and aggregated across a lengthy shoreline, life loss estimates may be inflated. It is important to spend +adequate time adjusting structure attributes, especially in a coastal setting. ### Simulating Evacuation For most riverine or other inland levee projects, evacuation is simulated in LifeSim. In a coastal context, however, evacuation may not be a crucial -element to the LifeSim model. Life loss on roads in a coastal environment where the source of inundation is most associated with a hurricane event is +element to life loss. Life loss on roads in a coastal environment where the source of inundation is most associated with a hurricane event is not expected to be the primary risk driver. Since forecasted lead times before hurricane landfall (or imminent hazard identification time) are expected to be no less than 24 hours, protective action initiation rates used in the LifeSim modeling are most likely to be the primary risk driver. This expected lead time prior to the hurricane landfall enables both the warning issuance delay and first alert parameters to sample approximately @@ -245,29 +270,33 @@ workflow is to begin with importing a road network and then create destination p #### Road Network -Refer to the to import and edit a road network in LifeSim. +Refer to Estimating +Consequences for Levees and Floodwalls, Road Network to import and edit a road network in LifeSim. #### Destination Points -Refer to the to create, import, and edit destination points in LifeSim. When simulating evacuation to look for potential choke points, reference the -area’s evacuation plans (e.g., zones and routes) when placing destination points. As stated earlier in the chapter, the destination points should not -reflect shelter locations; the points should represent major egress routes that lead to safety. +Refer to Estimating +Consequences for Levees and Floodwalls, Destination Points to create, import, and edit destination points in LifeSim. When simulating evacuation +to look for potential choke points, reference the area's evacuation plans (e.g., zones and routes) when placing destination points. As stated earlier in the chapter, +the destination points should not reflect shelter locations; the points should represent major egress routes that lead to safety. ### Creating Alternatives -Refer to the for general information on creating alternatives in LifeSim. However, there are additional considerations when creating alternatives for - a coastal model. Much like with riverine levees, there is a warning and delay continuum the PAR may be subjected to. Given limited time and -resources, it is important to leverage LifeSim in a way that captures a range of possible outcomes. +Refer to Estimating +Consequences for Levees and Floodwalls, Creating Alternatives for general information on creating alternatives in LifeSim. However, there +are additional considerations when creating alternatives for a coastal model. Much like riverine levees, the PAR may be subjected to a warning and delay continuum. +Given limited time and resources, it is important to leverage LifeSim in a way that captures a range of possible outcomes. -Similar to inland levees and floodwalls, the relative hazard identification time should be reflective of the community’s ability to monitor the +Similar to inland levees and floodwalls, the Imminent Hazard ID Time should be reflective of the community's ability to monitor the project (consider storm conditions), how early the event could be forecasted in advance (usually early for coastal storm events), and the type of failure mode (e.g., the emergency managers would have little time to identify a rapidly developing breach, so the relative hazard identification time would be close to the time the hazard occurs). - 163 shows an example alternative representative of a situation in which either the hazard occurs relatively quickly, or emergency managers have -waited to warn the impacted population (hazard identification between 3 hours prior to its occurrence and 30 minutes after). In the example below, -this warning may be appropriate for a 0.5 Annual Exceedance Probability (AEP) event as this is a frequent event with potential to impact very few -people. It’s possible the “warning” would only be based on the population self-warning relative to when they see floodwaters. + shows an example alternative representative of a situation in which either the hazard occurs relatively quickly, +or emergency managers have to wait to warn the impacted population (hazard identification between 3 hours prior to its occurrence and 30 minutes +after). In the example below, this warning may be appropriate for a 0.5 Annual Exceedance Probability (AEP) event as this is a frequent event and has +the potential to impact very few people. It's possible the "warning" would only be based on the population self-warning relative to when they see +floodwaters.
You can create multiple alternatives for each hydraulic scenario with various warning times if there is uncertainty surrounding the relative hazard -identification time. This provides a range of possible life loss outcomes. shows an example using the same +identification time. This provides a range of possible life loss outcomes. shows an example using the same hydraulic event but with more optimistic warning assumptions (hazard identification 24 hours prior to its occurrence). As shown in the hydrograph, the - depths do exceed 4ft, which could result in life threatening flooding. It’s possible that even this frequent of an event would be forecasted in +depths exceed 4 ft, which could result in life-threatening flooding. It's possible that even an event this frequent would be forecasted in advance.
-It is not uncommon for evacuation orders to be given days prior to the event in a coastal environment. shows a far more optimistic, or “optimal”, -warning alternative for the same SSSI hydraulic event depicted in 163 and . +It is not uncommon for evacuation orders to be issued days in advance of an event in a coastal environment. shows a far more optimistic, or "optimal", +warning alternative for the same SSSI hydraulic event depicted in and .
-If events like the ones being modeled have previously occurred, adjust the alternative parameters to reflect either what happened or what will likely +If events like those being modeled have previously occurred, adjust the alternative parameters to reflect either what happened or what is likely to happen based on lessons learned. After major storm events, city and/or county emergency managers may publish a report outlining specific -recommendations for updates to existing emergency plans; check for these documents when adjusting alternative input parameters in LifeSim. +recommendations for updates to existing emergency plans; check for these documents when adjusting input parameters in LifeSim. ### Creating Simulations -Once you have created alternatives, you need to simulate the alternatives to compute life loss and economic damages results. Refer to the to create -simulations in LifeSim. +Once you have created alternatives, you need to simulate the alternatives to compute life loss and economic damages results. Refer to +Estimating Consequences for Levees and Floodwalls, Creating Simulations for how to create simulations in LifeSim. + +_Note: The model results included in the subsequent sections are for example purposes only and are not representative of actual life loss and +economic damage estimates for the SSSI project._ ## Understanding and Interpreting Results -After running simulations, you can view your results in various ways, including by result plots, result tables, and result maps. Each way you view -results is beneficial in understanding your life loss and economic damage results as well as conducting a quality check on your results. It is -unlikely that your first simulation will be your last simulation—edits to the structure inventory, EPZs, road network, and/or destination points may -be needed to obtain accurate and representative results. +After running model simulations, you can view your results in various ways, including by result plots, result tables, and result maps; this is discussed +in more detail in Estimating Consequences for Levees and Floodwalls, Understanding and Interpreting Results. +Each way you view the results is beneficial for understanding your life loss and economic damage results, as well as for conducting a quality check on your +results. It is unlikely that your first simulation will be your last simulation; you may need to make edits to the structure inventory, EPZs, road network, and/or +destination points to obtain accurate and representative results. -Much like with riverine/inland levees, if multiple warning alternatives were created for a single hydraulic scenario, it is important to compare life -loss estimates across those alternatives. However, when multiple sources of water are present in the model (e.g., breach flow, rainfall, flanking, or +As with riverine/inland levees, if multiple warning alternatives were created for a single hydraulic scenario, it is important to compare life +loss estimates across those alternatives. However, when multiple sources of water are present in the model (e.g., failure flow, rainfall, flanking, or wind/wave-overtopping), as is common with coastal storm studies, life loss estimates may not align intuitively with the hydrologic events. For -example, a 0.002 AEP event may result in higher incremental life loss estimates when compared to the 0.001 AEP event because much of the population -was warned early due to overtopping and evacuated prior to breach. The 0.002 AEP event could also produce less rainfall in the leveed area relative to - the 0.001 AEP again resulting in an earlier warning, ample time to evacuate prior to breach, and thus higher incremental life loss. - -Similarly, when evacuation is being simulated, additional warning time does not always correspond to lower life loss estimates. For example, ample -warning may lead to more people attempting evacuation during extreme conditions causing life loss to occur on roads that may have been avoided by -sheltering-in-place at that point in time. On the other hand, if storm conditions (i.e., high depths and velocities) exceed stability criterion across - many structures in the leveed area, sheltering-in-place may result in the highest life loss estimates. Before these narratives can be deduced and +example, a 0.002 AEP event may result in higher excess life loss estimates when compared to the 0.001 AEP event because much of the population +was warned early due to overtopping and evacuated prior to failure. The 0.002 AEP event could also produce less rainfall in the leveed area relative to +the 0.001 AEP again resulting in an earlier warning, ample time to evacuate prior to failure, and thus higher excess life loss. + +Similarly, when evacuation is simulated, additional warning time does not always correspond to lower life loss estimates. For example, ample +warning may lead to more people attempting evacuation during extreme conditions, causing life loss to occur on roads that may have been avoided by +sheltering in place at that point in time. Conversely, if storm conditions (i.e., high depths and velocities) exceed stability criteria across +many structures in the leveed area, sheltering in place may result in the highest life loss estimates. Before these narratives can be deduced and defended from the LifeSim model, it is important to double-check input parameters and quality check results at the structure level. +Reference +Estimating Consequences for Dams, Editing the Structure Inventory Based on Simulation Results +for best practices on performing quality checks on your structure inventory. ### Post-Simulation Calibration Gaining an understanding of how flood depths and flood arrival times interact with each other and structures within the leveed area is a good place to - start. and below break up the SSSI LCL 1ft OT breach inundation area by -depth and arrival time, respectively. +start when attempting to understand and interpret your results. and below break +up the SSSI LCL 1 ft overtopping (OT) failure inundation area by depth and arrival time, respectively.
-The arrival of two feet of water within the leveed area happens relatively quickly for the event depicted in the figures above. In fact, most of the -leveed area is inundated by at least two feet of water between 30 minutes to 4 hours relative to the hazard (i.e., initial overtopping). Furthermore, -much of this area is inundated by depths exceeding 6 feet. These characteristics would suggest life loss could be spread across much of the leveed -area depending on how the PAR is distributed. shows the spatial distribution of life loss for a minimal warning -(hazard identification 3 hours prior to overtopping to 30 minutes after) LCL 1ft OT breach scenario. +The arrival of 2 ft of water within the leveed area happens relatively quickly for the event depicted in the figures above. In fact, most of the +leveed area is inundated by at least 2 ft of water between 30 minutes to 4 hours relative to the hazard (i.e., initial overtopping). Furthermore, +much of this area is inundated by depths exceeding 6 ft. These characteristics would suggest life loss could be spread across much of the leveed +area depending on how the PAR is distributed. shows the spatial distribution of life loss for a minimal warning +(hazard identification 3 hours prior to overtopping to 30 minutes after) LCL 1 ft OT failure scenario.
-In alignment with the depth grid and arrival time grid shown in and , the +In alignment with the depth grid and arrival time grid shown in and , respectively, the estimated life loss is spread out with slightly higher estimates near the center of the leveed area. Now, with an understanding of depths, arrival -times, and where life loss is generally occurring, the modeler should focus on structure specific results. Refer to the for creating and editing -Structure Summary files in LifeSim. shows the Structure Summary Attributes Table for the LCL 1ft OT minimal -warning breach scenario. Many additional attributes were removed from this attributes table to focus on the fields presented in the figure. +times, and where life loss is generally occurring, the modeler should focus on structure-specific results. shows the +Structure Summary Attributes Table for the LCL 1 ft OT minimal warning fail scenario. Many additional attributes were removed from this attributes table +to focus on the fields presented in the figure.
-An understanding of the relationship between each structure’s maximum depth and total mean life loss estimate can help the modeler locate structures -with characteristics (e.g., foundation height and number of stories) that may need manual calibration. Start by sorting ‘Life_Loss_Total_Mean’ from +An understanding of the relationship between each structure's maximum depth and total mean life loss estimate can help the modeler locate structures +with characteristics (e.g., foundation height and number of stories) that may need manual calibration. Start by sorting 'Life_Loss_Total_Mean' from largest to smallest by double-clicking the header twice, or right-clicking and selecting descending order. Structure 11537 (the first entry of the -table in ) has the highest estimated life loss for this scenario, a foundation height of 3 feet, 1 story, and experiences a maximum depth just below -10 feet. below shows structure 11537 in the LifeSim map window and Google Earth Street View. +table in ) has the highest estimated life loss for this scenario, a foundation height of 3 ft, 1 story, and experiences a +maximum depth just below 10 feet. below shows structure 11537 in the LifeSim map window and Google Street View.
-A closer look shows that this structure has a foundation height less than 3 feet and is actually 2 stories. In this case, life loss could potentially -be overstated given the ability for PAR to vertically evacuate to the second story above the maximum flood depth experienced at this structure. In +A closer look shows that this structure has a foundation height of less than 3 ft and is actually two stories. In this case, life loss could potentially +be overstated given the ability for PAR to vertically evacuate to the second story above the maximum flood depth experienced at this structure. In this example, if the structure had a foundation height closer to 8 feet due to its proximity to the coast, the number of stories would not significantly matter because of the maximum depth of 10 feet. PAR within the structure would experience a first-floor depth of about 2 feet and life loss would be unlikely. However, these types of discrepancies when aggregated throughout the leveed area can greatly impact the total estimated life loss. -If evaluating a shelter-in-place alternative, it is important to relate high life loss structures to the corresponding maximum velocities. Refer to -and, again, sort by ‘Life_Loss_Total_Mean.’ Compare maximum depths and velocities to each structure’s stability criteria (e.g., wood-anchored, +If evaluating a shelter-in-place alternative, it is important to relate high life loss structures to the corresponding maximum velocities. Refer +to , and again, sort by 'Life_Loss_Total_Mean.' Compare maximum depths and velocities to each structure's stability criteria (e.g., wood-anchored, masonry, and manufactured). If a structure collapses in over half of the iterations with relatively low depths and velocities, zoom to the structure -like shown in and ensure that the stability criteria match the structure type. Refer to the and for additional - information regarding post-simulation structure inventory calibration. +as shown in and ensure that the stability criteria match the structure type. -The SSSI road network was calibrated in a similar fashion. For more detailed coastal levee risk assessments, LifeSim can be used to estimate -evacuation travel time or potential traffic chokepoints of mobilized PAR. shows the spatial distribution of +The SSSI road network was calibrated similarly. For more detailed coastal levee risk assessments, LifeSim can be used to estimate +evacuation travel time or potential traffic chokepoints of mobilized PAR. shows the spatial distribution of estimated life loss on roads for the SSSI study.
-Refer to the for quality checking the road network after the initial simulation. Once the road network has been calibrated, look for roads with high -mean life loss estimates in relation to the nearest destination points. For the SSSI study, destinations were placed inland just beyond the inundation - (see ). Life loss on roads occurs mostly on smaller access roads located relatively close to the SSSI alignment; several vehicles are caught -evacuating as they attempt to reach freeways and interstates that can handle more traffic on their way to destination points. +Refer to Estimating +Consequences for Levees and Floodwalls, Understanding and Interpreting Results for quality checking the road network after the initial simulation. +Once the road network has been calibrated, look for roads with high mean life loss estimates in relation to the nearest destination points. For the SSSI study, +destinations were placed inland just beyond the inundation (see ). Life loss on roads occurs mostly on smaller access roads located relatively +close to the SSSI alignment; several vehicles are caught evacuating as they attempt to reach freeways and interstates that can handle more traffic on their way to destination points. ### Applying Results to Risk Assessments Life loss estimates can vary greatly across warning alternatives (e.g., a standard hurricane warning of 24 hours prior to the event, an optimal -hurricane warning of at least 3 days prior to the event, and a shelter-in-place scenario with a maximum mobilization rate of 0.) Depending on your -project and your risk assessment, consider which warning scenarios most align with the expected forecasting and monitoring that would occur. -Additionally, it’s possible that you will need to include additional warning alternatives to better understand potential life loss for various -potential failure modes. +hurricane warning of at least 3 days prior to the event, and a shelter-in-place scenario with a maximum mobilization rate of 0% may have vastly different life loss results). +Depending on your project and your risk assessment, consider which warning scenarios most closely align with the expected forecasting and monitoring. This +should be discussed with the entire team, especially the hydraulic engineer. Additionally, you may need to add other +warning alternatives to better understand potential life loss for specific potential failure modes. -Refer to the for additional information on performing quality control checks of LifeSim results. - -Following any edits made during the quality control check, rerun all simulations. Once you confirm the new life loss and economic +Following any edits made during the quality control check, rerun all simulations. Once you review and verify the new life loss and economic results, your coastal levee or floodwall LifeSim model is complete. -(Page intentionally left blank) - - \ No newline at end of file + diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/08-estimating-life-loss-in-planning-comparing-alternatives-for-riverine-coastal-flooding.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/08-estimating-life-loss-in-planning-comparing-alternatives-for-riverine-coastal-flooding.mdx index d1badab9c..efc56e1b9 100644 --- a/docs/desktop-applications/lifesim/applications-guide/v1.0/08-estimating-life-loss-in-planning-comparing-alternatives-for-riverine-coastal-flooding.mdx +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/08-estimating-life-loss-in-planning-comparing-alternatives-for-riverine-coastal-flooding.mdx @@ -1,70 +1,74 @@ --- -title: "Estimating Life Loss in Planning: Comparing Alternatives for Riverine & Coastal Flooding" +title: 'Estimating Life Loss in Planning: Comparing Alternatives for Riverine & Coastal Flooding' --- -import Link from "@docusaurus/Link"; -import addBaseUrl from "@docusaurus/useBaseUrl"; -import Citation from "@site/src/components/Citation"; -import CitationFootnote from "@site/src/components/CitationFootnote"; -import Figure from "@site/src/components/Figure"; -import FigureInline from "@site/src/components/FigureInline"; -import FigReference from "@site/src/components/FigureReference"; -import NavContainer from "@site/src/components/NavContainer"; -import ProcessList from "@site/src/components/ProcessList"; -import TableReference from "@site/src/components/TableReference"; -import TableVertical from "@site/src/components/TableVertical"; -import VersionSelector from "@site/src/components/VersionSelector"; - - +import Link from '@docusaurus/Link'; +import addBaseUrl from '@docusaurus/useBaseUrl'; +import Citation from '@site/src/components/Citation'; +import CitationFootnote from '@site/src/components/CitationFootnote'; +import Figure from '@site/src/components/Figure'; +import FigureInline from '@site/src/components/FigureInline'; +import FigReference from '@site/src/components/FigureReference'; +import NavContainer from '@site/src/components/NavContainer'; +import ProcessList from '@site/src/components/ProcessList'; +import TableReference from '@site/src/components/TableReference'; +import TableVertical from '@site/src/components/TableVertical'; +import VersionSelector from '@site/src/components/VersionSelector'; + + # Estimating Life Loss in Planning: Comparing Alternatives for Riverine & Coastal Flooding ## Purpose This example demonstrates the process for estimating consequences and comparing expected life loss across alternatives for planning studies in -LifeSim. This chapter focuses on the Ala Wai Flood Risk Management General Investigations Study, which is an ongoing Planning study in the U.S. Army +LifeSim. This chapter focuses on the Ala Wai Flood Risk Management General Investigations Study, conducted by the U.S. Army Corps of Engineers (USACE) Honolulu District. The LifeSim model was completed in 2023 by the USACE Omaha District. The Ala Wai LifeSim model compares -life loss results across four different alternatives. Notably, there is no existing infrastructure in the study area. +life loss results across four alternatives. Notably, there is no existing infrastructure in the study area. -For each of the alternatives, the eight flow-frequency events used in the study’s other flood risk management model were imported into LifeSim. The -alternatives included the Future Without-Project (FWOP) condition and three structural alternatives. The structural alternatives’ hydraulic scenarios -represent the Future With-Project (FWP) and do not include breaches in the proposed flood protection infrastructure. +For each of the alternatives, the eight flow-frequency events used in the study's Hydrologic Engineering Center's Flood Damage Reduction Analysis +(HEC-FDA) model were imported into LifeSim. The alternatives included the Future Without-Project (FWOP) condition and +three structural alternatives. The structural alternatives' hydraulic scenarios represent the Future With-Project (FWP) and exclude failures of +the proposed flood protection infrastructure. -Reference USACE’s , , and for more information on including life loss estimates in USACE planning studies. +Reference USACE's Planning Bulletin 2019-04 , The Comprehensive Documentation of Benefits in Decision +Documents Memorandum , and Engineering Regulation 1105-2-103 for more information on +including life loss estimates in USACE planning studies. -This LifeSim model was built prior to the Tentatively Selected Plan (TSP) milestone to compare the change in expected life loss and how flood risk -changes. Eventually incremental risk of the TSP will need to be understood, but this phase of the planning study focuses on changes in flood risk -across the final array of alternatives. +This project delivery team (PDT) built the LifeSim model prior to the Tentatively Selected Plan (TSP) milestone to compare changes in expected life loss and flood risk across alternatives. +Eventually excess risk (i.e., breach scenarios will need to be modeled) of the recommended plan will need to be understood, but this phase of the planning study focuses on +changes in flood risk across the final array of alternatives. -This chapter includes instructions for importing the required data into LifeSim, how to choose appropriate warning and evacuation data for a study -area, and how to interpret modeling results. Additional considerations for LifeSim modeling for planning studies are identified throughout the +This chapter includes instructions on importing the required data into LifeSim, choosing appropriate warning and evacuation data for a study +area, and interpreting modeling results. Additional considerations for LifeSim modeling for planning studies are identified throughout the chapter. +_Note: The model results included in the subsequent sections are for example purposes only and are not representative of actual life loss estimates for the +Ala Wai Flood Risk Management General Investigations Study._ + ## Input Data The subsequent sections discuss the input data required to calculate damages and life loss across various alternatives for planning studies. The input - data sections include hydraulic data, emergency planning zones (EPZ), structure inventories, road networks, destinations, creating alternatives, and -simulating alternatives. +data sections include Hydraulic Data, Emergency Planning Zones (EPZ), Structure Inventories, Road Networks, Destinations, Creating Alternatives, and +Simulating Alternatives. ### Hydraulic Data -The Ala Wai LifeSim model utilized output from the Hydrologic Engineering Center’s River Analysis System (HEC-RAS). Ideally, the HEC-RAS inputs should - be in the form of Hierarchical Data Format (HDF) files so the user can easily simulate evacuation in LifeSim. However, summary grids or other output from - other hydraulic models could be utilized in LifeSim (reference the and ). For planning studies, simulating evacuation can help address other -planning objectives or opportunities, such as improving emergency action planning and identifying safe evacuation routes. Including evacuation more -accurately captures potential life loss in structures and life loss on roads. The HEC-RAS plan HDF file and the HEC-RAS terrain HDF file (and terrain -TIF files) are needed for each hydraulic scenario. Reference the for step-by-step instructions on importing hydraulic data from HEC-RAS. - -It is recommended to include all the hydraulic events used in the economic modeling (most likely 8 different flow-frequency events) in the LifeSim -model. Similar to the economic damage modeling typically completed in HEC-FDA, it is critical to understand the potential life loss for events of varying - frequency and magnitude. Eventually, the life loss ranges computed in LifeSim will be used to estimate Expected Annual Life Loss (EALL), similar to -how Expected Annual Damages are computed, either in a spreadsheet or a tool like TotalRisk 1.0 (link to TotalRisk here). The more events included in -the EALL calculation in TotalRisk, the more accurate the EALL is. The resulting EALL is another metric by which planning alternatives can be compared. - Refer to the TotalRisk Application Guide to set up the EALL calculation (link to TR app guide here) +The Ala Wai LifeSim model utilized output from the Hydrologic Engineering Center's River Analysis System (HEC-RAS) . +Ideally, the HEC-RAS inputs should be in HDF format so the user can easily simulate evacuation in LifeSim. However, +summary grids or other output from other hydraulic models could be utilized in LifeSim (reference +LifeSim Technical Reference Manual - Hydraulic Data and LifeSim Users Guide - Hydraulic Data for +additional information). For planning studies, simulating evacuation can help address other planning objectives or opportunities, such as improving emergency action planning +and identifying safe evacuation routes. Including evacuation more accurately captures potential life loss in structures and life loss on roads. The +HEC-RAS plan HDF file and the HEC-RAS terrain HDF file (and terrain TIF files) are needed for each hydraulic scenario. Reference +Estimating Consequences for Levees and Floodwalls, Hydraulic Data for step-by-step instructions on importing hydraulic data from HEC-RAS. + +It is recommended to include all the hydraulic events used in the economic modeling (most likely eight different flow-frequency events) in the LifeSim +model. As with the economic damage modeling typically performed in HEC-FDA, it is critical to understand the potential life loss for events of varying +frequency and magnitude. Eventually, the life loss ranges computed in LifeSim will be used to estimate Expected Annual Life Loss (EALL), similar to +how Expected Annual Damages are computed, either in a spreadsheet or a tool like TotalRisk 1.0. The more +events included in the EALL calculation in +TotalRisk, the more accurate the EALL is. The resulting EALL is another metric for comparing planning alternatives. Below are some of the hydraulic events included in the Ala Wai LifeSim model (FWOP, Alternative 2B, and Alternative A5). As shown in the figure, the 0.5 Annual Exceedance Probability (AEP), 0.2 AEP, 0.1 AEP, 0.05 AEP, 0.02 AEP, 0.01 AEP, 0.005 AEP, and 0.002 AEP events are included for each @@ -73,108 +77,111 @@ alternative.
#### Other Considerations for Hydraulic Data -For the Ala Wai study area, there are multiple flood sources that flood various areas at different times. It is important to understand the various -timings involved in the flooding when selecting the Hazard Occurrence time. Be consistent in where you select the hydrograph (i.e., For all hydraulic +In the Ala Wai study area, multiple flood sources affect different areas at different times. It is important to understand the various +timings involved in the flooding when selecting the Hazard Occurrence time. Be consistent in where you select the hydrograph (i.e., for all hydraulic scenarios, the Hazard Occurrence time represents when out-of-bank flooding begins for the same flood source). Separating your EPZ is further discussed - in the Emergency Planning Zones section below. +in the Emergency Planning Zones section below. ### Emergency Planning Zones -If your planning study includes levees, coastal structures, and/or dams, reference the EPZ Section in the other Application Guide chapters. For -planning studies, the EPZ shapefile should represent the entire study area. Coordinate with other Project Delivery Team members, especially the -hydraulic engineer and lead planner to ensure your EPZ matches the study area. The LifeSim model should account for the same flooding and structures -as other economic models used in the study, such as Hydraulic Engineering Centers’ Flood Damage Reduction Analysis (HEC-FDA) or Generation II Coastal -Risk Model (G2CRM). +If your planning study includes levees, coastal structures, and/or dams, reference the EPZ Section in the other chapters. For +planning studies, the EPZ shapefile should represent the entire study area. Coordinate with other Project Delivery Team (PDT) members, especially the +hydraulic engineer and lead planner, to ensure your EPZ matches the study area. The LifeSim model should account for the same flooding and structures +as other economic models used in the study, such as HEC-FDA or Generation II Coastal Risk Model (G2CRM) . -Otherwise, the shapefile used for the EPZ should represent the entire study area. Coordinate with other Project Delivery Team members, especially the -hydraulic engineer and lead planner to ensure your EPZ matches the study area. The LifeSim model should account for the same flooding and structures -as other economic models used in the study, such as Hydraulic Engineering Centers’ Flood Damage Reduction Analysis (HEC-FDA) or Generation II Coastal -Risk Model (G2CRM). - -Refer to the for examples of what to consider when assigning warning and evacuation parameters in your EPZ(s). +Refer to Estimating +Consequences for Levees and Floodwalls, Emergency Planning Zones for examples of what to consider when assigning warning and evacuation +parameters in your EPZ(s). #### Delineating EPZs -As mentioned in the Hydraulic Data section, oftentimes there are various flooding sources in planning studies. The various flooding sources may flood -different areas and the flooding may begin at different times. Therefore, each of these areas would have differing hazard occurrence times (i.e., -flooding begins at different times in various parts of the study area.) In LifeSim, each hydraulic scenario can technically only have one Hazard -Occurrence time identified in the Hydraulic Data. However, you can account for various Hazard Occurrence times in the EPZs. By delineating the EPZs -based on flood timing/flood sources, you can warn various areas relative to when specific hazards occur. It is recommended to work with the Project -Delivery Team’s (PDT) hydraulic engineer to better understand the flooding sources and flooding timing across the study area (see the for additional -information). +As mentioned in the Hydraulic Data section, there are often various sources of flooding in planning studies. The various sources of flooding may inundate different areas, +and flooding may begin at different times. Therefore, each of these areas would have differing hazard occurrence times (i.e., flooding begins at different times in various +parts of the study area). In LifeSim, each hydraulic scenario can technically only have one Hazard Occurrence time identified in the Hydraulic Data. However, you can +account for various Hazard Occurrence times in the EPZs by manipulating the Imminent Hazard ID Times. By delineating the EPZs based on flood timing/flood sources, you +can warn various areas relative to when specific hazards occur. It is recommended to work with the PDT's hydraulic engineer to better understand the flooding sources +and flooding timing across the study area (see Modeling Cascading Dam +Failures in LifeSim for additional information). ##### Ala Wai EPZs -In the Ala Wai Planning Study there are several flood sources including tidal surge, riverine flooding from the Mānoa Stream, Makiki Stream, Palolo +In the Ala Wai Planning Study, there are several flood sources including tidal surge, riverine flooding from the Mānoa Stream, Makiki Stream, Palolo Streams, and flooding along the Mānoa-Palolo and Ala Wai Canals. Following an analysis of the hydraulic timing and flow, the EPZ was delineated into 4 - zones (see ). This decision was made by both the LifeSim modeler and the PDT’s hydraulic engineer. The delineation of EPZs is critical for study -areas with various flood timings and/or flood sources. Delineating EPZs is the best way to model various warning times for various impact areas and -should generally be done with the team’s hydraulic engineer. - -As shown in the figure below, there are 4 EPZs in the Ala Wai LifeSim model; this EPZ polygon is used for all hydraulic scenarios, including both FWOP - and FWP conditions. They are divided by flood source and hydraulic timing: +zones (see ). This decision was made by both the LifeSim modeler and the PDT's hydraulic engineer. The delineation of EPZs is critical in study areas +with varying flood timing and/or flood sources. Delineating EPZs is the best way to model warning times across different impact areas and should generally be done with the +team's hydraulic engineer. -The main flood source in EPZ 1 is the Makiki Stream +As shown in the figure below, there are four EPZs in the Ala Wai LifeSim model; this EPZ polygon is used for all hydraulic scenarios, including both FWOP +and FWP conditions. They are divided by flooding source and the source's hydraulic timing: -The main flood source in EPZ 2 is tidal surge - -The main flood source in EPZ 3 is the Mānoa Stream - -The main flood source in EPZ 4 is the Palolo Streams +- The main flooding source in EPZ 1 is the Makiki Stream +- The main flooding source in EPZ 2 is tidal surge +- The main flooding source in EPZ 3 is the Mānoa Stream +- The main flooding source in EPZ 4 is the Palolo Streams The difference in hydraulic timing between the four EPZs is generally less than an hour, which may not seem like a large difference, but the flooding -in the study area is quite flashy. Advanced forecasting and early warning are unlikely. The life loss estimates are highly sensitive to the hazard -identification time (i.e., early hazard identification is correlated with lower life loss and late hazard identification is correlated with higher -life loss), which is why delineating the EPZs for Ala Wai based on flood source and flood timing is important. The warning times for each EPZ are -discussed more in the section below. +in the study area is quite flashy; advance forecasting and early warning are unlikely. The life loss estimates are highly sensitive to the hazard +identification time (i.e., early hazard identification most likely results in lower life loss and late hazard identification most likely results in higher +life loss), which is why delineating the EPZs for Ala Wai based on flooding source and hydraulic timing is important. The warning times for each EPZ are +discussed more in Creating +Alternatives, Ala Wai EPZ Imminent Hazard Identification Times. The process for delineating the EPZs is discussed more +in Modeling Cascading Dam Failures in LifeSim, Emergency Planning Zones.
#### Importing an Emergency Planning Zone -Refer to the and/or the for information on importing EPZs into LifeSim. +Refer to Estimating +Consequences for Levees and Floodwalls, Emergency Planning Zones and/or Estimating +Consequences for Dams, Emergency Planning Zones for information on importing EPZs into LifeSim. ### Structure Inventory -To use LifeSim to calculate life loss and/or economic damages, a structure inventory needs to be imported into the study. LifeSim will not compute if +To use LifeSim to calculate life loss and/or economic damages, a structure inventory needs to be imported into the study. LifeSim will not simulate if any structure points are located outside of the EPZ. #### Importing a Structure Inventory -Refer to the and the for information on importing a structure inventory into LifeSim and editing it. +Refer to Estimating +Consequences for Levees and Floodwalls, Structure Inventory for information on importing a structure inventory into LifeSim and editing it. ### Simulating Evacuation -Refer to the for how to simulate evacuation. The Simulating Evacuation section covers (1) importing and editing the road network and (2) creating, importing, - and editing the destinations. +Refer to Estimating +Consequences for Levees and Floodwalls, Simulating Evacuation for how to simulate evacuation in LifeSim. The Simulating Evacuation section covers +(1) importing and editing the road network and (2) creating, importing, and editing the destinations. ### Creating Alternatives -Refer to the , the , and/or the for how to create alternatives. +Refer to Estimating +Consequences for Levees and Floodwalls, Creating Alternatives and/or +Estimating Consequences for Dams, Creating Alternatives in LifeSim and/or +Estimating Consequences for Coastal Infrastructure, Creating Alternatives for how to create alternatives in LifeSim. #### Ala Wai EPZ Imminent Hazard Identification Times -As discussed in the Ala Wai EPZ section, the LifeSim model utilized 4 different EPZs—all with unique hazard occurrence times (i.e., flooding begins at - different times in each zone) in the alternatives. Since only one hazard occurrence time can be identified for each hydraulic scenario, you need to -utilize various imminent hazard identification times for each zone while creating alternatives. +As discussed in the Ala Wai EPZs section, the LifeSim model used four different EPZs — each with unique hazard occurrence times (i.e., flooding begins at +different times in each zone) in the alternatives. Since only a single Hazard Occurrence time can be identified for each hydraulic scenario, in order to warn +different areas at different times, you need to use different Imminent Hazard ID times for each EPZ when creating alternatives. -To find the various zones’ hazard occurrence times, add your EPZ polygon to the RAS Map Data Selector Map Window. Then, find each zone’s hazard -occurrence times by finding where/when flooding first begins in each EPZ. Then, identify which EPZ’s hazard occurrence time will be the hydraulic -scenario’s hazard occurrence time identified in the hydraulic data. For Ala Wai, EPZ 1 (shown in the following figure) was selected as the “control” -hazard occurrence time for every hydraulic scenario, which means the imminent hazard ID times for EPZs 2, 3, and 4 were relative to EPZ 1’s hazard -occurrence time. The figure below shows the hazard occurrence times for each EPZ and each event for Alternative 2B; the figure also shows where the -Hydrograph Tool pulled the hazard occurrence times for each EPZ (red circles in the figure below). +To find the various Hazard Occurrence times for each EPZ, add your EPZ polygon to the RAS Map Data Selector Map Window. Then, find each EPZ's Hazard +Occurrence times by finding where/when flooding first begins in each EPZ. Then, identify which EPZ's Hazard Occurrence time will be the hydraulic +scenario's "control" Hazard Occurrence time (i.e., all warning times are relative to this specific time) identified in the hydraulic data. For Ala Wai, +EPZ 1 (shown in ) was selected as the "control" Hazard Occurrence time for every hydraulic scenario, which means the Imminent +Hazard ID times for EPZs 2, 3, and 4 are relative to EPZ 1's Hazard Occurrence time. The figure below shows the Hazard Occurrence times for each EPZ and each event +for Alternative 2B; it also indicates where the Hydrograph Tool retrieved the hazard occurrence times for each EPZ (red circles). For an +example on how to pull a hydrograph, refer to the _.gif_ in LifeSim Users Guide - Representative Hydrograph: Import from Map.
- below highlights the various hazard occurrence times in each EPZ for Alternative 2B for the 0.02 AEP, 0.05 AEP, -and 0.01 AEP events. highlights the calculated imminent hazard identification times. + below highlights the various hazard occurrence times in each EPZ for Alternative 2B for the 0.02 AEP, 0.05 AEP, +and 0.01 AEP events. then shows the calculated Imminent Hazard ID times, which are then used in each +alternative. -For the 0.02 AEP and 0.05 AEP events in EPZ 1, a relatively small amount of warning time was given to the public; a uniform distribution of -2 to 0 -hours was used. For the 0.01 AEP event in EPZ 1, the warning time distribution was expanded to potentially give the population more warning; -4 to 0 -hours was used. The same amount of warning time was used for all zones, but zones 2 through 4 were warned relative to EPZ 1’s hazard occurrence time. +As shown in , there are different warning time assumptions depending on the AEP event. As stated in other chapters, the warning +time assumptions should be discussed with the rest of the team, especially the hydraulic engineer. The amount of forecasting and risk perception can change +drastically from one event to the next. For example, the 0.002 AEP event is a much more extreme and infrequent event than the 0.05 AEP event, so the public +would likely have more warning for the 0.002 AEP event compared to the 0.05 AEP event. -For example, for the 0.05 AEP event, EPZ 2’s hazard occurrence time occurs 1.83 hours prior to EPZ 1’s hazard occurrence time. This indicates - that EPZ 2 needs to be warned 1.83 hours earlier than EPZ 1. The final Imminent Hazard Identification Times (i.e., warning times) used in -the alternatives reflect the difference in hazard occurrence times to ensure each EPZ receives the same amount of warning relative to each zone’s -unique hazard. +For the 0.02 AEP and 0.05 AEP events in EPZ 1, a relatively small amount of warning time was given to the public; a uniform distribution of -2 to 0 hours was used. +For the 0.01 AEP event in EPZ 1, the warning time distribution was expanded to potentially give the population more warning; -4 to 0 hours was used. The same amount +of warning time was used for all EPZs, but EPZs 2, 3, and 4 were warned relative to EPZ 1's hazard occurrence time. -:::danger -This table contains cells that span multiple rows or columns. Manually update the React component to properly format the table. -::: +For example, for the 0.05 AEP event, EPZ 2's Hazard Occurrence time occurs 1.83 hours before EPZ 1's Hazard Occurrence time. This indicates +that EPZ 2 needs to be warned 1.83 hours earlier than EPZ 1. The final Imminent Hazard ID Times (i.e., warning times) used in +the alternatives reflect the difference in Hazard Occurrence times relative to EPZ 1's Hazard Occurrence time to ensure all four EPZs receive the same amount of +warning relative to each EPZ's unique hazard (i.e., flooding source). -:::danger -This table contains cells that span multiple rows or columns. Manually update the React component to properly format the table. -::: - ### Creating Simulations -Refer to the for creating simulations, selecting the appropriate options, and running simulations. +Refer to Estimating +Consequences for Levees and Floodwalls, Creating Simulations for creating simulations, selecting the appropriate options, and running simulations. ## Understanding and Interpreting Results After running simulations, you can view your results in various ways, including by result plots, result tables, and result maps. Each way you view -results helps understand your life loss and economic damage results and quality check your results. It is unlikely that your first simulation will be -your last simulation—edits to the structure inventory, EPZs, road network and/or destination points are frequently needed to obtain accurate and +results helps you understand your life loss and economic damage results, and quality check your results. It is unlikely that your first simulation will be +your last simulation — edits to the structure inventory, EPZs, road network and/or destination points are frequently needed to obtain accurate and representative results. -Refer to the , the , and/or the for understanding results and finalizing the LifeSim model. +Refer to Estimating +Consequences for Levees and Floodwalls, Understanding and Interpreting Results and/or +Estimating Consequences for Dams, Editing the Structure Inventory Based on Simulation Results and/or +Estimating Consequences for Coastal Infrastructure, Post-Simulation Calibration for understanding results and finalizing the LifeSim model. LifeSim utilizes an event-based approach, so there is no annualization across the various flow-frequency events. Use a tool like TotalRisk 1.0 or another certified annualization tool to produce expected annual life loss values for each alternative. -(Page intentionally left blank) - - \ No newline at end of file + diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/09-estimating-direct-economic-damages.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/09-estimating-direct-economic-damages.mdx index 60c609abf..085326963 100644 --- a/docs/desktop-applications/lifesim/applications-guide/v1.0/09-estimating-direct-economic-damages.mdx +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/09-estimating-direct-economic-damages.mdx @@ -1,91 +1,98 @@ --- -title: "Estimating Direct Economic Damages" +title: 'Estimating Direct Economic Damages' --- -import Link from "@docusaurus/Link"; -import addBaseUrl from "@docusaurus/useBaseUrl"; -import Citation from "@site/src/components/Citation"; -import CitationFootnote from "@site/src/components/CitationFootnote"; -import Figure from "@site/src/components/Figure"; -import FigureInline from "@site/src/components/FigureInline"; -import FigReference from "@site/src/components/FigureReference"; -import NavContainer from "@site/src/components/NavContainer"; -import ProcessList from "@site/src/components/ProcessList"; -import TableReference from "@site/src/components/TableReference"; -import TableVertical from "@site/src/components/TableVertical"; -import VersionSelector from "@site/src/components/VersionSelector"; - - +import Link from '@docusaurus/Link'; +import addBaseUrl from '@docusaurus/useBaseUrl'; +import Citation from '@site/src/components/Citation'; +import CitationFootnote from '@site/src/components/CitationFootnote'; +import Figure from '@site/src/components/Figure'; +import FigureInline from '@site/src/components/FigureInline'; +import FigReference from '@site/src/components/FigureReference'; +import NavContainer from '@site/src/components/NavContainer'; +import ProcessList from '@site/src/components/ProcessList'; +import TableReference from '@site/src/components/TableReference'; +import TableVertical from '@site/src/components/TableVertical'; +import VersionSelector from '@site/src/components/VersionSelector'; + + # Estimating Direct Economic Damages ## Purpose This example demonstrates the process for estimating economic consequences in LifeSim. This chapter applies to dam and levee safety, planning studies, - and other analyses that focus on economic consequences. This chapter focuses on the Ala Wai Flood Risk Management General Investigations Study, which - is an ongoing Planning study in the U.S. Army Corps of Engineers Honolulu District. The LifeSim model was modeled in 2023 by the USACE Omaha -District. The Ala Wai LifeSim model compares economic damage results across four different alternatives. +and other analyses that focus on economic consequences. This chapter focuses on the Ala Wai Flood Risk Management General Investigations Study, a +General Investigations Study conducted by the U.S. Army Corps of Engineers (USACE) Honolulu District. The LifeSim model was completed in 2023 by the +USACE Omaha District. The Ala Wai LifeSim model compares economic damage results across four alternatives. -For each of the alternatives, the eight flow-frequency events used in the study’s economic damage modeling were imported into LifeSim. The -alternatives included the Future Without-Project (FWOP) condition and three structural alternatives. The structural alternatives’ hydraulic scenarios -utilized in LifeSim represent the Future With-Project (FWP) and do not include breaches in the proposed flood protection infrastructure. +For each of the alternatives, the eight flow-frequency events used in the study's economic damage modeling were imported into LifeSim. The +alternatives included the Future Without-Project (FWOP) condition and three structural alternatives. The structural alternatives' hydraulic scenarios +utilized in LifeSim represent the Future With-Project (FWP) and do not include failures of the proposed flood protection infrastructure. -This chapter includes instructions on importing the required data into LifeSim, how to edit structures and occupancy types, and how to interpret +This chapter includes instructions on importing the required data into LifeSim, editing structures and occupancy types, and interpreting modeling results. Additional considerations for LifeSim modeling for planning studies are identified throughout the chapter. +_Note: The model results included in the subsequent sections are for example purposes only and are not representative of actual economic damage estimates +for the Ala Wai Flood Risk Management General Investigations Study._ + ## Input Data The subsequent sections discuss the input data required to calculate direct economic damages across various alternatives for planning studies. The -input data sections include hydraulic data, structure inventories, creating alternatives, and simulating alternatives. The structure inventory section - includes significant detail on editing and creating structure occupancy types in LifeSim. +input data sections include Hydraulic Data, Structure Inventories, Creating Alternatives, and Simulating Alternatives. Notably, an Emergency Planning Zone (EPZ) +is not required if you are calculating only economic damages. The structure inventory section includes significant detail on editing and creating structure occupancy types +in LifeSim. ### Hydraulic Data -The Ala Wai LifeSim model utilized output from the Hydrologic Engineering Center’s River Analysis System (HEC-RAS). Ideally, the HEC-RAS inputs should - be in the form of Hierarchical Data Format (HDF) to streamline the process; this is the easiest way to calculate both direct economic damages and -life loss in one LifeSim model. However, summary grids (Reference the ), and other hydraulic models could be utilized in LifeSim (reference the and -). The HEC-RAS plan HDF file and the HEC-RAS terrain HDF file are needed for each hydraulic scenario. Reference the for step-by-step instructions on importing - hydraulic data from HEC-RAS. - -It is recommended to include several hydraulic events (greater than 6 different flow-frequency events) in the LifeSim model. Eventually, the life loss - estimates will be used to estimate Expected Annual Damages (EAD) in a tool like TotalRisk 1.0, and the more hydraulic events included in that -calculation, the more accurate the EAD is. Below are some of the hydraulic events included in the Ala Wai LifeSim model (for the FWOP, Alternative 2B, - and Alternative A5). As shown in the figure, the 0.5 Annual Exceedance Probability (AEP), 0.2 AEP, 0.1 AEP, 0.05 AEP, 0.02 AEP, 0.01 AEP, 0.005 AEP, -and 0.002 AEP events are included for each alternative. +The Ala Wai LifeSim model utilized output from the Hydrologic Engineering Center's River Analysis System (HEC-RAS) . Ideally, +the HEC-RAS inputs should be in the form of HDF to streamline the process; this is the easiest way to calculate both direct economic +damages and life loss in one LifeSim model. However, summary +grids (reference Using Summary Grids in LifeSim) and +other hydraulic models could be utilized in +LifeSim (reference LifeSim Technical Reference +Manual - Hydraulic Data and LifeSim Users Guide - Hydraulic Data for additional information). +The HEC-RAS plan HDF file and the HEC-RAS terrain HDF file are needed for each hydraulic scenario. +Reference +Estimating Consequences for Levees and Floodwalls, Hydraulic Data for step-by-step instructions on importing hydraulic data from HEC-RAS. + +It is recommended to include several hydraulic events (more than six different flow-frequency events) in the LifeSim model; eventually, the event based economic damage +estimates will be used to estimate Expected Annual Damages (EAD) in a tool like TotalRisk 1.0. +The more hydraulic events included in that calculation, the more representative the EAD is. Below are some of the hydraulic events included in the Ala Wai +LifeSim model (for the FWOP, Alternative 2B, and Alternative A5). As shown in the figure, the 0.5 Annual Exceedance Probability (AEP), 0.2 AEP, 0.1 AEP, +0.05 AEP, 0.02 AEP, 0.01 AEP, 0.005 AEP, and 0.002 AEP events are included for each alternative.
### Emergency Planning Zones -For calculating only economic damages, an emergency planning zone (EPZ) is not required in the LifeSim model. +When only calculating direct economic damages, an EPZ is not required in the LifeSim model. ### Structure Inventory -To calculate economic damages in LifeSim, a structure inventory needs to be imported into the study. There are key additionall things to consider and -edit in the structure inventory to accurately calculate economic damages. The follow sections focus on viewing, editing, and creating occupancy types. - For information on importing a structure inventory, refer to the and . +To calculate economic damages in LifeSim, a structure inventory needs to be imported into the study. There are key items to consider and +edit in the structure inventory to more accurately calculate economic damages. The following sections focus on viewing, editing, and creating occupancy types. +For information on importing a structure inventory, refer +to Estimating Consequences for Levees and +Floodwalls, Structure Inventory. #### Creating and Editing Occupancy Types When estimating direct economic damages in LifeSim, additional edits to the structure inventory and occupancy types may be needed to allow for more uncertainty in the economic damage computation. The following sections describe the editable aspects of occupancy types in LifeSim, including the Depth-Damage Functions (Structure, Content, and Vehicle), Foundation Height Offset, Value Uncertainty (Structure, Content, and Vehicle), Evacuation -Parameters, and Submergence Criteria. Additionally, you can create new occupancy types ( -{"\n"}), copy occupancy types ( -{"\n"}), and delete occupancy -types (). +Parameters, and Submergence Criteria. Additionally, from the Occupancy Type Editor, you can **Create New Occupancy Types** +{"\n"}, **Copy Selected Occupancy Type** +{"\n"}, and **Delete Selected Occupancy Type** +{"\n"}. -To view, edit, and create occupancy types, right click on Occupancy Types under Structure Inventories in the Study -Pane. Select Edit Occupancy Type Data from the options. +To view, edit, and create occupancy types, right-click on Occupancy Types under Structure Inventories in the Study +Pane. Select Edit Occupancy Type Data from the options.
-The Occupancy Type Editor window opens (shown in the figure below) and displays the various attributes associated with the selected occupancy type. -The figure below shows the RES1-1SNB (Residential Structure with 1-Story, No Basement) occupancy type. +The Occupancy Type Editor window opens (shown in ) and displays the various attributes associated with the selected +occupancy type. The figure below shows the RES1-1SNB (Residential Structure with 1-Story, No Basement) occupancy type.
##### Occupancy Type Depth-Damage Function Uncertainty -Notably, most of the default structure occupancy types do not include uncertainty in the depth-damage function. The only occupancy types that include -uncertainty are the RES1 occupancy types (as seen in the figure above). The RES1 depth-damage functions (structure and content) are the default -depth-damage functions defined in Economic Guidance Memorandum (EGM) 04-01. All commercial, public, industrial, and the other residential occupancy -types (e.g., manufactured homes, apartment buildings, etc.) do not have uncertainty in the depth-damage functions. However, all existing occupancy -types can be edited to include uncertainty and new occupancy types can be added by the user. +Notably, most default structure occupancy types do not include uncertainty in the depth-damage function. The only occupancy types that include +uncertainty are the RES1 occupancy types (as shown in ). The RES1 depth-damage functions (structure and content) +are the default depth-damage functions defined in Economic Guidance Memorandum (EGM) 04-01 . All commercial, public, +industrial, and other residential occupancy types (e.g., manufactured homes, apartment buildings, etc.) do not have uncertainty in the depth-damage +functions. However, the user can edit existing occupancy types to include uncertainty, and you can create new occupancy types. -This example will step through adding uncertainty to the existing EDU1 occupancy type. shows the default -occupancy type for an educational structure with 1-story (EDU1). Although the default depth-damage functions for EDU1 do not include uncertainty, an -uncertainty distribution can be defined by the user for each of the depth-damage functions (Structure, Content, and Vehicle). +The subsequent sections will walk through how to add uncertainty to the existing EDU1 occupancy type. shows the default +occupancy type for an educational structure with 1-story (EDU1). Although the default depth-damage functions for EDU1 do not include uncertainty, the user +can define an uncertainty distribution for each depth-damage function (Structure, Content, and Vehicle).
- shows the variety of uncertainty distributions for the depth-damage functions. You can choose from a triangular, -uniform, normal, and lognormal distribution. + shows the variety of uncertainty distributions for the depth-damage functions; you can choose from triangular, +uniform, normal, and lognormal distributions.
- shows an example of a uniform distribution (minimum % damage and maximum % damage). As shown in the function -plot, there is more uncertainty included in shallower flood depths (the 0ft to 10ft range), with less uncertainty included in the higher depths. It’s -recommended to coordinate with other economists, your reviewers, and/or technical experts on representative uncertainty in the depth-damage functions. - Alternatively, you could utilize other developed depth-damage functions (e.g., from other Corps studies, FEMA curves, or other published depth-damage - functions) and enter the values into LifeSim. + shows an example of a uniform distribution (minimum % damage and maximum % damage). As shown in the function +plot, there is more uncertainty at shallower flood depths (the 0 ft to 10 ft range), and less uncertainty at higher depths. It is recommended to +coordinate with other economists, your reviewers, and/or technical experts on representative uncertainty in the study's depth-damage functions. +Alternatively, you could use other developed depth-damage functions (e.g., from other USACE studies, FEMA curves, or other published depth-damage +functions) and enter the values into LifeSim.
#### Variation in Structure Values -In addition to including an uncertainty distribution to the depth-damage function, uncertainty can be added to the values of each of the damage -categories (Structure, Damage, and Vehicle). As shown in the figure below, you can select the Uncertainty Type for the Structure Value. Note the variation - is a percentage, not a dollar value. This variation percentage will be applied to each structure with the same occupancy type. - - +In addition to including an uncertainty distribution to the depth-damage function, you can add uncertainty to the values of each of the damage +categories (Structure, Content, and Vehicle). As shown in , you can select the Uncertainty Type for the Structure Value. +Note the _Variation in Structure Value_ is a percentage, not a dollar value. The entered Variation in Structure Value percentage will be applied to +each structure with the same occupancy type.
-In this example, the user wants to include uncertainty regarding the structure values of all EDU1 structures. A triangular distribution is selected, -and the uncertainty distribution is as follows: -15% as the lower bounds, 0% (no change) as the most likely, and 20% as the upper bounds. For -example, if an EDU1 structure has a defined structure value of $100K, the structure value will be randomly sampled between $85K and $120K—with $100K -being the most likely sampled value. This triangular uncertainty distribution is applied to all EDU1 structure values. +In the example shown in , uncertainty is updated for the structure value of all EDU1 structures. A triangular +distribution is selected, and the uncertainty distribution is as follows: + +-15% is the Minimum, 0% (i.e., no change) is the Most Likely, and 20% is the Maximum. + +With this uncertainty distribution, if an EDU1 structure has a defined structure value of 100K dollars, the structure value will be randomly sampled between +85K and 120K dollars, with 100K dollars being the most likely sampled value. + +Once you click **OK**, this triangular uncertainty distribution is applied to all EDU1 structure values in your structure inventory.
#### Foundation Height Offset Uncertainty The final uncertainty parameter that can be defined at the occupancy type level is the Foundation Height Offset. Similar to the Variation in Structure - Value uncertainty, you can choose a triangular, normal, or uniform uncertainty distribution (shown in ). -Notably, the defined uncertainty bounds are based on feet, not a percentage of the foundation height. The example uniform distribution below is a -range of -1ft to 1.5ft, which indicates the defined foundation height for each EDU1 structure will sample that offset relative to the defined -foundation height. For example, if an EDU1 structure has a defined foundation height of 2ft, in each iteration, the foundation height would be sampled - as a number between 1ft and 3.5ft. The uncertainty distribution should be informed by either a foundation height sample or by information from real -estate. Justification of the selected distribution and uncertainty bounds needs to be included in any documentation. +Value uncertainty, you can choose a triangular, normal, or uniform uncertainty distribution (shown in ). +Notably, the defined uncertainty bounds are based on height (in feet), not a percentage variation of the foundation height. The example uniform +distribution below ranges from -1 ft to 1.5 ft. + +For example, if an EDU1 structure has a defined foundation height of 2 ft, in each iteration, the foundation height would be sampled +as a number between 1 ft and 3.5 ft. The uncertainty distribution should be informed by either sampled data or by information from the Real +Estate team. Justification of the selected distribution and uncertainty bounds needs to be included in any documentation.
-An additional consideration: If there are several variations in a single occupancy type, the user may want to create copies of that same occupancy -type, with each having the variable attribute(s) defined . For example, you may need multiple occupancy types for schools. If you have sampled -foundation heights for EDU1 buildings built on slab and sampled foundation heights for EDU1 buildings with basements, this may prompt the user to -create two EDU1 occupancy types (e.g., EDU1-SLAB and EDU1-WithBSNT) to accurately account for the two foundation height samples and include two -different depth-damage functions (i.e., the EDU1-WithBSNT would incur damage at lower flood depths). +An additional consideration: If there are variations in your dataset for a single occupancy type, it is recommended to create copies of an occupancy +type; the copies will then account for the variable attribute(s) by updating the uncertainty parameters accordingly. + +For example, you may need multiple occupancy types for schools (i.e., EDU1) to account for different foundation types. If you have sampled foundation height +values for EDU1 buildings built on slab _and_ sampled foundation height values for EDU1 buildings with basements, this may prompt the user to create two EDU1 +occupancy types (e.g., EDU1-SLAB and EDU1-WithBasement) to account for the two foundation height samples accurately and include two different depth-damage +functions (i.e., the EDU1-WithBasement would incur damage at lower flood depths). ### Creating Alternatives -After editing your occupancy types and structure inventory, you will create alternatives for each scenario for which you want to calculate economic -damages. For computing only economic damages, relatively simple alternatives are required. As shown in below, -you only need to link the structure inventory and correct hydraulic scenario in the Alternative Editor window. Ensure both the Simulate Traffic and -Calculate Life Loss boxes are unchecked. +After editing your occupancy types and structure inventory, you will create alternatives for each hydraulic scenario to calculate damages. When +computing only economic damages, relatively simple alternatives are required. As shown in below, you only need to link the +structure inventory and correct hydraulic scenario in the Alternative Editor window. Ensure both the Simulate Traffic and Calculate Life Loss boxes +are unchecked .
Estimating +Consequences for Levees and Floodwalls, Creating Simulations for information on creating simulations, selecting the appropriate options, +and running simulations. -#### Delineating Reaches - -As stated in , delineating damage reaches is part of the overall study strategy and is an integral part of computing expected annual damages. This is -a step that the user must consider and it is highly recommended to coordinate with the team’s hydraulic engineer. There are several factors to -consider when delineating damage reaches including, but not limited to, the following: - -Existing levees and proposed levees (i.e., existing and proposed levees should have separate damage reaches) - -Flooding sources (i.e., coastal, streams, rivers, etc.) - -Flooding characteristics (i.e., higher depths vs shallow depths; fast velocities vs slow velocities) +An additional consideration for estimating direct economic damages is selecting an appropriate Summary Output Polygon. Similar to how a Hydrologic Engineering Center's +Flood Damage Reduction Analysis (HEC-FDA) model requires a delineation of reaches (i.e., impact areas or damage reaches) to accurately account +for uncertainty in the hydraulic data, this should be a consideration in calculating economic damages in LifeSim, especially if the user is going to use TotalRisk +or another certified model following the LifeSim modeling. A damage reaches polygon should be incorporated into the Simulations by selecting it as the Output Summary Polygon. -Population centers (i.e., urban vs rural areas) +#### Delineating Reaches -Inundation Boundaries (i.e., 0.04 Annual Exceedance Probability (AEP) floodplain and 0.01 AEP floodplain) +As stated in Engineering Manual 1110-2-1619 , delineating damage reaches is part of the overall study strategy and is an integral part of +computing expected annual damages. This is a step that the user must consider, and it is highly recommended to coordinate with the team's hydraulic engineer. There are +several factors to consider when delineating damage reaches including, but not limited to, the following: + +Existing levees and proposed levees (i.e., existing and proposed levees should have separate damage reaches), + }, + { + // STEP 2 + title: <>Flooding sources (e.g., coastal, streams, rivers, etc.), + }, + { + // STEP 3 + title: <>Flooding characteristics (e.g., higher depths vs shallow depths; fast velocities versus slow velocities), + }, + { + // STEP 4 + title: <>Population centers (e.g., urban versus rural areas), + }, + { + // STEP 5 + title: <>Inundation boundaries (e.g., 0.04 Annual Exceedance Probability (AEP) floodplain and 0.01 AEP floodplain), + }, + ]} +/> - includes additional information on delineating damage reaches in Section 3.3. The TotalRisk application guide chapter xx discusses how to use the -LifeSim results by damage reach to accurately incorporate hydraulic uncertainty by reach. +The HEC-FDA User Manual includes additional information on delineating damage reaches in the Impact Area section. #### Ala Wai Damage Reaches -In the Ala Wai Planning Study there are several flood sources including tidal surge; riverine flooding from the Mānoa Stream, Makiki Stream, and the -Palolo Streams; and flooding along the Mānoa-Palolo and Ala Wai Canals. The flooding sources alone indicate several damage reaches are needed for this - study. An additional consideration is if a reach represents the right bank, left bank, or both. The figure below shows each of the Ala Wai reaches -and is color coded to show which bank(s) the reach includes. With all hydraulic, economic, engineering, and planning considerations, the study has a -total of 13 damage reaches. The reaches shown in would then be used as your Summary Output Polygon in all -LifeSim simulations, which allows LifeSim to show results by reach and can be easily used in TotalRisk to estimate expected annual damages (see -TotalRisk Application Guide). - - +In the Ala Wai Planning Study, there are several flood sources including tidal surge, riverine flooding from the Mānoa Stream, Makiki Stream, and the +Palolo Streams, and flooding along the Mānoa-Palolo and Ala Wai Canals. The flooding sources alone indicate several damage reaches are needed for this +study. An additional consideration is if a reach represents the right bank, left bank, or both. shows each of the Ala Wai +reaches and is color-coded to indicate which bank(s) each reach includes. With all hydraulic, economic, engineering, and planning considerations, the study has a +total of 14 damage reaches. The reaches shown in would then be used as your Summary Output Polygon for all LifeSim simulations, +allowing LifeSim to show results by reach and enabling easy use in TotalRisk or another certified model to estimate expected annual damages with uncertainty in the +hydraulic data.
## Understanding and Interpreting Results -After running simulations, you can view your results in various ways, including by result plots, result tables, and result maps. Each way you view -results is beneficial to understanding your economic damage results as well as conducting a quality check on your results. It is unlikely that your -first simulation will be your last simulation—edits to the structure inventory are often needed to obtain accurate and representative results. -Reference the for additional information on understanding and interpreting your results. +After running simulations, you can view your results in various ways, including by result plots, result tables, and result maps. Each way you view the results is beneficial +for understanding your economic damage and for conducting a quality check. See Estimating +Consequences for Dams, Editing the Structure Inventory Based on Simulation Results for more information on how best to perform quality checks on your results. +It is unlikely that your first simulation will be your last simulation; edits to the structure inventory are often needed to obtain accurate and representative results. +Reference Estimating Consequences for Levees and Floodwalls, Understanding +and Interpreting Results for additional information on understanding and interpreting your results. The results provided by the LifeSim model are event-based and include uncertainty in the economic damages. However, hydraulic data uncertainty is not -accounted for. To calculate Expected Annual Damages with uncertainty in the hydraulic data, a tool like TotalRisk 1.0 should be utilized. Reference -the TotalRisk Applications Guide for more information; the Flood Risk Management Chapter uses the Ala Wai LifeSim results. This specific chapter of -the TotalRisk Applications Guide discusses how to interpret Expected Annual Damage when using LifeSim economic damage results. - -(Page intentionally left blank) +accounted for in the LifeSim results. To calculate expected annual damages with uncertainty in the hydraulic data, a tool like TotalRisk 1.0 (or another certified model) +should be used. - \ No newline at end of file + diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/10-using-summary-grids-in-lifesim.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/10-using-summary-grids-in-lifesim.mdx index e120f7b69..861894fe8 100644 --- a/docs/desktop-applications/lifesim/applications-guide/v1.0/10-using-summary-grids-in-lifesim.mdx +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/10-using-summary-grids-in-lifesim.mdx @@ -1,120 +1,110 @@ --- -title: "Using Summary Grids in LifeSim" +title: 'Using Summary Grids in LifeSim' --- -import Link from "@docusaurus/Link"; -import addBaseUrl from "@docusaurus/useBaseUrl"; -import Citation from "@site/src/components/Citation"; -import CitationFootnote from "@site/src/components/CitationFootnote"; -import Figure from "@site/src/components/Figure"; -import FigureInline from "@site/src/components/FigureInline"; -import FigReference from "@site/src/components/FigureReference"; -import NavContainer from "@site/src/components/NavContainer"; -import ProcessList from "@site/src/components/ProcessList"; -import TableReference from "@site/src/components/TableReference"; -import TableVertical from "@site/src/components/TableVertical"; -import VersionSelector from "@site/src/components/VersionSelector"; - - +import Link from '@docusaurus/Link'; +import addBaseUrl from '@docusaurus/useBaseUrl'; +import Citation from '@site/src/components/Citation'; +import CitationFootnote from '@site/src/components/CitationFootnote'; +import Figure from '@site/src/components/Figure'; +import FigureInline from '@site/src/components/FigureInline'; +import FigReference from '@site/src/components/FigureReference'; +import NavContainer from '@site/src/components/NavContainer'; +import ProcessList from '@site/src/components/ProcessList'; +import TableReference from '@site/src/components/TableReference'; +import TableVertical from '@site/src/components/TableVertical'; +import VersionSelector from '@site/src/components/VersionSelector'; + + # Using Summary Grids in LifeSim ## Purpose -This chapter demonstrates the process of using summary grids in LifeSim. Importing summary grids allows LifeSim to bypass the need to calculate, or -pre-process, hydraulic characteristics. The necessary raster files are instead imported directly into the software. This chapter walks through an -example using Clearwater Dam in Piedmont, MO (Little Rock District) and includes step-by-step instructions for importing the required data and making -runs in LifeSim using summary grids where life loss was a necessary consideration. Additional information will be provided throughout the chapter for -cases where only structural or agricultural damages are being considered. +This chapter demonstrates how to use hydraulic summary grids in LifeSim. Importing summary grids allows LifeSim to bypass the need to calculate or +pre-process hydraulic characteristics. The necessary raster files are instead imported directly into the software. This chapter walks through an +example using Clearwater Dam in Piedmont, MO, and includes step-by-step instructions on importing the required data to calculate +life loss in LifeSim using summary grids. Additional information is provided throughout the chapter for cases in which only structural or agricultural +damage is considered. ## Summary Grids Import Overview -Summary grids can be created using post-processing tools for several different hydraulic modeling programs, not just Hydrologic Engineering Center’s -River Analysis System (HEC-RAS). Therefore, this approach can be useful for many LifeSim users. Allowable file types include: +Summary grids can be created using post-processing tools for several different hydraulic modeling programs, not just Hydrologic Engineering Center's +River Analysis System (HEC-RAS) . Therefore, this approach can be useful to many LifeSim users. Allowable file types include: -.tif (tag image file format; an image format used for containing high quality graphics), - -.flt (floating-point grid; holds values for a single numeric measure, a value for each cell in the rectangular grid), - -ESRI Grid (format native to ESRI for storing raster data that defines geographic space as an array of equally sized square cells) - -.vrt (virtual format; use of this format is to group a series of grids that should be associated together) +- _.tif_ (tagged image file format; an image format used for containing high quality graphics), +- _.flt_ (floating-point grid; holds values for a single numeric measure, a value for each cell in the rectangular grid), +- ESRI Grid (format native to ESRI for storing raster data that defines geographic space as an array of equally sized square cells), +- _.vrt_ (virtual format; use of this format is to group a series of grids that should be associated together). See the following table for an overview of hydraulic characteristics represented by different summary grids and their associated LifeSim computes. -:::danger -This table contains cells that span multiple rows or columns. Manually update the React component to properly format the table. -::: - -Note that the maximum depth and maximum velocity grids do not account for hydraulic timing, they simply capture the maximum of the two metrics for any - grid cell over the span of the hydraulic simulation. The approach assumes depth and velocity reach their respective maximums at the same time--which -is not always true--leading to more conservative sampling of the assumed stability criteria for structures in the same cell. If the user were to use -hierarchal data files (.hdf), where the hydraulic output is broken out into specified timesteps, it is possible that depth and velocity for any given -cell may not reach their maximums at the same time. It is likely, however, that differences in life loss due to structure stability outcomes between +Note that the maximum depth and maximum velocity grids do not account for hydraulic timing – they simply capture the maximum of the two metrics for any +grid cell over the span of the hydraulic simulation. The approach assumes depth and velocity reach their respective maximums at the same time, which +is not always true, leading to more conservative sampling of the assumed stability criteria for structures in the same cell. If the user were to use +Hierarchical Data Format (_.hdf_), where the hydraulic output is broken out into specified timesteps, it is possible that depth and velocity for any given +cell may not reach their respective maximums at the same time. It is likely, however, that differences in life loss due to structure stability outcomes between the two approaches will be minimal for most studies. ## Importing Summary Grids for Clearwater Dam -As shown in , to use summary grids in LifeSim for a consequences analysis where time and evacuation are being considered (i.e., for life loss -computes), you will need a minimum of four summary grids – a maximum depth grid, a maximum velocity grid, an arrival time grid with a depth threshold - of zero feet (i.e., the first arrival of water), and an arrival time grid with an assumed depth threshold that no longer allows for evacuation (i.e., - a non-evacuation depth). +As shown in , to use summary grids in LifeSim for a consequences analysis where time and evacuation are being considered +(i.e., for life loss computes), you will need a minimum of four summary grids: + +- A maximum depth grid, +- A maximum velocity grid, +- An arrival time grid with a depth threshold of zero feet (i.e., the first arrival of water), +- An arrival time grid with an assumed depth threshold that no longer allows for evacuation (i.e., a non-evacuation depth; typically a depth threshold of 2 ft). To start the import process, first right-click on Hydraulic Data in the study pane and select Import from Summary Grids, as shown in the following figure. @@ -126,7 +116,7 @@ Grids, as shown in the following figure. caption="Import from Summary Grids option" /> -The following pop-up window will appear. +The **Import from Summary Grids** window appears.
-A maximum depth grid (the first input in ) represents the maximum that occurs in each grid cell over the course -of a hydraulic simulation. Like maximum depth, maximum velocity and maximum D*V represent the greatest velocity and instantaneous D*V that occurred in - each grid cell. Maximum D*V is an important variable for stability criteria. More detailed discussion on this topic can be found in Section 4.3 of -the . As previously mentioned, because the maximum depth, maximum velocity, and maximum D*V grids are not time dependent, LifeSim cannot simulate +A maximum depth grid and maximum velocity grid represent the maximum depth and velocity, respectively, that occur in each grid cell over the course of a +hydraulic simulation. Similarly, the maximum depth times velocity (DxV) grid represents the largest instantaneous DxV in each grid cell over the course of a +hydraulic simulation. Maximum DxV is an important variable for stability criteria. A more detailed discussion of this topic can be found +in +LifeSim Technical Reference Manual - Building Stability Criteria. As previously mentioned, because the maximum depth, maximum velocity, and maximum DxV grids are not time dependent, LifeSim cannot simulate evacuation on roads when utilizing only this style of hydraulic data. -From the Import from Summary Grids window, map to the project’s grids by clicking on the button with the three dots ( -{"\n"}) next to the -Maximum Depth Grid (Required) line. The file directory selected should contain one of the file formats outlined in the Summary Grids -Import Overview section (e.g., .tif, .flt, .vrt,) earlier in the chapter. Repeat this process for the Maximum Velocity Grid, a -required import for life loss estimation. See to view these completed steps for the Clearwater Dam Maximum High -Pool (MHP) breach scenario. Note: When multiple .tif files are used to make up a larger area, a .vrt must be used in LifeSim unless -the user is only interested in a smaller subsection of the study area made up of only the single .tif. +From the **Import from Summary Grids** window, map to the project's grids by clicking on the button with the three +dots next to the +**Maximum Depth Grid (Required)** line. The selected file directory should contain one of the file formats outlined in the Summary Grids Import +Overview section earlier in the chapter (e.g., _.tif_, _.flt_, _.vrt_). Repeat this process for the **Maximum Velocity Grid**, which is a +required import for life loss estimation. See to view these completed steps for the Clearwater Dam Maximum High +Pool (MHP) failure scenario. + +_Note: When multiple .tif files are used to make up a larger area, a .vrt must be used in LifeSim unless the user is only interested in a smaller +subsection of the study area made up of a single .tif._
-The next required input is the Non-Evacuation Arrival Grid. An arrival time grid represents the point in time that flood water of a -given depth reaches each cell. When modeling the evacuation process for life loss, LifeSim assumes that after a given flood depth is reached, -individuals remaining in a structure will no longer be able to evacuate on roads, thus they will remain in the structure and vertically evacuate. In -the Clearwater Dam example, a non-evacuation depth of two feet (this is the standard for USACE) was used in the LifeSim model. - -The last required summary grid input for life loss calculations is the First-Inundated Arrival Grid (i.e., the first arrival of -water, or an arrival grid with a flood depth threshold of zero). shows the selection of all four grids. Note: -Set the Arrival Time Units to match specified output from the post-processing tools. In the case of Clearwater dam, grids were -generated using hour-long timesteps. +The next required input is the Non-Evacuation Arrival Grid. An arrival time grid represents the point in time that floodwaters of a +given depth reach each cell. When modeling the evacuation process for life loss, LifeSim assumes that after a given flood depth is reached, +individuals remaining in a structure will no longer be able to evacuate on roads (i.e., a non-evacuation depth), thus they will remain in the structure and +vertically evacuate. In the Clearwater Dam example, a non-evacuation depth of 2 feet (the standard for USACE) was used in the LifeSim model. +The last required summary grid input for life loss calculations is the First-Inundated Arrival Grid, which represents the first arrival of +water in each cell (i.e., an arrival grid with a flood depth threshold of zero). shows the selection of all four grids. +_Note: Set the Arrival Time Units to match specified output from the post-processing tools. In the case of Clearwater Dam, grids were +generated using hour-long timesteps._
For agricultural computations, duration grids are required to determine damage to crops and replanting potential. Duration grids contain information -about the duration of time that a cell is inundated. Agricultural damage was not considered for Clearwater Dam. +about the duration of time that a cell is inundated. Agricultural damage was not considered or computed for Clearwater Dam. Before clicking OK and completing the import for the first hydraulic scenario, the user must define the hydrograph. -{"\n"} below shows this section of the Import from Summary Grids window. +{"\n"} below shows this section of the Import from Summary Grids window.
OK and completing the import for the first hydr caption="Hydrograph definition" /> -For analysis scenarios where a hydraulic time series is used, the first hydraulic timestep marks the beginning of the hydraulic input. It has no +For scenarios in which a hydraulic time series is used, the first hydraulic timestep marks the beginning of the hydraulic input. It has no bearing on other simulations within LifeSim. For example, warnings and evacuations could begin prior to the first hydraulic timestep, or well after. The first hydraulic timestep marks the first instance in which the hydraulic inputs interact with other model inputs (i.e., structure inventory) and subsequently leads to consequences. When importing from HEC-RAS, as described in the dam and levee application chapters, the first hydraulic timestep will automatically populate. When importing from grids or summary grids, however, the user must define the First Hydraulic Timestep -field shown in . This value can be found in the hydraulic model. +field shown in , which can be found in the hydraulic model.
-The user must also define the hazard occurrence time, as is the case when importing from HEC-RAS. See either the dam and levee application chapters or - Section 5.4 of the for a more detailed discussion on hazard occurrence. below shows an example graph demonstrating the hazard occurrence time in -terms of a downstream flood hydrograph. +The user must also define the Hazard Occurrence time, as is the case when importing from HEC-RAS. See either +Estimating Consequences for Levees and Floodwalls, Hydraulic Data, +Estimating Consequences for Dams, Hydraulic Data, or +LifeSim Technical Reference Manual - Hazard Occurrence Time for a more detailed discussion on hazard occurrence. below shows an example graph demonstrating the Hazard +Occurrence time in terms of a downstream flood hydrograph.
-The hydrograph, or the visual representation of the hydrograph, in the Import from Summary Grids window will have no impact on the -LifeSim calculations. (Note: The hazard occurrence time must be set correctly and will directly impact LifeSim calculations.) A rough - hydrograph must be loosely defined for LifeSim to accept the inputs. This can be achieved by simply creating a second row in the hydrograph table, -specifying a time later in the hydraulic simulation, and adding a value higher than zero as defined in the initial timestep. See -{"\n"} for reference. Again, this artificial hydrograph will not impact the software’s calculations. +The hydrograph, or its visual representation, in the Import from Summary Grids window will not impact the +LifeSim calculations. (_Note_: The Hazard Occurrence time must be set correctly and will directly impact LifeSim calculations.) A rough +hydrograph must be loosely defined for LifeSim to accept the inputs. This can be achieved by simply creating a second row in the hydrograph table, +specifying a time later in the hydraulic simulation, and adding a value greater than zero as defined in the initial timestep. See +{"\n"} for reference. Again, this artificial hydrograph will not impact the software's calculations. Note that unless a more realistic hydrograph can be defined using output from the original hydraulic model, the artificially defined hydrograph (like -that in ) cannot be used as visual representation of the model output. +that in ) cannot be used as a visual representation of the model output. -Repeat the above steps for each hydraulic scenario. shows a LifeSim study pane with all imported hydraulic -scenarios for the Clearwater dam study. +Repeat the above steps for each hydraulic scenario. shows a LifeSim study pane with all imported hydraulic +scenarios for the Clearwater Dam study.
-The remaining model inputs will follow the instructions of the or . Refer to these chapters for information on importing structure inventories, -emergency planning zones (EPZs), creating alternatives and simulations, and understanding your results. - - - -(Page intentionally left blank) +The remaining model inputs will follow the instructions in +Estimating Consequences for Levees and Floodwalls and +Estimating Consequences for Dams. Refer to these chapters for information on importing structure inventories, emergency planning zones (EPZs), creating alternatives and simulations, +and understanding your results. - \ No newline at end of file + diff --git a/docs/desktop-applications/lifesim/applications-guide/v1.0/11-appendix-acronyms.mdx b/docs/desktop-applications/lifesim/applications-guide/v1.0/11-appendix-acronyms.mdx new file mode 100644 index 000000000..0248cac07 --- /dev/null +++ b/docs/desktop-applications/lifesim/applications-guide/v1.0/11-appendix-acronyms.mdx @@ -0,0 +1,116 @@ +--- +title: 'Appendix A - Acronyms' +--- + +import Link from '@docusaurus/Link'; +import addBaseUrl from '@docusaurus/useBaseUrl'; +import CitationFootnote from '@site/src/components/CitationFootnote'; +import NavContainer from '@site/src/components/NavContainer'; +import TableAcronyms from '@site/src/components/TableAcronyms'; +import VersionSelector from '@site/src/components/VersionSelector'; + + + +# Appendix A - Acronyms + + + + diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/00-document-info.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/00-document-info.mdx index cb64f8dd3..64f6ed436 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/00-document-info.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/00-document-info.mdx @@ -5,7 +5,7 @@ reportType: Computer Program Document reportTitle: LifeSim reportSubTitle: Technical Reference Manual reportAuthors: ['U.S. Army Corps of Engineers, Risk Management Center'] -reportAbstract: "The US Army Corps of Engineers (USACE) Risk Manaagement Center (RMC)'s Life Loss Estimation (LifeSim) software is a spatially-distributed dynamic simulation modeling system for estimating potential life loss and economic damages from natural and dam and levee failure floods. The main purpose of the LifeSim software is to help USACE study teams better understand the consequences of a flood event. Although flooding can lead to many types of severe consequences, the primary objective of the USACE Dam and Levee Safety Program is to manage risk to the public who rely on those structures to keep them reasonably safe from flooding." +reportAbstract: "The US Army Corps of Engineers (USACE) Risk Management Center (RMC)'s Life Loss Estimation (LifeSim) software is a spatially-distributed dynamic simulation modeling system for estimating potential life loss and economic damages from natural and dam and levee failure floods. The main purpose of the LifeSim software is to help USACE study teams better understand the consequences of a flood event. Although flooding can lead to many types of severe consequences, the primary objective of the USACE Dam and Levee Safety Program is to manage risk to the public who rely on those structures to keep them reasonably safe from flooding." reportSubjectTerms: [ 'LifeSim', diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/01-preface.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/01-preface.mdx index e7309ea61..84b08bdc0 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/01-preface.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/01-preface.mdx @@ -28,7 +28,7 @@ The U.S. Army Corps of Engineers (USACE) Life Loss Estimation (LifeSim) software resulting from a single flood scenario. The LifeSim software is developed at RMC, which is a division of the USACE Institute for Water Resources (IWR). The first version of LifeSim (Version 1.0) was -released in 2017. This Technical Reference Manual was tailored for Version 2.0 of the LifeSim software. +released in 2017. This Technical Reference Manual is tailored for Version 2.0 of the LifeSim software. Woodrow Fields leads the LifeSim development team. Stephanie Owen and Brennan Beam provided review and support throughout the development of this manual in 2020. Jason Needham and William Lehman contributed significantly to all versions of LifeSim. Lea Adams was the Chief of the Water Resources Systems Division, diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/03-introduction-and-overview-of-lifesim.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/03-introduction-and-overview-of-lifesim.mdx index e549e2dba..3287cd43e 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/03-introduction-and-overview-of-lifesim.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/03-introduction-and-overview-of-lifesim.mdx @@ -113,7 +113,7 @@ LifeSim simulates the interaction of these processes. For example: - During evacuation, interaction of people with the hazard is governed by time series of depth at structures and along roads. - The loss of shelter study component provides progressive damage assessment throughout the flood event. -LifeSim uses agent-based modeling. An “agent” is an evacuating vehicle or a pedestrian group. Group size is a parameter defined at the occupancy type +LifeSim uses agent-based modeling. An "agent" is an evacuating vehicle or a pedestrian group. Group size is a parameter defined at the occupancy type level (e.g., a school might be a group size of 30 to simulate school buses). During an evacuation, agents are interacting with the roads, other vehicles, and the incoming hazard. After the warning and evacuation process has been simulated, LifeSim calculates lethality for those people that are exposed and direct damages due to the hazard. Agent-based modeling allows LifeSim to: @@ -268,7 +268,7 @@ Given information about the hazard, PAR, structures, and road network, LifeSim d { title: ( <> - People who evacuated and reached their destination safely are assigned to “none.” + People who evacuated and reached their destination safely are assigned to "none." ), }, diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/04-hydraulic-data.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/04-hydraulic-data.mdx index 022c03f6f..2d4756441 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/04-hydraulic-data.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/04-hydraulic-data.mdx @@ -30,7 +30,7 @@ import VersionSelector from "@site/src/components/VersionSelector"; Hydraulic data are critical components of computing damages and life loss in LifeSim. Hydraulic data sources in LifeSim are generally model output from hydraulic modeling systems, such as HEC-RAS (Hydrologic Engineering Center’s River -Analysis System software v.5.0 or later) or FLO-2D (FLO-2D +Analysis System software v.5.0 or later) or FLO-2D (FLO-2D Software, Inc., 2022) . For detailed life loss assessments, an unsteady hydraulic modeling approach (one-dimensional or two-dimensional, as appropriate) is used to develop the inundation boundaries, arrival times, depths, and velocities necessary to estimate potential loss of life. LifeSim interpolates the depths and velocities at roads and structures between hydraulic time steps. A shorter hydraulic time step will generally provide more @@ -232,7 +232,7 @@ extend beyond channel limits and damage items they should not. ### Considerations for Multiple Hazard Events When assigning the hazard occurrence time during a failure in normal weather conditions, the point is straightforward. However, if a flood is occurring – -leading to failure – there may be confusion of when the “hazard” occurs. Discretion and flexibility are given to the user. However, the main +leading to failure – there may be confusion of when the "hazard" occurs. Discretion and flexibility are given to the user. However, the main consideration is that the time selected and warning times should be internally consistent. Often with large flood events, an evacuation is called based on expected flows out of channel or overtopping downstream levees. A failure of the facility under study adds a larger flood wave on top of the expected one. Historically, this second failure flood wave triggers a second round of evacuation notices to a larger area (a.k.a. double warning). Users diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/05-structure-inventory-and-associated-properties.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/05-structure-inventory-and-associated-properties.mdx index 979355b63..89cdb421c 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/05-structure-inventory-and-associated-properties.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/05-structure-inventory-and-associated-properties.mdx @@ -357,8 +357,8 @@ The evacuating group size, or number of people per evacuating vehicle, must be d three people per vehicle for all occupancy types except RES5 (institutional dormitories). The default is based on a family evacuating together in a standard automobile. If the warning is issued during daytime hours, most people would initially leave commercial and industrial structures (places of employment) alone in their vehicles resulting in a much smaller average group size. However, after leaving the workplace, people would likely convene -with their family at home and evacuate as a group, resulting in an evacuation group size closer to three. These additional stops, known as “trip -chaining,” are not included in LifeSim simulations. In LifeSim, people travel directly from their structure of origin towards their chosen destination. +with their family at home and evacuate as a group, resulting in an evacuation group size closer to three. These additional stops, known as "trip +chaining," are not included in LifeSim simulations. In LifeSim, people travel directly from their structure of origin towards their chosen destination. For RES5 structures, the evacuating group size default is 48 people per vehicle. This is based on historical evacuations of these types of structures, which typically use buses to move large numbers of people. @@ -488,7 +488,7 @@ five construction types are as follows: Wood-Anchored: Typical wood frame structure with load bearing walls that is bolted or anchored to the foundation and therefore less susceptible to floating off the foundation. Heavy construction structures made of heavy materials such as large timbers, homes with a brick façade, and homes with 2 or more stories are also more likely to resist floating and therefore may also be considered - “anchored.” + "anchored." ), }, @@ -543,9 +543,9 @@ a shapefile. caption="Stability criteria assignment with default stability criteria." /> -The user may also edit the default rule list by clicking on the “Create Rule” button as shown in . Here, the user +The user may also edit the default rule list by clicking on the "Create Rule" button as shown in . Here, the user has flexibility to set a rule based on any of the structure attributes within the inventory and select whether that rule should go into effect if -“Any” or “All” of the criteria are satisfied. The rules are a “rule stack” so the order in which the criteria are defined is important. Meaning, if +"Any" or "All" of the criteria are satisfied. The rules are a "rule stack" so the order in which the criteria are defined is important. Meaning, if two rules could be applied to the same structure, the higher rule will dominate. The user should also take care to make sure all structures are covered by at least one rule or stability criteria will not be assigned. @@ -591,7 +591,7 @@ on the functions defined in 22.6% (over 65), and 5.1% (under 65). This information comes from the American Community Survey (ACS) 5-Year Estimates . -The U.S. Census Bureau tracks six types of disabilities in the “non-institutionalized population:” +The U.S. Census Bureau tracks six types of disabilities in the "non-institutionalized population:" - Vision difficulty - Hearing difficulty @@ -773,7 +773,7 @@ The U.S. Census Bureau tracks six types of disabilities in the “non-institutio The U.S. Census Bureau also defines a generic disability status that varies by age (see here for definitions). The ambulatory difficulty survey question -asked respondents if they had “serious difficulty walking or climbing stairs.” +asked respondents if they had "serious difficulty walking or climbing stairs." Using the non-institutionalized population as the basis for the percentage creates some limitations to the data. It can be applied to a community at-large but is not valid for institutional structures, especially those dedicated to caring for people with disabilities (e.g., hospitals, nursing @@ -814,7 +814,7 @@ but only 56% of the swimmer group reported they can perform the five basic water abilities. Based on those results, only 45% of all people can perform basic water competencies. Both surveys also noted significant demographic trends in swimming ability for age, race, and gender. -The Red Cross “water competencies” are focused on the ability to self-rescue. These critical water safety skills are the ability to, in this order: +The Red Cross "water competencies" are focused on the ability to self-rescue. These critical water safety skills are the ability to, in this order: step or jump into water over one's head; return to the surface and float or tread water for one minute; turn around in a full circle and find an exit; swim 25 yards to the exit; and exit from the water. In a pool, this must be possible without using the ladder. @@ -1327,7 +1327,7 @@ different property values used in LifeSim are listed in -Three “entities” are involved in the warning and evacuation timeline: +Three "entities" are involved in the warning and evacuation timeline: (Sorensen et al., 2018) . @@ -523,8 +523,8 @@ factors noted above. Had the sheriff not overheard the conversation, the delay m ### Definition of Warning Issuance Delay -As used in this context, a “warning” is a message intended to instruct recipients to take a protective action – that is, to evacuate. It is the first -public alert of an evacuation order. The term “warning” also does not include any messages about the hazard that may have been issued prior to an +As used in this context, a "warning" is a message intended to instruct recipients to take a protective action – that is, to evacuate. It is the first +public alert of an evacuation order. The term "warning" also does not include any messages about the hazard that may have been issued prior to an evacuation order. The warning issuance delay, shown in , is the time that elapses from the moment the agency issuing the warning @@ -718,8 +718,8 @@ terrorist attacks. Using data from historical cases and models developed during previous research projects, the researchers developed a total of four first alert diffusion delay functions, shown in . -These functions serve as the default first alert diffusion delay functions in LifeSim, with function A corresponding to the “Fast” first alert -function and curve D corresponding to the “Slow” first alert function and so on. The researchers also adjusted the functions to account for time of +These functions serve as the default first alert diffusion delay functions in LifeSim, with function A corresponding to the "Fast" first alert +function and curve D corresponding to the "Slow" first alert function and so on. The researchers also adjusted the functions to account for time of day, resulting in a total of eight first alert diffusion functions. More information on first alert diffusion delay functions, how they were developed, and how they were incorporated into LifeSim may be found in Mileti and Sorensen (2017b) . If minimal information is @@ -770,8 +770,8 @@ The maximum mobilization rate is not a user-defined parameter but is represented everyone will evacuate even if ordered to and given enough time. Emergency managers are usually aware of this population and may be able to provide an estimate. Effective messaging is the best way to reduce the number of people remaining behind. -In LifeSim, the start of protective action means “starting to move away from the area of potential flooding towards emergency shelters or other safe -destinations” (Aboelata and Bowles, 2005) . The percentage of population that takes protective action over time is represented by a PAI +In LifeSim, the start of protective action means "starting to move away from the area of potential flooding towards emergency shelters or other safe +destinations" (Aboelata and Bowles, 2005) . The percentage of population that takes protective action over time is represented by a PAI function (). The PAI delay function is entered in LifeSim as an empirical curve function. The curve function can have uncertainty defined at each ordinate. @@ -804,7 +804,7 @@ act. between low and high is assumed with the full range of uncertainty of both. Initial perception refers to the perception of the people receiving the first alert. It is a function of location of the population relative to the -hazard. If, for example, the population lives within sight of the dam or river, the initial perception of dam failure is “high.” +hazard. If, for example, the population lives within sight of the dam or river, the initial perception of dam failure is "high." Initial perception can also be influenced by recent events or by extremely effective and pervasive public awareness campaigns. Suggested definitions @@ -862,8 +862,8 @@ coverage of the situation for several days and to avoid roadway congestion if an - The analyst may find it useful to adopt a zoned approach when defining perception for PAI delay functions. This is because people’s perception of their risk tends to get reduced with distance from the hazard source. An example of a levee breach scenario is -shown in . The terminology of “likely to impact” and “unlikely to impact” was updated to “high” -and “low,” respectively, in LifeSim version 2.1 and later. +shown in . The terminology of "likely to impact" and "unlikely to impact" was updated to "high" +and "low," respectively, in LifeSim version 2.1 and later.
. +occurs if jam density is decreased, in which case both the forming and recovery speeds will increase" (TRB, 2016) . #### Break Point Density @@ -423,7 +423,7 @@ the downstream edge of the roadway embankment. More information on factors that in Appendix G. When the flooding conditions on a road segment exceed the stability criteria for a vehicle, only the vehicle that loses stability is considered to be -“trapped.” The trapped evacuees in the caught vehicle are assigned to the least favorable flood zone based on all combinations of flood depth and +"trapped." The trapped evacuees in the caught vehicle are assigned to the least favorable flood zone based on all combinations of flood depth and velocity on the road segment occurring during the simulation period and the stability criteria for their evacuation mode. The default functions in LifeSim for low- and high-clearance vehicle stability are shown in (meters) and (feet). For more @@ -721,8 +721,8 @@ other apps that provide drivers real-time traveler information. Anecdotal evidence and research suggest that many people are willing to drive through flooded roads. In many flood scenarios, vehicles washed off the road are a significant portion of fatalities. The decision-making process to enter a flooded road is complicated and not well understood. In LifeSim, -the maximum depth at which each individual vehicle is willing to ford a road is known as the “fording depth” and is assigned based on a probability -density function known as the “willingness to enter flooded roads” function. +the maximum depth at which each individual vehicle is willing to ford a road is known as the "fording depth" and is assigned based on a probability +density function known as the "willingness to enter flooded roads" function. For each LifeSim iteration, a vehicle is assigned a random number from 0.0 to 1.0. During an evacuation, that vehicle samples either the high or low-clearance willingness to enter function based on the vehicle type. The corresponding depth defines the fording depth for that single vehicle @@ -869,7 +869,7 @@ defining willingness to enter and change the probability distribution ( -The lower cut off (truncation) of both tails is known as the “puddle depth,” which defines the minimum possible fording depth for all vehicles using +The lower cut off (truncation) of both tails is known as the "puddle depth," which defines the minimum possible fording depth for all vehicles using the function. If a vehicle encounters a flooded road below the puddle depth, it can and will ford the road safely. Modifications to the default functions could be made by a user with a better understanding of the key factors identified in these studies. Driving a diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/10-fatality-rates.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/10-fatality-rates.mdx index 19490bfad..748c60322 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/10-fatality-rates.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/10-fatality-rates.mdx @@ -197,7 +197,7 @@ and widespread shallow flooding. Documented cases of low hazard fatalities were populations are found in low hazard circumstances. shows the low hazard fatality rate function zoomed into the region with higher fatality rates. -Typical low hazard fatalities include people who evacuated (or “fled”) through shallow water in their cars or on foot, people who were in +Typical low hazard fatalities include people who evacuated (or "fled") through shallow water in their cars or on foot, people who were in partially-flooded structures and experienced an unfortunate circumstance (e.g., slipped, electrocuted through water), and people who willingly entered the flooded area to retrieve belongings or rescue others. diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/11-computational-procedure.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/11-computational-procedure.mdx index 640885034..dcd1c7aa2 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/11-computational-procedure.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/11-computational-procedure.mdx @@ -163,8 +163,8 @@ fastest path to a destination defined for each node. /> During the simulation, the starting road network is updated with traffic density and flood information. Vehicles traveling the road network may -encounter traffic or flooding, in which case they would potentially re-route their course (more details in Evacuating with Traffic Simulation -). For example, if a traffic jam is on the segment from node 2 to 1, a re-route may select a diversion through node 3 as the fastest way to reach the +encounter traffic or flooding, in which case they would potentially re-route their course (more details in Evacuating with Traffic Simulation). +For example, if a traffic jam is on the segment from node 2 to 1, a re-route may select a diversion through node 3 as the fastest way to reach the destination. ### Preprocessing the Structure Inventory @@ -240,8 +240,7 @@ where: The first alert diffusion delay and PAI delay data are sampled using curve sampling techniques to produce population delay functions for each EPZ. The sampled first alert and PAI functions refer to a percentage of the population warned (or mobilized) over time. Since LifeSim is an agent-based model, -the population characteristics must be distributed down to the agent level as described in Evacuating Groups and Their Attributes -. +the population characteristics must be distributed down to the agent level as described in Evacuating Groups and Their Attributes. ### Population in Structures @@ -308,8 +307,8 @@ Four factors that define the warning issuance time in LifeSim are: ### Evacuating Groups and Their Attributes With the starting population known, it can be broken up into evacuating groups. An evacuating group travels together regardless of mode of -transportation (vehicle or pedestrian). The user specifies the number of people in each evacuating group by occupancy type (see Evacuating Group Size -). Groups are partitioned from among the building's population by group size with any remainder comprising the last group. Evacuating groups may be +transportation (vehicle or pedestrian). The user specifies the number of people in each evacuating group by occupancy type (see Evacuating Group Size). +Groups are partitioned from among the building's population by group size with any remainder comprising the last group. Evacuating groups may be less than the group size, but not larger. An evacuating group stores information such as: @@ -471,7 +470,7 @@ continues with an updated speed based on the next segment's CFCC attribute (or a time in the time step is calculated and the process repeats on each segment traveled until the full time step is used. Vehicles travel the road network to their intended destination at the free-flow speed unless they are impacted by something to slow them down or they -decide to re-route. A vehicle may also become “caught,” in which case it stops moving and remains in its current location. +decide to re-route. A vehicle may also become "caught," in which case it stops moving and remains in its current location. The conditions that may divert, catch, or slow a vehicle are: @@ -481,7 +480,7 @@ The conditions that may divert, catch, or slow a vehicle are: // STEP 1 title: ( <> - Traffic congestion: (see + Traffic congestion: (see{' '} Evacuation Parameters Defined by Alternative {' '} @@ -494,7 +493,7 @@ The conditions that may divert, catch, or slow a vehicle are: <> As traffic density on a road increases, vehicle speed decreases according to Greenshields' two stage formula ( and ) until it reaches the minimum - “stop-and-go speed,” resulting in a traffic jam (traffic jam = vehicles ahead moving at stop-and-go speed). The traffic density is + "stop-and-go speed," resulting in a traffic jam (traffic jam = vehicles ahead moving at stop-and-go speed). The traffic density is calculated once per time step and includes all the vehicles on the road between a vehicle's starting position and the look-ahead distance. Each road segment is broken into sub-segment bins where the number of vehicles is tracked. Bin lengths are not adjustable but calculated to reduce long roads into realistic road lengths where cars can be considered to impact each other's speeds. Before density @@ -598,7 +597,7 @@ Examples of vehicles in conditions from **(2) flood water** and **(3) a vehicle road. Unfortunately, Vehicle 2 has a low vehicle stability threshold and loses stability on the flooded road (DSTAB < DR, recognizing that the stability function also includes velocity considerations). - **Panel C**: a third vehicle approaches, also willing to enter (DWE > DR) and with stability criteria high enough to navigate the flooded road successfully - (DSTAB > DR). However, the road is “blocked” by caught Vehicle 2, so Vehicle 3 does not enter the flooded road and is caught in + (DSTAB > DR). However, the road is "blocked" by caught Vehicle 2, so Vehicle 3 does not enter the flooded road and is caught in line behind Vehicle 1. Vehicle 1 and 3 represent the beginning of a traffic backup on this road, assuming the spillback function is turned on.
Preprocessing - Preparation of Alternative Data -and Preprocessing for Each Iteration -). The structure stability criteria are tested against the time series of depths and velocities at the structure to determine whether the structure +and Preprocessing for Each Iteration). +The structure stability criteria are tested against the time series of depths and velocities at the structure to determine whether the structure collapses at any point during the simulation. This process only determines total collapse of a structure. Case histories have identified instances of partial collapse where water may remove a wall and reduce the protection provided by the shelter. If the stability function is exceeded, all people are placed in the high hazard zone and no vertical evacuation is computed. @@ -718,8 +717,8 @@ to Roof or Attic) is sampled to determine further vertical movement then roof (Fraction to Roof vs Attic) to determine final location. -Once everyone's final position is known, the structure submergence criteria are applied (as discussed in Submergence Criteria -). The submergence criteria represent the threshold depth between high and low hazard zones. If the interior depth exceeds the threshold, the occupant +Once everyone's final position is known, the structure submergence criteria are applied (as discussed in Submergence Criteria). +The submergence criteria represent the threshold depth between high and low hazard zones. If the interior depth exceeds the threshold, the occupant is placed in the high hazard zone, and all others are in the low hazard zone. A special case exists for structures with zero stories. This represents a place where people are gathered outdoors – perhaps a park, campground, or diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/12-consequences.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/12-consequences.mdx index 90e4e78e9..52f3632ec 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/12-consequences.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/12-consequences.mdx @@ -113,7 +113,7 @@ where To determine the percent direct damage to buildings, contents, and vehicles, both the depth at the structure and occupancy type of the structure need to be known. The depth is considered the maximum depth at the structure minus the foundation height. The occupancy type is specified as part of the structure inventory and is associated with three individual depth-percent damage relationships, one each for the building, contents, and vehicles. -There is also the option to define a fourth depth-percent damage function for an additional “other” category. Therefore, the depth at the structure +There is also the option to define a fourth depth-percent damage function for an additional "other" category. Therefore, the depth at the structure can be used to determine the percentage that the three components of the structure are damaged. This percent damage can then be multiplied by the building, contents, and vehicles values (specified in the structure inventory) to determine the total direct damage that occurs at and within a structure. diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/15-terms-and-conditions-of-use.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/15-terms-and-conditions-of-use.mdx index 4a722bdfc..0457cc5ee 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/15-terms-and-conditions-of-use.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/15-terms-and-conditions-of-use.mdx @@ -55,7 +55,7 @@ Hazus-MH is a registered trademark of FEMA (U.S. Department of Homeland Security Use of the software described by this document is controlled by certain terms and conditions. The user must acknowledge and agree to be bound by the terms and conditions of usage before the software can be installed or used. -The United States Government, U.S. Army Corps of Engineers, Risk Management Center (“RMC”) grants to the user the rights to install LifeSim Life Loss +The United States Government, U.S. Army Corps of Engineers, Risk Management Center ("RMC") grants to the user the rights to install LifeSim Life Loss Estimation (LifeSim) "the Software" (either from a disk copy obtained from RMC, a distributor, or another user or by downloading it from a network) and to use, copy and/or distribute copies of the Software to other users, subject to the following Terms and Conditions for Use: @@ -67,8 +67,8 @@ RMC is solely responsible for the content of the Software. The Software may not reverse engineered. The user is solely responsible for the content, interactions, and effects of any and all amendments, if present, whether they be extension modules, language resource bundles, scripts, or any other amendment. -The name “LifeSim” must not be used to endorse or promote products derived from the Software. Products derived from the Software may not be called -“LifeSim” nor may any part of the “LifeSim” name appear within the name of derived products. +The name "LifeSim" must not be used to endorse or promote products derived from the Software. Products derived from the Software may not be called +"LifeSim" nor may any part of the "LifeSim" name appear within the name of derived products. No part of this Terms and Conditions for Use may be modified, deleted, or obliterated from the Software. diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/18-appendix-c-excerpt-from-first-alert-or-warning-diffusion-time.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/18-appendix-c-excerpt-from-first-alert-or-warning-diffusion-time.mdx index 276044bb9..f16d89456 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/18-appendix-c-excerpt-from-first-alert-or-warning-diffusion-time.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/18-appendix-c-excerpt-from-first-alert-or-warning-diffusion-time.mdx @@ -578,7 +578,7 @@ between 14,000 and 16,000 residents within a half mile of the scene was issued. Sunday, April 12, 1987. Approximately 25 people were treated for eye and throat irritation at area hospitals, and three people were hospitalized during the course of the accident. -On Wednesday, May 6, 1987 at 4:10 AM, 21 of the 27 “empty” tank cars carrying product residues, including propane, chlorine, caustic soda, carbon +On Wednesday, May 6, 1987 at 4:10 AM, 21 of the 27 "empty" tank cars carrying product residues, including propane, chlorine, caustic soda, carbon disulfide, methyl chloride, chloroform, and isobutene derailed in Confluence, Pennsylvania. Because tank cars carrying residue can haul up to 3% of their full load, emergency officials had no way to determine the exact total amount of products remaining in the cars. Upon examination of the train's manifest, emergency management officials initiated a precautionary evacuation of the 986 residents. A 3-minute non-stop siren blast was sounded, @@ -695,7 +695,7 @@ event. Serious damage was sustained to buildings along the creek and the creek p The National Weather Service issued the first notification of a flash flood for Boulder. It was a Wireless Emergency Alert (WEA message) that was distributed over mobile communication devices to both the city and county and to the public at 6:36 PM on September 11, 2013. The message stated: -“Flash Flood Warning this area until 9:30 PM MDT. Avoid flood areas. Check local media. -NWS." A study of the diffusion of the first WEA message was +"Flash Flood Warning this area until 9:30 PM MDT. Avoid flood areas. Check local media. -NWS." A study of the diffusion of the first WEA message was conducted (Bean, et al. 2014) , and presents the Boulder first alert diffusion curve normalized for 100% of the population. diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/19-appendix-d-excerpt-from-protective-action-initiation-time-estimation.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/19-appendix-d-excerpt-from-protective-action-initiation-time-estimation.mdx index fd687a864..1bd0df376 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/19-appendix-d-excerpt-from-protective-action-initiation-time-estimation.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/19-appendix-d-excerpt-from-protective-action-initiation-time-estimation.mdx @@ -47,7 +47,7 @@ between 14,000 and 16,000 residents within a half mile of the scene was issued. Sunday, April 12, 1987. Approximately 25 people were treated for eye and throat irritation at area hospitals, and three people were hospitalized during the course of the accident. -On Wednesday, May 6, 1987 at 4:10 AM, 21 of the 27 “empty” tank cars carrying product residues, including propane, chlorine, caustic soda, carbon +On Wednesday, May 6, 1987 at 4:10 AM, 21 of the 27 "empty" tank cars carrying product residues, including propane, chlorine, caustic soda, carbon disulfide, methyl chloride, chloroform, and isobutene derailed in Confluence, Pennsylvania. Because tank cars carrying residue can haul up to 3% of their full load, emergency officials had no way to determine the exact total amount of products remaining in the cars. Upon examination of the train's manifest, emergency management officials initiated a precautionary evacuation of the 986 residents. A 3-minute non-stop siren blast was sounded, diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/21-appendix-f-engineered-construction-structural-stability.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/21-appendix-f-engineered-construction-structural-stability.mdx index c3b572b7d..0eaae3e00 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/21-appendix-f-engineered-construction-structural-stability.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/21-appendix-f-engineered-construction-structural-stability.mdx @@ -51,7 +51,7 @@ Canadian wood-frame homes to an array of 2,500 flood condition combinations. They evaluated 3 failure mechanisms including fill, collapse, and float both individually and in combination. Each failure mechanism was evaluated by analyzing the load conditions at the structure and the resistance conditions of the structure. Structural resistance was determined using the dimensions of the structure along with the strength of individual building components, and each structure was -assumed to be anchored. This model applicably “describes whether a typical wood-frame building will be safe for occupants or whether it will fail…” +assumed to be anchored. This model applicably "describes whether a typical wood-frame building will be safe for occupants or whether it will fail…" The study resulted in functions for two scenarios – the best and worst case building response. The worst case scenario is representative of structures with high external loads and low structural resistance whereas the best case scenario is representative of structures with low external loads and @@ -116,11 +116,11 @@ The default stability criteria for wood-anchored construction is shown in . While the 2009 document does not provide updated stability criteria, it does suggest that structural resistance @@ -209,9 +209,9 @@ conservative. As a result, they proposed new criteria based on a dimensionless f Dale et al. (2004) then used the work of Black and Sangrey et al. to adapt the Black functions to heavier and larger Australian construction. For example, the lightest structure in Dale et al.'s study was a timber clad, steel-roofed structure weighing nearly 19,000 kilograms. Dale et al. -noted that Sangrey et al. changed the hydraulic coefficient from 1 to 2 because “Black applied the Bernoulli equation (incorrectly) in calculating a +noted that Sangrey et al. changed the hydraulic coefficient from 1 to 2 because "Black applied the Bernoulli equation (incorrectly) in calculating a pressure rather than a drag force. The Bernoulli equation does not allow for a drag coefficient and the horizontal forces therefore differ by a factor - of two.” Dale et al. then moved forward with using a drag coefficient of 2 as well and evaluated 3 different types of structures: brick veneer + of two." Dale et al. then moved forward with using a drag coefficient of 2 as well and evaluated 3 different types of structures: brick veneer walls, fiber cement cladding, and timber cladding. The equation used for horizontal force on a structure due to flowing water is: diff --git a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/22-appendix-g-research-on-vehicle-stability-and-driver-behavior.mdx b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/22-appendix-g-research-on-vehicle-stability-and-driver-behavior.mdx index 7bb78a1fc..fd5a03c1a 100644 --- a/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/22-appendix-g-research-on-vehicle-stability-and-driver-behavior.mdx +++ b/docs/desktop-applications/lifesim/technical-reference-manual/v1.0/22-appendix-g-research-on-vehicle-stability-and-driver-behavior.mdx @@ -113,7 +113,7 @@ Some of the research suggests factors that can increase a person's likelihood to Gissing and Haynes (Gissing et al., 2016) conducted the only known research to observe driver behavior at a flooded road. The road was flooded about -10–30 centimeters (cm) and moving “slowly.” They observed 154 drivers and noted gender, relative age, and vehicle type as they were able but not in +10–30 centimeters (cm) and moving "slowly." They observed 154 drivers and noted gender, relative age, and vehicle type as they were able but not in all cases. Some drivers were influenced by the actions of other drivers either to enter or turn around. Four-wheel drive (4WD) vehicles were more willing to enter a flooded roadway than smaller vehicles. Males were also more likely than females to drive into the water. @@ -121,7 +121,7 @@ Overall, 84% of the drivers entered the flooded road. Segregating the data into respectively), trends emerge that people in larger vehicles are more willing to enter a flooded road. Drobot, Benight, and Gruntfest (Drobot et al., 2007) surveyed about 900 people by mail in Denver, Colorado and Austin, Texas. They -asked people to report their answers on a 4-point scale from “strongly agree” to “strongly disagree.” Three questions were posed after the following +asked people to report their answers on a 4-point scale from "strongly agree" to "strongly disagree." Three questions were posed after the following scenario was presented: > _You are driving a mid-sized car immediately after a severe thunderstorm in your city. Ahead of you approximately 18 inches (46 cm) of water covers the road and vehicles ahead are stopped._ @@ -143,7 +143,7 @@ These two points were deemed to be low estimates based on these factors: to follow. - The depth of flooding was given by the survey. Anecdotal evidence suggests that people are not good judges of hazardous conditions, especially if the water is cloudy or has significant velocity. -- Results indicate that if people were in a high clearance vehicle instead of the “mid-sized car,” they would be more likely to enter the road. +- Results indicate that if people were in a high clearance vehicle instead of the "mid-sized car," they would be more likely to enter the road. In another study (Pearson and Hamilton, 2014 and Hamilton et al., 2016 ), a scenario prompt was adopted @@ -155,7 +155,7 @@ For the 20 cm scenario, a mean of 3.6 indicated that, on average, 43% of people the range is 0 to 100% for responses 1 to 7, respectively. It is generally not appropriate to calculate a mean of Likert scale responses or to convert that mean to a representative percentage of respondents. A -scale of subjective responses (“strongly agree” to “strongly disagree”) is not likely to be accurately represented by a continuous number line. +scale of subjective responses ("strongly agree" to "strongly disagree") is not likely to be accurately represented by a continuous number line. Unfortunately, as seen from this discussion, very little information on this subject was available, so the points were developed and added to the plots to help inform the final curve development. However, they should be considered in their proper context. diff --git a/docs/desktop-applications/lifesim/users-guide/v1.0/04-lifesim-interface.mdx b/docs/desktop-applications/lifesim/users-guide/v1.0/04-lifesim-interface.mdx index f4774d258..dde76abb6 100644 --- a/docs/desktop-applications/lifesim/users-guide/v1.0/04-lifesim-interface.mdx +++ b/docs/desktop-applications/lifesim/users-guide/v1.0/04-lifesim-interface.mdx @@ -1142,7 +1142,7 @@ Figures associated with General Plotting Tools, mentioned in tool or right clicking on a plot +{"\n"} tool or right-clicking on a plot and selecting an edit option, from specific plot windows. The *Plot Properties* dialog will open and allow the user to configure multiple display diff --git a/docs/desktop-applications/lifesim/users-guide/v1.0/05-hydraulic-data.mdx b/docs/desktop-applications/lifesim/users-guide/v1.0/05-hydraulic-data.mdx index 7e6d11dd6..c01e15cd1 100644 --- a/docs/desktop-applications/lifesim/users-guide/v1.0/05-hydraulic-data.mdx +++ b/docs/desktop-applications/lifesim/users-guide/v1.0/05-hydraulic-data.mdx @@ -25,7 +25,7 @@ import VersionSelector from "@site/src/components/VersionSelector"; Hydraulic data is a critical component to computing life loss in LifeSim. Hydraulic data sources in LifeSim generally come from a two-dimensional hydraulic model, such as HEC-RAS (Hydrologic Engineering Center's [HEC] River Analysis System [RAS] software) -(HEC, 2024) , FLO-2D (FLO-2D Software, +(HEC, 2026) , FLO-2D (FLO-2D Software, Inc., Nutrioso, AZ) (FLO-2D, 2022) , or MIKE 21 (Danish Hydraulic Institute [DHI], Denmark) (DHI, 2018) . New to LifeSim Version 2.0, hydraulic data can also be imported from USACE Engineer Research and Development Center's (ERDC) Adaptive Hydraulics Model (AdH) system (ERDC, 2024) . Also new to LifeSim 2.0 is the diff --git a/docs/desktop-applications/lifesim/users-guide/v1.0/06-structure-inventories.mdx b/docs/desktop-applications/lifesim/users-guide/v1.0/06-structure-inventories.mdx index dc5e2eca2..392e009c1 100644 --- a/docs/desktop-applications/lifesim/users-guide/v1.0/06-structure-inventories.mdx +++ b/docs/desktop-applications/lifesim/users-guide/v1.0/06-structure-inventories.mdx @@ -1521,7 +1521,7 @@ The button functions are listed: Stability Curve Editor (), select a stability criteria from the lefthand list of names. Click Copy Selected Stability Function, and the Name of New Stability Criteria Threshold dialog box () opens. By - default, the selected stability criteria name is entered in the Name box and appended with “_Copy”. Keep + default, the selected stability criteria name is entered in the Name box and appended with "_Copy". Keep the default name or enter a new name in the Name box. Click OK, and the Name of New Stability Criteria Threshold dialog box closes. The Building Stability Curve Editor () then displays the copied stability criteria. @@ -1751,7 +1751,7 @@ stability criteria from the lefthand list of stability criteria names. Click the Copy button. The Name of New Stability Criteria Threshold dialog box opens. By default, the selected stability criteria name is entered in the Name box -and appended with “_Copy” (). Keep the default name or enter a new name in the Name box. +and appended with "_Copy" (). Keep the default name or enter a new name in the Name box. Click OK. The Name of New Stability Criteria Threshold dialog box closes. The Building Stability Curve Editor () displays the copied stability criteria. diff --git a/docs/desktop-applications/lifesim/users-guide/v1.0/07-emergency-planning-data.mdx b/docs/desktop-applications/lifesim/users-guide/v1.0/07-emergency-planning-data.mdx index 3d4a1c6c2..b77e64fa8 100644 --- a/docs/desktop-applications/lifesim/users-guide/v1.0/07-emergency-planning-data.mdx +++ b/docs/desktop-applications/lifesim/users-guide/v1.0/07-emergency-planning-data.mdx @@ -144,7 +144,7 @@ the right side of the plot window) and for customizing the plots. the dropdown menu (e.g., Well Prepared in ). For example, from the Warning Issuance Delay tab, click Copy, and the Name of New Warning Issuance Delay dialog box () opens. By default, the - selected warning and evacuation parameters name is entered in the Name box and appended with “_Copy". + selected warning and evacuation parameters name is entered in the Name box and appended with "_Copy". Keep the default name or enter a new name in the Name box. Click OK, the Name of New Warning Issuance Delay dialog box closes, and the new copied warning issuance delay, first alert relationship, or new protective action initiation relationship is created. diff --git a/docs/desktop-applications/lifesim/users-guide/v1.0/10-agricultural-data.mdx b/docs/desktop-applications/lifesim/users-guide/v1.0/10-agricultural-data.mdx index a3b43730b..574d0a90f 100644 --- a/docs/desktop-applications/lifesim/users-guide/v1.0/10-agricultural-data.mdx +++ b/docs/desktop-applications/lifesim/users-guide/v1.0/10-agricultural-data.mdx @@ -249,7 +249,7 @@ To create an agricultural grid from the NASS database from LifeSim:

NOTE: If the study area polygon only contains non-crop NASS categories (listed in ), then a message window opens stating - that “There are no valid crop ID’s in this gridded data.” Users must + that "There are no valid crop ID’s in this gridded data." Users must select a more suitable Study Area Polygon () before continuing.

Once the import is completed, from the LifeSim main window, from the Study Tree, under Agricultural @@ -350,7 +350,7 @@ To create an agricultural grid from a NASS CDL GeoTIFF file:

NOTE: If the study area polygon only contains non-crop NASS categories (listed in ), then a message window opens stating - that “There are no valid crop ID’s in this gridded data.” Users must + that "There are no valid crop ID’s in this gridded data." Users must select a GeoTiff file that contains valid NASS crop categories before continuing.

Once the import is completed, from the LifeSim main window, from the Study Tree, under Agricultural diff --git a/docs/desktop-applications/lifesim/users-guide/v1.0/11-ecam-data.mdx b/docs/desktop-applications/lifesim/users-guide/v1.0/11-ecam-data.mdx index 2e5f7a6bc..c02fe9446 100644 --- a/docs/desktop-applications/lifesim/users-guide/v1.0/11-ecam-data.mdx +++ b/docs/desktop-applications/lifesim/users-guide/v1.0/11-ecam-data.mdx @@ -49,7 +49,7 @@ contains all valid shapefiles added as map layers to the project; alternatively, {"\n"} button to browse to and open the appropriate shapefile. Following the county shapefile selection from the 5 Digit FIPS list, select the appropriate field name (e.g., GEOID) that contains the county’s 5-digit Federal Information Processing -Standard (FIPS) code (“SSCCC”, where SS is a two-digit state code +Standard (FIPS) code ("SSCCC", where SS is a two-digit state code and CCC is a three-digit county code). The county data table (located at the bottom of the ECAM tab) updates with the County FIPS and County Name attributes contained in the selected shapefile. Enter the Total Capital and Total Labor values for each county in the study area. diff --git a/docs/desktop-applications/lifesim/users-guide/v1.0/18-appendix-map-preferences.mdx b/docs/desktop-applications/lifesim/users-guide/v1.0/18-appendix-map-preferences.mdx index 89f7f1891..eac0a7101 100644 --- a/docs/desktop-applications/lifesim/users-guide/v1.0/18-appendix-map-preferences.mdx +++ b/docs/desktop-applications/lifesim/users-guide/v1.0/18-appendix-map-preferences.mdx @@ -3637,7 +3637,7 @@ items, calculate fields, and the selected column can be deleted. /> Other options, which become available in edit mode, are the standard cut/copy/paste functionality. Information in a selected cell can be edited or -replaced by typing directly into the selected cell. However, depending on the column type: String (e.g., “Masonry”), +replaced by typing directly into the selected cell. However, depending on the column type: String (e.g., "Masonry"), Integer (e.g., 10), or Double (e.g., 0.5); only like types can be entered. In other words, only integers can be entered into integer cell(s) or column(s), with the exception of string columns which can contain integers or doubles. To identify the type of data a column can contain, hover over the column header for the tooltip that contains the type (). @@ -4780,9 +4780,9 @@ items={[ <> When the expression for the new field is entered in the Expression box () and that entered expression is executed (Execute button is clicked), the new column is created, and the Field Type for the column is - set. Depending on the expression, the Field Type will be either: String (e.g., “Masonry”), Integer (e.g., + set. Depending on the expression, the Field Type will be either: String (e.g., "Masonry"), Integer (e.g., 10), or Double (e.g., 0.5). Furthermore, the total number of characters entered in - the Expression box will set the character limit for the new column (e.g., “Masonry” will set + the Expression box will set the character limit for the new column (e.g., "Masonry" will set the character limit for the new column to 7 characters).

NOTE: When creating a new attribute field that is a string field (e.g., text, symbols, numbers, or any sequence of characters), diff --git a/docs/desktop-applications/lifesim/validation-studies/v1.0/02-brumadinho.mdx b/docs/desktop-applications/lifesim/validation-studies/v1.0/02-brumadinho.mdx index 8440806f5..646989647 100644 --- a/docs/desktop-applications/lifesim/validation-studies/v1.0/02-brumadinho.mdx +++ b/docs/desktop-applications/lifesim/validation-studies/v1.0/02-brumadinho.mdx @@ -64,7 +64,7 @@ Four breach outflow and runout models of the event were identified by this study inform Emergency Action Plan (EAP) development (Vale & Walm Engenharia, 2018a, 2018b) , post-failure models developed by Lumbroso et al. (2021) and by Gibson et al. (2022) , and more recent work by Adria et al. (2023) to investigate the properties and arrival times of the runout downstream to the Rio Paraopeba. This study used the -Hydrologic Engineering Center's River Analysis System (HEC-RAS) model developed by Gibson et al. (2022) as the 100% (i.e., “historic”) event. +Hydrologic Engineering Center's River Analysis System (HEC-RAS) model developed by Gibson et al. (2022) as the 100% (i.e., "historic") event. ### Structure Inventory @@ -120,7 +120,7 @@ of transport (vehicles cannot move, vehicles stall), impacts on pedestrians, and - Investigate how object (buildings, vehicles) stability calibrations can be adjusted to account for the physical properties of tailings flows, and whether there is a need to adjust the mortality rate curves. -- Add the “Fire Drill” Protective Action Initiation response pattern to represent well-trained +- Add the "Fire Drill" Protective Action Initiation response pattern to represent well-trained industrial PAR. - Since the Feijão Dam B-1 failure is only one of four types of Tailings Dam Breach Analysis (TDBA) event identified by the Canadian Dam Association’s (CDA) diff --git a/docs/desktop-applications/lifesim/validation-studies/v1.0/05-katrina-east-bowl.mdx b/docs/desktop-applications/lifesim/validation-studies/v1.0/05-katrina-east-bowl.mdx index ef0546c7c..4d2fff242 100644 --- a/docs/desktop-applications/lifesim/validation-studies/v1.0/05-katrina-east-bowl.mdx +++ b/docs/desktop-applications/lifesim/validation-studies/v1.0/05-katrina-east-bowl.mdx @@ -27,8 +27,8 @@ Hurricane Katrina (Katrina) formed as a tropical depression over the southeaster Category 5 with peak winds of 175 mph; it was one of the most devastating natural disasters in United States history (Medlin et al., 2005) . Katrina had weakened to a Category 3 when it made landfall in New Orleans, Louisiana (NOLA) the morning of August 29, 2005. Life loss and property damage were exacerbated in -NOLA due to the levee failures across the city; “The majority… of the flooding and half of the economic losses can be attributed to water flowing through breaches in floodwalls -and levees” (USACE, 2006) . Primarily overtopping and subsequent erosion, 50 levees and floodwalls in NOLA failed during this catastrophic event. Approximately 80% of +NOLA due to the levee failures across the city; "The majority… of the flooding and half of the economic losses can be attributed to water flowing through breaches in floodwalls +and levees" (USACE, 2006) . Primarily overtopping and subsequent erosion, 50 levees and floodwalls in NOLA failed during this catastrophic event. Approximately 80% of the city was flooded – causing over 1,400 NOLA fatalities and hundreds of thousands displaced (NYT, 2015) .
. To model the Malpasset event, EDF derived a DEM using topographical mapping. However, due to the dramatic changes that occurred in the valley downstream of the Malpasset dam following the dam failure, old -1:20,000 Institut Géographique National (IGN) maps dated 1931 were used as they provided the only viable source of “pre-dam failure” topographical +1:20,000 Institut Géographique National (IGN) maps dated 1931 were used as they provided the only viable source of "pre-dam failure" topographical information (Hervouet, 1999) ."* ### Structure Inventory and Road Network The structure inventory and road network were developed to represent their condition in 1959. This was accomplished by taking BD-TOPO -data (reference year 2002) and performing a reverse change-detection to “back-cast” to a view of the Town of Fréjus and its local environs circa 1959. +data (reference year 2002) and performing a reverse change-detection to "back-cast" to a view of the Town of Fréjus and its local environs circa 1959. Additional evidence such as local maps, ground-based hand-held photos, and airborne oblique photos provided additional evidence of the actual building stock in 1959. diff --git a/docs/desktop-applications/lifesim/validation-studies/v1.0/10-teton.mdx b/docs/desktop-applications/lifesim/validation-studies/v1.0/10-teton.mdx index fbb788356..ff0de9558 100644 --- a/docs/desktop-applications/lifesim/validation-studies/v1.0/10-teton.mdx +++ b/docs/desktop-applications/lifesim/validation-studies/v1.0/10-teton.mdx @@ -98,9 +98,9 @@ the network was manually calibrated using the 1976 USGS Hydrologic Investigation ### Destinations -“Destination features represent point locations on roads, generally outside of the inundation extents, where evacuating groups travel to and are assumed safe +"Destination features represent point locations on roads, generally outside of the inundation extents, where evacuating groups travel to and are assumed safe once they arrive… Evacuating drivers choose a destination based on the shortest travel time from their current location to a destination. If their path becomes -obstructed by either flood water or traffic congestion, drivers alter their path and destination as necessary” (USACE RMC 2021). +obstructed by either flood water or traffic congestion, drivers alter their path and destination as necessary" (USACE RMC 2021). ### Emergency Planning Zones @@ -113,7 +113,7 @@ difficult assumption to make). For best-estimate runs of the remaining EPZs, custom **First Alert** and **PAI** curves were created to mobilize the appropriate PAR following hazard identification. A conservative, moderate, and generous curve were created for the two parameters. The moderate curves were meant to achieve around 90% mobilized by the time water reaches Wilford, ID. The custom curves were used to validate the software. These custom curves are compared against -the preset LifeSim “well-prepared” **Warning Issuance Delay**, “fast” **First Alert**, and “Preparedness/Perception: High/High” **PAI**. +the preset LifeSim "well-prepared" **Warning Issuance Delay**, "fast" **First Alert**, and "Preparedness/Perception: High/High" **PAI**. ### Alternative diff --git a/package-lock.json b/package-lock.json index ecce09822..748bbdfd5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,16 +44,13 @@ "cross-env": "^7.0.3", "ffmpeg-static": "^5.3.0", "postcss": "^8.5.6", - "prettier": "^3.6.2", + "prettier": "3.9.6", "prettier-plugin-tailwindcss": "^0.6.14" }, "engines": { "node": ">=18.0" } }, - "latest@docusaurus/module-type-aliases@latest": { - "extraneous": true - }, "node_modules/@11ty/gray-matter": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@11ty/gray-matter/-/gray-matter-1.0.0.tgz", @@ -2067,60 +2064,15 @@ } }, "node_modules/@braintree/sanitize-url": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-7.1.1.tgz", - "integrity": "sha512-i1L7noDNxtFyL5DmZafWy1wRVhGehQmzZaz1HiN5e7iylJMSZR7ekOV7NsIqa5qBldlLrsKv4HbgFUVlQrz8Mw==", - "license": "MIT" - }, - "node_modules/@chevrotain/cst-dts-gen": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@chevrotain/cst-dts-gen/-/cst-dts-gen-11.0.3.tgz", - "integrity": "sha512-BvIKpRLeS/8UbfxXxgC33xOumsacaeCKAjAeLyOn7Pcp95HiRbrpl14S+9vaZLolnbssPIUuiUd8IvgkRyt6NQ==", - "license": "Apache-2.0", - "dependencies": { - "@chevrotain/gast": "11.0.3", - "@chevrotain/types": "11.0.3", - "lodash-es": "4.17.21" - } - }, - "node_modules/@chevrotain/cst-dts-gen/node_modules/lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "license": "MIT" - }, - "node_modules/@chevrotain/gast": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@chevrotain/gast/-/gast-11.0.3.tgz", - "integrity": "sha512-+qNfcoNk70PyS/uxmj3li5NiECO+2YKZZQMbmjTqRI3Qchu8Hig/Q9vgkHpI3alNjr7M+a2St5pw5w5F6NL5/Q==", - "license": "Apache-2.0", - "dependencies": { - "@chevrotain/types": "11.0.3", - "lodash-es": "4.17.21" - } - }, - "node_modules/@chevrotain/gast/node_modules/lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-7.1.2.tgz", + "integrity": "sha512-jigsZK+sMF/cuiB7sERuo9V7N9jx+dhmHHnQyDSVdpZwVutaBu7WvNYqMDLSgFgfB30n452TP3vjDAvFC973mA==", "license": "MIT" }, - "node_modules/@chevrotain/regexp-to-ast": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@chevrotain/regexp-to-ast/-/regexp-to-ast-11.0.3.tgz", - "integrity": "sha512-1fMHaBZxLFvWI067AVbGJav1eRY7N8DDvYCTwGBiE/ytKBgP8azTdgyrKyWZ9Mfh09eHWb5PgTSO8wi7U824RA==", - "license": "Apache-2.0" - }, "node_modules/@chevrotain/types": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@chevrotain/types/-/types-11.0.3.tgz", - "integrity": "sha512-gsiM3G8b58kZC2HaWR50gu6Y1440cHiJ+i3JUvcp/35JchYejb2+5MVeJK0iKThYpAa/P2PYFV4hoi44HD+aHQ==", - "license": "Apache-2.0" - }, - "node_modules/@chevrotain/utils": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@chevrotain/utils/-/utils-11.0.3.tgz", - "integrity": "sha512-YslZMgtJUyuMbZ+aKvfF3x1f5liK4mWNxghFRv7jqRR9C3R3fAOGTTKvxXDa2Y1s9zSbcpuO0cAxDYsc9SrXoQ==", + "version": "11.1.2", + "resolved": "https://registry.npmjs.org/@chevrotain/types/-/types-11.1.2.tgz", + "integrity": "sha512-U+HFai5+zmJCkK86QsaJtoITlboZHBqrVketcO2ROv865xfCMSFpELQoz1GkX5GzME8pTa+3kbKrZHQtI0gdbw==", "license": "Apache-2.0" }, "node_modules/@colors/colors": { @@ -4424,27 +4376,6 @@ "mlly": "^1.7.4" } }, - "node_modules/@isaacs/balanced-match": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", - "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==", - "license": "MIT", - "engines": { - "node": "20 || >=22" - } - }, - "node_modules/@isaacs/brace-expansion": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.1.tgz", - "integrity": "sha512-WMz71T1JS624nWj2n2fnYAuPovhv7EUhk69R6i9dsVyzxt5eM3bjwvgk9L+APE1TRscGysAVMANkB0jh0LQZrQ==", - "license": "MIT", - "dependencies": { - "@isaacs/balanced-match": "^4.0.1" - }, - "engines": { - "node": "20 || >=22" - } - }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", @@ -4733,12 +4664,24 @@ } }, "node_modules/@mermaid-js/parser": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/@mermaid-js/parser/-/parser-0.6.3.tgz", - "integrity": "sha512-lnjOhe7zyHjc+If7yT4zoedx2vo4sHaTmtkl1+or8BRTnCtDmcTpAjpzDSfCZrshM5bCoz0GyidzadJAH1xobA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@mermaid-js/parser/-/parser-1.2.1.tgz", + "integrity": "sha512-n12NohV3mrUyUL2o93IgG/ifeW9FTyeJn3zDxkhwa8MJ9Fxg3HQMlA3RiGmD/3UnJvheztkjjQAjA2T4LmUcpw==", "license": "MIT", "dependencies": { - "langium": "3.3.1" + "@chevrotain/types": "~11.1.2" + } + }, + "node_modules/@noble/hashes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", + "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, "node_modules/@nodelib/fs.scandir": { @@ -4776,6 +4719,193 @@ "node": ">= 8" } }, + "node_modules/@peculiar/asn1-cms": { + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-cms/-/asn1-cms-2.9.4.tgz", + "integrity": "sha512-cben7oxmQsUGZqotus7yt0srYdncOT6RNWcTQ77T2RFOXejYVYkXadrfePdRcrVpO9K95IRLKKglG2k38jKXuw==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.9.4", + "@peculiar/asn1-x509": "^2.9.4", + "@peculiar/asn1-x509-attr": "^2.9.4", + "asn1js": "^3.0.10", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@peculiar/asn1-csr": { + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-csr/-/asn1-csr-2.9.4.tgz", + "integrity": "sha512-xd4YN4vpRjkDAQWVfZZkeu12IEND7DOpkqaHSIHxZl1uggUNa9Ju0QxY2jHvDAS9pP0zhRBytg8ifsnGo3V0jw==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.9.4", + "@peculiar/asn1-x509": "^2.9.4", + "asn1js": "^3.0.10", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@peculiar/asn1-ecc": { + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-ecc/-/asn1-ecc-2.9.4.tgz", + "integrity": "sha512-JJXefFshRAuVAjWQo/39bkg1ywc1VaiO44S8RRC+Ykvf/u2KDmYffoDb0ZBPCR5uJy4AGKQhl8mX+Q8ShcWaXQ==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.9.4", + "@peculiar/asn1-x509": "^2.9.4", + "asn1js": "^3.0.10", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@peculiar/asn1-pfx": { + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-pfx/-/asn1-pfx-2.9.4.tgz", + "integrity": "sha512-khuGzHTzNzk4GDlIBEILyIs6Lce0yn0ZBdoI9v93kmNncfZRhD+AQ5ODFqdhvoE8cMJF/JMTQ8yA+t1D14kqCw==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-cms": "^2.9.4", + "@peculiar/asn1-pkcs8": "^2.9.4", + "@peculiar/asn1-rsa": "^2.9.4", + "@peculiar/asn1-schema": "^2.9.4", + "asn1js": "^3.0.10", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@peculiar/asn1-pkcs8": { + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-pkcs8/-/asn1-pkcs8-2.9.4.tgz", + "integrity": "sha512-duRdotlUx9eDZe6QrQpQKl61RbWykCHBCkKayP8V8XdEFwlKHZ8qGGDMyS6Pye7OX7nLFttTTpRkJeet78ckwQ==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.9.4", + "@peculiar/asn1-x509": "^2.9.4", + "asn1js": "^3.0.10", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@peculiar/asn1-pkcs9": { + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-pkcs9/-/asn1-pkcs9-2.9.4.tgz", + "integrity": "sha512-kaL4cNxBpdQE2dKlyZBqz4ygCrwffO+8wfoxTEqM1Z8RadvCeELBRzcv0dzM8aY9azHMwODO5nxU65zXmhToOQ==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-cms": "^2.9.4", + "@peculiar/asn1-pfx": "^2.9.4", + "@peculiar/asn1-pkcs8": "^2.9.4", + "@peculiar/asn1-schema": "^2.9.4", + "@peculiar/asn1-x509": "^2.9.4", + "@peculiar/asn1-x509-attr": "^2.9.4", + "asn1js": "^3.0.10", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@peculiar/asn1-rsa": { + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-rsa/-/asn1-rsa-2.9.4.tgz", + "integrity": "sha512-pZ96eD1PptovcWQ/GSmuNFXd/7EQJNlKfDaNCyE2rx3W0v6QFelkzquVqRSRyyDXXCYD69ZXJDzZ8GhIiQzKoA==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.9.4", + "@peculiar/asn1-x509": "^2.9.4", + "asn1js": "^3.0.10", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@peculiar/asn1-schema": { + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-schema/-/asn1-schema-2.9.4.tgz", + "integrity": "sha512-GjzePcT9Iw8NzeOPf73iNS9xM+TBhd/FilAfP+RQGkTMQJTVWtytN3JHJACCjf/ABNau5S7mS3g+DcuxmRgYEg==", + "license": "MIT", + "dependencies": { + "@peculiar/utils": "^2.0.2", + "asn1js": "^3.0.10", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@peculiar/asn1-x509": { + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-x509/-/asn1-x509-2.9.4.tgz", + "integrity": "sha512-CxhBo/RdEbMMob7T31ZdQjGuoyRFLVwrDzTn25bihzBasRg9kRm/0IxIPvhgQtcK/9dNcO1XQL2fuPugwELL0Q==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.9.4", + "@peculiar/utils": "^2.0.2", + "asn1js": "^3.0.10", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@peculiar/asn1-x509-attr": { + "version": "2.9.4", + "resolved": "https://registry.npmjs.org/@peculiar/asn1-x509-attr/-/asn1-x509-attr-2.9.4.tgz", + "integrity": "sha512-ehQXbpQaQYycgu8OrvigwSPTFfVRcu0ECNYCWw+yzBp02Lw5paRqzzhUpfOgO2K38+WfFZuEz/0RPtam5g0OMg==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-schema": "^2.9.4", + "@peculiar/asn1-x509": "^2.9.4", + "asn1js": "^3.0.10", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@peculiar/utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@peculiar/utils/-/utils-2.0.3.tgz", + "integrity": "sha512-+oL3HPFRIZ1St2K50lWCXiioIgSoxzz7R1J3uF6neO2yl1sgmpgY6XXJH4BdpoDkMWznQTeYF6oWNDZLCdQ4eQ==", + "license": "MIT", + "dependencies": { + "tslib": "^2.8.1" + } + }, + "node_modules/@peculiar/x509": { + "version": "1.14.3", + "resolved": "https://registry.npmjs.org/@peculiar/x509/-/x509-1.14.3.tgz", + "integrity": "sha512-C2Xj8FZ0uHWeCXXqX5B4/gVFQmtSkiuOolzAgutjTfseNOHT3pUjljDZsTSxXFGgio54bCzVFqmEOUrIVk8RDA==", + "license": "MIT", + "dependencies": { + "@peculiar/asn1-cms": "^2.6.0", + "@peculiar/asn1-csr": "^2.6.0", + "@peculiar/asn1-ecc": "^2.6.0", + "@peculiar/asn1-pkcs9": "^2.6.0", + "@peculiar/asn1-rsa": "^2.6.0", + "@peculiar/asn1-schema": "^2.6.0", + "@peculiar/asn1-x509": "^2.6.0", + "pvtsutils": "^1.3.6", + "reflect-metadata": "^0.2.2", + "tslib": "^2.8.1", + "tsyringe": "^4.10.0" + }, + "engines": { + "node": ">=20.0.0" + } + }, "node_modules/@philpl/buble": { "version": "0.19.7", "resolved": "https://registry.npmjs.org/@philpl/buble/-/buble-0.19.7.tgz", @@ -6087,26 +6217,6 @@ "@types/ms": "*" } }, - "node_modules/@types/eslint": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", - "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", - "license": "MIT", - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.7", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", - "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", - "license": "MIT", - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, "node_modules/@types/estree": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", @@ -6123,15 +6233,15 @@ } }, "node_modules/@types/express": { - "version": "4.17.23", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.23.tgz", - "integrity": "sha512-Crp6WY9aTYP3qPi2wGDo9iUe/rceX01UMhnF1jmwDcKCFM6cx7YhGP/Mpr3y9AASpfHixIG0E6azCcL5OcDHsQ==", + "version": "4.17.25", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.25.tgz", + "integrity": "sha512-dVd04UKsfpINUnK0yBoYHDF3xu7xVH4BuDotC/xGuycx4CgbP48X/KF/586bcObxT0HENHXEU8Nqtu6NR+eKhw==", "license": "MIT", "dependencies": { "@types/body-parser": "*", "@types/express-serve-static-core": "^4.17.33", "@types/qs": "*", - "@types/serve-static": "*" + "@types/serve-static": "^1" } }, "node_modules/@types/express-serve-static-core": { @@ -6266,15 +6376,6 @@ "undici-types": "~7.10.0" } }, - "node_modules/@types/node-forge": { - "version": "1.3.14", - "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.14.tgz", - "integrity": "sha512-mhVF2BnD4BO+jtOp7z1CdzaK4mbuK0LLQYAvdOLqHTavxFNq4zA1EmYkpnFjP8HOUzedfQkRnp0E2ulSAYSzAw==", - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/prismjs": { "version": "1.26.5", "resolved": "https://registry.npmjs.org/@types/prismjs/-/prismjs-1.26.5.tgz", @@ -6431,6 +6532,16 @@ "integrity": "sha512-60YRaenCQcVjYEKOcG824+DRGGIQ3VKErcBoAEDJZz5bKIs2ZG+X/H9Nk+Q6EVkwJk5QNApxbrc5QtBSwtrXAg==", "license": "ISC" }, + "node_modules/@upsetjs/venn.js": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@upsetjs/venn.js/-/venn.js-2.0.0.tgz", + "integrity": "sha512-WbBhLrooyePuQ1VZxrJjtLvTc4NVfpOyKx0sKqioq9bX1C1m7Jgykkn8gLrtwumBioXIqam8DLxp88Adbue6Hw==", + "license": "MIT", + "optionalDependencies": { + "d3-selection": "^3.0.0", + "d3-transition": "^3.0.1" + } + }, "node_modules/@usace/groundwork": { "version": "3.15.1", "resolved": "https://registry.npmjs.org/@usace/groundwork/-/groundwork-3.15.1.tgz", @@ -6652,9 +6763,9 @@ } }, "node_modules/acorn": { - "version": "8.15.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", - "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.18.0.tgz", + "integrity": "sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ==", "license": "MIT", "bin": { "acorn": "bin/acorn" @@ -6663,18 +6774,6 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-import-phases": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/acorn-import-phases/-/acorn-import-phases-1.0.4.tgz", - "integrity": "sha512-wKmbr/DDiIXzEOiWrTTUcDm24kQ2vGfZQvM2fwg2vXqR5uW6aapr7ObPtj1th32b9u90/Pf4AItvdTh42fBmVQ==", - "license": "MIT", - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "acorn": "^8.14.0" - } - }, "node_modules/acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", @@ -6732,9 +6831,9 @@ } }, "node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", @@ -6957,6 +7056,20 @@ "node": ">=8" } }, + "node_modules/asn1js": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/asn1js/-/asn1js-3.0.10.tgz", + "integrity": "sha512-S2s3aOytiKdFRdulw2qPE51MzjzVOisppcVv7jVFR+Kw0kxwvFrDcYA0h7Ndqbmj0HkMIXYWaoj7fli8kgx1eg==", + "license": "BSD-3-Clause", + "dependencies": { + "pvtsutils": "^1.3.6", + "pvutils": "^1.1.5", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/astring": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/astring/-/astring-1.9.0.tgz", @@ -7150,9 +7263,9 @@ } }, "node_modules/body-parser": { - "version": "1.20.4", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.4.tgz", - "integrity": "sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA==", + "version": "1.20.6", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.6.tgz", + "integrity": "sha512-p5tAzS57i5MV9fZFDj9LeIiTZEufbSe2eDozP+ElheSUq1m74CRq1jI4mYNDdVs9vQztXFLuk/Gd6BWTdwRJ5g==", "license": "MIT", "dependencies": { "bytes": "~3.1.2", @@ -7163,7 +7276,7 @@ "http-errors": "~2.0.1", "iconv-lite": "~0.4.24", "on-finished": "~2.4.1", - "qs": "~6.14.0", + "qs": "~6.15.1", "raw-body": "~2.5.3", "type-is": "~1.6.18", "unpipe": "~1.0.0" @@ -7349,6 +7462,15 @@ "node": ">= 0.8" } }, + "node_modules/bytestreamjs": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/bytestreamjs/-/bytestreamjs-2.0.1.tgz", + "integrity": "sha512-U1Z/ob71V/bXfVABvNr/Kumf5VyeQRBEm6Txb0PQ6S7V5GpBM3w4Cbqz/xPDicR5tN0uvDifng8C+5qECeGwyQ==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/cacheable-lookup": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz", @@ -7615,38 +7737,6 @@ "url": "https://github.com/sponsors/fb55" } }, - "node_modules/chevrotain": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-11.0.3.tgz", - "integrity": "sha512-ci2iJH6LeIkvP9eJW6gpueU8cnZhv85ELY8w8WiFtNjMHA5ad6pQLaJo9mEly/9qUyCpvqX8/POVUTf18/HFdw==", - "license": "Apache-2.0", - "dependencies": { - "@chevrotain/cst-dts-gen": "11.0.3", - "@chevrotain/gast": "11.0.3", - "@chevrotain/regexp-to-ast": "11.0.3", - "@chevrotain/types": "11.0.3", - "@chevrotain/utils": "11.0.3", - "lodash-es": "4.17.21" - } - }, - "node_modules/chevrotain-allstar": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/chevrotain-allstar/-/chevrotain-allstar-0.3.1.tgz", - "integrity": "sha512-b7g+y9A0v4mxCW1qUhf3BSVPg+/NvGErk/dOkrDaHA0nQIQGAtrOjlX//9OQtRlSCy+x9rfB5N8yC71lH1nvMw==", - "license": "MIT", - "dependencies": { - "lodash-es": "^4.17.21" - }, - "peerDependencies": { - "chevrotain": "^11.0.0" - } - }, - "node_modules/chevrotain/node_modules/lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", - "license": "MIT" - }, "node_modules/chokidar": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", @@ -8726,9 +8816,9 @@ "license": "MIT" }, "node_modules/cytoscape": { - "version": "3.33.1", - "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.33.1.tgz", - "integrity": "sha512-iJc4TwyANnOGR1OmWhsS9ayRS3s+XQ185FmuHObThD+5AeJCakAAbWv8KimMTt08xCCLNgneQwFp+JRJOr9qGQ==", + "version": "3.34.1", + "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.34.1.tgz", + "integrity": "sha512-Lr0RvH9H75y9ar8h9Toy6u4lxRSCcxUq+hHcQ26sVWo6BnaQp1gwEZOYqwuYTZhyW7npyKnNLP8oJ2p1/3OZ7g==", "license": "MIT", "engines": { "node": ">=0.10" @@ -9236,9 +9326,9 @@ } }, "node_modules/dagre-d3-es": { - "version": "7.0.13", - "resolved": "https://registry.npmjs.org/dagre-d3-es/-/dagre-d3-es-7.0.13.tgz", - "integrity": "sha512-efEhnxpSuwpYOKRm/L5KbqoZmNNukHa/Flty4Wp62JRvgH2ojwVgPgdYyr4twpieZnyRDdIH7PY2mopX26+j2Q==", + "version": "7.0.14", + "resolved": "https://registry.npmjs.org/dagre-d3-es/-/dagre-d3-es-7.0.14.tgz", + "integrity": "sha512-P4rFMVq9ESWqmOgK+dlXvOtLwYg0i7u0HBGJER0LZDJT2VHIPAMZ/riPxqJceWMStH5+E61QxFra9kIS3AqdMg==", "license": "MIT", "dependencies": { "d3": "^7.9.0", @@ -9246,9 +9336,9 @@ } }, "node_modules/dayjs": { - "version": "1.11.18", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.18.tgz", - "integrity": "sha512-zFBQ7WFRvVRhKcWoUh+ZA1g2HVgUbsZm9sbddh8EC5iv93sui8DVVz1Npvz+r6meo9VKfa8NyLWBsQK1VvIKPA==", + "version": "1.11.23", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.23.tgz", + "integrity": "sha512-QDTCU0M0MxR3hQfnlDJfwekQiaanm1ubOD231u73WBckQ/fsamwRLiE2GBz6D3a/xF1NgfiDLJjXBa1hYOYTtQ==", "license": "MIT" }, "node_modules/debounce": { @@ -9413,9 +9503,9 @@ } }, "node_modules/delaunator": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz", - "integrity": "sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.1.0.tgz", + "integrity": "sha512-AGrQ4QSgssa1NGmWmLPqN5NY2KajF5MqxetNEO+o0n3ZwZZeTmt7bBnvzHWrmkZFxGgr4HdyFgelzgi06otLuQ==", "license": "ISC", "dependencies": { "robust-predicates": "^3.0.2" @@ -9581,9 +9671,9 @@ } }, "node_modules/dompurify": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.7.tgz", - "integrity": "sha512-WhL/YuveyGXJaerVlMYGWhvQswa7myDG17P7Vu65EWC05o8vfeNbvNf4d/BOvH99+ZW+LlQsc1GDKMa1vNK6dw==", + "version": "3.4.14", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.4.14.tgz", + "integrity": "sha512-dVoH9z+MY+C9IilgGCk3YfFqjLi3fChm2OiKJMzh6axrJ5qwxqWaZamgmHrpv22CN/KdbZJuGEGgfQoL00LTdg==", "license": "(MPL-2.0 OR Apache-2.0)", "optionalDependencies": { "@types/trusted-types": "^2.0.7" @@ -9722,13 +9812,13 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.18.3", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz", - "integrity": "sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww==", + "version": "5.24.5", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.24.5.tgz", + "integrity": "sha512-L1l8TNvomm6UVW5B253AGxQagSQr+vGwhMlrrfRS2qmhx46AMpMVJKQYLvWYbysTMY8VoicOvzHzoHMbyzB+4A==", "license": "MIT", "dependencies": { "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" + "tapable": "^2.3.3" }, "engines": { "node": ">=10.13.0" @@ -9784,9 +9874,9 @@ } }, "node_modules/es-module-lexer": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", - "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.3.2.tgz", + "integrity": "sha512-poHGpORABojJJucnV9KbOavETW8lBVnphkW77ER5/BQ5Fz7oXSoCNek7IH3vR5nRjdsEz926ibFYX8KtLQmdyw==", "license": "MIT" }, "node_modules/es-object-atoms": { @@ -9801,6 +9891,18 @@ "node": ">= 0.4" } }, + "node_modules/es-toolkit": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/es-toolkit/-/es-toolkit-1.51.0.tgz", + "integrity": "sha512-zC2lQGkM7QX+Gm6iM3+WIdZJzthsEd14LvRNJneSO2hzyz/zNBENR8+YXWo1cKxgPBtV6ksPYHELbcwBRzmdCw==", + "license": "MIT", + "workspaces": [ + "docs", + "benchmarks", + "tests/types", + "tests/browser-compat" + ] + }, "node_modules/esast-util-from-estree": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/esast-util-from-estree/-/esast-util-from-estree-2.0.0.tgz", @@ -10112,14 +10214,14 @@ } }, "node_modules/express": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.22.1.tgz", - "integrity": "sha512-F2X8g9P1X7uCPZMA3MVf9wcTqlyNp7IhH5qPCI0izhaOIYXaW9L535tGA3qmjRzpH+bZczqq7hVKxTR4NWnu+g==", + "version": "4.22.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.22.2.tgz", + "integrity": "sha512-IuL+Elrou2ZvCFHs18/CIzy2Nzvo25nZ1/D2eIZlz7c+QUayAcYoiM2BthCjs+EBHVpjYjcuLDAiCWgeIX3X1Q==", "license": "MIT", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "~1.20.3", + "body-parser": "~1.20.5", "content-disposition": "~0.5.4", "content-type": "~1.0.4", "cookie": "~0.7.1", @@ -10138,7 +10240,7 @@ "parseurl": "~1.3.3", "path-to-regexp": "~0.1.12", "proxy-addr": "~2.0.7", - "qs": "~6.14.0", + "qs": "~6.15.1", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", "send": "~0.19.0", @@ -10185,9 +10287,9 @@ "license": "MIT" }, "node_modules/express/node_modules/path-to-regexp": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", - "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.13.tgz", + "integrity": "sha512-A/AGNMFN3c8bOlvV9RreMdrv7jsmF9XIfDeCd87+I8RNg6s78BhJxMu69NEMHBSJFxKidViTEdruRwEk/WIKqA==", "license": "MIT" }, "node_modules/express/node_modules/range-parser": { @@ -10252,9 +10354,9 @@ "license": "MIT" }, "node_modules/fast-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.0.tgz", - "integrity": "sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.5.tgz", + "integrity": "sha512-gHwA1O9LDIcKunMKhObS/HimwtehO1nPUECKAu5TpKgaO19fcWEl4bliWe1jWxVFvIXztJjjQ4L8XQ1EU9f7Jw==", "funding": [ { "type": "github", @@ -10267,6 +10369,15 @@ ], "license": "BSD-3-Clause" }, + "node_modules/fastdom": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fastdom/-/fastdom-1.0.12.tgz", + "integrity": "sha512-LB+xjSTEbjHE1cWsxu+tN2Xqr1kpi+V9aADI7sVM5ZMaXyYGPHULQMzpJMYqOTULK/73pUkWVzzObFRBkPr+hg==", + "license": "MIT", + "dependencies": { + "strictdom": "^1.0.1" + } + }, "node_modules/fastq": { "version": "1.19.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", @@ -10512,9 +10623,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.11.tgz", - "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz", + "integrity": "sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==", "funding": [ { "type": "individual", @@ -10886,12 +10997,6 @@ "tslib": "2" } }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "license": "BSD-2-Clause" - }, "node_modules/global-dirs": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", @@ -11019,9 +11124,9 @@ } }, "node_modules/gray-matter/node_modules/js-yaml": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", - "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", + "version": "3.15.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.15.1.tgz", + "integrity": "sha512-S99WuO3HlhO3XN41EtYUNl9zzXjoJx7QvmipxsJVxtCBT0YHEFy+iOJhjSvrmV12nYhWpZaM8lPHkJm0yUMbag==", "license": "MIT", "dependencies": { "argparse": "^1.0.7", @@ -11623,9 +11728,9 @@ } }, "node_modules/http-proxy-middleware": { - "version": "2.0.9", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.9.tgz", - "integrity": "sha512-c1IyJYLYppU574+YI7R4QyX2ystMtVXZwIdzazUIPIJsHuWNd+mho2j+bKoHftndicGj9yh+xjd+l0yj7VeT1Q==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.10.tgz", + "integrity": "sha512-RKzRWNPxUZqbuk3BC5mGVJbBnWgr+diEnjJexIOytFbBzDy88Fbh/YvBr3DsNrl1jYAfjWfpATEv0NO35FDuPQ==", "license": "MIT", "dependencies": { "@types/http-proxy": "^1.17.8", @@ -12374,9 +12479,9 @@ } }, "node_modules/katex": { - "version": "0.16.22", - "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.22.tgz", - "integrity": "sha512-XCHRdUw4lf3SKBaJe4EvgqIuWwkPSo9XoeO8GjQW94Bp7TWv9hNhzZjZ+OH9yf1UmLygb7DIT5GSFQiyt16zYg==", + "version": "0.16.47", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.47.tgz", + "integrity": "sha512-Eeo8Ys1doU1z+x8AZsPpQu+p/QcZBI5PeOo7QGQdy2x2m0MU/hYagBbGOmXwr5KVbEfVuWv9LpnQWeehogurjg==", "funding": [ "https://opencollective.com/katex", "https://github.com/sponsors/katex" @@ -12436,22 +12541,6 @@ "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==", "license": "MIT" }, - "node_modules/langium": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/langium/-/langium-3.3.1.tgz", - "integrity": "sha512-QJv/h939gDpvT+9SiLVlY7tZC3xB2qK57v0J04Sh9wpMb6MP1q8gB21L3WIo8T5P1MSMg3Ep14L7KkDCFG3y4w==", - "license": "MIT", - "dependencies": { - "chevrotain": "~11.0.3", - "chevrotain-allstar": "~0.3.0", - "vscode-languageserver": "~9.0.1", - "vscode-languageserver-textdocument": "~1.0.11", - "vscode-uri": "~3.0.8" - }, - "engines": { - "node": ">=16.0.0" - } - }, "node_modules/latest-version": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-7.0.0.tgz", @@ -12468,13 +12557,13 @@ } }, "node_modules/launch-editor": { - "version": "2.11.1", - "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.11.1.tgz", - "integrity": "sha512-SEET7oNfgSaB6Ym0jufAdCeo3meJVeCaaDyzRygy0xsp2BFKCprcfHljTq4QkzTLUxEKkFK6OK4811YM2oSrRg==", + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.14.1.tgz", + "integrity": "sha512-QWBrQsMpH7gPr965dsKD/3cKWiNoTjpATQf++Xq63N6sKRGMwlVXz41O1IZTMfZQgBctD/K5Zt06+/I6pP6+HA==", "license": "MIT", "dependencies": { "picocolors": "^1.1.1", - "shell-quote": "^1.8.3" + "shell-quote": "^1.8.4" } }, "node_modules/layout-base": { @@ -12758,15 +12847,6 @@ "uc.micro": "^1.0.1" } }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "license": "MIT", - "engines": { - "node": ">=6.11.5" - } - }, "node_modules/loader-utils": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", @@ -12814,15 +12894,15 @@ } }, "node_modules/lodash": { - "version": "4.17.23", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz", - "integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.18.1.tgz", + "integrity": "sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q==", "license": "MIT" }, "node_modules/lodash-es": { - "version": "4.17.23", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.23.tgz", - "integrity": "sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg==", + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.18.1.tgz", + "integrity": "sha512-J8xewKD/Gk22OZbhpOVSwcs60zhd95ESDwezOFuA3/099925PdHJ7OFHNTGtajL3AlZkykD32HykiMo+BIBI8A==", "license": "MIT" }, "node_modules/lodash.debounce": { @@ -13497,44 +13577,46 @@ } }, "node_modules/mermaid": { - "version": "11.12.2", - "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-11.12.2.tgz", - "integrity": "sha512-n34QPDPEKmaeCG4WDMGy0OT6PSyxKCfy2pJgShP+Qow2KLrvWjclwbc3yXfSIf4BanqWEhQEpngWwNp/XhZt6w==", + "version": "11.17.0", + "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-11.17.0.tgz", + "integrity": "sha512-Jo9N377Wb4MSnHFPTbLi2SxFpsQl4eVHoxnW5U1Md9EazvgMp3s+4ohDxr81YNTgbn5Kj7HJ3yslrSJ52kwpbA==", "license": "MIT", "dependencies": { - "@braintree/sanitize-url": "^7.1.1", - "@iconify/utils": "^3.0.1", - "@mermaid-js/parser": "^0.6.3", + "@braintree/sanitize-url": "^7.1.2", + "@iconify/utils": "^3.0.2", + "@mermaid-js/parser": "^1.2.1", "@types/d3": "^7.4.3", - "cytoscape": "^3.29.3", + "@upsetjs/venn.js": "^2.0.0", + "cytoscape": "^3.34.0", "cytoscape-cose-bilkent": "^4.1.0", "cytoscape-fcose": "^2.2.0", "d3": "^7.9.0", "d3-sankey": "^0.12.3", - "dagre-d3-es": "7.0.13", - "dayjs": "^1.11.18", - "dompurify": "^3.2.5", - "katex": "^0.16.22", + "dagre-d3-es": "7.0.14", + "dayjs": "^1.11.21", + "dompurify": "^3.3.3", + "es-toolkit": "^1.45.1", + "fastdom": "1.0.12", + "katex": "^0.16.47", "khroma": "^2.1.0", - "lodash-es": "^4.17.21", - "marked": "^16.2.1", + "marked": "^16.3.0", "roughjs": "^4.6.6", "stylis": "^4.3.6", "ts-dedent": "^2.2.0", - "uuid": "^11.1.0" + "uuid": "^11.1.0 || ^12 || ^13 || ^14.0.0" } }, "node_modules/mermaid/node_modules/uuid": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.1.0.tgz", - "integrity": "sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==", + "version": "14.0.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-14.0.2.tgz", + "integrity": "sha512-xZe/16rV4aa+HGSOCiY2YeLT1OybRLrrkL/Rqaq7p7GMVXjFh+6wN4oMYgjFmnSnhY8t6Xpdl2l9qmnHYuMHwQ==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" ], "license": "MIT", "bin": { - "uuid": "dist/esm/bin/uuid" + "uuid": "dist-node/bin/uuid" } }, "node_modules/methods": { @@ -15508,20 +15590,41 @@ "license": "ISC" }, "node_modules/minimatch": { - "version": "10.1.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.1.1.tgz", - "integrity": "sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==", + "version": "10.2.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz", + "integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==", "license": "BlueOak-1.0.0", "dependencies": { - "@isaacs/brace-expansion": "^5.0.0" + "brace-expansion": "^5.0.8" }, "engines": { - "node": "20 || >=22" + "node": "18 || 20 || >=22" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/minimatch/node_modules/balanced-match": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", + "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", + "license": "MIT", + "engines": { + "node": "18 || 20 || >=22" + } + }, + "node_modules/minimatch/node_modules/brace-expansion": { + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz", + "integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==", + "license": "MIT", + "dependencies": { + "balanced-match": "^4.0.2" + }, + "engines": { + "node": "20 || >=22" + } + }, "node_modules/minimist": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", @@ -15531,6 +15634,95 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/minimizer-webpack-plugin": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/minimizer-webpack-plugin/-/minimizer-webpack-plugin-5.6.1.tgz", + "integrity": "sha512-DoeAZz8Q1C1znwsUzej1fdoi4jCf7/+Em27ouLqfK/+3m8G+D7yDhUwrc3CNhjSzGUN1kn7Iv4sWmjflQHenpw==", + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.25", + "jest-worker": "^27.4.5", + "schema-utils": "^4.3.0", + "terser": "^5.31.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@minify-html/node": { + "optional": true + }, + "@swc/core": { + "optional": true + }, + "@swc/css": { + "optional": true + }, + "@swc/html": { + "optional": true + }, + "clean-css": { + "optional": true + }, + "cssnano": { + "optional": true + }, + "csso": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "html-minifier-terser": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "postcss": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/minimizer-webpack-plugin/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "license": "MIT", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/minimizer-webpack-plugin/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, "node_modules/minipass": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", @@ -15622,9 +15814,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "version": "3.3.18", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.18.tgz", + "integrity": "sha512-DTg4MJbGMWkfi6VZFdNt2/caMbQy4Ou+Op/hJQvGEWcnVfoA1QA+xzRKAzw9jD6+GVOOeYr/mIcuDSdug6F6+w==", "funding": [ { "type": "github", @@ -15679,15 +15871,6 @@ "node": ">=18" } }, - "node_modules/node-forge": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.3.tgz", - "integrity": "sha512-rLvcdSyRCyouf6jcOIPe/BgwG/d7hKjzMKOas33/pHEr6gbq18IK9zV7DiPvzsz0oBJPme6qr6H6kGZuI9/DZg==", - "license": "(BSD-3-Clause OR GPL-2.0)", - "engines": { - "node": ">= 6.13.0" - } - }, "node_modules/node-releases": { "version": "2.0.53", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.53.tgz", @@ -16325,9 +16508,9 @@ "license": "ISC" }, "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz", + "integrity": "sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==", "license": "MIT", "engines": { "node": ">=8.6" @@ -16380,6 +16563,23 @@ "pathe": "^2.0.3" } }, + "node_modules/pkijs": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/pkijs/-/pkijs-3.4.0.tgz", + "integrity": "sha512-emEcLuomt2j03vxD54giVB4SxTjnsqkU692xZOZXHDVoYyypEm+b3jpiTcc+Cf+myooc+/Ly0z01jqeNHVgJGw==", + "license": "BSD-3-Clause", + "dependencies": { + "@noble/hashes": "1.4.0", + "asn1js": "^3.0.6", + "bytestreamjs": "^2.0.1", + "pvtsutils": "^1.3.6", + "pvutils": "^1.1.3", + "tslib": "^2.8.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, "node_modules/points-on-curve": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/points-on-curve/-/points-on-curve-0.2.0.tgz", @@ -16397,9 +16597,9 @@ } }, "node_modules/postcss": { - "version": "8.5.6", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", - "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "version": "8.5.26", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.26.tgz", + "integrity": "sha512-u82N74LFzG8ca+dD8puPnplTXoGH4fTPpVGuIbt36G3qvNlkvfD0lEAZSxaly3KX8TS/L1A1gsCEmvKmBcVbkQ==", "funding": [ { "type": "opencollective", @@ -16416,7 +16616,7 @@ ], "license": "MIT", "dependencies": { - "nanoid": "^3.3.11", + "nanoid": "^3.3.17", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" }, @@ -17956,9 +18156,9 @@ } }, "node_modules/prettier": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.6.2.tgz", - "integrity": "sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==", + "version": "3.9.6", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.9.6.tgz", + "integrity": "sha512-OpN0zzVdiaiAhxpuuj5efpIS4sY9j7bY6uR5mnj5yPzGkdkjNKSJeUThPb60Jw29QuAZgA4o+/iB49kFiaBX6g==", "dev": true, "license": "MIT", "bin": { @@ -18201,13 +18401,32 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/pvtsutils": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.3.6.tgz", + "integrity": "sha512-PLgQXQ6H2FWCaeRak8vvk1GW462lMxB5s3Jm673N82zI4vqtVUPuZdffdZbPDFRoU8kAhItWFtPCWiPpp4/EDg==", + "license": "MIT", + "dependencies": { + "tslib": "^2.8.1" + } + }, + "node_modules/pvutils": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pvutils/-/pvutils-1.2.0.tgz", + "integrity": "sha512-BbubeCEyTuQjVMakvJQ/Sxbc93F2pwmbsxONT/ZRrwU7Ua38d8unYTwXpTVLAKJ4BDuH9IGztCjQcd/N/39Dvg==", + "license": "MIT", + "engines": { + "node": ">=16.0.0" + } + }, "node_modules/qs": { - "version": "6.14.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.14.1.tgz", - "integrity": "sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ==", + "version": "6.15.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.3.tgz", + "integrity": "sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A==", "license": "BSD-3-Clause", "dependencies": { - "side-channel": "^1.1.0" + "es-define-property": "^1.0.1", + "side-channel": "^1.1.1" }, "engines": { "node": ">=0.6" @@ -18681,6 +18900,12 @@ "redux-bundler": "*" } }, + "node_modules/reflect-metadata": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.2.2.tgz", + "integrity": "sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==", + "license": "Apache-2.0" + }, "node_modules/regenerate": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", @@ -19184,9 +19409,9 @@ } }, "node_modules/robust-predicates": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", - "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.3.tgz", + "integrity": "sha512-NS3levdsRIUOmiJ8FZWCP7LG3QpJyrs/TE0Zpf1yvZu8cAJJ6QMW92H1c7kWpdIHo8RvmLxN/o2JXTKHp74lUA==", "license": "Unlicense" }, "node_modules/roughjs": { @@ -19311,9 +19536,9 @@ "license": "Apache-2.0" }, "node_modules/schema-utils": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.2.tgz", - "integrity": "sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==", + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.3.tgz", + "integrity": "sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA==", "license": "MIT", "dependencies": { "@types/json-schema": "^7.0.9", @@ -19356,16 +19581,16 @@ "license": "MIT" }, "node_modules/selfsigned": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", - "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-5.5.0.tgz", + "integrity": "sha512-ftnu3TW4+3eBfLRFnDEkzGxSF/10BJBkaLJuBHZX0kiPS7bRdlpZGu6YGt4KngMkdTwJE6MbjavFpqHvqVt+Ew==", "license": "MIT", "dependencies": { - "@types/node-forge": "^1.3.0", - "node-forge": "^1" + "@peculiar/x509": "^1.14.2", + "pkijs": "^3.3.3" }, "engines": { - "node": ">=10" + "node": ">=18" } }, "node_modules/semver": { @@ -19650,9 +19875,9 @@ } }, "node_modules/shell-quote": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.3.tgz", - "integrity": "sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.10.0.tgz", + "integrity": "sha512-w1aiOKwKuRgtwAReIIj89puqg+I7GvX4IbLrvmhXbzQsj1+Zwi4VO3+fa6ZF91TWSjIxoEkKnMeHcLEODK5ZXA==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -19662,14 +19887,14 @@ } }, "node_modules/side-channel": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", - "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz", + "integrity": "sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==", "license": "MIT", "dependencies": { "es-errors": "^1.3.0", - "object-inspect": "^1.13.3", - "side-channel-list": "^1.0.0", + "object-inspect": "^1.13.4", + "side-channel-list": "^1.0.1", "side-channel-map": "^1.0.1", "side-channel-weakmap": "^1.0.2" }, @@ -19681,13 +19906,13 @@ } }, "node_modules/side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz", + "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==", "license": "MIT", "dependencies": { "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" + "object-inspect": "^1.13.4" }, "engines": { "node": ">= 0.4" @@ -19952,6 +20177,12 @@ "integrity": "sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==", "license": "MIT" }, + "node_modules/strictdom": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strictdom/-/strictdom-1.0.1.tgz", + "integrity": "sha512-cEmp9QeXXRmjj/rVp9oyiqcvyocWab/HaoN4+bwFeZ7QzykJD6L3yD4v12K1x0tHpqRqVpJevN3gW7kyM39Bqg==", + "license": "MIT" + }, "node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -20199,9 +20430,9 @@ } }, "node_modules/sucrase/node_modules/brace-expansion": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.4.tgz", + "integrity": "sha512-hGfVzPxthbf3+2yjg/RBs60cB0FhqBS/zvdV/4wn4/BmN0bNMMHPc4V/BbFieqf1TKAGGAHnY4eSjajCl0f2Xg==", "license": "MIT", "dependencies": { "balanced-match": "^1.0.0" @@ -20258,12 +20489,12 @@ "license": "ISC" }, "node_modules/sucrase/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "version": "9.0.9", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz", + "integrity": "sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==", "license": "ISC", "dependencies": { - "brace-expansion": "^2.0.1" + "brace-expansion": "^2.0.2" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -20408,9 +20639,9 @@ } }, "node_modules/tapable": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.3.tgz", - "integrity": "sha512-ZL6DDuAlRlLGghwcfmSn9sK3Hr6ArtyudlSAiCqQ6IfE+b+HHbydbYDIG15IfS5do+7XQQBdBiubF/cV2dnDzg==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.3.tgz", + "integrity": "sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==", "license": "MIT", "engines": { "node": ">=6" @@ -20421,9 +20652,9 @@ } }, "node_modules/tar": { - "version": "7.5.7", - "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.7.tgz", - "integrity": "sha512-fov56fJiRuThVFXD6o6/Q354S7pnWMJIVlDBYijsTNx6jKSE4pvrDTs6lUnmGvNyfJwFQQwWy3owKz1ucIhveQ==", + "version": "7.5.22", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.22.tgz", + "integrity": "sha512-MFO/QzvtAOmJbkhOaCTvbGcFN9L9b+JunIsDwaKljSOdcLMea3NJ1k9Usz/rjdfSXTq4dfzfeS7W4p4YOAAHeA==", "dev": true, "license": "BlueOak-1.0.0", "dependencies": { @@ -20466,15 +20697,14 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.3.14", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz", - "integrity": "sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.6.1.tgz", + "integrity": "sha512-201R5j+sJpK8nFWwKVyNfZot8FaJbLZDq5evriVzbV1wDtSXDjRUDRfJzHpAaxFDMEhsZL1QkeqM61wgsS3KaQ==", "license": "MIT", "dependencies": { "@jridgewell/trace-mapping": "^0.3.25", "jest-worker": "^27.4.5", "schema-utils": "^4.3.0", - "serialize-javascript": "^6.0.2", "terser": "^5.31.1" }, "engines": { @@ -20488,12 +20718,39 @@ "webpack": "^5.1.0" }, "peerDependenciesMeta": { + "@minify-html/node": { + "optional": true + }, "@swc/core": { "optional": true }, + "@swc/css": { + "optional": true + }, + "@swc/html": { + "optional": true + }, + "clean-css": { + "optional": true + }, + "cssnano": { + "optional": true + }, + "csso": { + "optional": true + }, "esbuild": { "optional": true }, + "html-minifier-terser": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "postcss": { + "optional": true + }, "uglify-js": { "optional": true } @@ -20712,6 +20969,24 @@ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "license": "0BSD" }, + "node_modules/tsyringe": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/tsyringe/-/tsyringe-4.10.0.tgz", + "integrity": "sha512-axr3IdNuVIxnaK5XGEUFTu3YmAQ6lllgrvqfEoR16g/HGnYY/6We4oWENtAnzK6/LpJ2ur9PAb80RBt7/U4ugw==", + "license": "MIT", + "dependencies": { + "tslib": "^1.9.3" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/tsyringe/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "license": "0BSD" + }, "node_modules/type-fest": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", @@ -21326,62 +21601,12 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/vscode-jsonrpc": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.2.0.tgz", - "integrity": "sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==", - "license": "MIT", - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/vscode-languageserver": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-9.0.1.tgz", - "integrity": "sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==", - "license": "MIT", - "dependencies": { - "vscode-languageserver-protocol": "3.17.5" - }, - "bin": { - "installServerIntoExtension": "bin/installServerIntoExtension" - } - }, - "node_modules/vscode-languageserver-protocol": { - "version": "3.17.5", - "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.5.tgz", - "integrity": "sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==", - "license": "MIT", - "dependencies": { - "vscode-jsonrpc": "8.2.0", - "vscode-languageserver-types": "3.17.5" - } - }, - "node_modules/vscode-languageserver-textdocument": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.12.tgz", - "integrity": "sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==", - "license": "MIT" - }, - "node_modules/vscode-languageserver-types": { - "version": "3.17.5", - "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.5.tgz", - "integrity": "sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==", - "license": "MIT" - }, - "node_modules/vscode-uri": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz", - "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==", - "license": "MIT" - }, "node_modules/watchpack": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.4.tgz", - "integrity": "sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.5.2.tgz", + "integrity": "sha512-6i/00NBjP4yGPs+caKSyRfpTF/8Torsu0MOW3mMzIbhgISFder8i7xbqgHlLMwJrdiN8ndBV3UA1/AfzPSr+jg==", "license": "MIT", "dependencies": { - "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.1.2" }, "engines": { @@ -21408,36 +21633,31 @@ } }, "node_modules/webpack": { - "version": "5.101.3", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.101.3.tgz", - "integrity": "sha512-7b0dTKR3Ed//AD/6kkx/o7duS8H3f1a4w3BYpIriX4BzIhjkn4teo05cptsxvLesHFKK5KObnadmCHBwGc+51A==", + "version": "5.109.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.109.2.tgz", + "integrity": "sha512-U9/cvLzxObKNEZ9+TtdqrHM5/9z3lgl2c+c4BzbqGxFQvQvBAq87yql5A8pQ+rrMbS496MZJeF5enVBndIy2hw==", "license": "MIT", "dependencies": { - "@types/eslint-scope": "^3.7.7", "@types/estree": "^1.0.8", "@types/json-schema": "^7.0.15", "@webassemblyjs/ast": "^1.14.1", "@webassemblyjs/wasm-edit": "^1.14.1", "@webassemblyjs/wasm-parser": "^1.14.1", - "acorn": "^8.15.0", - "acorn-import-phases": "^1.0.3", - "browserslist": "^4.24.0", + "acorn": "^8.16.0", + "browserslist": "^4.28.1", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.3", - "es-module-lexer": "^1.2.1", + "enhanced-resolve": "^5.24.4", + "es-module-lexer": "^2.1.0", "eslint-scope": "5.1.1", "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.2.11", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", + "mime-db": "^1.54.0", + "minimizer-webpack-plugin": "^5.6.1", "neo-async": "^2.6.2", - "schema-utils": "^4.3.2", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.11", - "watchpack": "^2.4.1", - "webpack-sources": "^3.3.3" + "schema-utils": "^4.3.3", + "tapable": "^2.3.0", + "watchpack": "^2.5.2", + "webpack-sources": "^3.5.1" }, "bin": { "webpack": "bin/webpack.js" @@ -21550,14 +21770,14 @@ } }, "node_modules/webpack-dev-server": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-5.2.2.tgz", - "integrity": "sha512-QcQ72gh8a+7JO63TAx/6XZf/CWhgMzu5m0QirvPfGvptOusAxG12w2+aua1Jkjr7hzaWDnJ2n6JFeexMHI+Zjg==", + "version": "5.2.6", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-5.2.6.tgz", + "integrity": "sha512-HNLRmamRvVavZQ+avceZifmv8hmdUjg43t6MI4SqJDwFdW7RPQwH5vzGhDRZSX59SgfbeHhLnq3g+uooWo7pVw==", "license": "MIT", "dependencies": { "@types/bonjour": "^3.5.13", "@types/connect-history-api-fallback": "^1.5.4", - "@types/express": "^4.17.21", + "@types/express": "^4.17.25", "@types/express-serve-static-core": "^4.17.21", "@types/serve-index": "^1.9.4", "@types/serve-static": "^1.15.5", @@ -21567,17 +21787,17 @@ "bonjour-service": "^1.2.1", "chokidar": "^3.6.0", "colorette": "^2.0.10", - "compression": "^1.7.4", + "compression": "^1.8.1", "connect-history-api-fallback": "^2.0.0", - "express": "^4.21.2", + "express": "^4.22.1", "graceful-fs": "^4.2.6", "http-proxy-middleware": "^2.0.9", "ipaddr.js": "^2.1.0", - "launch-editor": "^2.6.1", + "launch-editor": "^2.14.1", "open": "^10.0.3", "p-retry": "^6.2.0", "schema-utils": "^4.2.0", - "selfsigned": "^2.4.1", + "selfsigned": "^5.5.0", "serve-index": "^1.9.1", "sockjs": "^0.3.24", "spdy": "^4.0.2", @@ -21637,9 +21857,9 @@ } }, "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.18.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", - "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", + "version": "8.21.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.3.tgz", + "integrity": "sha512-201TZ/kPWxoPr/OKWjquZR1SWKXcvxdH+e1xrx89b3YbmzLMFCLfnaG1HFIgWzJOEWZ7MvpK++odZufgYR50Rw==", "license": "MIT", "engines": { "node": ">=10.0.0" @@ -21672,31 +21892,19 @@ } }, "node_modules/webpack-sources": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.3.3.tgz", - "integrity": "sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg==", + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.5.1.tgz", + "integrity": "sha512-jyuiGJdtvY434z5bUZrjz67v76/ePNvFZTp9Mdz29IlH4+GPsgyGjiv0fKI+M7BdkU6ADjulUcKAd3tUK3WlEw==", "license": "MIT", "engines": { "node": ">=10.13.0" } }, "node_modules/webpack/node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/webpack/node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", "license": "MIT", - "dependencies": { - "mime-db": "1.52.0" - }, "engines": { "node": ">= 0.6" } @@ -21729,9 +21937,9 @@ } }, "node_modules/websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.5.tgz", + "integrity": "sha512-ZL2+3c7kMBdIRCMz6l8jQMHyGVxj+UL+xVk74Ombiciboca8rHa15L86B19E5oh1pL9Ii/uj54gtsIrZGMo6zA==", "license": "Apache-2.0", "dependencies": { "http-parser-js": ">=0.5.1", @@ -21888,9 +22096,9 @@ } }, "node_modules/ws": { - "version": "7.5.10", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", - "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "version": "7.5.13", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.13.tgz", + "integrity": "sha512-rsKI6xDBFVf4r/x8XyChGK04QR/XHroxs/jUcoWvtEZM8TPU/X/uIY9B1CsSzYws9ZJb/6bbBu7dPhFW00CAoA==", "license": "MIT", "engines": { "node": ">=8.3.0" @@ -21978,15 +22186,18 @@ "license": "ISC" }, "node_modules/yaml": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz", - "integrity": "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.9.0.tgz", + "integrity": "sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==", "license": "ISC", "bin": { "yaml": "bin.mjs" }, "engines": { "node": ">= 14.6" + }, + "funding": { + "url": "https://github.com/sponsors/eemeli" } }, "node_modules/yocto-queue": { diff --git a/package.json b/package.json index e6bf08bf0..e4faf337f 100644 --- a/package.json +++ b/package.json @@ -57,7 +57,7 @@ "cross-env": "^7.0.3", "ffmpeg-static": "^5.3.0", "postcss": "^8.5.6", - "prettier": "^3.6.2", + "prettier": "3.9.6", "prettier-plugin-tailwindcss": "^0.6.14" }, "browserslist": { diff --git a/src/components/DraftNotice.js b/src/components/DraftNotice.js index 547a8af56..51bb75734 100644 --- a/src/components/DraftNotice.js +++ b/src/components/DraftNotice.js @@ -1,4 +1,5 @@ import { useLocation } from '@docusaurus/router'; +import useBaseUrl from '@docusaurus/useBaseUrl'; import latestVersions from '@site/static/versions/latestVersions.json'; import { draftDocs } from '../draftDocs'; @@ -20,18 +21,21 @@ import { draftDocs } from '../draftDocs'; export const DRAFT_STATUS_TEXT = 'This document is pending final approval by the RMC Director.'; -function getDocInfo(pathname) { - const stripped = pathname - .replace(/^\/RMC-Software-Documentation\/docs\//, '') - .replace(/^\/docs\//, '') - .replace(/^docs\//, ''); +function getDocInfo(pathname, docsBase) { + // docsBase is derived from siteConfig.baseUrl, so this resolves under every + // deployment target: local dev ('/docs/'), production + // ('/RMC-Software-Documentation/docs/') and PR previews + // ('/RMC-Software-Documentation-Previews/pr-/docs/'). Hardcoding the known + // prefixes here silently disabled the strip on any base path not listed. + if (!pathname.startsWith(docsBase)) return null; + const stripped = pathname.slice(docsBase.length); const match = stripped.match(/^(.+?)\/(v\d+\.\d+(?:\.\d+)?)(?:\/|$)/); if (!match) return null; return { docBasePath: match[1], version: match[2] }; } -function isDraftPath(pathname) { - const info = getDocInfo(pathname); +function isDraftPath(pathname, docsBase) { + const info = getDocInfo(pathname, docsBase); if (!info) return false; const isFlagged = draftDocs.some((base) => info.docBasePath === base || info.docBasePath.startsWith(base + '/')); if (!isFlagged) return false; @@ -43,7 +47,8 @@ function isDraftPath(pathname) { /** True when the current route is the latest version of a doc flagged `draft: true`. */ export function useIsDraftDoc() { const location = useLocation(); - return isDraftPath(location.pathname); + const docsBase = useBaseUrl('docs/'); + return isDraftPath(location.pathname, docsBase); } /** diff --git a/src/components/TableChangelog.js b/src/components/TableChangelog.js index 5fef13e2d..fc2025957 100644 --- a/src/components/TableChangelog.js +++ b/src/components/TableChangelog.js @@ -5,7 +5,8 @@ const TableChangelog = ({ dates = [], categories = [], documents = [], versions const HEADERS = ['Date', 'Category', 'Document', 'Version', 'Description']; const COL_WIDTHS = ['11%', '13%', '20%', '8%', '48%']; - const HEADERS_ALIGN = ['left', 'left', 'left', 'center', 'left']; + const HEADERS_ALIGN = ['left', 'left', 'left', 'left', 'left']; + const CELL = { textAlign: 'left', verticalAlign: 'top' }; const get = (arr, i) => (Array.isArray(arr) ? arr[i] : undefined) ?? ''; @@ -57,30 +58,30 @@ const TableChangelog = ({ dates = [], categories = [], documents = [], versions return ( {dateSpan > 0 && ( - + {date} )} - + {category} {doc} - + {version} {Array.isArray(desc) ? ( desc.length > 1 ? ( diff --git a/src/docConfig.js b/src/docConfig.js index b159ee860..5595bc10c 100644 --- a/src/docConfig.js +++ b/src/docConfig.js @@ -52,17 +52,17 @@ const docs = [ { category: 'desktop-applications', software: 'lifesim', - doc_location: 'desktop-applications/lifesim/validation-studies', - doc_name: 'LifeSim Validation Studies', + doc_location: 'desktop-applications/lifesim/applications-guide', + doc_name: 'LifeSim Applications Guide', active: true, - draft: false, + draft: true, }, { category: 'desktop-applications', software: 'lifesim', - doc_location: 'desktop-applications/lifesim/applications-guide', - doc_name: 'LifeSim Applications Guide', - active: false, + doc_location: 'desktop-applications/lifesim/validation-studies', + doc_name: 'LifeSim Validation Studies', + active: true, draft: false, }, diff --git a/src/pages/changelog.js b/src/pages/changelog.js index ed2155c7e..12c72c45a 100644 --- a/src/pages/changelog.js +++ b/src/pages/changelog.js @@ -15,9 +15,28 @@ export default function Changelog() {