Package: cranes
Cordons inRecoveryAssessments ofNeighborhoods followingEarthquakeSimulationsWhat is it?cranesis a Python package that implements the recovery simulation framework described in Hulsey, A.M., Baker, J.W., Deierlein, G.G. (2021) "High-resolution post-earthquake recovery simulation: Impact of safety cordons."Earthquake Spectra. (In Review)What can I use it for?cranesperforms post-earthquake recovery assessments at the community-level, using a building inventory (with accompanying vulnerability profiles) and regional ground motion maps to simulate damage, the resulting safety cordons around tall buildings with impaired collapse safety, and the recovery process for each building in the community. The results are presented as recovery curves that quantify the cumulative loss in building functionality across the community as a function of time. The full set of recovery curves reflects the uncertainty in both the shaking intensity due to a scenario earthquake and the vulnerability of the buildings to the shaking. These results are further distilled into scalar metrics for the expected loss of functionality in the first year and the probability of achieving the community's recovery targets. These metrics are useful for investigating the efficacy of various mitigation strategies to expedite recovery.How does it work?cranessimulates many realizations of community damage and recovery to account for the uncertainty in both the shaking intensity due to a scenario earthquake and the vulnerability of the buildings to the shaking. This method of handling uncertainty (known as Monte Carlo simulation) is consistent with many state of the art practices for individual building performance assessments (e.gFEMA P-58). Each community realization is based on a unique ground motion map, sampled from a set of maps that collectively represents the potential variability in shaking intensities that could be generated by the scenario earthquake. (See theseaturtlesPython package for more details.) The uncertainty of each building's vulnerability to ground shaking is represented by a "vulnerability profile" -  set of storedFEMA P-58realizations for the potential range of post-earthquake conditions. Each building's condition is sampled from its vulnerability profile, based on the map's relevant shaking intensity (considering the site location, soil conditions, and the building period). Once each building's post-earthquake condition is sampled, safety cordons are assigned to tall buildings with impaired collapse safety. The presence of these cordons is then included among each neighboring building's impeding factors that must be resolved prior to initiating building repairs. (See theREDimethodology for details on simulating the impeding factor durations.) The impeding factor durations and repair times are summed to obtain recovery times for each building, which can then be aggregated to track the community recovery over time.How can I get started?You can get oriented with the example hosted at DesignSafe, doi:10.17603/ds2-dpam-dm40.Theoutputsfolder contains results of the case study in Hulsey et al. (2021):case_study_results.h5: 	results of the case studymedian_ground_motion_comparison_results.h5: 	results without considering the variability of the ground motionsYou can explore these results using the Jupyter Notebooks included in thejournal figuresfolder. While they were created to produce the figures in Hulsey et at. (2021), they also serve as an orientation for accessing, viewing, and understanding the data.Theinputsfolder contains the data used to simulate the case study results.SF_Downtown_Inventory.csv: 	locations and attributes of each buildings in the case study areaMw7.2_SanAndreas_GroundMotionMaps.h5: 	simulated ground motion mapsVulnerabilities_original.h5: 	building vulnerability profiles for each buildingVulnerabilities_retrofits.h5: 	building vulnerability profiles, assuming the retrofitted buildings conform to current design requirementsYou can use these inputs to re-simulate the results via theRun Recovery SimulationJupyter Notebook.Note that the analysis is probabilistic so the new results will not be identical to those incase_study_resultsfile.Alternatively, you can modify the assumptions in each analysis case to consider other mitigation strategies or sensitivity analyses or import your own input files. It would be helpful to explore how each analysis case is stored in the results file before making modifications.Installationcranesis available at the Python Package Index (PyPI). You can simply install it usingpipas follows:pip install cranesLicensecranesis distributed under the MIT license, seeLICENSE.ContactAnne Hulsey, University of Auckland,anne.hulsey@auckland.ac.nz