Metview

Last updated
Metview
Developer(s) ECMWF
Initial release1991;33 years ago (1991)
Stable release
5.21.2 / 28 February 2024;26 days ago (2024-02-28)
Written in C++, C, Python and Qt
Operating system Linux, OS X
Available inBritish English
Type Scientific visualization
License Apache License
Website confluence.ecmwf.int/display/METV/

Metview is a meteorological workstation and batch system developed at the European Centre for Medium-Range Weather Forecasts. [1]

Contents

History

Developments were started at ECMWF in 1990 in co-operation with the National Institute for Space Research of Brazil and Météo-France. [2]

Time line of Metview major versions and changes
YearVersionChanges
1990AnnouncementAnnouncement at EGOWS [3]
1991First prototypeBatch system at National Institute for Space Research
19931.0First batch and user interface
19982.0Use of OpenGL for interactive visualisation
20003.0New user interface (Motif)
20104.0Upgrade to Magics++ graphics library; [4] released as Open-source software under Apache License [5]
20144.5New user interface based on Qt version 4
20185.0Switch to Qt version 5, improved plot window and new Python interface

Features

User interface

This screenshot of the Metview desktop shows its icon based interface and its visualisation capabilities. Screenshot of Metview desktop.png
This screenshot of the Metview desktop shows its icon based interface and its visualisation capabilities.

Metview has an icon based user interface, where any aspect of a meteorological (graphical) product is expressed in an icon. Users can prototype visualisation by dragging and dropping icons in the plot area.

Metview offers also various tools to explore and display the content of meteorological file formats, such as GRIB, BUFR, NetCDF and ODB.

Metview Macro language for batch processing

The Macro language is designed to be high level to allow analysts and scientist to concentrate on the work/processing flow they try to achieve.

# Metview Macro# reading GRIB files through the read() functiona=read(mygrib1.grb)b=read(mygrib2.grb)# calculating the differences between two fields c=a-b# plotting the resultplot(c)

In 2017 a Python version of the macro language was developed. [6]

Supported file formats

Metview supports the various meteorological data formats as input and output formats: GRIB (editions 1 and 2), BUFR, [7] NetCDF, ODB (ECMWF Observation Database), [8] Local databases and ASCII data files (Comma-separated values, grids and scattered data)

Development

All major developments are made at the Development Section at ECMWF. Most of the code is in C++ and the code is versioned in git. CMake is used as build system.

Metview makes use of other software packages developed at ECMWF. In fact Metview is an extended MARS client and uses ecCodes for GRIB and BUFR handling and Magics for contouring and visualisation.

Distribution

Metview is mainly distributed as a source tarball under the Apache License version 2.0. There are plans to distribute the code on GitHub.

Binary versions of Metview are available in conda (through the conda-forge channel), in Ubuntu [9] and MacPorts. [10] RPMs for major Linux distribution are provided on the Open Build Service. [11]

Related Research Articles

<span class="mw-page-title-main">Qt (software)</span> Object-oriented framework for software development

Qt is cross-platform software for creating graphical user interfaces as well as cross-platform applications that run on various software and hardware platforms such as Linux, Windows, macOS, Android or embedded systems with little or no change in the underlying codebase while still being a native application with native capabilities and speed.

<span class="mw-page-title-main">KDevelop</span> Integrated development environment

KDevelop is a free and open-source integrated development environment (IDE) for Unix-like computer operating systems and Windows. It provides editing, navigation and debugging features for several programming languages, and integration with build automation and version-control systems, using a plugin-based architecture.

CMUCL is a free Common Lisp implementation, originally developed at Carnegie Mellon University.

<span class="mw-page-title-main">GNU Data Language</span>

The GNU Data Language (GDL) is a free alternative to IDL, achieving full compatibility with IDL 7 and partial compatibility with IDL 8. Together with its library routines, GDL is developed to serve as a tool for data analysis and visualization in such disciplines as astronomy, geosciences, and medical imaging. GDL is licensed under the GPL. Other open-source numerical data analysis tools similar to GDL include Julia, Jupyter Notebook, GNU Octave, NCAR Command Language (NCL), Perl Data Language (PDL), R, Scilab, SciPy, and Yorick.

