Ray tracing

March 24, 2005 Examples No comments

Some examples of ray tracing with sfrays2 are in gti/timec/paul. See also sfcell2 and sfshoot2.

Finite-differences modeling

March 23, 2005 Examples No comments

Here is a time-domain finite-difference example in RSF.
The program allows arbitrary locations of the sources and receivers.
The following pictures are examples using the Marmousi model.
The sources are located on a horizontal line close to the bottom of the model.
The receivers are arranged as in a deviated well.
Velocity:

Wavefield snapshot:

Recorded data:

Solaris

March 19, 2005 Systems No comments

RSF has been successfully installed under Solaris 8 (running on Sparc) and Solaris 10 (running on AMD Opteron). Testing continues…

Resampling in RSF tour

March 19, 2005 Documentation No comments

A section on resampling has been added to RSF tour. Any further suggestions or corrections would be appreciated.

FFT

March 17, 2005 FAQ 5 comments

How is FFT implemented in RSF? What FFT conventions are used? What choices of array size are efficient?
There are two main fft programs: sffft1 and sffft3.
sffft1 takes real input and transforms it to complex by applying real-to-complex FFT on the first axis. It does the inverse transform when inv=y.
sffft3 applies complex-to-complex FFT on the specified axis. The sign of the transform is determined by the sign parameter.
sfcosft applies real-to-real cosine transform.
Here is an example 2-D FFT figure from Jon Claerbout reproduced in bei/ft1/plane4:

RSF utilizes the KISS FFT library for applying FFT. There are some faster open-source software solutions available, most notably FFTW but KISS (Keep It Simple, Stupid) FFT is attractive because of it simplicity and compactness. The library can handle an arbitrary data size. However, some sizes (prime factor powers) are more efficient than others. For example, here are CPU times for running sffft1 on files with different sizes:

n1 CPU time
999,999 0.01 s
1,000,000 0.01 s
1,000,001 1.64 s

Update: sffft1, sffft3, and some other programs that use FFT, now pad the data to the nearest optimal size.

VERSION and SVN

March 16, 2005 FAQ No comments

How do I make the VERSION line of self doc work correctly?
Make sure the tag $Id$ is in the file and run
svn propset svn:keywords Id filename
The version information will be updated when you make changes to the file and commit it to the repository.

sfclip2

March 15, 2005 Programs No comments

Added sfclip2, a generalization of sfclip that allows independent specification of the upper and lower clip values. The upper and lower clip parameters default to FLT_MAX and -FLT_MAX so that no clipping occurs for a clip value that is not specified.

sfstack

March 15, 2005 Programs No comments

Added min and max options to sfstack to find the minimum or maximum values along an axis.

sflistminmax

March 15, 2005 Programs No comments

Added sflistminmax program to construct “incremental” minimum or maximum lists from an RSF file.
sflistminmax constructs the following set of minimum or maximum lists for each x2, x3, … xn in the input RSF file:
out[0] = in[0]
out[i] = min or max of (in[i], out[i-1]) for i = 1, 2, 3, … n1
sflistminmax mode=min can be used to simulate “erosion” for a set of geological surfaces, producing a new set of surfaces that do not cross.

sfminmax

March 15, 2005 Programs 1 comment

Added sfminmax program to find the element-by-element minimum or maximum of two RSF files.