/geophysical_notes

Collection of geophysical notes in the form of IPython/Jupyter notebooks.

Primary LanguageJupyter Notebook

// geophysical_notes //

My collection of geophysical notes written as Jupyter notebooks.

seismic petrophysics

Do magic things with well log data.

support data for "seismic petrophysics"

  • well_2*.txt: raw log data from Well 2 of Quantitative Seismic Interpretation (QSI)
  • qsiwell2.csv: assembled all the logs from various files
  • qsiwell2_frm.csv: qsiwell2 + fluid replaced elastic logs
  • qsiwell2_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 in qsiwell2_augmented.csv (Ip, Vp/Vs and LFC)
  • qsiwell2_dataprep.py: Python script to assemble all the original QSI files

seismic stuff

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.

support data for "seismic stuff"

  • 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 dataset
  • 3d_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

miscellaneous

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.

notes on running 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!

using SEG-Y data

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.

TO-DO

  • add examples on using xarray for 3D seismic cubes.