NAME
filter1d - Time domain filtering of 1-D time series
SYNOPSIS
filter1d [ infile ] -F<type><width> [ -Dincrement ] [ -E ] [
-H[nrec] ] [ -Iignore_val ] [ -Llack_width ] [
-Nn_cols/t_col ] [ -Qq_factor ] [ -Ssymmetry_factor ] [
-Tstart/stop/int ] [ -V ] [ -bi[s][n] ] [ -bo[s] ]
DESCRIPTION
filter1d is a general time domain filter for multiple column
time series data. The user specifies the number of columns
of input and which column is the time. (See -N option
below). The fastest operation occurs when the input time
series are equally spaced and have no gaps or outliers and
the special options are not needed. filter1d has options L,
Q, and S for unevenly sampled data with gaps.
infile
Multi-column ASCII (or binary, see -b) file holding
data values to be filtered.
-F sets Filtertype, type is one of b(oxcar), c(osine
arch), g(aussian), m(edian), or p(maximum likelihood
Probability estimator -- a mode estimator), and specify
full filter width in same units as time column, OR, use
-Ffname to give the name of a one-column file of your
own coefficients. Upper case type B, C, G, M, P, F
will use robust filter versions: i.e., replace
outliers (2.5 L1 scale off median) with median during
filtering.
OPTIONS
-D increment is used when series is NOT equidistantly sam-
pled. Then increment will be the abscissae resolution,
i.e., all abscissae will be rounded off to a multiple
of increment. Alternatively, resample data with
sample1d.
-E Include Ends of time series in output. Default loses
half the filter-width of data at each end.
-H Input file(s) has Header record(s). Number of header
records can be changed by editing your .gmtdefaults
file. If used, GMT default is 1 header record.
-I To ignore values; If an input value equals ignore_val
it will be set to NaN.
-L Checks for Lack of data condition. If input data has a
gap exceeding width then no output will be given at
that point [Default does not check Lack].
-N Sets number of columns in input and which column con-
tains the independent variable (time). The left-most
column is # 0, the right-most is # (n_cols - 1).
[Default is n_cols = 2, t_col = 0; i.e., file has t,
f(t) pairs].
-Q assess Quality of output value by checking mean weight
in convolution. Enter q_factor between 0 and 1. If
mean weight < q_factor, output is suppressed at this
point [Default does not check Quality].
-S Checks symmetry of data about window center. Enter a
factor between 0 and 1. If ( (abs(n_left - n_right)) /
(n_left + n_right) ) > factor, then no output will be
given at this point [Default does not check Symmetry].
-T Make evenly spaced timesteps from start to stop by int
[Default uses input times].
-V Selects verbose mode, which will send progress reports
to stderr [Default runs "silently"].
-bi Selects binary input. Append s for single precision
[Default is double]. Append n for the number of
columns in the binary file(s).
-bo Selects binary output. Append s for single precision
[Default is double].
EXAMPLES
To filter the data set in the file cruise.gmtd containing
evenly spaced gravity, magnetics, topography, and distance
(in m) with a 10 km Gaussian filter, removing outliers, and
output a filtered value every 2 km between 0 and 100 km, try
filter1d cruise.gmtd -T0/1.0e5/2000 -FG10000 -N4/3 -V >
filtered_cruise.gmtd
Data along track often have uneven sampling and gaps which
we do not want to interpolate using sample1d. To find the
median depth in a 50 km window every 25 km along the track
of cruise v3312, stored in v3312.dt, checking for gaps of
10km and asymmetry of 0.3, try
filter1d v3312.dt -FM50 -T0/100000/25 -L10 -S0.3 >
v3312_filt.dt
SEE ALSO
gmt(l), sample1d(l)