My collection of geophysical notes written as Jupyter notebooks.
Do magic things with well log data.
well_2*.txt
: raw log data from Well 2 of Quantitative Seismic Interpretation (QSI)qsiwell2.csv
: assembled all the logs from various filesqsiwell2_frm.csv
: qsiwell2 + fluid replaced elastic logsqsiwell2_augmented.csv
: barebones well data, only Ip, Vp/Vs and LFC (litho-fluid class log)qsiwell2_synthetic.csv
: synthetic data generated through Monte Carlo simulation, same logs as inqsiwell2_augmented.csv
(Ip, Vp/Vs and LFC)qsiwell2_dataprep.py
: Python script to assemble all the original QSI files
How to load and display SEG-Y files, plus some simple ways to play with the data, e.g. extracting amplitude informations, adding noise & filtering. Also, a notebook entirely dedicated to wedge modeling and how to reproduce a couple of figures from scientific publications.
- Seismic data in Python
- Amplitude extraction
- Wedge modeling for variable angles of incidence
- Notes on spectral decomposition
- Top Heimdal map, or how to reproduce figure 1 from Avseth et al., 2001
- AVO projections
- How to calculate AVO attributes
- Elastic Impedance
- "The relationship between reflectivity and elastic impedance", or how to reproduce figure 5.62 from Seismic Amplitude by Simm & Bacon (2014)
- Notes on anisotropic AVO equations
- AVO Explorer: rough attempt at interactive AVO and AVO classes explorer
- AVO Explorer v2: like above, but a leaner version ready to go on mybinder.org
16_81_PT1_PR.SGY
,16_81_PT2_PR.SGY
,16_81_PT3_PR.SGY
,31_81_PR.SGY
: 2D lines in SEGY format from the USGS Alaska dataset3d_farstack.sgy
,3d_nearstack.sgy
: 3D cubes from the QSI dataset (see above)Top_Heimdal_subset.txt
: interpreted horizon for the QSI near and far angle cubes
Other notebook of interest, maybe only tangentially related to geophysics, such as a notebook showing a comparison between colormaps (the dreadful jet against a bunch of better alternatives) and another that uses the well known Gardner's equation as an excuse to practice data fitting in Python.
I would recommend either Enthought's Canopy Express or Anaconda. I am now using Anaconda both on my work PC and my home computer (an Apple laptop) but I have also been happy with Canopy. There must be some difference between the two but for all practical means they seem to me pretty much the same.
There is also a third solution (the homemade solution) which works only on Apple computers and not really recommended unless you are a little bit more adventurous. It has the advantage of being a barebone installation with minimal impact on disk space; full instructions here: http://penandpants.com/2013/04/04/install-scientific-python-on-mac-os-x/. It involves installing Homebrew on your Mac (which is a great package manager essential for anybody tinkering with code and unix-like applications on Macs). Then you do everything through IPython or Jupyter notebooks, perhaps in conjunction with a modern (and free!) editor like Atom to write longer codes and preview your markdown.
However, even if you're tight in (drive) space there is an easier solution than the above homemade recipe, and that involves once again the good folks at Continuum that have created miniconda -- highly recommended!
To read and write SEG-Y data in Python you need additional libraries like ObsPy or Segpy.
ObsPy is capable of reading large (10Gb) SEG-Ys exported from Petrel; it has also matured to v1.0 so I would recommend it now-- if only for its SEG-Y support (what I didn't like before was simply the concept of using a large library aimed at research seismologists that does too many things that I don't use; but yes you could say that's true also for the way I use Numpy!). I haven't tried the latest version of Segpy (which only runs on Python 3) on similarly large datasets.
- add examples on using
xarray
for 3D seismic cubes.