	$Id: README.segyprogs 15178 2015-11-06 10:45:03Z fwobbe $

Distributed under the GNU Lesser Public License; see file
LICENSE.TXT in main GMT directory.  Permission to move from GPL to
Lesser GPL was given my author Tim Henstock: Email excerpt:
#------------------------------------------------------------------
>>>Hi Paul,
>>>
>>>yes, I have no problems with that. I keep hoping that I will have time to tweak a few bits
>>>of the code, but seem to end up with an endless stream of different deadlines....
>>>
>>>Tim
>>>
>>>------------------------------------------------------
>>>Tim Henstock, Reader in Geophysics
>>>National Oceanography Centre Southampton
>>>University of Southampton
>>>European Way
>>>Southampton
>>>
>>>then@noc.soton.ac.uk
>>>+44 (0)23 8059 6491
>>>________________________________________
>>>From: Paul Wessel [pwessel@hawaii.edu]
>>>Sent: 19 June 2013 17:10
>>>To: Henstock T.J.
>>>Cc: Paul Wessel
>>>Subject: segy in GMT5
>>>
>>>Hi Tim,
>>>
>>>We are getting close to releasing GMT 5, and I need to ask you if you would you willing
>>>to release your segy  supplement under the new Lesser GPL  license  (in GMT 4, we used
>>>the standard GPL  license). I have made the various changes necessary to the code to work
>>>with GMT 5 libraries, but more testing is probably needed.
>>>
>>>Let me know if you are okay with the license change, otherwise we will have to remove
>>>segy for now from GMT 5.
>>>
>>>Cheers, Paul Wessel
#------------------------------------------------------------------

GMT 5 Released made these into modules.  Note: Some options conflicted with the GMT
common options.  For instance, pssegy used -X -Y -B -U for various settings but that
cannot be allowed in GMT 5.  I simply moved these to modifiers under a new option
-Q, i.e., now use -Qx, -Qy, -Qu, and -Qb to set these parameters.
This obviously makes GMT 4 scripts using segyprogs NOT backwards compatible but it
cannot be helped.

pssegy: program to plot segy files in postscript.
the code was developed following a devious route from several programs in the GMT and
PASSCAL software releases. an explicit 1-bit depth bitmap (ie on/off) is generated
from the seismic data including the ability to plot traces at true locations
taken from offset, cdp, or a general byte location in the trace header.
the postscript imagemask operator is used to display the bitmap
rather than the more obvious image to make the bitmap transparent (ie plotting
picks first then the seismic data will mean that the picks do not obscure the
data, assuming this is desirable.) the code allows the shade of grey or colour
that fills the bitmap to be specified, although note that you get a single shade
throughout.  No current bugs are known.

pssegyz: program to ploy segy files in 3-D in postscript.
This is just an extension of pssegy which rather than plotting the seismic
data in (x,y) space uses the GMT transformation routines to plot the
data in (x,y,z) space, with z being the depth/time axis. 
The code was generalized to allow plotting location to be based on any 
(int*4) location in the SEGY trace header in both the x and y dimensions. 
Note that as you increase the projection elevation there are an increasing
number of pathological cases for variable area plotting and the code
may well leave regions unshaded, or shade regions which should be transparent
under those circumstances.

segy2grd: program to convert SEGY files into GMT-compliant netCDF format.
This is a merge of bits of pssegy with xyz2grd, and deals with two classes
of case - one where there is already even trace spacing, and a simple
translation is done where each cell in the netCDF file is filled with
a corresponding sample. The other allows the gridcell spacing to differ
from the underlying samples in the SEGY file (eg to input a file with
traces at varying offsets) and by default averages the values
which fall within a given grid cell.

All 3 codes have now been modified to cope with the variable
trace length "SEGY" that programs like OMEGA apparently produce.
They have also been tested on SGI and Sun systems as being 64-bit
safe. Byte-swapping is now incorporated for both the headers and
the seismic data; this assumes that the byte-order in the
data is big-endian, and by default byte-swaps on little-endian platforms.
A new flag -A will reverse the byte-swap behaviour and should be
used for files with little-endian byte order.

Authorship:

The pssegy, pssegyz and segy2grd programs were written and are maintained by Tim Henstock,
then@noc.soton.ac.uk, and I'm happy (well, not exactly happy
since I think I got most of the bugs) to have reports of unexpected behaviour.
The routines which read the SEGY data are modified from the IRIS/PASSCAL
software distribution.

Licensing:
These programs are released without any warranty; they are free software
and may be modified or redistributed under the terms of the GNU public license
(see the file LICENSE.TXT in the main GMT directory, or http://www.gnu.org)
