# Directory src/green/grepg

## Location

**grepg** is located at src/green/grepg.

## Purpose

- plot amplitudes and (optionally) phase of Fourier-Bessel coefficients (produced by greda, syg, or flgevas
- plot amplitudes of spectrograms (produced by gabor)
- plot resolution analysis (produced by grereso)
- plot taper files for gremlin (produced by gretap)

## Features

- data modification options (normalize data, scaling)
- plot resolution marks according to a geophone-trace-stepwidth of dx and a total length of the geophone-line
- plot dispersion curves together with expansion coefficients
- graphics output is done through PGPLOT featuring a variety of devices and graphics formats (including Postscript, X11, Tektronix, PNG, GIF, etc)
- ...

## Inline help

```
GREPG V2.41 plot Fourier-Bessel coefficients
Usage: grepg filename [-d dev] [-i] [-c] [-r L,dx] [-R|I] [-L]
[-q] [-p p] [-g] [-l width] [-s] [-P] [-S]
[-m lim] [-G file] [-H ch] [-F file] [-v]
[-N c,w] [-T title] [-X label] [-Y label] [-W]
[-n value] [-A label] [-M lim] [-C] [-B label]
[-O i,m,s] [-a a,g] [-f n] [-t n,m] [-Q] [-e lim]
[-K o,t] [-b width] [-x R,G,B] [-y R,G,B] [-h]
[-Fc r,g,b,w] [-Ah h] [-t n,m] [-Ta anno]
[-FC n] [-Fl n] [-Pr] [-Ww w]
[-ff filename] [-st]
or: grepg -help
Plot amplitudes of Fourier-Bessel coefficients.
filename any tf-type file
you may read files with the following
'magic' signatures:
'1234' complex omega,p-spectra
'123S' real weight values to be used as
inversion weights or taper factors
'123P' complex grereso coefficients which
use a test-slowness as abscissa
'123G' complex gabor matrix coefficients
which use a time as abscissa
data modification options
-------------------------
-S suppress all values for zero frequency
and values for zero slowenss
(usefull for strange greda methods)
-I use just imaginary part
-R use just real part
-t n,m remove polynomial trend from data using
Legendre polynomials up to order 'n'
the mode value 'm' is a sum of:
1: remove polynomial trend from real part
2: remove polynomial trend from imag part
-Q remove moving average
-K o,t increase contrast by order o and threshold t
-E scale all coefficients with 1/omega**2
normalize data
-s scale frequencies individually
using maximum amplitude value
-st apply adaptive scaling along time axis
rather than frequency axis
(useful for gabor plots)
-N c,w Use a gaussian taper when calculating
normalization factors in order to scale
frequencies individually. c will be the
center of the taper in s/km. w is the
distance from the center to the value
where the taper is 0.1 (also in s/km).
-n value normalize maximum amplitude to value
-M lim use only coefficients for slowness being
greater than lim to find normalizing value
that is used to rescale data per frequency
(all coefficients will be scaled)
(default is 0. ).
-f n apply a smooth weighting function when
scaling frequencies individually - this is
done by applying a moving average to the
the weight, where 'n' is the filter length
scaling
-e lim use coefficients for slowness values being
greater than 'lim' to find maximum value
for amplitude plot scale
using this feature may result in amplitude
clipping
the value of 'lim' defaults to the value
given by '-M'
-m lim use only coefficients for slowness being
greater than 'lim' to find maximum value
that ist used to evaluate the normalizing
factor for the whole dataset
(default is 0. ).
-p p the depth of the amplitude grayscale will be
p powers of ten
-L use linear amplitude scaling rather than log10
-Pr plot phase for different Fourier sign
convention
greda and other define the Fourier
transformation to have a positive
imaginary factor in the transformation
from frequency to time domain
this switch changes the sign convention
of the data to the opposite
define data aspect
------------------
-C colorfull plot with phase information
-a a,g just plot phase information as grayscale
a: (real value; 0.<= a <=360.) phase angle to
shift grayscale (given in degrees)
g: (real value; 0.<= g <=1.) grayify factor
values differing from 1. will result in
a grayscale that does not use all values
from black to white
-i plot isolines
amplitude values are still available to
isoline contour plots even if you plot
the signal phase
-O i,m,s label isoline contour
i: INTVAL integer value for PGCONL
will set the spacing between labels
m: MININT integer value for PGCONL
will set minimum contour length to be
labelled
s: integer setting number of significant
digits to be given in label
appearance of plot
------------------
-q quick-mode does not smooth the data
-g plot grid
-l width set line width
-H ch character height for plot
-W plot black on white
ATTENTION: be sure to use this option
together with a postscript output device
as those don't know about 'white on black'
-b width for grayscale plots: plot all picked curves
with color index 1 - place them on top of a
curve of width 'width' and color index 0
-Fc r,g,b,w plot dispersion curves with width 'w' and
color (r,g,b,).
-c plot colored resolution marks and
and colored grid
-T title define title string for plot
-X label define x-label for plot
-Y label define y-label for plot
-A label define amplitude wedge annotation label for plot
-Ta anno define subtitle annotations
-Ah h set amplitude wedge label character height
to 'h'
-B label define phase wedge annotation label for plot
-x R,G,B set foreground color to RGB-value
-y R,G,B set background color for color ramp to RGB-value
-h use HLS interpolation for color ramp
-FC n cycle curve color with period n
-Fl n cycle curve linestyle with period n
-Ww w plot wedges of width w (default is 3.)
additional information to be plotted
------------------------------------
-r L,dx plot resolution marks according
to a geophone-trace-stepwidth of
dx and a total length of the
geophone-line of L (in meters)
(this leads to bad results with
isolines)
input/output
------------
-d dev select output-device (see below for
a list of possible devices)
-G file writes one-column xyz-data to file
this file may be converted using xyz2grd.sh
-F file read dispersion curve picks from file
-ff filename
read Fourier data for phasor walkout
from file 'filename'
user interaction
----------------
-v verbose mode
-P pick aliasing (see below)
some inside-information:
------------------------
After modifying the read dataset the complex coefficients
my be smoothed. The raw or smoothed data is split into
a set of amplitude values (linear or logarithmic) and a set
of phase values. In case you decide to plot the phase or
the full colored complex information the amplitude values
are still available and may be used for a contour map.
picking:
<left button>, <P>, <p>: pick one point of active curve
<mid button>, <D>, <d>: delete nearest pint of active curve
<H>, <h>: pick a u/f-pair for hyperbola
<B>, <b>: pick a u/f-pair for flexural wave
dispersion
<SPACE>, <r>: replot
<right button>, <X>, <x>: exit
<c>: plot a cross-section
<w>: plot a phasor walkout
<l>: read dispersion curves
<s>: save dispersion curves
<1>, <2>, <3>, <4>, <5>,
<6>, <7>, <8>, <9>, <0>: select dispersion curve to pick
==================================================
possible output devices:
To select an ouput device you may use one of the
following short cuts:
pgp choose your own pglot-device
def use default (set by PGPLOT_DEV)
x11 X-Windows Server
lp postscript to stdout
ps postscript to file pgp.ps
tek Tektronix-Terminal
lpls postscript to stdout
psls postscript to file pgp.ps landscape
Or choose one of the official PGPLOT device names:
PGPLOT v5.2.2 Copyright 1997 California Institute of Technology
Interactive devices:
/TEK4010 (Tektronix 4010 terminal)
/GTERM (Color gterm terminal emulator)
/XTERM (XTERM Tek terminal emulator)
/KRM3 (Kermit 3 IBM-PC terminal emulator)
/TK4100 (Tektronix 4100 terminals)
/XWINDOW (X window window@node:display.screen/xw)
/XSERVE (A /XWINDOW window that persists for re-use)
Non-interactive file formats:
/LATEX (LaTeX picture environment)
/NULL (Null device, no output)
/PS (PostScript file, landscape orientation)
/VPS (PostScript file, portrait orientation)
/CPS (Colour PostScript file, landscape orientation)
/VCPS (Colour PostScript file, portrait orientation)
==================================================
array dimensions:
maximum number of frequencies: 1000
maximum number of slowness steps: 1000
File Formats used by grepg:
omega,p-spectrum (magic number: 1234)
typically created by 'greda' or 'syg'.
All frequencies are given as angular frequencies.
Their unit is 1/s. All phase slowness values are
given in 1s/m=1.e3s/km.
Frequencies as well as slowness values are given
explicitely in the data file. However they may not
be set to arbitrary values. They may start and end
with any value, but must be sampled in equal
intervals that are calculated from the first
interval of frequencies and slownesses respectively.
omega,p-taper/weights (magic number: 123S)
as being used in 'gremlin'.
p,p-resolution (magic number: 123P)
as created by 'grereso'.
In the case of grereso files verbose messages
regarding frequency concern the test-slowness value.
Gabor matrix (magic number: 123G)
as created by 'gabor'.
In the case of gabor files verbose messages regarding
phase slowness concern time.
Time values (gabor matrix) are given in 1s.
Wavenumber spectrum (magic number: 123K)
as used by 'flgevas'.
In the case of wavenumber coefficient files verbose
messages regarding slowness concern wavenumber.
magic number for Fourier data: SP34
```