Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

Madagascar / News: Recent posts

1M

Madagascar passes a symbolic mark of one million lines of code. Black Duck Open Hub reports that

In a Nutshell, Madagascar...
has had 12,444 commits made by 85 contributors
representing 1,098,223 lines of code


link

Posted by SourceForge Robot 2 days ago

Amplitude balancing

Another old paper is added to the collection of reproducible documents:

Iterative least-square inversion for amplitude balancing


Variations in source strength and receiver amplitude can introduce a bias in the final AVO analysis of prestack seismic reflection data. In this paper we tackle the problem of the amplitude balancing of the seismic traces from a marine survey. We start with a 2-D energy map from which the global trend has been removed. In order to balance this amplitude map, we first invert for the correction coefficients using an iterative least-square algorithm. The coefficients are calculated for each shot position along the survey line, each receiver position in the recording cable, and each offset. Using these coefficients, we then correct the original amplitude map for amplitude variations in the shot, receiver, and offset directions.
link

Posted by SourceForge Robot 2015-05-09

Two-dimensional Hilbert transform

Posted by SourceForge Robot 2015-05-07

Structure-constrained acoustic impedance

A new paper is added to the collection of reproducible documents:

Structure-constrained relative acoustic impedance using stratigraphic coordinates


Acoustic impedance inversion involves conversion of seismic traces to a reflection coefficient time series, and then into acoustic impedance. The usual assumption for the transformation of post-stack seismic data into impedance , is that seismic traces can be modeled using the simple convolutional model. According to the convolutional model, a seismic trace is a normal-incidence record, which is an assumption that is strictly true only if the earth structure is composed of horizontal layers. In the presence of dipping layers, such an assumption is violated, which introduces bias in the result of impedance inversion. I propose to implement impedance inversion in the stratigraphic coordinate system, where the vertical direction is normal to reflectors and seismic traces represent normal-incidence seismograms. Tests on field data produce more accurate and detailed impedance results from inversion in the stratigraphic coordinate system, compared to impedance results using the conventional Cartesian coordinate system.
link

Posted by SourceForge Robot 2015-05-06

Summer events

Two exciting events are being planned for this summer.


The Madagascar School for Advanced Users is being planned for August 8-9, 2015. The school will take place in Qingdao, China, and will be hosted by the China University of Petroleum. Unlike previous Madagascar schools, the intended audience are not beginners but current users of Madagascar who want to learn more about advanced topics (parallel computing; graphical user interfaces; interfaces to C++, Python, and Matlab, etc.) More information is available at http://www.ahay.org/wiki/Qingdao_2015.


The Working Workshop on 3D Seismic Data Processing is being planned for August 19-22, 2015. The workshop will take place in Houston and will be hosted by Rice University. Unlike previous working workshops, the participations is not limited to Madagascar users. Users of other software packages with interest in seismic field data processing are encouraged to participate. The workshop is being organized by Karl Schleicher, with support of SEG. More information is available at http://www.ahay.org/wiki/SEG_3D_Seismic_Processing_Working_Workshop_Houston_2015-_Land_3D
link

Posted by SourceForge Robot 2015-05-05

Tutorial on seismic survey design

The example in rsf/tutorials/survey reproduces the tutorial from Evan Bianco on designing 3D seismic surveys. For more explanation, see Evian's blog post Laying out a seismic survey.


Madagascar users are encouraged to try improving the results. ... read more

Posted by SourceForge Robot 2015-04-23

Reproducible research in psychology

An article A Perfect Storm: The Record of a Revolution by Eric-Jan Wagenmakers, a mathematical psychologist from the Unversity of Amsterdam, describes a reproducibility revolution, which is taking place in psychology: ... read more

Posted by SourceForge Robot 2015-04-21

Program of the month: sfslant

sfslant is a T-X implementation of slant stack, also known as Radon transform or tau-p transform.

The two middle panels in the example below from cwp/geo2006TimeShiftImagingCondition/zicig show a time-shift common-image gather and its transformation by slant stack.


sfslant is a linear operator and has an adjoint flag adj=: When adj=n, the transformation is from tau-p to t-x. When adj=y, the transformation is from t-x to tau-p. The sampling on the transformed coordinate is controlled in the two cases by nx=, dx=, x0= or, respectively np=, dp=, p0=.

