地震学初步入门材料清单
文章目录
1. Computer
1.1 Operating system
Linux
MacOS
1.2 Linux
Linux basis
- The Linux Command Line
- UNIX Tutorial for Beginners
- 鸟哥的 Linux 私房菜 (CentOS)
- Linux学习笔记: by 华为工程师 (提取码 7v19)
Linux command
- Command search
- Commands for data processing: gawk, awk, cut, grep, wc, sort, uniq
- Commands for compressing files: tar, gzip, bzip2
- Other commonly-used commands: cat, touch, head, tail, which, locate, paste, printf, sed
- Introduction to Computing (Peter Shearer)
GNU
- GNU: GNU’s Not Unix, an operating system and an extensive collection of computer software
- GNU software
- Software manuals: arranged by software category
- Software examples
- GCC: The GNU Compiler Collection, supporting C, C++ & Fortran etc.
- GCC manual: GCC manual & GNU Fortran manual etc.
- GCC wiki
- GNU Bash: Bash is an acronym for Bourne-again shell | GNU Bash manual
- GNU wget: GNU wget manual
- GCC: The GNU Compiler Collection, supporting C, C++ & Fortran etc.
- Documentation of the GNU Project
1.3 File management
1.4 Computer languages
Compiled languages
- C
- GNU C
- GNU C reference manual: It is strictly a C programming language reference, not a tutorial. Its aim is to cover every linguistic construct in GNU C.
- GNU C programming tutorial
- GNU C Library: glibc | glibc documentation
- English tutorials
- 中文教程
- C 语言入门这一篇就够了-学习笔记
- C 语言教程 (菜鸟教程)
- C 程序设计
- C 语言学习资源整理
- GNU C
- Fortran
- Learn to code in 7 lessons with FORTRAN 90/95
- Fortran 90/95 reference (Mark Gates)
- Fortran 95/2003程序设计
- 中国科大 Fortran 资源
- GNU Fortran compiler manual: intrinsic procedure manual
- Intel Fortran compiler manual: Fortran reference
- C++
Scripting languages
- Python
- Python Doc: Tutorial | 中文手册 | Python3 Cheat Sheet
- Learning Python with examples
- Python tutorial (w3schools)
- 简明python教程 & English version
- Python 3 教程 (菜鸟教程)
- Python 教程 (廖雪峰)
- Python tutorial (Mike Dane’s video)
- Julia
- MATLAB
- Perl
- Docs: Official Docs | Module Docs
- Perl tutorial for beginners
- 中文手册
- Perl语言入门
- Shell
Markup languages
- Markdown
- LaTeX
- A short introduction to LATEX 2e: English | Chinese
- 一份其实很短的 LaTeX 入门文档
- LaTeX quick reference (Mark Gates)
- Overleaf: The easy to use, online, collaborative LaTeX editor
1.5 Programming
Programming basis
- Programming
- Compiling & linking
- 跟我一起写Makefile (陈皓) | Chinese introduction
- GNU make manual | Chinese version 3.8
- GCC and Make: Compiling, linking and building C/C++ applications
- 《程序员的自我修养》读书笔记 – 编译链接过程
- C语言的编译链接过程详解 | gcc 参数详解
Version control
- git: fast, scalable, distributed revision control system
- 中文教程
- Git Cheat Sheet
Parallel Computing
- Compiled languages: C/C++ and Fortran
- OpenMP: Open MultiProcessing
- 中国科大超算中心 OpenMP 资料
- Lawrence Livermore National Laboratory OpenMP tutorial
- Intel OpenMP Support: Fortran | C/C++
- Manuals
- MPI: Message Passing Interface
- Implementations of MPI standard
- Manuals
- OpenMP: Open MultiProcessing
- Scripting languages
- Python
- MATLAB parallel computing
- Perl
- Perl 的多线程应用
- threads (perldoc) | threads (cpan)
- Parallel::ForkManager
- Learning resources
GPU
1.6 Editors
- Vim (Recommended)
- Visual Studio Code (Recommended): Doc
- PyCharm (Recommended): Learning center
- Sublime text: Doc
- Atom: Doc
- Typora: A useful markdown editor | Typora极简教程
1.7 Collections
- Earth Data Science: Learn to use earth science and other data in R & Python
- Lessons by Topic: check the left sidebar
- Courses & Textbooks
- Tutorials
- Workshops
2. Seismological Basis
- 2020 Remote Online Sessions for Emerging Seismologists: a very good seismological course for Ph.D. students
2.1 Seismology
- Introduction to Seismology: A textbook for undergraduate
- An Introduction to Seismology, Earthquakes and Earth Structure: A textbook for undergraduate & graduate
- Modern Global Seismology: A textbook for graduate
- Quantitative Seismology: Theory and Methods: A textbook for graduate (difficulty)
2.2 Geophysical Inversion
- Inverse Problem Theory and Methods for Model Parameter Estimation: A textbook for basic inversion theory
- Global Optimization Methods in Geophysical Inversion: A textbook focusing on global optimization methods in geophysics, e.g., Monte-Carlo methods
- Parameter Estimation and Inverse Problems: A textbook for basic inversion theory
2.3 Seismic Data
- Seismic data format
- Instrument response
3. Seismological Softwares
3.1 Seismic data
Downloading
- SOD: a very powerful seismic data request tool
- ObsPy: Data download, processing and visulization software written in Python
- SAC: Seismic Analysis Code, the most commonly used seismic data processing software | Request
Processing
- SAC: Seismic Analysis Code, the most commonly used seismic data processing software | Request
- SAC Tools: A collection of SAC tools written in C
- Chinese manual (best) | Zhigang Peng’s tutorial | IRIS’s manual | An intro video
- ObsPy: Data download, processing and visulization software written in Python
3.2 Seismic Wave
Traveltime
Amplitude
- CPS330: Collection of programs for calculating theorectical seismogram, receiver function, surface wave dispersion curve et al.
Synthetics
- fk: Calculate synthetic seismograms in layered isotropic models, using frequency-wavenumber method
- CPS330: Collection of programs for calculating theorectical seismogram, receiver function, surface wave dispersion curve et al.
3.3 Plotting
- GMT
- GMT中文社区
- GMT-plotting: Collection of GMT scripts
- pssac for GMT4 | pssac2 for GMT4 and GMT5
- PyGMT: A Python interface for GMT (in the early stages of design and implementation)
- matplotlib: a comprehensive library for creating static, animated, and interactive visualizations in Python
4. Signal Processing
- Signal and Systems: an introduction to analog and digital signal processing: Alan V. Oppenheim, MIT, 1987 | youtube | 网易公开课
- Discrete-Time Signal Processing: Alan V. Oppenheim, MIT, 2005
- 数字信号处理: 本科生
5. References
Revision history
- 2020-02-18: more links are added
- 2019-07-24: initial draft referring to 地震学入门简易指南
文章作者 core-man
上次更新 2020-03-16