地球物理程式開發

地球物理學|課程導覽與實作任務
結合理論 × 資料處理 × 實作

用地球物理思維,打造你的資料與工程能力

本課以「地球物理知識」與「資料處理技能」雙軸並進:從地球結構、地震學、折射探勘學到 ObsPyPyGMTStreamlit/Gradio。 我們以真實案例(花蓮地震)帶你完成資料取得、處理、分析、視覺化與報告的完整流程。

本課重點(Course Objectives)

  • 理解地球物理的核心概念與常見應用場景(工程、減災、能源)。
  • 建立可複製的資料工作流:資料取得 → 清理 → 分析 → 視覺化 → 溝通。
  • 熟悉 Python/ObsPy/PyGMT雲端開發環境(Colab、Codespaces)。
  • 產出一份「可展示」的成果頁(報告/互動網頁/小工具)。
🔒 安全第一 · 資料與系統操作請遵守實驗室規範

課程介紹與結構

地球物理知識

板塊構造、地震波、地球內部結構、折射探勘、資料詮釋。

資料處理技能

Python 基礎、ObsPy 讀取波形、PyGMT 製圖、Gradio/Streamlit 建站。

作品導向

每階段有小任務,期末整合成可上線的互動頁或專題報告。

週次進度(節選)

第 1 週 · 課程介紹
說明上課方式、評分、學習資源;地球物理概要 環境建置:註冊 Google / Hugging Face / GitHub;試用 Colab、Codespaces。
第 2 週 · 折射探勘學 × 工具實作
理論:速度構造與臨界折射;實作:PyGMT 製作剖面地圖、ObsPy 讀取波形、Gradio 簡易 UI。
第 3 週 · 校園野外實驗(折射探勘)
分組佈設、資料記錄與品質控管;建立「觀測記錄表」並回傳原始檔。
第 4 週 · 地震學專題
P/S 波基本理論、走時曲線、震源參數估計;以真實案例驗證流程。

工具與帳號(必備清單)

雲端環境

  • Google Colab(免安裝、快速試作)
  • GitHub Codespaces(可重現、團隊協作)

Python 套件

  • ObsPy(地震波形 I/O 與處理)
  • PyGMT(地理製圖)
  • Matplotlib / Numpy / Pandas

作品呈現

  • Gradio / Streamlit(互動介面)
  • Hugging Face Spaces / GitHub Pages(上線)

*建議先在 Colab 完成原型,再搬到 Codespaces 版本控管與最終上線。

實際案例|2024-04-03 花蓮近海地震

案例背景

2024 年 4 月 3 日,臺灣花蓮近海發生強震;不同機構報導規模略有差異(如 CWA 約 Mw 7.2、USGS 約 Mw 7.4)。 本案例示範:資料取得 → 事件篩選 → 波形處理 → 震央地圖 → 強度概念

步驟說明
資料來源開放地震資料服務(如 FDSN/IRIS 或本地資料庫)
關鍵資料事件時間、震央位置、深度、規模、觀測站波形
處理流程去趨勢、去平均、濾波、P/S 波初動判讀、到時估算
視覺化PyGMT 震央與測站分布、Matplotlib 走時與波形片段

小實作(縮短版指引)

  1. 使用 ObsPy 下載指定時間範圍內的事件與測站清單。
  2. 抓取 5–10 個測站的短時窗波形(事件後 2–4 分鐘)。
  3. 對每條波形做去趨勢、去平均與 bandpass 濾波(例如 0.5–10 Hz)。
  4. 在圖上標出疑似 P 波初動點,並比較站距 vs. 到時。
  5. 用 PyGMT 繪製震央、測站、等距圈(great circle)示意圖。

延伸:比較不同濾波參數對初動判讀的影響;嘗試自動化 picker(如 classic STA/LTA)。

討論引導(Report 提示)

  • 不同資料來源之規模與位置為何略有差異?影響解讀與應用嗎?
  • P/S 波到時能否支持你對震央方位的直覺?有無明顯站台「異常」?
  • 如果要做「簡易即時強度估計」,你需要哪些額外資訊?

學習任務與評量

任務 A|環境建置

完成 Colab 與 Codespaces 測試;能在 Python 中印出 obspy.__version__pygmt.__version__

任務 B|資料處理

以花蓮地震為例,截取 3 個測站波形,完成前處理與初動標記,輸出波形圖。

任務 C|地圖與報告

使用 PyGMT 畫出震央與測站分布圖,撰寫 1–2 頁討論(方法、結果、限制、未來工作)。

評量建議

  • 過程重現性(程式碼與 README 清楚、可在助教端重跑)。
  • 圖表品質(標示完整、單位與圖例正確、配色一致)。
  • 討論深度(不只描述結果,也反思不確定性與限制)。

常見問題(FAQ)

需要在自己電腦安裝所有套件嗎?
不一定。建議先用 Colab 快速跑通,再到 Codespaces 建立可重現環境,最後再考慮本機安裝。
地圖一定要用 PyGMT 嗎?
不強制,但 PyGMT 的地理底圖與投影很方便。如果你想用 Cartopy 或 Folium 也可,重點是圖面資訊完整。
我沒有真實測站資料怎麼辦?
可用公開 FDSN/IRIS 下載示例資料,或與助教申請教學用資料集。
Geophysics · Course

本頁面僅供教學使用;資料來源以各官方機構公告為準。©

建議瀏覽器:Chrome / Edge / Firefox。字體:Noto Sans TC。自動支援深淺色。

留言