Antialiasing is enabled by default with anti=1 parameter. The central slope for antialiasing is given by p1=.

A space integration is sfslant generally requires a corrective "rho filter" (half-order differentiation). It is enabled by rho= parameter.

For an F-X implementation of the Radon transform, see sfradon.
... read more

Posted by SourceForge Robot 2015-04-21

Seislet-based MCA

A new paper is added to the collection of reproducible documents:

Seislet-based morphological component analysis using scale-dependent exponential shrinkage


Morphological component analysis (MCA) is a powerful tool used in image processing to separate different geometrical components (cartoons and textures, curves and points etc). MCA is based on the observation that many complex signals may not be sparsely represented using only one dictionary/transform, however can have sparse representation by combining several over-complete dictionaries/transforms. In this paper we propose seislet-based MCA for seismic data processing. MCA algorithm is reformulated in the shaping-regularization framework. Successful seislet-based MCA depends on reliable slope estimation of seismic events, which is done by plane-wave destruction (PWD) filters. An exponential shrinkage operator unifies many existing thresholding operators and is adopted in scale-dependent shaping regularization to promote sparsity. Numerical examples demonstrate a superior performance of the proposed exponential shrinkage operator and the potential of seislet-based MCA in application to trace interpolation and multiple removal.
link

Posted by SourceForge Robot 2015-04-17

Tutorial on image resolution

The example in rsf/tutorials/images reproduces the tutorial from Matt Hall on playing with image resolution. For more explanation, see Matt's blog post R is for Resolution.




Madagascar users are encouraged to try improving the results. ... read more

Posted by SourceForge Robot 2015-04-16

madagascar-1.7 released

The 1.7 stable release features 21 new reproducible papers and multiple other enhancements including improved tools for parallel computing developed at the Second Working Workshop.

According to the SourceForge statistics, the previous 1.5 stable distribution has been downloaded more than 4,000 times. The top country (with 24% of all downloads) was USA, followed by China, Colombia, Germany, and Brazil.

According to Openhub.net (last updated in January 2015), the year of 2014 was a period of a high development activity, with 33 contributors making 1,876 commits to the repository (up 16% from the previous year). Openhub.net says that Madagascar "has a well established, mature codebase maintained by a very large development team with stable year-over-year commits " and estimated 239 man-years of effort (an estimated development cost of $13 million).



link

Posted by SourceForge Robot 2015-04-13

How to make your research irreproducible

Yesterday (April 1, 2015) a group of computer scientists from UK (Neil Chue Hong, Tom Crick, Ian Gent, and Lars Kotthoff) announced a seminal paper Top Tips to Make Your Research Irreproducible.

... read more

Posted by SourceForge Robot 2015-04-02

Fast 3D velocity scan

A new paper is added to the collection of reproducible documents:

A fast algorithm for 3D azimuthally anisotropic velocity scan


Conventional velocity scan can be computationally expensive for large-size seismic data, particularly when the presence of anisotropy requires multiparameter estimation. We introduce a fast algorithm for 3D azimuthally anisotropic velocity scan, which is a generalization of the previously proposed 2D butterfly algorithm for hyperbolic Radon transform. To compute the semblance in a two-parameter residual moveout domain, the numerical complexity of our algorithm is roughly $ Oklzzwxh:0006N^3klzzwxh:0007log Nklzzwxh:0008$ as opposed to $ Oklzzwxh:0009N^5klzzwxh:0010$ of the straightforward velocity scan, with $ N$ being representative of the number of points in either dimension of data space or parameter space. We provide both synthetic and field-data examples to illustrate the efficiency and accuracy of the algorithm.
link

Posted by SourceForge Robot 2015-03-28

Multiple suppression using PEF

Another old paper is added to the collection of reproducible documents:

Multiple suppression using prediction-error filter


