Mirone: A multi-purpose tool for exploring grid data

https://doi.org/10.1016/j.cageo.2006.05.005Get rights and content

Abstract

Mirone is a Windows MATLAB-based framework tool developed by the author that allows the display and manipulation of a large number of grid formats through its interface with the Geospatial Data Abstraction Library (GDAL). Its main purpose is to provide users with an easy-to-use graphical interface to the more popular programs of the Generic Mapping Tools (GMT) package. In addition it offers a range of tools dedicated to topics in the earth sciences, including tools for multibeam mission planning, elastic deformation studies, tsunami propagation modeling, earth magnetic field computations and magnetic Parker inversions, Euler rotations and poles computations, plate tectonic reconstructions, and seismicity and focal mechanism plotting. The high-quality mapping and cartographic capabilities for which GMT is renowned is guaranteed through Mirone's ability to automatically generate GMT cshell scripts and dos batch files. User-specific requirements that lie outside the current capabilities of Mirone can be met by simple programming to provide the required functionality.

Introduction

Mirone is an open source code written in MATLAB® 6.5 by the author and has been developed specifically for the purpose of visualizing and manipulating GMT netCDF grids. GMT (Wessel and Smith, 1991) is one of the most popular programs within the scientific community on account of its mapping capabilities and high-quality graphics. However, most commercial software packages ignore this format and products that are able to read GMT, and to display and manipulate GMT grids, are rare. An additional problem that users face concerns data format. There are presently tens of different formats for storing gridded data and imagery data, and accessing data from disparate sources is a common problem. Mirone minimizes this obstacle through its interface with the GDAL (www.gdal.org). GDAL is a unifying C/C++ API for accessing raster geospatial data released under the MIT Open Source license, which aims to provide efficient access suitable for use in viewer applications, and which attempts to preserve coordinate systems and metadata.

MATLAB is a powerful tool for software development. The language is easy to learn and contains a large collection of mathematical functions that facilitate the task of writing complicated code, including Graphical Users Interfaces (GUIs). However, it also has limitations including those of speed and memory consumption. In order to circumvent these constraints, almost all substantial computations involving matrix data in Mirone have been made with the help of external code written in C and compiled as mex files. Because the mex files use scalar programming and employ single precision or short integer variables in circumstances where accuracy is not compromised, their memory consumption is reduced to the minimum necessary whilst the running speed is that of a compiled code.

This paper reports the general characteristics of Mirone, and describes and explains the program's main capabilities and functions. The paper also provides some example applications to topics in the earth sciences including elastic deformation, tsunamis, and plate tectonic motions. Aspects of the future refinement and development of Mirone are also addressed, including an example of how it can be extended by programming for particular needs. The source code and a stand-alone version, which is a version that does not require MATLAB, are available at w3.ualg.pt/~jluis/mirone.

Section snippets

The program design philosophy

Mirone was designed to address many of the specific needs of those who regularly use gridded data, but is particularly focused on the fields of geophysics and earth sciences. It provides comprehensive data visualization and analysis in a user-friendly environment. One of Mirone's advantages is that the author is also a user. I have found that much graphically oriented software obliges the user to follow a strict procedure that often requires in-depth study of the accompanying manual in order to

Starting the program

Upon starting the user is presented with Mirone in its basic form, which is a simple bar containing various menus. See Fig. 2 for an example of a Mirone window with data already displayed. Activities are initiated by using these menus. Although Mirone has pre-defined defaults it is very important that the user understand what these defaults mean and do. The first time the program is used the user is strongly advised to press the button with hammers icon. This icon opens the preferences window (

General functionality

By default Mirone automatically detects and reads all types of netCDF GMT grids as well as Surfer 6 and 7 grids. Many of the formats recognized by GDAL may also be accessed through the File menu. Those include: GeoTIFF DEM, DTED, USGS DEM, USGS SDTS DEM, Gtopo30, SRTM DEM, Arc/Info® ascii/binary grids, ENVI, ERDAS. img, GeoTIFF, Grid Exchange File (GXF from Geosoft®), Mars Orbiter Laser Altimeter (MOLA) grids, and the common image formats. When the loaded grid is referenced in geographical

Discipline-specific tools

Mirone contains a range of specific tools for application to topics in geophysics and earth sciences. The list of applications cover multi-beam mission planning, elastic deformation, tsunami modeling; including travel time estimation, plate tectonic reconstructions, Euler rotations and Euler poles computations, magnetic field computations and magnetic inversions, and seismicity and focal mechanism plotting. A selection of these tools is discussed below.

3D view and printing

Because Mirone does not use the 3D MATLAB functions, the program does not offer any built-in way of displaying graphics in 3D perspective. Although MATLAB can display in 3D by using its surface primitive, this consumes a lot of memory and has poor interactive response. As an alternative, Mirone uses the IVS Fledermaus free iView3D viewer (www.ivs.unb.ca/products/iview3d). Fledermaus is a fast, powerful 3D visualization tool capable of viewing large amounts of data (Fig. 7). Translations,

Evolution of Mirone

Mirone is a powerful tool for displaying and analyzing grid and vector data loaded in a variety of formats. The Mirone code comprises more than 90,000 lines of MATLAB code and about 30,000 of C mex code. Due to its modular design, careful programming, and interface to GMT and GDAL libraries, the program is able to read large amounts of data that would otherwise prove impossible if only MATLAB primitives had been used. Currently, however, the GDAL and GMT links are weakly developed. For example,

Acknowledgements

Maurice Tivey for giving permission to use his Parker inversion routines. MATLAB contributors to file exchange from which many ideas were taken. This paper and many improvements to the code were written during the author's sabbatical year. This work was supported by the STRIPAREA—POCI/CTE-GIN/59653/2004 project.

References (7)

There are more references available in the full text version of this article.

Cited by (104)

  • Tsunami impact assessment for low-lying cities along the Northern Atlantic coast of Morocco using MIRONE software

    2022, Journal of African Earth Sciences
    Citation Excerpt :

    However, MIRONE software (Open-source tool) gives good results comparable with commercial software of more limited access (e.g., Omira et al., 2012). Moreover, MIRONE is one of the most popular programs in the scientific community due to its high quality of cartography and graphing capabilities (Luis, 2007). According to other results in the three scenarios Gorringe Bank, Marquês do Pombal and Horseshoe faults, the MWE higher than 10 m and the distance inundation reach up to 1 km are overestimated and unrealistic values (e.g., Mellas et al., 2012; Omira et al., 2012; Omira et al., 2015).

View all citing articles on Scopus

Code available from server at http://w3.ualg.pt/~jluis/mirone/

View full text