Stratigraphic coordinates

March 25, 2015 Documentation No comments

A new paper is added to the collection of reproducible documents:
Stratigraphic coordinates, a coordinate system tailored to seismic interpretation

In certain seismic data processing and interpretation tasks, such as spiking deconvolution, tuning analysis, impedance inversion, spectral decomposition, etc., it is commonly assumed that the vertical direction is normal to reflectors. This assumption is false in the case of dipping layers and may therefore lead to inaccurate results. To overcome this limitation, we propose a coordinate system in which geometry follows the shape of each reflector and the vertical direction corresponds to normal reflectivity. We call this coordinate system stratigraphic coordinates. We develop a constructive algorithm that transfers seismic images into the stratigraphic coordinate system. The algorithm consists of two steps. First, local slopes of seismic events are estimated by plane-wave destruction; then structural information is spread along the estimated local slopes, and horizons are picked everywhere in the seismic volume by the predictive-painting algorithm. These picked horizons represent level sets of the first axis of the stratigraphic coordinate system. Next, an upwind finite-difference scheme is used to find the two other axes, which are perpendicular to the first axis, by solving the appropriate gradient equations. After seismic data are transformed into stratigraphic coordinates, seismic horizons should appear flat, and seismic traces should represent the direction normal to the reflectors. Immediate applications of the stratigraphic coordinate system are in seismic image flattening and spectral decomposition. Synthetic and real data examples demonstrate the effectiveness of stratigraphic coordinates.

Diffraction imaging of carbonate reservoirs

March 25, 2015 Documentation No comments

A new paper is added to the collection of reproducible documents:
Carbonate reservoir characterization using seismic diffraction imaging

Although extremely prolific worldwide, carbonate reservoirs are challenging to characterize using traditional seismic reflection imaging techniques. We use computational experiments with synthetic models to demonstrate the possibility seismic diffraction imaging has of overcoming common obstacles associated with seismic reflection imaging and aiding interpreters of carbonate systems. Diffraction imaging improves the horizontal resolution of individual voids in a karst reservoir model and identification of heterogeneous regions below the resolution of reflections in a reservoir scale model.

Signal and noise orthogonalization

March 25, 2015 Documentation No comments

A new paper is added to the collection of reproducible documents:
Random noise attenuation using local signal-and-noise orthogonalization

We propose a novel approach to attenuate random noise based on local signal-and-noise orthogonalization. In this approach, we first remove noise using one of the conventional denoising operators, and then apply a weighting operator to the initially denoised section in order to predict the signal-leakage energy and retrieve it from the initial noise section. The weighting operator is obtained by solving a least-squares minimization problem via shaping regularization with a smoothness constraint. Next, the initially denoised section and the retrieved signal are combined to form the final denoised section. The proposed denoising approach corresponds to orthogonalizing the initially denoised signal and noise in a local manner. We evaluate denoising performance by using local similarity. In order to test the orthogonalization property of the estimated signal and noise, we calculate the local similarity map between the denoised signal section and removed noise section. Low values of local similarity indicate a good orthogonalization and thus a good denoising performance. Synthetic and field data examples demonstrate the effectiveness of the proposed approach in applications to noise attenuation for both conventional and simultaneous-source seismic data.

wxPython

March 24, 2015 Programs No comments

There are many different libraries for GUI (graphical user interfaces), many of them with Python bindings: PyGTK, PyQt, PySide, etc. Tkinter is one of the oldest Python GUI libraries and is considered to be the standard one. Another popular choice is wxPython, a Python interface for wxWidgets C++ library.

A quick example of wxPython is provided in wxvpconvert, a silly GUI for Madagascar’s vpconvert script. Compare with tkvpconvert.

See also:

Passive seismic imaging

March 22, 2015 Uncategorized No comments

Another old paper is added to the collection of reproducible documents:
Passive seismic imaging applied to synthetic data