I present an approach to multiple suppression, that is based on the moveout between primary and multiple events in the CMP gather. After normal moveout correction, primary events will be horizontal, whereas multiple events will not be. For each NMOed CMP gather, I reorder the offset in random order. Ideally, this process has little influence on the primaries, but it destroys the shape of the multiples. In other words, after randomization of the offset order, the multiples appear as random noise. This "man-made" random noise can be removed using prediction-error filter (PEF). The randomization of the offset order can be regarded as a random process, so we can apply it to the CMP gather many times and get many different samples. All the samples can be arranged into a 3-D cube, which is further divided into many small subcubes. A 3-D PEF can then be estimated from each subcube and re-applied to it to remove the multiple energy. After that, all the samples are averaged back into one CMP gather, which is supposed to be free of multiple events. In order to improve the efficiency of the algorithm of estimating the PEF for each subcube, except for the first subcube which starts with a zero-valued initial guess, all the subsequent subcubes take the last estimated PEF as an initial guess. Therefore, the iteration count can be reduced to one step for all the subsequent subcubes with little loss of accuracy. Three examples demonstrate the performance of this new approach, especially in removing the near-offset multiples.
link

Posted by SourceForge Robot 2015-03-27

FWI on GPU

A new paper is added to the collection of reproducible documents:

A graphics processing unit implementation of time-domain full-waveform inversion


The graphics processing unit (GPU) has become a popular device for seismic imaging and inversion due to its superior speedup performance. In this paper we implement GPU-based full waveform inversion (FWI) using the wavefield reconstruction strategy. Because the computation on GPU is much faster than CPU-GPU data communication, in our implementation the boundaries of the forward modeling are saved on the device to avert the issue of data transfer between host and device. The Clayton-Enquist absorbing boundary is adopted to maintain the efficiency of GPU computation. A hybrid nonlinear conjugate gradient algorithm combined with the parallel reduction scheme is utilized to do computation in GPU blocks. The numerical results confirm the validity of our implementation.
link

Posted by SourceForge Robot 2015-03-27

Tutorial on phase and the Hilbert transform

The example in rsf/tutorials/hilbert reproduces the tutorial from Steve Purves on phase and the Hilbert transform. The tutorial was published in the October 2014 issue of The Leading Edge.



Madagascar users are encouraged to try improving the results.

See also: ... read more

Posted by SourceForge Robot 2015-03-26

Antialiasing in Kirchhoff migration

Another old paper is added to the collection of reproducible documents:

When is anti-aliasing needed in Kirchhoff migration?


We present criteria to determine when numerical integration of seismic data will incur operator aliasing. Although there are many ways to handle operator aliasing, they add expense to the computational task. This is especially true in three dimensions. A two-dimensional Kirchhoff migration example illustrates that the image zone of interest may not always require anti-aliasing and that considerable cost may be spared by not incorporating it.
link

Posted by SourceForge Robot 2015-03-26

Stratigraphic coordinates

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.
link

Posted by SourceForge Robot 2015-03-25

Diffraction imaging of carbonate reservoirs

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.
link

Posted by SourceForge Robot 2015-03-25

Signal and noise orthogonalization

Posted by SourceForge Robot 2015-03-25

wxPython

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: ... read more

Posted by SourceForge Robot 2015-03-25

Tutorial on tuning and AVO

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: ... read more

Posted by SourceForge Robot 2015-03-09

CiSE Paper on Madagascar Community

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.
... read more

Posted by SourceForge Robot 2015-03-04

Program of the month: sfhistogram

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.
... read more

Posted by SourceForge Robot 2015-03-01

Acoustic staggered grid in IWAVE

A new paper is added to the collection of reproducible documents:

Acoustic staggered grid modeling in IWAVE


IWAVE is a framework for time-domain regular grid finite difference and finite element methods. The IWAVE package includes source code for infrastructure component, and implementations of several wave physics modeling categories. This paper presents two sets of examples using IWAVE acoustic staggered grid modeling. The first set illustrates the effectiveness of a simple version of Perfectly Matched Layer absorbing boundary conditions. The second set reproduce illustrations from a recent paper on error propagation for heterogeneous medium simulation using finite differences, and demostrate the interface error effect which renders all FD methods effectively first-order accurate. The source code for these examples is packaged with the paper source, and supports the user in duplicating the results presented here and using IWAVE in other settings.
link

Posted by SourceForge Robot 2015-01-31