Program of the month: sfnmo

April 8, 2013 Programs No comments

sfnmo implements normal moveout (NMO) correction, one of the most fundamental operations in seismic reflection data processing.

The following example from jsg/avo/avo shows synthetic data before and after NMO correction.

NMO transforms prestack seismic gathers by stretching each trace according to the equation
$$t = \sqrt{t_0^2 + \frac{x^2}{v^2(t_0)}}\;,$$
where $t$ is time before the correction, $t_0$ is time after the correction, $x$ is offset, and $v(t_0)$ is velocity specified in velocity= file. The NMO velocity can be picked (for example, with sfpick) from velocity scans (for example, produced with sfvscan).

If s= file is provided, sfnmo uses Malovichko’s shifted-hyperbola approximation
$$t \approx \left(1-\frac{1}{s(t_0)}\right) + \frac{1}{s(t_0)}\,\sqrt{t_0^2 + s(t_0)\,\frac{x^2}{v^2(t_0)}}$$
See

  • Malovichko, A. A., 1978, A new representation of the traveltime curve of reflected waves in horizontally layered media: Applied Geophysics (in Russian), 91, 47-53
  • Sword, C. H., 1987, A Soviet look at datum shift, in SEP-51: Stanford Exploration Project, 313-316.
  • de Bazelaire, E., 1988, Normal moveout revisited – Inhomogeneous media and curved interfaces: Geophysics, 53, 143-157.
  • Castle, R. J., 1994, Theory of normal moveout: Geophysics, 59, 983-999.

If a= file is provided, sfnmo uses Taner’s velocity-acceleration approximation
$$t = \sqrt{t_0^2 + \frac{x^2}{v^2(t_0)+a(t_0)\,x^2}}$$
See

  • Taner, M. T., S. Treitel, and M. Al-Chalabi, 2005, A new travel time estimation method for horizontal strata: 75th Ann. Internat. Mtg, Soc. of Expl. Geophys., 2273-2276.
  • Taner, M. T., S. Treitel, M. Al-Chalabi, and S. Fomel, 2007, An offset dependent NMO velocity model: EAGE 69th Conference and Exhibition, EAGE, P036.

The offset $x$ can be either regular (specified as the second axis in the input file) or irregular (specified in offset= file). By default, half-offset is used $h=x/2$. To use full offset, specify half=n.

Additionally, it is possible to specify a mask (with mask= file containing 1s and 0s) for skipping certain traces during the correction. See the following example from rsf/scons/rsf

The NMO correction is associated with the phenomenon of “NMO stretch”, a non-linear stretching of time at large offsets. The maximum allowed relative stretch is controlled by str= parameter. The part of the data that is stretched more than the allowed stretch gets muted. The width of the mute zone is controlled by mute= parameter.

NMO with constant velocity can be accomplished with sfnmostretch. For 3-D azimuthally-anisotropic moveout correction, try sfnmo3. For NMO in the tau-p domain, try sftaupmo. For an inverse NMO operation, try sfnimo.

10 previous programs of the month

Automatic traveltime picking

April 2, 2013 Documentation No comments

A new paper is added to the collection of reproducible documents:
Automatic traveltime picking using the instantaneous traveltime

IPython

March 30, 2013 Celebration No comments

On March 23, Fernando Perez, the creator of IPython, received the Award for the Advancement of Free Software. The award was presented by Richard Stallman, the president of the Free Software Foundation, at a ceremony in Cambridge, Massachusetts.

IPython plays well with Madagascar through the use of the Python interface. A particularly convenient way of using IPython’s interactive capabilities is the web-based notebook interface.

We can expect new enhancements to IPython’s notebook interface from Fernando Perez and his collaborators thanks to a generous grant from the Sloan foundation.

US government gets serious about reproducible research

March 23, 2013 Links No comments

The debate on open science and reproducible research has reached Washington, DC.
On February 22, John Holdren (Assistant to the President for Science and Technology and Director of the White House Office of Science and Technology Policy) issued a Memorandum on Increasing Access to the Results of Federally Funded Scientific Research to the heads of all federal agencies that sponsor research and development projects. The memo states

Access to digital data sets resulting from federally funded research allows companies to focus resources and efforts on understanding and exploiting discoveries. For example, open weather data underpins the forecasting industry, and making genome sequences publicly available has spawned many biotechnology innovations. In addition, wider availability of peer reviewed publications and scientific data in digital formats will create innovative economic markets for services related to curation, preservation, analysis, and visualization. Policies that mobilize these publications and data for re-use through preservation and broader public access also maximize the impact and accountability of the Federal research investment. These policies will accelerate scientific breakthroughs and innovation, promote entrepreneurship, and enhance economic growth and job creation.