It can be shown that for a 1-D Earth model illuminated by random plane waves from below, the cross-correlation of noise traces recorded at two points on the surface is the same as what would be recorded if one location contained a shot and the other a receiver. If this is true for real data, it could provide a way of building `pseudo-reflection seismograms’ from background noise, which could then be processed and used for imaging. This conjecture is tested on synthetic data from simple 1-D and point diffractor models, and in all cases, the kinematics of observed events appear to be correct. The signal to noise ratio was found to increase as $\sqrt{n}$, where $n$ is the length of the time series. The number of incident plane waves does not directly affect the signal to noise ratio; however, each plane wave contributes only its own slowness to the common shot domain, so that if complete hyperbolas are to be imaged then upcoming waves must be incident from all angles.

AVO of methane hydrates

March 10, 2015 Documentation No comments

Another old paper is added to the collection of reproducible documents:
Seismic AVO analysis of methane hydrate structures

Marine seismic data from the Blake Outer Ridge offshore Florida show strong “bottom simulating reflections” (BSR) associated with methane hydrate occurence in deep marine sediments. We use a detailed amplitude versus offset (AVO) analysis of these data to explore the validity of models which might explain the origin of the bottom simulating reflector. After careful preprocessing steps, we determine a BSR model which can successfully reproduce the observed AVO responses. The P- and S-velocity behavior predicted by the forward modeling is further investigated by estimating the P- and S-impedance contrasts at all subsurface positions. Our results indicate that the Blake Outer Ridge BSR is compatible with a model of methane hydrate in sediment, overlaying a layer of free methane gas-saturated sediment. The hydrate-bearing sediments seem to be characterized by a high P-wave velocity of approximately 2.5 km/s, an anomalously low S-wave velocity of approximately 0.5 km/s, and a thickness of around 190 meters. The underlaying gas-saturated sediments have a P-wave velocity of 1.6 km/s, an S-wave velocity of 1.1 km/s, and a thickness of approximately 250 meters.

Tutorial on tuning and AVO

March 9, 2015 Examples No comments

The example in rsf/tutorials/tuning reproduces the tutorial from Wes Hamlyn on thin-bed tuning and AVO analysis in seismic interpretation. The tutorial was published in the December 2014 issue of The Leading Edge. Madagascar users are encouraged to try improving the results.

See also:

Program of the month: sfgrey

March 4, 2015 Programs 2 comments

sfgrey is the most widely used program in Madagascar. It is used for plotting multidimensional images with grayscale or pseudocolor.

sfgrey shares many of its options with other plotting programs, such as sfgraph, sfwiggle, and sfcontour. You can look for common options by running sfdoc stdplot or checking out stdplot documentation online.

Parameters that control the range of data to be displayed are clip=, pclip=, bias=, allpos=, mean=. The default behavior is pclip=99, which means that data values get clipped to the 99-nth percentile. To display values without clipping, use pclip=100. Setting the clip value with clip= takes the precedence over setting the percentage clip with pclip=. The bias= defines the data value for the middle of the color scale range, the default (appropriate for seismic data) is bias=0. When displaying values that are all larger than the bias value, set allpos=y (all positive). To set the bias to the mean value of the data without specifying it explicitly, use mean=y. The following example from trip/asg/project uses mean=y to display a synthetic model.

The gpow= parameter applies a nonlinear scaling by taking the image to the corresponding power. If the value of gpow is less than zero, the appropriate value is estimated from the data. The following example from gee/pch/ida uses the value of gpow=0.25.

If the input is a 3-D cube, sfgrey can use a particular panel (2-D slice) to estimate clip or glow. The panel is specified by gainpanel= and set by default to the first non-zero panel. To estimate clip using the whole cube, specify gainpanel=all. To clip each panel individually, use gainpanel=each. To add a scale bar, specify scalebar=y. By default, the scale bar is vertical. You can make it horizontal by using bartype=h. To set the minimum and maximum values on the scalebar, use minval= and maxval=. To make the scale bar run in reverse, use barreverse=y. The following example from tccs/optapert/sigsbee uses bartype=h minval=0 maxval=1.

By default, sfgrey displays the first axis running vertical from top to bottom, which corresponds to transp=y yreverse=y and is a common way to display seismic data. For other kinds of data, you can modify the default behavior by setting transp=, xreverse=, and yreverse=. The following example from geo391/hw5/pocs displays a seismic horizon using transp=y yreverse=n.

For an explanation of different color schemes (specified with color= parameter), please refer to previous posts:

10 previous programs of the month:

CiSE Paper on Madagascar Community

March 3, 2015 Links No comments

The paper Reproducible Research as a Community Effort: Lessons from the Madagascar Project was published in the January/February 2015 issue of Computing in Science and Engineering, a special issue on Scientific Software Communities.

Reproducible research is the discipline of attaching software code and data to publications, which enables the reader to reproduce, verify, and extend published computational experiments. Instead of being the responsibility of an individual author, computational reproducibility should become the responsibility of open source scientific-software communities. A dedicated community effort can keep a body of computational research alive by actively maintaining its reproducibility. The Madagascar open source software project offers an example of such a community.

Program of the month: sfhistogram

March 1, 2015 Programs No comments

sfthistogram computes a histogram for distribution of values in the input dataset.

The following example from rsf/rsf/sfnoise plots the histogram of a normally-distributed random noise:

The output of sfhistogram contains integer values arranged in a one-dimensional array. The sampling is specified by n1=, d1=, and o1= parameters.

10 previous programs of the month: