Ad Hoc Programming

Seismic processing in remote locations can be an exercise in improvisation.  Likewise, when a system update leaves the office without vital software while IT scrambles to reverse the damage.  After the first few times, it became necessary to write my own utilities for plotting, geometry application, binning, etc.  Programming Action Request response time was measured in years.  We were told not to “Program”. Programs are compiled.  These were “Macros” that are “interpreted”. So, no problem, right?  I mention this in the Resume, but I don’t think you all are getting the idea.  Hence this graphic presentation.

The graphic below is the Excel “Control Panel” for a Seismic trace plotting utility.  There is a background Visual Basic language that puts code behind those command buttons. The spreadsheet acts as the parameter input and status output. Samples are read from the binary SEG-Y standard format and written to a bitmap file. There are many gain and plot color options.

SGY1BMP_Picture

Next is the plot generated by this utility of a United States Geological Survey  stacked section of a seismic  line (5688 traces) collected offshore of New England in 1978.  This is public domain and can be downloaded at the USGS website.

Line32-1978-015-FA-SE-001-39SECTION_RB.png
This was written all by top-down principles “from scratch”.  The header was “built” from USGS metadata and pasted in with MS Paint.

The following utility reads the SEG-Y trace headers and populates a spreadsheet with the information.  The values can be altered with header math or cut-and-paste.  Then the data are written back to the headers to assign geometry.

 

SEGY_Table_Picture
This one evolved over years as an extremely useful tool.  I wrote this from scratch, as well.

Below is the Control Panel for a Fourier Analysis tool to plot an amplitude spectrum.  This was originally for source signatures, so it has maximum and bubble picks, with P/B ratio calculations. again straight from the SEG-Y dataset.  I did look up an algorithm for this, but the VB coding was all my own.  I calibrated by comparing to MASOMO plots – Source Modeling Nerds will understand that. 😉  The trace analyzed here came from that same USGS section plotted above.

FourierAnalysisControlPanel

Below is the amplitude spectrum and a detail plot of the trace itself.  Both appear on another page of the spreadsheet when the “Execute” button is pressed.  This one makes use of the Excel chart generation tools.

FourierAnalysisFrequency

FourierAnalysisWavelet

I wrote a binning application that reads P190 multi-streamer navigation files and writes a holoSeis dataset with full, near, nearmid, farmid and far offset coverage planes. I modified it to handle multi-boat surveys – before PGS managed that trick. I wrote one that reads a SEG-Y trace and writes a WAV file.  It needs a sound system with a big woofer, but the result is most impressive.

 

 

 

 

 

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s