The memo obliges every agency to come up with a strategy for making both scientific publications and digital scientific data resulting from Federally funded research publicly available.

On March 5, the Subcommittee on Research of the US House Committee on Science, Space, and Technology’s held a hearing on the issue of access to data from federally funded published research. In his opening statement, Dan Lipinski, a democratic U.S. Representative from Illinois, said:

..the more data are open, the faster we will validate new theories and overturn old ones, and the more efficiently we will transform new discoveries into innovations that will create jobs and make us healthier and more prosperous. The movement toward open data is not primarily about scientific integrity, it’s mostly about speeding up the process of scientific discovery and innovation.

Victoria Stodden, an Assistant Professor of Statistics at Columbia University and a famous advocate for reproducible research, testified:

Making research data and software conveniently available also has valuable corollary effects beyond validating the original associated published results. Other researchers can use them for new research, linking datasets and augmenting results in other areas, or applying the software and methods to new research applications. These powerful benefits will accelerate scientific discovery. Benefits can also accrue to private industry. Again, data and software availability permit business to apply these methods to their own research problems, link with their own datasets, and accelerate innovation and economic growth.

Color palettes

March 19, 2013 Examples No comments

In addition to the standard color palettes, it is now possible to use a custom palette by specifying it in a simple comma-separated text file (CSV). The following example from rsf/rsf/sfgrey uses the perceptional rainbow palette created by Matteo Niccoli. See Matteo’s blog posts for an explanation.

Program of the month: sfpow

March 10, 2013 Programs No comments

sfpow multiplies the input data by a gain function of the form
$$G(x_1,x_2,\ldots,x_n)=x_1^{p_1}\,x_2^{p_2} \cdots x_n^{p_n}$$
The powers $p_1,p_2,\ldots,p_n$ are given by pow1=, pow2=, etc. parameters.

For backward compatibility, sftpow tpow= is an alias for sfpow pow1=.

The following example from geo391/hw1/tpow shows an application of sfpow pow1=2 *to a shot gather. The gain of *pow1=2 for seismic data was advocated by Jon Claerbout.

To estimate an appropriate power gain from the data, you can try sffpow.

10 previous programs of the month

Happy Anniversary

March 8, 2013 Celebration No comments

The official birthday of the Madagascar project is June 11, 2006, when the project was first publicly announced. However, the initial work on the project (called RSF at the time) started sometime in early 2003, 10 years ago.

The age of a car is usually measured in miles, not years. Similarly, the age of an open-source project is best measured in the number of revisions and commits to the repository. Madagascar revision number 10,000 happened yesterday! The author of the anniversary revision, Professor William Symes from Rice University will receive a commemorative Madagascar stein. According to Ohloh, the number of commits to the Madagascar repository has increased by 63% in the last 12 months, and the number of contributors during the same period has increased from 21 to 27.

Wavefront construction

March 3, 2013 Documentation No comments

Another old paper is added to the collection of reproducible documents:
Wavefront construction using waverays

Lowrank finite differences

March 2, 2013 Documentation No comments

A new paper is added to the collection of reproducible documents:
Lowrank finite-differences and lowrank Fourier finite-differences for seismic wave extrapolation in the acoustic approximation

School on Reproducible Science

February 18, 2013 Celebration 1 comment

A Winter School on Reproducible Science And Modern Scientific Software, the first of its kind, took place in Norway on January 20-25, 2013, and was organized by SINTEF.

Abstract: A major problem with the computational science community today is that many publications are impossible to reproduce. Results published in a paper are seldom accompanied by the source code used to produce these results. Even when the source code is available the published results can only be reproduced if run the code is compiled with a specific compiler and run on a specific architecture using a specific set of parameters. Reproducibility aims to make the process of publishing reproducible science as simple as possible, and it has gained a lot of momentum as a desirable principle of the scientific method. Tightly coupled with reproducible science is modern software development. Tools and methodologies including version control, unit testing, verification and validation, and continuous integration make the process of publishing reproducible science much simpler. The winter school will give an introduction to the state-of-the-art in reproducible science and modern scientific software development. The aim is that participants will be able to apply the learned techniques to their own research. Topics that will be covered include reproducible research, verification and validation, software testing, and continuous integration.

Lectures were given by Rasmus Benestad, Andre Brodtkorb, Fernando Perez, and Johan Seland. The school program with supplemental materials is now available on the web.