Repositori untuk menyimpan material Long Course STMKGxHMGI tentang Geophysical Python for Seismic Data Analysis

Overview

header_image

Long Course

"Geophysical Python for Seismic Data Analysis"

Instruktur: Dr.rer.nat. Wiwit Suryanto, M.Si

Dipersiapkan oleh: Anang Sahroni

Waktu:

Sesi 1: 18 September 2021

Sesi 2: 25 September 2021

Tempat: Zoom Meeting

Agenda: Memberikan wawasan kepada mahasiswa Geofisika dalam pengolahan data Geofisika: pemrosesan data seismik menggunakan python.

Luaran

  1. Peserta dapat melakukan instalasi Python
  2. Peserta dapat membuat dan menggunakan Jupyter Notebook
  3. Peserta dapat membaca, memfilter, dan mengeplot peta dan statistik gempa bumi menggunakan modul umum Python seperti numpy, scipy, dan matplotlib
  4. Peserta dapat menentukan parameter gempa menggunakan metode yang sederhana pada Python memanfaatkan modul seismologi seperti obspy

Peralatan untuk peserta

Laptop ataupun Personal Computer (PC) yang terkoneksi dengan internet.
Jika hendak menjalankan kode tanpa instalasi bisa melalui: Binder

Data:

  1. Katalog Gempa Bumi Badan Meteorologi Klimatologi dan Geofisika (BMKG)
  2. Titik-titik Stasiun untuk berbagai jaringan seismometer

Jadwal

Topik
PRESESI: 17 September 2021
Instalasi Python dalam Miniconda atau PDF
1. Instalasi Miniconda pada Windows, Linux, ataupun MacOS
2. Menjalankan Python Console melalui Anaconda Prompt
3. Menulis kode dalam editor (Integrated Development Environment/IDE) kode dan menjalankannya melalui Anaconda Prompt
4. Pengenalan IDE dan beberapa contohnya
5. Menginstall pandas, numpy, matplotlib, scipy, Cartopy, dan notebook menggunakan Anaconda Prompt pada virtual environment
6. Menjalankan kode sederhana di Jupyter Notebook
7. Memanggil fungsi bawaan python (math), mencoba, dan memanggil bantuan (help) untuk masing-masing fungsi
8. Memberikan catatan dan gambar dalam bentuk Markdown di Jupyter Notebook
9. Menyimpan notebook pada repositori Github dan menambahkan ke Binder
10. Mengupdate notebook dan melakukan commit ke repositori
EXERCISE: Membuat panduan instalasi Miniconda pada Jupyter Notebook dan menambahkannya di repositori Github individu.
SESI 1: 18 September 2021
Introduction to geophysical programming using python: basic python for seismology Materi 1 (PDF/Open In Colab) dan Materi 2 (PDF/Open In Colab) atau Binder
1. Membaca data katalog menggunakan pandas
2. Membedakan jenis-jenis data antar kolom pada katalog (String, Integer, dan Float)
3. Mengambil salah satu kolom ke dalam bentuk List dan mempelajari metode-metode pada List (indexing, slicing, append, dan lain sebagainya)
4. Menggunakan for loop untuk mengkonversi format String menjadi datetime untuk waktu kejadian
5. Menggunakan conditional untuk memfilter katalog berdasarkan besar magnitudo atau waktu
6. Membuat fungsi untuk memfilter katalog berdasarkan kedalaman dan menyimpannya menjadi modul siap impor
7. Membuat plot magnitudo dengan jumlah kejadian dan waktu kejadian (dapat berupa G-R Plot atau plot sederhana)
8. Mengkombinasikan List latitude dan longitude untuk mengeplot episenter
9. Mengintegrasikan kolom magnitude untuk membedakan ukuran titik titik plot
10. Mengintegrasikan kolom kedalaman untuk membedakan warna titik plot
11. Menambahkan basemap pada plot Menggunakan Cartopy
EXERCISE: Membaca file titik stasiun, memfilter berdasarkan network, dan mengeplotnya bersama dengan titik-titik gempa.
SESI 2: 25 September 2021
Source Mechanism and processing seismic data with python : Determine earthquake epicenter, hypocenter, and type of P Wave
Jika menggunakan komputer lokal silahkan install modul yang dibutuhkan pada sesi dua dengan cara: conda install -c conda-forge xarray rasterio tqdm
1. Menentukan episenter dengan metode lingkaran Materi
2. Menentukan hiposenter dengan metode Geiger dan probabilistik Materi 1, Materi 2
3. Pengenalan pengolahan waveform dengan obspy Materi

