bnoise - subroutine to generate a band-limited noise trace.
call bnoise(npts, v, x, delt, f1, f2, froll, title, im, seed)
Basic Seismic
Utilities (BSU) generates pseudo-random, band-limited random
noise. An example use of this subroutine can be found in
bnos.f. Title is no longer used, but part of a
debugging opton (if flist is called from within the
program). The inverse FFT of a random phase sequence is
returned as array, v. The constant amplitude in the
pass-band will be affected if npts not equal to im
(truncation of the sequence). However, statistical analysis
of traces generated will be fairly uniform in amplitude over
the pass-band (see source code for comments and a test
flow).
Fortran Version.
Arguments
npts (int)
Number of samples in a trace
v (float)
Real array to hold output signal, dimension npts.
x (complex)
Complex array to assign random phase values in frequency domain, dimension im.
delt (float)
Sample interval in seconds.
f1 (float)
Low frequency limit (Hz).
f2 (float)
High frequency limit (Hz).
froll (float)
Roll off in Hz from unity pass to zero pass.
im (int)
Physical dimension of complex array, x. NOTE: im must be a power of 2.
seed (float)
Seed to initialize random number generator.
bnos(1), rand(3), runif(3), nlogn(3), nrad2(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>