Madagascar (software)
   HOME

TheInfoList



OR:

Madagascar is a software package for multidimensional data analysis and
reproducible Reproducibility, closely related to replicability and repeatability, is a major principle underpinning the scientific method. For the findings of a study to be reproducible means that results obtained by an experiment or an observational study or ...
computational experiments. Technology developed using the Madagascar project management system is transferred in the form of recorded processing histories, which become "computational recipes" to be verified, exchanged, and modified by users of the system.


Features

The Madagascar environment consists of: # Standalone programs for out-of-core data analysis; # Standalone programs for geophysical data processing and imaging; # A development kit for C, C++, Java, Fortran-77, Fortran-90, Python, Matlab, and Octave; # A framework for reproducible numerical experiments, based on
SCons SCons is a software development tool that analyzes source code dependencies and operating system adaptation requirements from a software project description and generates final binary executables for installation on the target operating system pla ...
; # A framework for scientific publications, based on
SCons SCons is a software development tool that analyzes source code dependencies and operating system adaptation requirements from a software project description and generates final binary executables for installation on the target operating system pla ...
and
LaTeX Latex is an emulsion (stable dispersion) of polymer microparticles in water. Latices are found in nature, but synthetic latices are common as well. In nature, latex is found as a wikt:milky, milky fluid, which is present in 10% of all floweri ...
; # A collection of reproducible scientific articles also used as usage examples and regression tests for the standalone programs; # A collection of datasets used as input to reproducible numerical experiments.


Example script

An example file is shown below from rsf.proj import * Fetch("wz.35.H", "wz") Flow("wind", "wz.35.H", "dd form=native , window n1=400 j1=2 , smooth rect1=3") Plot("wind", "pow pow1=2 , grey") Flow("mute", "wind", "mutter v0=0.31 half=n") Plot("mute", "pow pow1=2 , grey") Result("denmark", "wind mute", "SideBySideAniso") End() Note that by itself does not do any job other than setting rules for building different targets. The targets get built when one executes on the command line. Running produces
bash$ scons
scons: Reading SConscript files ...
scons: done reading SConscript files.
scons: Building targets ...
retrieve( wz.35.H" [])
< wz.35.H /RSF/bin/sfdd form=native ,  /RSF/bin/sfwindow n1=400 j1=2 ,  /RSF/bin/sfsmooth rect1=3 > wind.rsf
< wind.rsf /RSF/bin/sfpow pow1=2 ,  /RSF/bin/sfgrey > wind.vpl
< wind.rsf /RSF/bin/sfmutter v0=0.31 half=n > mute.rsf
< mute.rsf /RSF/bin/sfpow pow1=2 ,  /RSF/bin/sfgrey > mute.vpl
/RSF/bin/vppen yscale=2 vpstyle=n gridnum=2,1 wind.vpl mute.vpl > Fig/denmark.vpl
scons: done building targets.


License

Madagascar is
free software Free software, libre software, libreware sometimes known as freedom-respecting software is computer software distributed open-source license, under terms that allow users to run the software for any purpose as well as to study, change, distribut ...
and is licensed under the
GPL The GNU General Public Licenses (GNU GPL or simply GPL) are a series of widely used free software licenses, or ''copyleft'' licenses, that guarantee end users the freedom to run, study, share, or modify the software. The GPL was the first c ...
.


History

Madagascar was first publicly presented at the EAGE Workshop in Vienna in June 2006. The work on the package (previously named RSF) was started by Sergey Fomel in 2003. Since then, many people have contributed to it. While being written mostly from scratch, Madagascar borrows ideas from the design of SEPlib, an open-source package maintained by Bob Clapp at the Stanford Exploration Project (SEP). Generations of SEP students and researchers contributed to SEPlib. Most important contributions came from Rob Clayton, Jon Claerbout, Dave Hale, Stew Levin, Rick Ottolini, Joe Dellinger, Steve Cole, Dave Nichols, Martin Karrenbach, Biondo Biondi, and Bob Clapp. Madagascar also borrows ideas from
Seismic Unix Seismic Unix is an open source seismic utilities package which was supported by the Center for Wave Phenomena (CWP) at the Colorado School of Mines (CSM). Currently it is supported by John Stockwell. History Einar Kjartansson began writing wha ...
(SU), a package maintained by John Stockwell at the Center for Wave Phenomenon (CWP) at the Colorado School of Mines (Stockwell, 1997; Stockwell, 1999--------, 1999, The CWP/SU: Seismic Un*x package: Computers and Geosciences, 25, 415--419.). Main contributors to SU included Einar Kjartansson, Shuki Ronen, Jack Cohen, Chris Liner, Dave Hale, and John Stockwell. SU adopted an open-source BSD-style license starting with release 40 (April 10, 2007).


See also

*
Reproducibility Reproducibility, closely related to replicability and repeatability, is a major principle underpinning the scientific method. For the findings of a study to be reproducible means that results obtained by an experiment or an observational study or ...


References


External links


Scientific conference presentations about Madagascar

For reproducible research, go to Madagascar
* Sergey Fomel and Jon Claerbout
Guest Editors' Introduction: Reproducible Research
Computing in Science and Engineering, vol. 11, no. 1, pp. 5–7, Jan./Feb. 2009, * Sergey Fomel, Paul Sava, Ioan Vlad, Yang Liu, and Vladimir Bashkardin, 2013
Madagascar: open-source software project for multidimensional data analysis and reproducible computational experiments
Journal of Open Research Software, 1(1):e8, * Sergey Fomel
Reproducible Research as a Community Effort: Lessons from the Madagascar Project
Computing in Science and Engineering, vol. 17, no. 1, pp. 20–26, Jan./Feb. 2015, * John Holden
The genesis of Madagascar
The Leading Edge, vol. 34, no. 11, Nov. 2015, {{doi, 10.1190/tle34111386.1 Articles with example Python (programming language) code Free science software