Giter VIP home page Giter VIP logo

ezgm's Introduction

EzGM

Toolbox for ground motion record selection and processing.

DOI


Getting Started

import EzGM

The package has three different modules:

  1. EzGM.selection deals with the record selection. It can be used to perform unconditional or conditional spectrum based selection in which intensity measure can be chosen as Sa(T*) or AvgSa(T*). The tool makes use of OpenQuake hazard library and thus any available ground motion prediction equation available can directly be used (see Example 1).
    It can also be used to perform the selection based on Turkish Building Earthquake Code, TBEC-2018, ASCE 7-16, and Eurocode 8 Part 1 (see Example 2).
    Currently, the records can be selected from the two publicly available databases: NGA_W2 and ESM_2018. The original flat-files for these databases were modified by discarding the records which are not possible to download.
    The database files which include features to perform record selection are stored as .mat files in path/to/EzGM/Meta_Data. If the user desires to use/add another database such as ESM_2018.mat, s/he must stick to the same format in publicly available databases.
    Upon performing ground motion record selection/scaling if user desires to get formatted records, for the given metadata, s/he should place the available records from metadata file into the Records.zip with the name of database, e.g. ESM_2018.zip for database ESM_2018.
    In case of publicly available databases, the user can also download the records directly by using the associated methods since the records are not generally available beforehand. To use ESM_2018 database, the user must have access token (path/to/current/directory/token.txt) from https://esm-db.eu. The token can be retrieved using EzGM as well (see Example 1). In order to use NGA_W2 database, user must have account obtained from https://ngawest2.berkeley.edu.
  2. EzGM.utility can be used to post-process results of probabilistic seismic hazard analysis (PSHA) from OpenQuake.Engine. Its methods can be used to read and visualize seismic hazard curves and seismic disaggregation results. The module can be particularly useful while performing conditional spectrum (CS) based record selection for multiple-stripe analysis (MSA) (see Example 3).
  3. EzGM.signal can be used to process ground motion records. It contains methods for filtering, baseline correction, and intensity measure calculations (see Example 4).

At the moment, no documentation is available for EzGM; hence, users are recommended to see the jupyter notebook examples to get familiar with EzGM. These can be accessed and run through binder which is an online service to deploy interactive computational environments for online repositories. For EzGM examples, see:

Binder


Installation

  • EzGM downloads google-chrome or firefox webdriver while executing ngaw2_download method. Therefore, user-specified browser ('chrome' or 'firefox') must be readily available.
  • EzGM requires several other packages:
    openquake.engine==3.14.0; numba==0.55.1; selenium==4.1.3; beautifulsoup4==4.11.1; tqdm==4.64.0; h5py==3.1.0; matplotlib==3.1.3
  • The package management system pip can be used to install EzGM (python >=3.7, <3.9).
pip install EzGM

Acknowledgements

Special thanks to Besim Yukselen for his help in the development of ngaw2_download method, and Gerard J. O'Reilly for sharing his knowledge in the field with me. The EzGM.selection.conditional_spectrum method is greatly inspired by Prof. Jack W. Baker whom I thank for sharing his work with the research community.


References

The references associated with each method are provided as the docstring. If you are going to use the code presented herein for any official study, please refer to:
Volkan Ozsarac, Ricardo Monteiro & Gian Michele Calvi (2021). Probabilistic seismic assessment of reinforced concrete bridges using simulated records, Structure and Infrastructure Engineering, DOI: 10.1080/15732479.2021.1956551


Potential Improvements

  • Computation of the exact CS
  • Addition of 3 component selection
  • Addition of spectral matching methods
  • Addition of generalized conditional intensity measure approach (GCIM)
  • Addition of alternative code-based ground motion selection procedures

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.