Software untuk diinstall

  1. Miniconda. Instalasi Python akan dilakukan menggunakan Anaconda Distribution dalam bentuk lite yaitu Miniconda. Dengan Miniconda instalasi paket atau modul pendukung untuk Python akan lebih mudah dan tertata. Unduh installer Miniconda, pilih untuk versi Python 3.8.
  2. Editor teks agar penulisan kode lebih mudah karena biasanya sudah disertai pewarnaan kode (syntax highlighting) dan indentasi otomatis. Editor teks dapat menggunakan Notepad++, SublimeText, atau menggunakan IDE yang lebih kompleks seperti PyCharm dan Visual Studio Code.

Software-software yang dibutuhkan tersebut sudah harus diinstall sebelum proses pemberian materi dimulai karena ukurannya cukup besar.

Akun Github

Peserta workshop dianjurkan mendaftarkan akun GitHub melalui Daftar Github

Bacaan Tambahan:

Peserta dapat belajar pada Lesson di Software Carpentry dengan materi yang mendalam dan metode yang sama yaitu learning by doing.

Referensi

Panduan ini disusun terinspirasi dari materi pada Software Carpentry, materi inversi hiposenter probabilistik Igel & Geßele di Seismo Live,panduan workshop Leonardo Uieda pada repositori, serta Lisa Itauxe Python for ES Student berikut ini.

You might also like...
Tablexplore is an application for data analysis and plotting built in Python using the PySide2/Qt toolkit.
Tablexplore is an application for data analysis and plotting built in Python using the PySide2/Qt toolkit.

Tablexplore is an application for data analysis and plotting built in Python using the PySide2/Qt toolkit.

 A data analysis using python and pandas to showcase trends in school performance.
A data analysis using python and pandas to showcase trends in school performance.

A data analysis using python and pandas to showcase trends in school performance. A data analysis to showcase trends in school performance using Panda

A collection of learning outcomes data analysis using Python and SQL, from DQLab.
A collection of learning outcomes data analysis using Python and SQL, from DQLab.

Data Analyst with PYTHON Data Analyst berperan dalam menghasilkan analisa data serta mempresentasikan insight untuk membantu proses pengambilan keputu

DaDRA (day-druh) is a Python library for Data-Driven Reachability Analysis.
DaDRA (day-druh) is a Python library for Data-Driven Reachability Analysis.

DaDRA (day-druh) is a Python library for Data-Driven Reachability Analysis. The main goal of the package is to accelerate the process of computing estimates of forward reachable sets for nonlinear dynamical systems.

Python-based Space Physics Environment Data Analysis Software

pySPEDAS pySPEDAS is an implementation of the SPEDAS framework for Python. The Space Physics Environment Data Analysis Software (SPEDAS) framework is

Python Project on Pro Data Analysis Track

Udacity-BikeShare-Project: Python Project on Pro Data Analysis Track Basic Data Exploration with pandas on Bikeshare Data Basic Udacity project using

Sentiment analysis on streaming twitter data using Spark Structured Streaming & Python
Sentiment analysis on streaming twitter data using Spark Structured Streaming & Python

Sentiment analysis on streaming twitter data using Spark Structured Streaming & Python This project is a good starting point for those who have little

 Project under the certification
Project under the certification "Data Analysis with Python" on FreeCodeCamp

Sea Level Predictor Assignment You will anaylize a dataset of the global average sea level change since 1880. You will use the data to predict the sea

Larch: Applications and Python Library for Data Analysis of X-ray Absorption Spectroscopy (XAS, XANES, XAFS, EXAFS), X-ray Fluorescence (XRF) Spectroscopy and Imaging

Larch: Data Analysis Tools for X-ray Spectroscopy and More Documentation: http://xraypy.github.io/xraylarch Code: http://github.com/xraypy/xraylarch L

Releases(v1.0.0)
Owner
Anang Sahroni
newbie/amateur
Anang Sahroni
A distributed block-based data storage and compute engine

Nebula is an extremely-fast end-to-end interactive big data analytics solution. Nebula is designed as a high-performance columnar data storage and tabular OLAP engine.

