+ All Categories
Home > Documents > GNU Data Language (GDL) - a free and open-source...

GNU Data Language (GDL) - a free and open-source...

Date post: 12-Oct-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
1
GNU Data Language (GDL) - a free and open-source implementation of IDL R Sylwester Arabas 1 , Marc Schellens * , Alain Coulais 2 , Joel Gales 3 , Peter Messmer 4 , and many other volunteers all around the world ** * : Marc is the primary author and the maintainer of GDL ** : a list of contributors is available at the project’s website (http://gnudatalanguage.sf.net/ ) and in the AUTHORS file of the GDL tarballs and packages 1 : Institute of Geophysics, University of Warsaw, Poland; 2 : LERMA, CNRS and Observatoire de Paris, Paris, France; 3 : NASA Goddard Space Flight Center, Greenbelt, Maryland, USA; 4 : Tech-X Corporation, Boulder, Colorado, USA About GDL GNU Data Language (GDL) is developed with the aim of providing an open-source drop-in replacement for the ITTVIS’s Interactive Data Language (IDL). It is free software developed by an international team of volunteers led by Marc Schellens - the project’s founder (a list of contributors is available on the project’s website). GDL with its library routines is designed as a tool for numerical data analysis and visualisation. As its proprietary counterparts (IDL and PV-WAVE), GDL is used particularly in geosciences and astronomy. GDL is dynamically-typed, vectorized and has object-oriented programming capabilities. The library routines handle numerical calculations, data visualisation, signal/image processing, interaction with host OS and data input/output. GDL supports several data formats such as netCDF, HDF4, HDF5, GRIB, PNG, TIFF, DICOM, etc. Graphical output is handled by X11, PostScript, SVG or z-buffer terminals, the last one allowing output to be saved in a variety of raster graphics formats. While still being in its beta-stage of development (see Coulais et al., 2009), GDL proved to be a usable tool both for research (Jaffey et al., 2008, 2009) and teaching purposes (outlined hereby). GDL is released under the GNU GPL licence - you are free to use it, to share it with anyone, to modify and improve it, and to share the modified version with anyone. Contributions and users’ feedback are welcome! References Coulais, A., M. Schellens, J. Gales, S. Arabas, M. Boquien, P. Chanial, P. Messmer, D. Fillmore, O. Poplawski, S. Maret, G. Marchal, N. Galmiche, and T. Mermet, 2009: Status of GDL - GNU Data Language. Astronomical Data Analysis Software and Systems XIX , ASP Conference Series, Sapporo, Japan. http://aramis2.obspm.fr/coulais/ . Jaffey, A., M. Cheung, and A. Kobashi, 2008: Online data analysis using Web GDL. AGU Fall Meeting 2008 , San Francisco, USA. http://www.agu.org/meetings/fm08/ . Jaffey, A., A. Kobashi, and M. Cheung, 2009: GPU acceleration of the scientific data analysis package GDL. NVIDIA Research Summit 2009 , San Jose, USA. http://www.nvidia.com/object/gtc 2009 archive.html . Acknowledgements Presentation of the poster during the EGU conference in Vienna was supported by the European Geosciences Union (through the Young Scientist’s Travel Award for Europeans) and the European Commission’s 6 th FP IP EUCAARI (European Integrated project on Aerosol Cloud Climate and Air Quality interactions, no. 036833-2). Thanks are due all volunteers who helped in the development of GDL by providing their feedback in the form of patches, bug reports, support requests and comments. Development of GDL is hosted at SourceForge. The LIDAR figure was provided by Michal Piądlowski. Disclaimer GDL is not an official GNU package (yet). IDL is a registered trademark of ITT Visual Information Solutions (h ttp://www.ittvis.com/). Dependencies and useful libraries (all free & open) GDL is an incremental compiler with integrated debugging facilities. It is written in C++ using the ANTLR language-recognition framework. Extensions to GDL can be written in C++, GDL, and Python. Most of the library routines are implemented as interfaces to open-source libraries: GNU Scientific Library (GSL) Terence Parr's ANTLR C++ STL, GCC OpenMP (GCC >4.2) UNIDATA's netCDF HDFGroup's HDF4 ECMWF's GRIB API HDFGroup's HDF5 Image Magick's Magick++ Robbie Barnett's GDLffDICOM free, open & libre: free & open: MIT's FFTW Python Python wxWidgets Paul Wessel's GSHHS PLplot Gerald I. Evenden's libproj4 UNIDATA's UDUNITS Matthew Craig's TeXtoIDL (optional) (mandatory) readline zlib ... GNU autotools (for development only) Craig Markwardt's MPFIT curve fitting, function minimi- zation 2D & 3D plots, contours, surfaces, text annotations etc NASA's Astron lib incl. FITS IO Craig Markwardt's CMSVLIB IDL's SAVE files I/O calling Python code from GDL & GDL as a Python module shorelines etc simple linear algebra, random numbers, histograms, interpola tion, splines, root-finding, physical constants catalogue, wavelets, etc (optional) (IDL-written libraries functional under GDL) e.g. multithreaded matrix op. grammar description parsers Example usage of GDL for classroom work on data analysis GDL proved to be a useful tool for classroom work on data analysis. In 2010 it was used for the second time as a data-analysis environment during a meteorological-data processing course taught at the Institute of Geophysics, University of Warsaw. The course covers hands-on training in handling of scientific data sets. GDL is used for reading GRIB, netCDF & HDF files, and performing basic data analysis and visualisation tasks. GDL plotting weather-forecast map from a GRIB file with NOAA GFS model output. GDL used for analyzing LIDAR data (reading netCDF files, producing PostScript plots) on Linux, using the IDLWAVE mode for Emacs. GDL used as a part of a web-interface for controlling 2D fluid flow simulation and visualizing the output (reading netCDF files and outputting SVG plots). GDL-generated PostScript plot of a Fourier spectrum in a LaTeX-generated PDF file. GDL compressing weather-radar images using truncated wavelet approximation. GDL used for demonstrating Kalman filtering on randomly-generated signal. GDL displaying MODIS satellite image (stored in a HDF file) on multiple X11 windows - using a true-color RGB composite, and using separate channels. Supported platforms and availability of pre-compiled/pre-configured packages Packaged versions of GDL are available for several Linux distributions (incl. Fedora, Gentoo and Debian) and Mac OS X (e.g. via Macports and Fink). The source code (available at http://gnudatalanguage.sf.net/ ) compiles on other UNIX systems, including BSD, OpenSolaris. TM TM Poster presented at the European Geosciences Union General Assembly 2010, May 2010, Vienna, Austria (ESSI1 session: Earth & Space Science Informatics / International Geoscience Informatics Partnerships, Projects, and Collaboration Technologies)
Transcript
Page 1: GNU Data Language (GDL) - a free and open-source …aramis.obspm.fr/~coulais/IDL_et_GDL/gdl-poster-egu2010.pdf · 2011. 3. 2. · Presentation of the poster during the EGU conference

GNU Data Language (GDL) - a free and open-source implementation of IDLR©

Sylwester Arabas1, Marc Schellens*, Alain Coulais2, Joel Gales3, Peter Messmer4, and many other volunteers all around the world**

*: Marc is the primary author and the maintainer of GDL **: a list of contributors is available at the project’s website (http://gnudatalanguage.sf.net/) and in the AUTHORS file of the GDL tarballs and packages1: Institute of Geophysics, University of Warsaw, Poland; 2: LERMA, CNRS and Observatoire de Paris, Paris, France; 3: NASA Goddard Space Flight Center, Greenbelt, Maryland, USA; 4: Tech-X Corporation, Boulder, Colorado, USA

About GDL

GNU Data Language (GDL) is developed with the aim of providingan open-source drop-in replacement for the ITTVIS’s Interactive DataLanguage (IDL). It is free software developed by an international teamof volunteers led by Marc Schellens - the project’s founder (a listof contributors is available on the project’s website). GDL with its libraryroutines is designed as a tool for numerical data analysis andvisualisation. As its proprietary counterparts (IDL and PV-WAVE),GDL is used particularly in geosciences and astronomy. GDL isdynamically-typed, vectorized and has object-oriented programmingcapabilities. The library routines handle numerical calculations, datavisualisation, signal/image processing, interaction with host OS and datainput/output. GDL supports several data formats such as netCDF,HDF4, HDF5, GRIB, PNG, TIFF, DICOM, etc. Graphical outputis handled by X11, PostScript, SVG or z-buffer terminals, the last oneallowing output to be saved in a variety of raster graphics formats. Whilestill being in its beta-stage of development (see Coulais et al., 2009),GDL proved to be a usable tool both for research (Jaffey et al., 2008,2009) and teaching purposes (outlined hereby). GDL is released underthe GNU GPL licence - you are free to use it, to share it with anyone,to modify and improve it, and to share the modified version with anyone.Contributions and users’ feedback are welcome!

References

Coulais, A., M. Schellens, J. Gales, S. Arabas, M. Boquien, P. Chanial, P. Messmer,D. Fillmore, O. Poplawski, S. Maret, G. Marchal, N. Galmiche, and T. Mermet, 2009:Status of GDL - GNU Data Language. Astronomical Data Analysis Software andSystems XIX , ASP Conference Series, Sapporo, Japan.http://aramis2.obspm.fr/coulais/.

Jaffey, A., M. Cheung, and A. Kobashi, 2008: Online data analysis using Web GDL.AGU Fall Meeting 2008 , San Francisco, USA. http://www.agu.org/meetings/fm08/.

Jaffey, A., A. Kobashi, and M. Cheung, 2009: GPU acceleration of the scientific dataanalysis package GDL. NVIDIA Research Summit 2009 , San Jose, USA.http://www.nvidia.com/object/gtc 2009 archive.html.

Acknowledgements

Presentation of the poster during the EGU conference in Vienna was supported by theEuropean Geosciences Union (through the Young Scientist’s Travel Award forEuropeans) and the European Commission’s 6th FP IP EUCAARI (European Integratedproject on Aerosol Cloud Climate and Air Quality interactions, no. 036833-2). Thanksare due all volunteers who helped in the development of GDL by providing their feedbackin the form of patches, bug reports, support requests and comments. Development ofGDL is hosted at SourceForge. The LIDAR figure was provided by Michał Piądłowski.

Disclaimer

GDL is not an official GNU package (yet). IDL is a registered trademark of ITT VisualInformation Solutions (http://www.ittvis.com/).

Dependencies and useful libraries (all free & open)

GDL is an incremental compiler with integrated debugging facilities. It is written in C++ using theANTLR language-recognition framework. Extensions to GDL can be written in C++, GDL, andPython. Most of the library routines are implemented as interfaces to open-source libraries:

GNUScientific Library

(GSL)

Terence Parr's

ANTLR

C++STL, GCC

OpenMP(GCC >4.2)

UNIDATA's

netCDF

HDFGroup's

HDF4

ECMWF's

GRIB API

HDFGroup's

HDF5

ImageMagick's

Magick++

RobbieBarnett 's

GDLffDICOM

free, open & libre:

free & open:

MIT's

FFTW

PythonPython

wxWidgets

Paul Wessel's

GSHHS

PLplot

Gerald I. Evenden's

libproj4

UNIDATA's

UDUNITS

Matthew Craig's

TeXtoIDL

(optional)

(mandatory)

readlinezlib...

GNUautotools

(for development only)

Craig Markwardt's

MPFITcurve fitt ing, function

minimi-zation

2D & 3D plots, contours, surfaces, text

annotations etc

NASA's

Astron libincl. FITS IO

Craig Markwardt's

CMSVLIBIDL's SAVE

files I/O

calling Python code from GDL &

GDL as a Python module

shorelines etc

simple linear algebra, random numbers, histograms, interpolation,

splines, root-finding, physical constants catalogue, wavelets,

etc

(optional)

(IDL-written librariesfunctional under GDL)

e.g.

multithreadedmatrix

op.

grammar descriptionparsers

Example usage of GDL for classroom work on data analysis

GDL proved to be a useful tool for classroom work on dataanalysis. In 2010 it was used for the second time as a data-analysisenvironment during a meteorological-data processing coursetaught at the Institute of Geophysics, University of Warsaw. Thecourse covers hands-on training in handling of scientific data sets.GDL is used for reading GRIB, netCDF & HDF files, andperforming basic data analysis and visualisation tasks.

GDL plotting weather-forecast map from aGRIB file with NOAA GFS model output.

GDL used for analyzing LIDAR data (readingnetCDF files, producing PostScript plots) onLinux, using the IDLWAVE mode for Emacs.

GDL used as a part of a web-interface forcontrolling 2D fluid flow simulation and

visualizing the output (reading netCDF filesand outputting SVG plots).

GDL-generated PostScript plot of a Fourierspectrum in a LaTeX-generated PDF file.

GDL compressing weather-radar imagesusing truncated wavelet approximation.

GDL used for demonstrating Kalmanfiltering on randomly-generated signal.

GDL displaying MODIS satellite image(stored in a HDF file) on multiple X11

windows - using a true-color RGBcomposite, and using separate channels.

Supported platforms and availability of pre-compiled/pre-configured packages

Packaged versions of GDL are available for several Linux distributions(incl. Fedora, Gentoo and Debian) and Mac OS X (e.g. via Macports andFink). The source code (available at http://gnudatalanguage.sf.net/)compiles on other UNIX systems, including BSD, OpenSolaris. TM

TM

Poster presented at the European Geosciences Union General Assembly 2010, May 2010, Vienna, Austria (ESSI1 session: Earth & Space Science Informatics / International Geoscience Informatics Partnerships, Projects, and Collaboration Technologies)

Recommended