GRIB is a concise data format commonly used in meteorology to store historical and forecast weather data. It is standardized by the World Meteorological Organization's Commission for Basic Systems, known under number GRIB FM 92-IX, described in WMO Manual on Codes No.306. Currently there are three versions of GRIB. Version 0 was used to a limited extent by projects such as TOGA, and is no longer in operational use. The first edition is used operationally worldwide by most meteorological centers, for Numerical Weather Prediction output (NWP). A newer generation has been introduced, known as GRIB second edition, and data is slowly changing over to this format. Some of the second-generation GRIB is used for derived products distributed in the Eumetcast of Meteosat Second Generation. Another example is the NAM model.

CPython is the reference implementation of the Python programming language. Written in C and Python, CPython is the default and most widely used implementation of the Python language.

<span class="mw-page-title-main">Banshee (media player)</span> Open source media player

Banshee was a cross-platform open-source media player, called Sonance until 2005. Built upon Mono and Gtk#, it used the GStreamer multimedia platform for encoding, and decoding various media formats, including Ogg Vorbis, MP3 and FLAC. Banshee can play and import audio CDs and supports many portable media players, including Apple's iPod, Android devices and Creative's ZEN players. Other features include Last.fm integration, album artwork fetching, smart playlists and podcast support. Banshee is released under the terms of the MIT License. Stable versions are available for many Linux distributions, as well as a beta preview for OS X and an alpha preview for Windows.


This is a comparison of notable free and open-source configuration management software, suitable for tasks like server configuration, orchestration and infrastructure as code typically performed by a system administrator.

The Binary Universal Form for the Representation of meteorological data (BUFR) is a binary data format maintained by the World Meteorological Organization (WMO). The latest version is BUFR Edition 4. BUFR Edition 3 is also considered current for operational use. BUFR was created in 1988 with the goal of replacing the WMO's dozens of character-based, position-driven meteorological codes, such as SYNOP, TEMP and CLIMAT. BUFR was designed to be portable, compact, and universal. Any kind of data can be represented, along with its specific spatial/temporal context and any other associated metadata. In the WMO terminology, BUFR belongs to the category of table-driven code forms, where the meaning of data elements is determined by referring to a set of tables that are kept and maintained separately from the message itself.

The Grid Analysis and Display System (GrADS) is an interactive desktop tool that is used for easy access, manipulation, and visualization of earth science data. The format of the data may be either binary, GRIB, NetCDF, or HDF-SDS. GrADS has been implemented worldwide on a variety of commonly used operating systems and is freely distributed over the Internet.

NetCDF is a set of software libraries and self-describing, machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data. The project homepage is hosted by the Unidata program at the University Corporation for Atmospheric Research (UCAR). They are also the chief source of netCDF software, standards development, updates, etc. The format is an open standard. NetCDF Classic and 64-bit Offset Format are an international standard of the Open Geospatial Consortium.

<span class="mw-page-title-main">Spyder (software)</span> IDE for scientific programming in Python

Spyder is an open-source cross-platform integrated development environment (IDE) for scientific programming in the Python language. Spyder integrates with a number of prominent packages in the scientific Python stack, including NumPy, SciPy, Matplotlib, pandas, IPython, SymPy and Cython, as well as other open-source software. It is released under the MIT license.

<span class="mw-page-title-main">Zim (software)</span> Personal wiki software written in Python

Zim is a graphical text editor designed to maintain a collection of locally stored wiki-pages, a personal wiki. It works as a personal knowledge base and note-taking software application that operates on text files using markdown. Each wiki-page can contain things like text with simple formatting, links to other pages, attachments, and images. Additional plugins, such as an equation editor and spell-checker, are also available. The wiki-pages are stored in a folder structure in plain text files with wiki formatting. Zim can be used with the Getting Things Done method.