Columns AI 131 Dec 26, 2022
PyClustering is a Python, C++ data mining library.

pyclustering is a Python, C++ data mining library (clustering algorithm, oscillatory networks, neural networks). The library provides Python and C++ implementations (C++ pyclustering library) of each

Andrei Novikov 1k Jan 05, 2023
PipeChain is a utility library for creating functional pipelines.

PipeChain Motivation PipeChain is a utility library for creating functional pipelines. Let's start with a motivating example. We have a list of Austra

Michael Milton 2 Aug 07, 2022
Sample code for Harry's Airflow online trainng course

Sample code for Harry's Airflow online trainng course You can find the videos on youtube or bilibili. I am working on adding below things: the slide p

102 Dec 30, 2022
A lightweight, hub-and-spoke dashboard for multi-account Data Science projects

A lightweight, hub-and-spoke dashboard for cross-account Data Science Projects Introduction Modern Data Science environments often involve many indepe

AWS Samples 3 Oct 30, 2021
Retentioneering 581 Jan 07, 2023
A 2-dimensional physics engine written in Cairo

A 2-dimensional physics engine written in Cairo

Topology 38 Nov 16, 2022
Aggregating gridded data (xarray) to polygons

A package to aggregate gridded data in xarray to polygons in geopandas using area-weighting from the relative area overlaps between pixels and polygons. Check out the binder link above for a sample c

Kevin Schwarzwald 42 Nov 09, 2022
MetPy is a collection of tools in Python for reading, visualizing and performing calculations with weather data.

MetPy MetPy is a collection of tools in Python for reading, visualizing and performing calculations with weather data. MetPy follows semantic versioni

Unidata 971 Dec 25, 2022
sportsdataverse python package

sportsdataverse-py See CHANGELOG.md for details. The goal of sportsdataverse-py is to provide the community with a python package for working with spo

Saiem Gilani 37 Dec 27, 2022
Using approximate bayesian posteriors in deep nets for active learning

Bayesian Active Learning (BaaL) BaaL is an active learning library developed at ElementAI. This repository contains techniques and reusable components

ElementAI 687 Dec 25, 2022
ETL pipeline on movie data using Python and postgreSQL

Movies-ETL ETL pipeline on movie data using Python and postgreSQL Overview This project consisted on a automated Extraction, Transformation and Load p

Juan Nicolas Serrano 0 Jul 07, 2021
Driver Analysis with Factors and Forests: An Automated Data Science Tool using Python

Driver Analysis with Factors and Forests: An Automated Data Science Tool using Python 📊

Thomas 2 May 26, 2022
Creating a statistical model to predict 10 year treasury yields

Predicting 10-Year Treasury Yields Intitially, I wanted to see if the volatility in the stock market, represented by the VIX index (data source), had

10 Oct 27, 2021
Deep universal probabilistic programming with Python and PyTorch

Getting Started | Documentation | Community | Contributing Pyro is a flexible, scalable deep probabilistic programming library built on PyTorch. Notab

7.7k Dec 30, 2022
WithPipe is a simple utility for functional piping in Python.

A utility for functional piping in Python that allows you to access any function in any scope as a partial.

Michael Milton 1 Oct 26, 2021
X-news - Pipeline data use scrapy, kafka, spark streaming, spark ML and elasticsearch, Kibana

X-news - Pipeline data use scrapy, kafka, spark streaming, spark ML and elasticsearch, Kibana

Nguyễn Quang Huy 5 Sep 28, 2022
MeSH2Matrix - A set of Python codes for the generation of biomedical ontologies from the MeSH keywords of the PubMed scholarly publications

A set of Python codes for the generation of biomedical ontologies from the MeSH keywords of the PubMed scholarly publications

SisonkeBiotik 6 Nov 30, 2022
PyEmits, a python package for easy manipulation in time-series data.

PyEmits, a python package for easy manipulation in time-series data. Time-series data is very common in real life. Engineering FSI industry (Financial

Thompson 5 Sep 23, 2022
Synthetic Data Generation for tabular, relational and time series data.

An Open Source Project from the Data to AI Lab, at MIT Website: https://sdv.dev Documentation: https://sdv.dev/SDV User Guides Developer Guides Github

The Synthetic Data Vault Project 1.2k Jan 07, 2023