bnos - BSU program generates band-limited random noise (random phase)
bnos [ -h | infile | seed | F_Low | F_High | F_Roll ]
Basic Seismic Utilities (BSU) uses the number of traces, sample interval, and geometry from the input file to design an output file of band-limited random noise traces. The random number sequence generates a random phase function in the frequency domain that is combined with a flat amplitude spectrum in the pass-band. The inverse Fourier Transform (radix 2) returns the time domain noise signal. Because the FFT is radix 2, a trace with non-power-of-two samples will be truncated in the time domain. The resulting spectrum of a single truncated trace may not appear flat due to the limited statistics. However, if one averages the autocorrelations of all the traces in a profile, and examines the spectrum of that average auto-correlation, one should observe a fairly flat spectrum between the limits F_Low and F_High. Fortran 77, uses CMLIB routines rand.f and runif.f to generate the random number sequence.
Options
-h |
Online help giving details on command line arguments | ||
infile |
Input file name used to design the output file headers and traces. | ||
seed |
Seed for the random number generator. Floating point positive number less than one. | ||
F_Low |
Low frequency limit (Hz) of desired random noise spectrum. |
F_High High frequency limit (Hz) of desired random noise spectrum.
F_Roll |
Roll-off in Hz. The spectrum will be defined with raised cosine tapers that go from unity amplitude to zero amplitude in F_Roll Hz. |
NOTE:
If invoked with no options, will prompt user for input
parameters.
EXAMPLE:
bnos wave.seg .9182364826 20. 100. 10.
Noise traces will be generated which match the geometry, sample interval, number of samples , and the number of traces in file wave.seg. The noise will have a pass-band from 20 to 100 Hz, with 10 Hz roll-off.
bnosxxxx.seg
Output, data set. Named according to convention (first 4char bnos, the next 4char are the first 4char of the input file name, suffix .seg)
standard output
produces a progress bar
bnosxxxx.lst
echo check of input parameters
bhelp(1), bnoise(3), rand(3), runif(3), nlogn(3)
No known bugs.
Copyright © 2017 by Paul Michaels
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
P. Michaels, PE. <pm@cgiss.boisestate.edu>