<span class="mw-page-title-main">Julia (programming language)</span> Dynamic programming language

Julia is a high-level, general-purpose dynamic programming language, most commonly used for numerical analysis and computational science. Distinctive aspects of Julia's design include a type system with parametric polymorphism and the use of multiple dispatch as a core programming paradigm, efficient garbage collection, and a just-in-time (JIT) compiler.

<span class="mw-page-title-main">Plotly</span> Canadian computing company

Plotly is a technical computing company headquartered in Montreal, Quebec, that develops online data analytics and visualization tools. Plotly provides online graphing, analytics, and statistics tools for individuals and collaboration, as well as scientific graphing libraries for Python, R, MATLAB, Perl, Julia, Arduino, JavaScript and REST.

<span class="mw-page-title-main">Anaconda (Python distribution)</span> Distribution of the Python and R languages for scientific computing

Anaconda is a distribution of the Python and R programming languages for scientific computing, that aims to simplify package management and deployment. The distribution includes data-science packages suitable for Windows, Linux, and macOS. It is developed and maintained by Anaconda, Inc., which was founded by Peter Wang and Travis Oliphant in 2012. As an Anaconda, Inc. product, it is also known as Anaconda Distribution or Anaconda Individual Edition, while other products from the company are Anaconda Team Edition and Anaconda Enterprise Edition, neither of which are free.

<span class="mw-page-title-main">Nim (programming language)</span> Programming language

Nim is a general-purpose, multi-paradigm, statically typed, compiled high-level systems programming language, designed and developed by a team around Andreas Rumpf. Nim is designed to be "efficient, expressive, and elegant", supporting metaprogramming, functional, message passing, procedural, and object-oriented programming styles by providing several features such as compile time code generation, algebraic data types, a foreign function interface (FFI) with C, C++, Objective-C, and JavaScript, and supporting compiling to those same languages as intermediate representations.

<span class="mw-page-title-main">CatBoost</span> Yandex open source gradient boosting framework on decision trees

CatBoost is an open-source software library developed by Yandex. It provides a gradient boosting framework which among other features attempts to solve for Categorical features using a permutation driven alternative compared to the classical algorithm. It works on Linux, Windows, macOS, and is available in Python, R, and models built using catboost can be used for predictions in C++, Java, C#, Rust, Core ML, ONNX, and PMML. The source code is licensed under Apache License and available on GitHub.

References

  1. "Metview Official Website". ECMWF. Retrieved 2022-01-26.
  2. Russell, Iain (January 2014). "News item in ECMWF Newsletter 138 (Winter 2013/2014): Metview's 20th Anniversary" (PDF). ECMWF.
  3. Daabeck, Jens (June 1990). "Report from the EGOWS meeting" (PDF). EGOWS report. 1. Archived from the original (PDF) on 2016-03-05. Retrieved 2017-12-03.
  4. Siemen, Stephan (2 December 2017). "2B.2 Metview 4 & Magics++ answering new challenges of increasing volumes of data (2010 - 90annual_26iips)". ams.confex.com. Retrieved 2017-12-03.
  5. Siemen, Stephan. "Abstract: Metview: Helping to make best use of ECMWF's data (93rd American Meteorological Society Annual Meeting)". ams.confex.com. Retrieved 2017-12-03.
  6. Russell, Iain (January 2020). "Metview's Python interface opens new possibilities". ECMWF Newsletter. 162: 36–39.
  7. Karhila, Vesa (July 2012). "BUFR data and Metview" (PDF). ECMWF Newsletter. 132: 34–36.
  8. Kertesz, Sandor (January 2012). "A new framework to handle ODB in Metview 4" (PDF). ECMWF Newsletter. 130: 31–33.
  9. "metview package : Ubuntu". launchpad.net. Retrieved 2017-12-02.
  10. macports-ports: The MacPorts ports tree, MacPorts, 2017-12-01, retrieved 2017-12-02
  11. "Show home:SStepke / Metview - openSUSE Build Service". build.opensuse.org. Retrieved 2017-12-02.