Skip to end of metadata
Go to start of metadata

Version 5.6.1

Externally released on 2019-08-07
Became metview/new at ECMWF on 2019-08-07 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2019-08-07

    • Built with Magics 4.1.1

    • Built with ecCodes 2.13.1 
    • Built with ODB_API version 0.19.0
    • Built with emoslib 000462 

Fixes:

  • fixed issue in the Cross Section Data and Cross Section View icons where, given 3-dimensional wind components, the sign of the vertical wind component computed when W Wind Scaling Factor Mode is Compute was the negative of what it should be
  • fixed issue in the Cross Section Data and Cross Section View icons where , given 3-dimensional wind components and multiple time steps, multiple wind arrows were plotted at each location
  • fixed issue in the Cross Section DataCross Section ViewAverage Data and Average View icons where, given input GRIB data containing multiple time steps, the last time step is visualised by default; now it is the first time step
  • fixed crash in the Cross Section Data and Cross Section View icons where both wind and non-wind fields are supplied
  • fixed crash when visualising XY matrix vectors from NetCDF data
  • fixed issue in the Contouring editor where the palette selector was empty
  • fixed issue in the Macro/Python function nearest_gridpoint() where a wrong result could be returned if the field is a sub-area of a Gaussian grid with longitudes encoded as 0 → 360, but the requested point has longitude of less than 0
  • fixed issue where grid interpolation failed with GRIB data that has no levelType key (when built with ecCodes 2.13.1)
  • fixed crash in the BUFR Examiner when searching in the Descriptors tab
  • fixed issue in the BUFR Examiner where search did not work in regexp mode
  • fixed issue where the frame list in the Display Window could not be sorted
  • fixed issue in the Display Window where a visdef icon displayed in the Layer Management tab could not be saved back to disk if the visdef had been generated by a Macro or Python call
  • fixed issue in the Display Window where a layer icon could disappear after being edited
  • fixed issue where a Fortran compiler was required in order to build Metview, even if no Fortran code is compiled

Version 5.6.0

Externally released on 2019-07-15
Became metview/new at ECMWF on 2019-07-15 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2019-07-15

    • Built with Magics 4.1.0

    • Built with ecCodes 2.13.0 
    • Built with ODB_API version 0.19.0
    • Built with emoslib 000462 

Desktop

  • new way to drop icons - when an icon editor is open, the icon shown in the top-left is now directly draggable, making workflows more efficient; for instance, open a Contouringicon editor, make some changes and drag the editor's icon directly in the plot window. Icons can also be dropped into a Metview desktop (a copy of the icon will be made), or indeed anywhere that an icon can normally be dropped. The icon is highlighted when the mouse is over it. When dragged and dropped, any changes made in the editor are automatically saved.
  • files that appear as NOTES or BINARY icons have a new context menu action "Recheck icon type" in case they have been mis-categorised
  • new context menu item on icons "copy filesystem path" to put the file path into the clipboard
  • new menu "Editors", which lists the open icon editors and raises them if selected
  • double-clicking on a Macro or Python icon that is already being edited will now raise the editor
  • improved responsiveness when detecting newly created files and displaying them on the desktop
  • bookmarks look and feel has been improved
  • folder history now records changes between tabs
  • added new default action to bookmarks to lookup folders in tab list
  • new tab menu item to close duplicated tabs
  • the colour editor widget in icon editors now has syntax highlighting in the HTML component:
  • added control for navigating the tab history:
  • the breadcrumbs subfolder menu is now dynamically updated if the folder structure changes
  • fixed issue where in some circumstances the save action on icons did not generate a file
  • fixed crash when deleting a folder that has just been copied
  • fixed crash in Grib Examiner on some platforms (ecCodes must be built with -DENABLE_ECCODES_THREADS=ON)

Plotting:

  • cursor data now works for rotated lat/lon GRIB fields (when linked with ecCodes 2.13.0)
  • added support for user-supplied shapefiles to be used in conjunction with the Coastlines icon. New parameters are Map User LayerMap User Layer Name, Map User Layer StyleMap User Layer Colour and Map User Layer Thickness
  • the NetCDF Visualiser icon now has two new modes for netcdf_plot_typegeo_matrix_vectors and xy_matrix_vectors for plotting matrices of wind/wave vector components
  • new parameter available in the Wind Plotting icon: wind_arrow_fixed_velocity, which can be used to plot wind arrows with a constant instead of computed velocity
  • new parameter in the Contouring icon, Grib Intepolation Regular Resolution, to change the plotting resolution, in degrees, of GRIB fields encoded in space_view projection
  • fixed issue where plotting of ODB-1 data failed
  • fixed issue where missing values were not ignored when plotting vector data with geomatrix
  • fixed issue where wind geomatrix was not plotted in Mercator projection west of 0 meridian
  • fixed a crash when enable cursor data for plot with netcdf geomatrix_vectors
  • fixed issue where Symbol Plotting and some other visual definition icons did not appear in the Layers sidebar

GRIB Filter

  • fixed issue where filtering the result of another GRIB filter left temporary files behind

BUFR:

  • ObsFilter can now output to NCOLS formatted geopoints to store multiple value columns
  • ObsFilter now automatically adds the station id to the output when the output format is NCOLS geopoints
  • ObsFilter has changed its default missing value indicator to geo_missing_value instead of zero

Macro/Python:

  • Code Editor now has much improved built-in help. Press F1 for a function list, or to get help for the function under the cursor. Press F2 for a colour helper.
    • F1 for function listF1 for specific function helpHelp for colour-related parametersF2 for standalone colour helper

  • new function: grid_cell_area(fieldset) - returns a fieldset whose values are the areas, in square meters, of each cell
  • new function: integral(fieldset) - computes the surface integral of each field in a fieldset
  • function surrounding_points_indexes() now handles the case where the field is a reduced Gaussian grid and the input location is at the North or South pole, beyond the most extreme row of points. In this case, there will be a 'circle' of surrounding points, and all of these indexes are returned.
  • fixed issue where interpolate() gave wrong result for lat=0 lon=360 on a global latlon grid
  • fixed issue where nearest_gridpoint() crashed when the input was a tiny portion of a reduced Gaussian grid
  • nearest_gridpoint() and nearest_gridpoint_info() now have an option 'valid' to return the nearest non missing value
    • v = nearest_gridpoint(f, [48, 16], 'valid')
      v = nearest_gridpoint_info(f, [48, 16], 'valid')

  • added the possibility to batch process points using the surrounding_points_indexes() function. Vectors of latitudes and longitudes can be supplied instead of a single point, making the computations much faster
  • added option to surrounding_points_indexes(), 'all', to also collect missing value points
    • surrounding_points_indexes(f, inlat, inlon, 'all')

  • when running a macro, the list data type is significantly more efficient than it was previously, and a memory leak when appending to a list was fixed
  • allow create_geo() to accept arbitrary column names when creating an NCOLS formatted geopoints variable
    • e.g.

      g = create_geo(type:       'ncols',
                     latitudes:  |4, 5, 6|,
                     longitudes: |2.3, 1.1, 6.5|,
                     levels:     850,  # all rows will have 850 as their level
                     times:      nil,
                     stnids:     ['aberdeen', 'aviemore', 'edinburgh'],
                     temp:       |273.15, 269.78, 281.45|,
                     precip:     [4, 5, 1],  # lists also work, but are less efficient
                     speed:      |2, 3, 5| )

  • new geopoints function times() to return a vector of times encoded in the geopoints
  • the geopoints stnids() function now returns a nil if there is no station id for that point
  • fixed issue where an empty NCOLS geopoints variable did not expose its stnid column
  • fixed issue where geopoints stnids were not correctly returned via gpt['stnid']
  • the mvl_geocircle function can now accept a list of different radii for each quadrant - documentation coming!
  • fixed issue in the percentile() function, where the wrong results could be produced depending on the input
  • fixed potential bug in thickness() and pressure() functions
  • fixed issue where the merging of NCOLS-formatted geopoints lost the value column names
  • fixed issue where filtering NCOLS-formatted geopoints lost the stnids
  • fixed issue where extracting a single element of an NCOLS-formatted geopoints variable did not return all the value columns
  • fixed issue where extracting a single element of a geopoints variable returned the main value in the value2 element
  • the Code Editor now has a Stop button to make it easier to cancel a running script
  • the Code Editor has redesigned button icons

Cross section:

  • added new option called compute to W Wind Scaling Factor Mode to compute the vertical velocity in m/s from pressure velocity for wind cross sections
  • fixed issues when computing and plotting cross sections from wind data. The documentation has also been revised for both Cross Section View and Cross Section Data.
  • fixed issue when computing a cross section that crosses the zero meridian when the GRIB scanning mode is South to North

Single Column Model:

  • new output modes in the SCM Visualiser icon: PNG, PDF

FLEXPART

  • fixed crash in post processing when converting FLEXPART output to GRIB

macOs:

  • various improvements for working within the macOs environment

Startup:

  • -nocreatehome flag uses existing home directory if it exists

Build:

  • removed the dependency on the legacy Netcdf4 C++ interface
  • running the test suite in parallel on a fresh system has been fixed
  • rename CMake option ENABLE_FORTRAN to ENABLE_METVIEW_FORTRAN
  • now requires a minimum of CMake 3.6

Documentation:

  • added landing pages so as to group the documentation per data format

Gallery:




Version 5.5.4

Became metview/new and metview/default at ECMWF on 2019-06-13 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2019-06-13

    • Built with Magics 4.0.3

    • Built with ecCodes 2.12.5
    • Built with ODB_API version 0.19.0
    • Built with emoslib 000461
    • Built with mir 1.2.5

Bug fixes:

  • MARS: linked with latest MARS client to avoid unwanted repeated connections to incorrect server. The symptoms were lots of warning messages, and longer-than-usual MARS retrievals (issue only seemed to arise on 2019-06-12)

Version 5.5.3

Became metview/new at ECMWF on 2019-05-10 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2019-05-09

    • Built with Magics 4.0.3

    • Built with ecCodes 2.12.5
    • Built with ODB_API version 0.18.1
    • Built with emoslib 000461
    • Built with mir 1.2.4

Bug fixes:

  • Macro and Python: fixed a bug where the gradient() function returned its output fields in the wrong order if given  multi-field fieldset as input
  • Macro and Python: fixed a bug where the second_derivative() functions returned values that were too large
  • Plotting: fixed issue where 200u and 200v were not recognised as wind components for plotting
  • Plotting: fixed issue where antialiasing was not activated by default for new users
  • Geopoints Examiner: fixed issue where the values were shown as UNKNOWN
  • Contouring Editor: fixed issue where keyboard navigation did not work in the style and palette selections

Version 5.5.2

Became metview/new at ECMWF on 2019-04-11 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2019-04-11

    • Built with Magics 4.0.0

    • Built with ecCodes 2.12.0 
    • Built with ODB_API version 0.18.1
    • Built with emoslib 000460
    • Built with mir 1.2.0

Bug fixes:

  •  Fixed a bug where contouring of a global Gaussian grid encoded in GRIB 1 produced isolines and shading positioned one grid point down from where they should be. This bug was introduced in Metview 5.3.0 (Magics 3.3.1).

Version 5.5.1

Externally released 2019-02-26

Became metview/new at ECMWF on 2019-02-26 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2019-02-26

    • Built with Magics 4.0.0

    • Built with ecCodes 2.12.0 
    • Built with ODB_API version 0.18.1
    • Built with emoslib 000460
    • Built with mir 1.2.0

Bug fixes:

  • Fixed issue when retrieving U/V wind components from MARS (issue introduced in Metview 5.5.0)

Version 5.5.0

Externally released 2019-02-15

Became  metview/default and metview/new at ECMWF on 2019-02-15 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2019-02-15

    • Built with Magics 4.0.0

    • Built with ecCodes 2.12.0 
    • Built with ODB_API version 0.18.1
    • Built with emoslib 000460
    • Built with mir 1.2.0

Highlights:

  • Macro and Python: a new set of functions based on the horizontal derivatives of regular lat-lon fieldsets have been added. This is the complete list of the new methods:
    first_derivative_x(), first_derivative_y(), second_derivative_x(), second_derivative_y(),
    gradient() geostrophic_wind_pl(), divergence(), laplacian(), vorticity()
    For details please check the fieldset documentation or see the new Gallery example to compute and plot humidity advection here.


  • Macro and Python: a new set of functions for thermodynamic computations  have been added
  • Macro and Python: new function thermo_parcel_path(), to compute and plot a parcel path in a thermodynamic diagram - please see a Gallery example here and for more details check the documentation
    image-2019-02-05-11-23-12-878.png

  • Macro and Python: new function bearing(), to compute the bearing between a point and all points in a GRIB field
  • Macro and Python: new function edit(), to bring up an interactive editor on the given data or file
  • Macro and Python: the gfind() function now puts date, time and level into its resulting geopoints variable
  • Macro Editor: apply the chosen colour theme to the output area
  • Tephigram: fixed issue when using non-ECMWF BUFR data
  • Thermo View: new parameter - SUBPAGE_CLIPPING = ON/OFF
  • Cross Section: fixed issue when plotting a cross section through wind fields
  • Geopoints:
    • introduced a new format of geopoints file, which can contain an arbitrary number of named value columns - see Geopoints for more information
    • geopoints columns can now be extracted and assigned to using direct indexing, e.g. gpt['value'] = gpt['value'] - 273.15
    • much more efficient way of creating a complete geopoints variable from scratch using the new form of the create_geo() function
    • new functions, columns() and value_columns() to return a list of column names
    • the filter() function can now filter geopoints using a vector as the filter criteria, e.g. new = filter(gpts, gpts['precip'] > 5)
    • improved the display of values in the Geopoints Examiner
  • Observation Filter and Bufr Picker: added a new mode where multiple parameters can be extracted into the new multi-column geopoints format, essentially meaning that several queries may be made in one go for greater efficiency
  • Observation Filter: fixed issue when decoding string values from descriptors
  • Odb Visualiser: added new parameter: FAIL_ON_EMPTY_OUTPUT = YES/NO
  • EcCharts: new layers added to the ECCHARTS icon: windgust, tmin, tmax, interval-based precipitation layers, precipitation rate layers, model climate layers
  • EcCharts: improved layer description to include some MARS retrieval information
  • Stations: updated WMO station list
  • NetCDF Examiner: fixed issue where the description of ncbyte variables was incorrect
  • ODB data probe: the ODB data probe in the Display Window now has a new mode (available via the icon) to only show the values belonging to the point selected by the probe. It was added for the easier inspection of multiple satellite channels available for the same pixel etc.

image-2018-12-11-08-49-17-883.png

  • General: improved error message handling between modules
  • Interpolation: the Metview source tarball now includes a new internal GRIB interpolation package (see Version 5.4 Updates for more details); if linked additionally with libemos, both packages can also be used for comparison.
  • Installation: fixed some issues when running on Max OS X

Version 5.4.1

Not externally released.

Became  metview/default and metview/new at ECMWF on 2019-01-29 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2019-01-17

    • Built with Magics 3.3.1

    • Built with ecCodes 2.10.1 
    • Built with ODB_API version 0.18.1
    • Built with emoslib 000459
    • Built with mir 1.1.1

Highlights:

  • interpolation: this is the first version of Metview to use mir as its interpolation library by default when running at ECMWF. The following functions are affected:
    • retrieve()
    • read()
    • divrot()
    • divwind()
    • uvwind()
  • and their corresponding icons:
    • Mars Retrieval
    • Grib Filter
    • Rotational or Divergent Wind
  • The environment variable METVIEW_MARS_INTERP can be set to either MIR or EMOS in order to change this behaviour before running Metview.
  • In order to facilitate running and comparing both interpolation methods within a single Metview session, there also exist separate versions of the above functions, e.g. retrieve_mir() and retrieve_emos(), which will use the interpolation package in their name and will not be affected by the environment variable. Corresponding to these functions are also icons, which are available from Metview's user interface.
  • Please note that the existence of these specialised functions is temporary - operational scripts should not depend on them.
  • We currently do not have an externally available version of Metview that includes mir.

Version 5.3.0

Externally released on 2018-12-05

Became metview/new at ECMWF on 2018-12-05 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2018-12-05

    • Built with Magics 3.3.1

    • Built with ecCodes 2.10.0 
    • Built with ODB_API version 0.18.1
    • Built with emoslib 000459
    • Built with mir 1.1.0

Highlights:

  • ecCharts icon: new icon, ecCharts,  which gives access to ecCharts layers and styles through Metview. This means that pre-defined data layers used in ecCharts can be accessed through Metview, but for past or experimental data as well as recent data. Through the context menu, macros and Python scripts can also be generated from this icon.


The ecCharts icon gives access to data layers and graphical styles defined in ecCharts

Other features and fixes:

  • General: improved error reporting, e.g. in cases where a plot command calls another module (e.g. Cross Section)
  • Plotting: plotting to file no longer accumulates memory between plots
  • Plotting: added Polar South projection to Geographical View
  • Met3D: fixed issue with retrieving LNSP data in Met3D Prepare icon
  • Python: fixed error message when indexing a fieldset with a bad index
  • Python: allow export of Tables to pandas dataframe
  • BUFR Filtering: improvement in performance in certain cases
  • BUFR Examiner: added context menu item to copy the name of the selected key to the clipboard
  • UI: simplified the filter for the contouring styles in the Contouring editor
  • UI: icon editors now have 'Copy colour' and 'Paste colour' so as to share colour definitions via the clipboard
  • Build: fixed installation issue on Mac OSX

Version 5.2.4

Became metview/new at ECMWF on 2018-11-26 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2018-11-26

    • Built with Magics 3.2.3

    • Built with ecCodes 2.9.2 
    • Built with ODB_API version 0.18.0
    • Built with emoslib 000458
    • Built with mir 1.0.1

Features:

  • Python/Macro: added a function, examine(data) to bring up a data examiner from a script. Works with fieldset, geopoints, netcdf, bufr and odb data.
  • MARS: the default interpolation package used for MARS-based gridded interpolations (retrieve/read) can now be set via an environment variable. By default, emoslib will be used, but the following command, run before startup, will cause Metview to use mir instead:
    • export METVIEW_MARS_INTERP=MIR

Version 5.2.3

Became metview/new at ECMWF on 2018-11-14 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2018-11-14

    • Built with Magics 3.2.2

    • Built with ecCodes 2.9.2 
    • Built with ODB_API version 0.18.0
    • Built with emoslib 000458
    • Built with mir 1.0.0

Features:

  • Python: fixed issue where values(table, number) returned the wrong column (it used 1-based indexing instead of 0-based indexing even though it was called from Python)
  • Thermodynamic diagrams: fixed issue where wind flags were not plotted in the Thermo View (tephigram, emagram, skew-t)
  • FLEXTRA: fixed issue when retrieving etadot data from MARS

Version 5.2.2

Became metview/new at ECMWF on 2018-11-07 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2018-11-07

    • Built with Magics 3.2.1

    • Built with ecCodes 2.9.0 
    • Built with ODB_API version 0.18.0
    • Built with emoslib 000457
    • Built with mir 1.0.0

Features:

  • mir: this Metview build is identical to the 5.2.1 version, except that it is built with version 1.0.0 of mir and the latest Mars client code
    • since version 5.1.0, Metview has included mir-based versions of various module - see Version 5.1 Updates

Version 5.2.1

Externally released on 2018-10-23

Became metview/new at ECMWF on 2018-10-23 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2018-10-23

    • Built with Magics 3.2.1

    • Built with ecCodes 2.9.0 
    • Built with ODB_API version 0.18.0
    • Built with emoslib 000457

Features:

  • UI: improved the layout of the style selection widged in the Contouring icon (see screenshot below)
  • Plotting: changed the default value of Subpage Background Colour in the View icons to None, now that Magics supports the parameter; in Metview 5.2.0, a plot generated with multiple plot commands might have ended up showing only the last one
  • Met3D: fixed issue where Met3D Prepare could not retrieve lnsp data
  • Python: added the execute action to Python scripts, allowing them to be executed directly from the context menu
  • Python: checked all Macro functions that take or return indexes to ensure that they are context-sensitive to whether they are being run from Macro or Python
  • BUFR examiner: improved speed for BUFR filter
  • BUFR examiner: improved speed for generating data dump for messages
  • BUFR examiner: added option to filter by RDB type
  • BUFR examiner: fixed issue where BUFR filter hung for tropical cyclone data
  • Code Editor: fixed issue where dropping an icon into the editor could produce unindented code
  • FLEXTRA: fixed crash on exiting a Macro/Python script that calls flextra_group_get()
  • Build: ensure that the style preview images are part of the source tarball so that the binary installation packages contain them
  • Build: ensure that the palette and style browsers work fully when Metview is installed from a bundle

Improved style browser in the Contouring icon

Version 5.2.0

Externally released on 2018-09-28
Became metview/new at ECMWF on
 2018-09-27
(Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2018-09-27

    • Built with Magics 3.2.0

    • Built with ecCodes 2.9.0 
    • Built with ODB_API version 0.18.0
    • Built with emoslib 000457

Highlights

New parameters in the Contouring icon for using ecCharts styles

The CONTOUR AUTOMATIC SETTING parameter in the Contouring icon now makes the style selection quick and straightforward. Users can choose from these three options:

  • Off: manual contouring settings will be used 
  • Ecmwf: the default ecCharts style associated with the field to be visualised will be automatically applied
  • Style name: the ecCharts style defined in the CONTOUR STYLE NAME parameter will be used. When this parameter is active the editor features a style browser to help select the appropriate style.
Icon editorPlotMacro

Macro to plot fields with an eccharts style
# Metview Macro
#  **************************** LICENSE START ***********************************
# 
#  Copyright 2018 ECMWF. This software is distributed under the terms
#  of the Apache License version 2.0. In applying this license, ECMWF does not
#  waive the privileges and immunities granted to it by virtue of its status as
#  an Intergovernmental Organization or submit itself to any jurisdiction.
# 
#  ***************************** LICENSE END ************************************

grib = retrieve(param:'2t', levtype: "surface", grid:[1,1])

cont = mcont(contour_automatic_setting : "style_name",
		      contour_style_name        : "sh_all_fM52t48i4_light",
			  legend                    : "on"
)

plot(grib, cont)


New palette-selection helper in thContouring icon for when Contour Shade Colour Method is Palette

mv-palette-selector.png


Added option to hide disabled parameters in icon editors

There is a new option in all icon editors to hide the disabled parameters instead of greying them out (hiding the parameters is the default behaviour, a button at the top allows to toggle the behaviour). This feature can be particularly useful for editors with a very large number of parameters (e.g. Contouring icon) .



Added support for tilted perspective projection in the Geographic View icon

  


Other features of Metview 5.2.0

  • Plotting:
    • allow the newpage() command to take no parameters and to be included directly in a plot() command like this:
      • setoutput(ps_output(output_name : "foom"))
        plot(dw,my_view,my_coast,mtext(text_font_size:0.5,text_lines:["aaaa"]),
        newpage(),
        dw,my_view,my_coast,mtext(text_font_size:0.5,text_lines:["bbbb"]))
    • added Monthly and Climate axis types (possible values of Axis Date Type)

    • fixed an issue where dropping a GeoView into a plot window on Mac OSX did not work

  • Python:
    • new quick-access Desktop menu item to create a new Python script
    • on startup in interactive mode, Metview loads the metview-python/new module if it is not already loaded
    • updated the Gallery so that all examples have Python code
    • the Macro Editor now uses better syntax highlighting for Python when different colour schemes are used
    • functions that return indexes (e.g. find) are now aware of whether they are running under Macro or Python, and return either 1-based (Macro) or 0-based (Python) indexes accordingly
    • now supports the passing of 32-bit floating point vectors/numPy arrays (previously only 64-bit floats were accepted)
    • fixed an issue where passing the result of filtering a fieldset using the mv.read() function returned the original fieldset not the filtered one
    • now allows the setting of sub-elements of a Fieldset object, e.g.
      • g = read('gribfile.grib')
        g[3] = g[3] + 100
  • Data examiners:
    • the BUFR Examiner now offers autocomplete suggestions for keys from all the messages selected so far (the previous behaviour was to offer only the keys present in the first message)
    • filtering compressed BUFR messages has been significantly sped up
    • the BUFR Examiner's initial scan of messages is now multi-threaded, enabling a more responsive interface when it starts up
    • fixed issue when filtering BUFR messages with multiple (nested) coordinates did not work
  • GRIB:
    • fixed issue where the ECCODES_DEFINITION_PATH environment variable could disrupt Metview's operations on GRIB data. Please set METVIEW_EXTRA_GRIB_DEFINITION_PATH if you need to override the definition path.
  • BUFR Picker:
    • fixed issue where selection on multiple coordinates did not work
  • GRIB To Geopoints:
    • added an option to Grib To Geopoints called Missing Data, with possible values of Include (default)/Ignore in order to reduce the volume of data returned when there are missing values
  • Stations:
    • updated the list of WMO stations
  • Macro:
    • improved error message when function not found or arguments are of incorrect type
    • documented the sort_indices() function
    • added new colour themes to the macro editor
  • Macro editor
    • The Macro Editor has introduced four new colour schemes on top of the existing ones: blueish, borland classic, solarized and solarized dark (light comment). The colour scheme can be selected from the Settings -> Colour Scheme menu.

  • Met.3D:
    • the Met3D Prepare module uses a more efficient means of retrieving data from MARS by avoiding tape access if possible
  • SCM:
    • in the Single Column Model profile editor, fixed issue where if consistency mode is enabled and we change temperature, relative humidity is not adjusted even if all the necessary variables are present (t, p, r, q)
  • FLEXTRA/FLEXPART:
  • User Interface:
    • in the Contouring icon, the parameter Contour Shade Colour Table now has a proper colour list editor
  • Build:
    • fixed problem finding RPC libraries on newer systems that have these separated from the system libraries
    • fixed problem building the Metview Bundle on Ubuntu 16.04

Version 5.1.1

Externally released on 2018-07-31
Installed at ECMWF on
 2018-07-24, became metview/new on 2018-07-31
 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2018-07-24

    • Built with Magics 3.1.0

    • Built with ecCodes 2.8.1 
    • Built with ODB_API version 0.18.0
    • Built with emoslib 000456 
    • Built with mir 0.10.0

Features:

  • Input Visualiser: fixed issue where nil values passed to the Input Visualiser were not properly treated
  • Geopoints to Grib: fixed issue where missing values were not properly generated when the geopoints data did not have sufficient coverage to compute every grid point value
  • FLEXPART: fixed issue where trajectory results could contain invalid characters due to wrong input data
  • Python: if a Metview function call fails, an error is now properly returned to Python
  • Python: fixed issue where Python could not connect to a Metview version that was installed through RPM (in particular, if its libraries are in lib64 rather than lib)
  • Build: fixed a compilation issue with Qt 5.11
  • Bundle: fixed issue with destination of binaries when installed after being built from a bundle

Version 5.1.0

Externally released on 2018-06-25
Became metview/new at ECMWF on
 2018-06-25
(Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2018-06-22

    • Built with Magics 3.1.0

    • Built with ecCodes 2.8.0 
    • Built with ODB_API version 0.18.0
    • Built with emoslib 000456 

Highlights

BUFR handling performed by ecCodes

Metview now uses ecCodes for all its handling of BUFR data. This includes the Observation Filter and BUFR Picker icons, and also the BUFR Examiner. We also link with Magics 3.1, which now uses ecCodes to plot BUFR data. The Data Coverage module has been removed - please let us know if you would like us to reinstate it. Observation Filter and BUFR Picker can now accept ecCodes keys, as well as descriptors, to specify parameters. The data examiners now share their code with CodesUI and have a different look and feel, including all the new BUFR inspection features.

Additional modules using MIR as the interpolation package

Metview now has a set of new modules and functions that use MIR as the interpolation package. These are MARS Retrieval MirGRIB Filter Mir and DivRot Mir. The new Macro functions are: 

  • retrieve_mir()
  • read_mir()
  • divrot_mir()
  • divwind_mir()
  • uvwind_mir()

Note that this feature will not be available outside ECMWF and ecgate until the official release of mir.

Example of using the new mir-based MARS routines to compare against libemos:

Plot

Code


Macro to compare libemos and mir interpoations
# Metview Macro
#  **************************** LICENSE START ***********************************
# 
#  Copyright 2018 ECMWF. This software is distributed under the terms
#  of the Apache License version 2.0. In applying this license, ECMWF does not
#  waive the privileges and immunities granted to it by virtue of its status as
#  an Intergovernmental Organization or submit itself to any jurisdiction.
# 
#  ***************************** LICENSE END ************************************

req = (param:'t', levelist: 850, grid:[1,1])
emos = retrieve(req)
mir  = retrieve_mir(req)
diff = mir - emos
maxdiff = maxvalue(abs(diff))

levels = maxdiff * [-1, -0.75, -0.5, -0.25, -0.1, 0.1, 0.25, 0.5, 0.75, 1]

diff_cont = mcont(
    legend                       : "on",
    contour                      : "off",
    contour_level_selection_type : "level_list",
    contour_level_list           : levels,
    contour_shade                : "on",
    contour_shade_technique      : "grid_shading",
    contour_shade_colour_method  : "palette",
    contour_shade_palette_name   : "eccharts_blue_white_red_9"
    )

vi = version_info()
title = mtext(text_line_count: 2,
              text_line_2 : "Mir (" & vi.mir_version & ") - Emos (" & vi.emos_version & ")")
legend = mlegend(legend_text_font_size : 0.275)

plot(diff, diff_cont, title, legend)



New thermodynamic diagram types

Metview has added new thermodynamic diagram types Skew-T and Emagram to the Thermo View icon. The following example shows how to plot all three.

Plot

Code

Macro demonstrating the new thermo diagrams
# Metview Macro
#  **************************** LICENSE START ***********************************
# 
#  Copyright 2018 ECMWF. This software is distributed under the terms
#  of the Apache License version 2.0. In applying this license, ECMWF does not
#  waive the privileges and immunities granted to it by virtue of its status as
#  an Intergovernmental Organization or submit itself to any jurisdiction.
# 
#  ***************************** LICENSE END ************************************

data_for_tephigram = retrieve(
    param : ["t","q"],
    grid  : [1,1])

thermo_data = thermo_grib(
    coordinates : [49.63,21.12],
    data        : data_for_tephigram)

tephiview = thermoview(subpage_y_position : 5)

page = plot_page(
    right : 33.33333,
    view  : tephiview)

skewtview = thermoview(type: "skewt",subpage_y_position : 5)

page_1 = plot_page(
    left  : 33.3333,
    right : 66.66667,
    view  : skewtview)

emagramview = thermoview(type : "emagram", subpage_y_position : 5)

page_2 = plot_page(
    left  : 66.66667,
    right : 100.0,
    view  : emagramview)

dw = plot_superpage(
    layout_size   : "custom",
    custom_width  : 40,
    custom_height : 10,
    pages         : [page,page_1,page_2])

title_tephi = mtext(text_line_1: "Tephigram", text_font_size : 0.35)
title_skewt = mtext(text_line_1: "Skew-T",    text_font_size : 0.35)
title_emagr = mtext(text_line_1: "Emagram",   text_font_size : 0.35)

plot(dw[1], thermo_data, title_tephi)
plot(dw[2], thermo_data, title_skewt)
plot(dw[3], thermo_data, title_emagr)



Access to pre-defined palettes in Magics

Added the set of predefined palettes available in Magics - see the example below, also see Predefined palettes in Magics for the list of available palettes.

Plot

Code

Macro demonstrating predefined colour palettes
# Metview Macro
#  **************************** LICENSE START ***********************************
# 
#  Copyright 2018 ECMWF. This software is distributed under the terms
#  of the Apache License version 2.0. In applying this license, ECMWF does not
#  waive the privileges and immunities granted to it by virtue of its status as
#  an Intergovernmental Organization or submit itself to any jurisdiction.
# 
#  ***************************** LICENSE END ************************************

t = retrieve(
    levelist : 850,
    param    : "t",
    grid     : [2,2]
    )

pal4 = mcont(
    legend                      : "on",
    contour_highlight           : "off",
    contour_level_count         : 25,
    contour_shade               : "on",
    contour_shade_colour_method : "palette",
    contour_shade_method        : "area_fill",
    contour_shade_palette_name  : "eccharts_rainbow_purple_red_25"
    )

plot(t, pal4)


Other features of Metview 5.1

  • Geopoints:
    • added new Macro data type, Geopointset, a container for multiple geopoints variables
    • added the ability to store and query arbitrary meta-data in a Geopoints file/variable
    • added the ability to filter a geopointset based on the meta-data of its constituent geopoints, e.g. 
      gfilt = filter(gptset, (level:500, step:[6, 12, 18]))
  • Data examiners:
    • Metview's data examiners now share their code with CodesUI and have a different look and feel
    • fixed occasional crash in the data examiner applications
  • Met.3D
    • Metview's support for the Met.3D application for 3D visualisation of meteorological fields continues with a new module for retrieving and pre-processing data suitable for ingestion by Met.3D. See Met3D Prepare.
  • GRIB Filter:
    • fixed issue where consecutive runs of GRIB Filter (read() command in Macro) did not work on the previously filtered data, but on the original data
  • Thermo:
    • changes in Magics 3.1 mean that in order to place a wind flag in the centre of the right-hand portion of the plot, an x value of 1025 is now required; previously it was 1000.5
    • fixed issue where dropping a Thermo View into an existing plot window did not always work
    • fixed issue where a Thermo View could not be dropped into the Display Window editor for creating a layout
  • Macro:
    • added support for 32-bit floating point vector variables; the default is 64-bit, but can be changed by calling either vector_set_default_type('float32')or vector_set_default_type('float64'). From then on, all newly created or computed vector variables with be of the specified size. The data size of a vector variable can be queried using the function dtype(vector).
    • vector variables can now be written to disk with the write() command and read back with the read() command
    • new function to return a list of the names of the columns in an odb variable - columns(odb)
    • fixed issue with the interpolate() function returning wrong values when the input field is Gaussian (regular or reduced)
    • fixed issue there the remove_duplicates(geopoints) function did not remove all duplicates in the case where there are are multiple points sharing the same location, AND there are multiple values at that location, some of which are the same, some of which are different
  • Plotting:
    • Added parameter Obs Level to the Observation Plotting icon to plot only those observations on a particular level
    • Added parameter Symbol Advanced Table Marker Name List to the Symbol Plotting icon. See example below.
    • Added parameter Legend Values List to the Legend icon for customising which values get a legend entry
    • The Geographic View can now accept sub-areas as N/W/S/E as well as what it previously understood, S/W/N/E
    • Small revisions to the list of countries for which administrative boundaries can be plotted in the Coastlines icon
    • Fixed issue where the automatically generated Macro code from a plot could give wrong code if both scalar and vector fields are present
    • Fixed issue when generating a Macro from a plot that was itself generated from a Macro - a binary file was generated instead of a Macro file
  • Hovemoeller
    • The Hovmoeller module now allows input data containing multiple experiments
  • User Interface:
    • fixed issue on Mac OSX where it was not possible to create a new Metview icon
  • Documentation:
    • updated the Gallery to combine Macro and Python scripts into one place, and to include a tarball including the data required for each example
  • Build:
    • as a result of using ecCodes for BUFR handling, Metview can no longer be linked with GRIB_API
    • as a result of the new data examiner code, Metview requires at least Qt 5 in order to build its user interface
    • Metview now requires a C++11 compliant compiler
    • fixed some building issues on Mac OSX
    • fixed issue where cpack could not produce a working RPM from the Metview Bundle

Example of the new  symbol plotting parameter

Version 5.0.3

Externally released on 2018-05-xx
Became metview/new at ECMWF on
 2018-05-16
 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2018-05-16

    • Built with Magics 3.0.4

    • Built with ecCodes 2.7.3 
    • Built with ODB_API version 0.17.6
    • Built with emoslib 000455 
  • Macro:
    • added new function to return the subtype of a geopoints variable
  • MARS:
    • rebuilt MARS client with ODB support
  • Hovmoeller:
    • fixed issue where the Hovmoeller module crashed when processing monthly average analysis data
  • Plotting
    • Fixed issue where the wind barbs were not plotted in a Tephigram (netCDF issue, fixed with Magics 3.0.4)
    • Fixed issue where the SCM Visualiser crashed (netCDF issue, fixed with Magics 3.0.4)
    • Portugal is now on the list of countries with administrative borders
    • fixed crash which occurred in very specific circumstances - if the data is GRIB read from a read() command with a source parameter with a relative path, and the plot() command contains a view definition
  • Macro Editor:
    • fixed keyboard shortcuts which had broken: 'enlarge font' and 'indent code'
    • fixed the status line which indicates the time taken for the macro to run
  • Installation:
    • built with Qt4 while we investigate crashes on closedown with Qt5

Version 5.0.2

Became metview/new at ECMWF on 2018-04-18 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2018-04-018

    • Built with Magics 3.0.3

    • Built with ecCodes 2.7.3 
    • Built with ODB_API version 0.17.6
    • Built with emoslib 000455 
  • Macro: fixes for inline C/Fortran
  • Build: Take into consideration the ENABLE_MEMFS option in ecCodes when computing paths to definition files (when built as the Metview Bundle)

Version 5.0.1

Externally released on 2018-03-01
Became metview/new at ECMWF on
 2018-03-05
 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2018-03-01

    • Built with Magics 3.0.1

    • Built with ecCodes 2.7.0 
    • Built with ODB_API version 0.17.6
    • Built with emoslib 000454 
  • Plotting:
    • added new parameter to the Contouring icon to control the number of threads used when computing isolines - can be 1, 4 (default) or 9
    • it is now possible to drop a Taylor Grid icon into the plot window
  • Macro:
    • added new function to return the indexes of the four points surrounding the given location - see the description of surrounding_points_indexes in Fieldset Functions
    • the vector data type can now be of zero length
    • new information function is_feature_available() to dynamically test for features available in the current Metview build - see Information Functions
    • newly created macros now have a .mv extension
    • fixed issue in the Macro Editor where it did not show output until the end of the macro
  • Stations:
    • updated the list of WMO stations used by the Stations module
  • Installation:
    • fixed linking problems on Ubuntu
    • new CMake option -DENABLE_FORTRAN=OFF (default is ON)
    • environment variable METVIEW_LOCALHOST is now set by default (set to 0 to disable)
    • startup from the build directory now directly starts Metview without the xserv bar; to invoke the xserv bar, start Metview as "metview -xserv"
    • optionally, Metview can now be built with ninja instead of make (give the -GNinja option to CMake)

Version 5.0.0 Beta

Externally released on 2017-12-20
Available internally ECMWF via the command "module swap metview/5b" on
 2017-12-20
 (Linux desktops, ecgate, lxc, lxop)

  • At ECMWF:
    • Installed 2017-12-20

    • Built with Magics 3.0.0

    • Built with ecCodes 2.6.0
    • Built with ODB_API version 0.17.6
    • Built with emoslib 000453 

Welcome to the beta release of Metview 5.0! This is very close to what we'd like to release in early 2017, so we'd appreciate testing and feedback. Note that this version requires Magics version 3.0.0.


Highlights

New interactive layer management inside the plot window, allowing for faster plot revisions

Visual definitions can now be dropped directly onto specific layers in the plot window's sidebar, or even edited directly from within the sidebar! See Layer Management for more.

e

Per-colour transparency

The colour picker in the icon editors now has support for alpha (opacity) values, and the interactive Display Window now also supports alpha values per colour. In Macro, these are specified as RGBA, e.g. "RGBA(1, 0, 0, 0.8)" for a red colour with 80% opacity (0 is invisible, 1 is full opacity). Note that PostScript output does not support transparency.

EditorPlotMacro

# Metview Macro

#  **************************** LICENSE START ***********************************
# 
#  Copyright 2017 ECMWF. This software is distributed under the terms
#  of the Apache License version 2.0. In applying this license, ECMWF does not
#  waive the privileges and immunities granted to it by virtue of its status as
#  an Intergovernmental Organization or submit itself to any jurisdiction.
# 
#  ***************************** LICENSE END ************************************

# retrieve simulated satellite image
simsat = retrieve(
    type       : "ssd",
    expver     : 0001,
    param      : 260510,
    date       : -3,
    step       : 0,
    channel    : 9,
    ident      : 57,
    instrument : 207
    )

# retrieve precipitation
tp = retrieve(
    type    : "pf",
    stream  : "ef",
    levtype : "sfc",
    param   : "tp",
    date    : -3,
    step    : 6,
    number  : "all",
    grid    : [0.5,0.5]
    )

prob_tp = mean(tp > 0.005) * 100 # probability of > 5mm of precipitation

sat_shade = mcont(
    legend                         : "on",
    contour                        : "off",
    contour_level_count            : 20,
    contour_label                  : "off",
    contour_shade                  : "on",
    contour_shade_technique        : "cell_shading",
    contour_shade_cell_resolution  : 40,
    contour_shade_cell_method      : "interpolate",
    contour_shade_max_level_colour : "black",
    contour_shade_min_level_colour : "white",
    contour_shade_colour_direction : "clockwise"
    )

tp_prob_shade = mcont(
    legend                       : "on",
    contour                      : "off",
    contour_level_selection_type : "level_list",
    contour_level_list           : [5,20,40,60,80,95,105],
    contour_label                : "off",
    contour_shade                : "on",
    contour_shade_colour_method  : "list",
    contour_shade_method         : "area_fill",
    contour_shade_colour_list    : ["RGBA(0.48,0.82,0.78,0.38)",
                                    "RGBA(0.42,0.79,0.27,0.38)",
                                    "RGBA(0.83,0.85,0.2,0.38)",
                                    "RGBA(0.9,0.64,0.23,0.38)",
                                    "RGBA(0.97,0.43,0.43,0.38)",
                                    "RGBA(1,0.0039,1,0.38)"]
    )

coastlines = mcoast(
    map_coastline_colour    : "RGB(0.97,0.94,0.41)",
    map_coastline_thickness : 2,
    map_grid_colour         : "RGB(0.95,0.92,0.69)"
    )

plot(simsat, sat_shade, prob_tp, tp_prob_shade, coastlines)

New colour gradients shading option

New options were added to the Contouring icon, facilitating more powerful colour scales within a single Contouring definition. Please see How to use the colour gradient editor for more information on this feature. More examples will be added to the Gallery!

PlotEditorCodeData

# Metview Macro

#  **************************** LICENSE START ***********************************
# 
#  Copyright 2017 ECMWF. This software is distributed under the terms
#  of the Apache License version 2.0. In applying this license, ECMWF does not
#  waive the privileges and immunities granted to it by virtue of its status as
#  an Intergovernmental Organization or submit itself to any jurisdiction.
# 
#  ***************************** LICENSE END ************************************

# read the input grib file
my_data = read('visibility.grib')

#set up the contours
my_contour = mcont(
    legend                                : "on",
    contour                               : "off",
    contour_level_selection_type          : "level_list",
    contour_level_list                    : [0,500,2000,6000,10000,40000],
    contour_label                         : "off",
    contour_shade                         : "on",
    contour_shade_colour_method           : "gradients",
    contour_shade_method                  : "area_fill",
    contour_gradients_colour_list         : ["magenta","yellow","yellowish_green","ecmwf_blue","RGB(0.74,0.8,0.92)","white"],
    contour_gradients_waypoint_method     : "left",
    contour_gradients_technique           : "hsl",
    contour_gradients_technique_direction : "anti_clockwise",
    contour_gradients_step_list           : [5,3,4,2,3]
    )

# set up the coastlines
my_coast = mcoast(map_coastline_colour            : "charcoal",
                  map_coastline_resolution        : "medium",
                  map_coastline_thickness         : 2,
                  map_coastline_land_shade        : "off",
                  map_coastline_sea_shade         : "off",
                  map_grid_line_style             : "dash",
                  map_label_height                : 0.4,
                  map_grid_colour                 : "charcoal"
)

# set up the geographical view
my_view = geoview(map_area_definition : "corners",
                  map_projection      : "cylindrical",
                  area                : [20.00,-20.00,70.00,50.00],
                  coastlines          : my_coast)

# set-up the title
my_title = mtext(text_font_size     : 0.6,
                 text_lines         : ["Visibility - Gradients method for shading", 
                                       "Computing a range of colours with 6 waypoints which are given as level list",
                                       "<font colour='evergreen'>contour_level_list                     : [0, 500, 2000, 6000, 10000, 40000]</font>",
                                       "<font colour='evergreen'>contour_gradients_step_list     : [5, 3, 4, 2, 3]</font>",
                                       "<font colour='red'>5</font> colours between <font colour='red'>0</font> and <font colour='red'>500</font>, "
                                       & "<font colour='red'>3</font> between <font colour='red'>500</font> and <font colour='red'>2000</font>, "
                                       & "<font colour='red'>4</font> between <font colour='red'>2000</font> and <font colour='red'>6000</font>..."],
                 text_justification : "left",
                 text_colour        : "charcoal")
            
# set up a legend for the field                   
my_legend = mlegend(legend_text_colour    : "charcoal",
	                legend_text_font_size : 0.4,
	                legend_display_type   : "continuous",
                    legend_box_mode       : "positional",
                    legend_box_x_position : 25.00,
                    legend_box_y_position : 0.2,
                    legend_box_x_length   : 3.00,
                    legend_box_y_length   : 17.50)                  
                  


plot(my_view, my_data, my_contour, my_legend, my_title)

# Metview Macro

#  **************************** LICENSE START ***********************************
# 
#  Copyright 2015 ECMWF. This software is distributed under the terms
#  of the Apache License version 2.0. In applying this license, ECMWF does not
#  waive the privileges and immunities granted to it by virtue of its status as
#  an Intergovernmental Organization or submit itself to any jurisdiction.
# 
#  ***************************** LICENSE END ************************************

# read the input grib file
my_data = read("t850.grb")

#set up the contours
my_contour = mcont(
    legend                            : "on",
    contour                           : "off",
    contour_level_selection_type      : "level_list",
    contour_level_list                : [-40,-20,0,20,40],
    contour_gradients_step_list       : 10,
    contour_label                     : "off",
    contour_shade                     : "on",
    contour_shade_colour_method       : "gradients",
    contour_gradients_technique       : "rgb",
    contour_shade_method              : "area_fill",
    contour_gradients_colour_list     : ["RGB(0.01961,0.251,0.4157)","greenish_blue","white","orangish_red","RGB(0.3756,0.06648,0.05582)"],
    contour_gradients_waypoint_method : "ignore"
    )
    
# set up the coastlines
my_coast = mcoast(map_coastline_colour            : "charcoal",
                  map_coastline_resolution        : "medium",
                  map_coastline_thickness         : 2,
                  map_coastline_land_shade        : "off",
                  map_coastline_land_shade_colour : "RGB(0.25,0.25,0.25)",
                  map_coastline_sea_shade         : "off",
                  map_grid_line_style             : "dash",
                  map_grid_colour                 : "charcoal"
)

# set up the geographical view
my_view = geoview(map_area_definition : "corners",
                  map_projection      : "cylindrical",
                  area                : [20.00,-20.00,70.00,50.00],
                  coastlines          : my_coast)

# set-up the title
my_title = mtext(text_font_size     : 0.6,
                 text_lines         : ["Gradients technique for shading", 
                                       "Computing a range of colours with 5 waypoints given as level list",
                                       "<font colour='evergreen'>contour_level_list                      : [-40,-20,0,20,40]</font>",
                                       "<font colour='evergreen'>contour_gradients_step_list     : 10 </font>",
                                       "<font colour='red'>10</font> colours between each 2 waypoints"],
                 text_justification : "left",
                 text_colour        : "charcoal")

# set up a legend for the field 
my_legend = mlegend(legend_text_colour    : "charcoal",
	                legend_text_font_size : 0.35,
	                legend_display_type   : "continuous",
                    legend_box_mode       : "positional",
                    legend_box_x_position : 25.00,
                    legend_box_y_position : -1.00,
                    legend_box_x_length   : 3.00,
                    legend_box_y_length   : 17.50)


# plot the data onto the map
plot(my_view, my_data, my_contour, my_legend, my_title)



FLEXPART support added

A new interface was developed for the FLEXPART Lagrangian particle dispersion model. The FLEXPART interface page gives an overview about the installation and setup of FLEXPART and also serves as a hub to access the icon documentation and the FLEXPART tutorial.
  image2017-10-31_14-2-43.pngimage2017-11-9_10-59-5.pngimage2017-10-31_15-6-34.png

Macro Editor has new colour schemes

The Macro Editor has introduced two new colour schemes: solarized dark and solarized light. The colour scheme can be selected from the Settings -> Colour Scheme menu. The original colour scheme is called Metview and is kept as default. 

Other features of Metview 5

  • Plotting:
    • added MImport icon for adding image files to a plot (this only partially worked in the past)
    • enabled line and symbol properties to be changed when in AREA mode in the Graph Plotting icon
    • added new parameter Map Cities Text Blanking to the Coastlines icon
    • added new parameters to draw a frame around the edge of the grid in the Coastlines icon, for selected projections that do not fill the page
    • added the ability to plot horizontal bar charts via the new Graph Bar Orientation parameter in the Graph Plotting icon
    • fixed issue where plotting a curve via the Table Visualiser did not work when the output was to file
    • fixed issue where the Macro code generated by the Generate Macro function in the Display Window produced incorrect code for the Simple Formula icon
    • the default output file format has been changed from PostScript to PDF
    • the behaviour of Text Plotting icons (mtext() in Macro) has changed slighly - see the FAQ for details of this and how to compensate for it

  • Macro:
    • improved handling of netCDF data when the current variable is time-based - see NetCDF. Note that this is a change in behaviour, and existing macros may have to be revised.
    • improved handling of netCDF data where a computation could lead to the overflow of the storage data type - see NetCDFNote that this is a change in behaviour, and existing macros may have to be revised.
    • improved handling of netCDF data where the current variable has scale_factor and add_offset attributes - these are now automatically applied - see NetCDFNote that this is a change in behaviour, and existing macros may have to be revised.
    • added a macro library function to draw a circle with a given radius in km onto a map - mvl_geocircle()
    • fixed problem where the valid_date() function could give the wrong result given data with a very large step
    • fixed problem where a Macro operation on a netCDF variable could overwrite the original file if it is a symbolic link
    • change in behaviour: the grib_get_xxx() functions now return nil if the given key is not found
    • change in behaviour: when indexing a vector like this: v[a,a], i.e. two indexes the same, the result will be a single-element vector; the previous behaviour was to return a number
    • ensure that an incorrect indexing of a fieldset variable returns an error
    • ensure that an incorrect indexing of a geopoints variable returns an error
  • Vertical Profile: removed the redundant option Area 2 from Input Mode; please use Area instead, as it is identical
  • FLEXTRA:
    • the default value for the FLEXTRA Area parameter changed in the FLEXTRA Prepare - old icon. The new default is: -90/-179/90/180.
    • fixed issue where FLEXTRA did not properly handle global GRIB 2 fields
    • it is now possible to specify a relative path for FLEXTRA Input Path in the FLEXTRA Run icon
    • a new  FLEXTRA page was created in confluence providing an overview about the installation, setup and use of the FLEXTRA interface.
    • the FLEXTRA tutorial has been moved to Confluence
  • Macro Editor:
    • revised which actions are available via the toolbar, providing a cleaner interface
    • settings are now saved immediately (font size, show line numbers, theme)
  • GRIB:
    • it is now possible, with care, to handle and plot very large GRIB fields (e.g. 1km global) - see Visualising large data files with Metview
    • GRIB Examiner now correctly displays the sections of a GRIB 3 file
  • Desktop
    • new icon context menu action called "Delete" (shortcut is Shift+Delete). With this action the icon is deleted permanently (not moved to the wastebasket).
    • new icon context menu action called "Copy filesystem path" to copy an icon's path to the clipboard
    • selecting Log from the menu raises the existing log window if it is open
    • added action in the Go menu to navigate to the Defaults folder
    • Metview no longer asks for confirmation when closing down, unless there are multiple windows
    • the Log window now uses a monospaced font for easier reading of aligned text
    • improved the process of renaming icons from the user interface (when we edit the icon name the whole text is automatically selected; pressing enter in the text editor or clicking outside the icon confirms the renaming)
    • fixed issue where the Desktop could get into a bad state if an opened folder is moved, or if Metview is started on a system that cannot see a folder that was open when Metview was last closed
  • Startup: fixed issue when starting Metview for the first time on a system where there is a pre-existing directory called metview

  • Qt: Metview now looks for Qt5 by default. To build with Qt4 (still supported for the time being, please build with -DENABLE_QT5=OFF)

  • Motif: completely removed the old Motif-based user interface from Metview's source code



Version 4.9.1

Externally released on 2017-10-10

  • Tarball: fixed issue that prevented the 4.9.0 tarball from building

Version 4.9.0

Externally released on 2017-10-03
Became metview/new at ECMWF on
 2017-10-03
(Linux desktops, ecgate, lxc, lxg, lxop)

  • At ECMWF:
    • Installed 2017-10-03

    • Built with Magics 2.34.3

    • Built with ecCodes 2.5.0
    • Built with ODB_API version 0.17.3
    • Built with emoslib 000452
     
  • Hovmoeller: added new parameter to the Hovmoeller View icon: Time Axis Mode, which can be Automatic Forwards, Automatic Backwards or User.
  • Cross Section: added the ability to define a cross section line that goes directly over a pole. As an example, to define a line that goes South from lat=0, lon=-8 over the South pole and round to lat=0, lon=172, supply a line definition like this:  [0, -8, -180, -8]  (N,W,S,E). They key points in telling Metview to use a line that goes over a pole are that the longitude remains the same and that the second latitude is described as either greater than 90 or less than -90. The direction of the line is implicit: here, to go from 0 to "-180" involves travelling South.
  • Text Plotting: added new parameter to the Text Plotting icon: Text Orientation, which can take the values Horizontal (default), Top Bottom and Bottom Top.
  • Stations: use the latest WMO stations database
  • Stations: improved the way that station names are matched in the station lookup widget in the Stations editor
  • Macro: new Macro function to compute percentiles from a list of vectors.

vector or list percentile( list,vector )
vector or list percentile( list,list )
vector or list percentile( list,number )
 
 

 From a given list of V vectors, each with the same number, N, of elements, and a set of P percentiles, computes a new list of P vectors, each containing N elements - one percentile for each of the N elements across all V input vectors. The set of percentiles is supplied as the second argument and can be a vector, a list or a single number. If it is a single number then the result will be a single vector rather than a list of vectors; however, supplying a vector or list with just one percentile will result in a list of one vector result. The function complements the Percentile module, which acts on GRIB fields.

Version 4.8.8

Became metview/new at ECMWF on 2017-07-19 (Linux desktops, ecgate, lxc)

  • At ECMWF:
    • Installed 2017-07-19

    • Built with Magics 2.34.0

    • Built with ecCodes 2.4.0
    • Built with ODB_API version 0.17.1
      Built with emoslib 4.5.0 
  • Build: this is the same as Metview 4.8.7, but relinked with emoslib 4.5.0
     

Version 4.8.7

Externally released on 2017-06-29
Became metview/new at ECMWF on
 2017-06-29
(Linux desktops, ecgate, lxc)

  • At ECMWF:
    • Installed 2017-07-29

    • Built with Magics 2.34.0

    • Built with ecCodes 2.4.0
    • Built with ODB_API version 0.17.1
    • Built with emoslib 000449
  • User Interface: fixed problem with colour of tooltips that occurred on some desktops
     
  • Display Window: improved default settings for first-time users
    • "Highlight Active Scene" is now OFF by default
    • "Animate All Scenes" is now ON by default
  •   Gallery: moved the examples up one level to make them easier to find - see the Gallery page for example Metview plots and the macros that generate them

Version 4.8.6

Externally released on 2017-05-23
Became metview/new at ECMWF on
 2017-05-23
(Linux desktops, ecgate, lxc)

  • At ECMWF:
    • Installed 2017-05-22

    • Built with Magics 2.33.0

    • Built with ecCodes 2.3.0
    • Built with ODB_API version 0.17.0
    • Built with emoslib 000448
  • VAPOR: the VAPOR Prepare module can now pass the date and time of the data to the files generated for VAPOR
  • VAPOR: fixed issue where the VAPOR Prepare module did not produce any output when run from a macro
  • FLEXTRA: fixed issue where FLEXTRA backward trajectories could not be plotted - see The FLEXTRA interface

Version 4.8.4

Externally released on 2017-03-23
Became metview/new at ECMWF on 2017-03-23 (Linux desktops, ecgate, lxc)

  • At ECMWF:
    • Installed 2017-03-23

    • Built with Magics 2.32.0

    • Built with ecCodes 2.2.0
    • Built with ODB_API version 0.16.2
    • Built with emoslib 000447
  • NetCDF: added new parameter NETCDF_MATRIX_PRIMARY_INDEX (can be LATITUDE or LONGITUDE) for plotting geographic netCDF files with the coordinate variables specified as (lon, lat) instead of (lat, lon)
  • Wind: fixed issue where wind fields coloured by another parameter did not work. See the Grib Vectors module for more information.
  • GRIB: improved support for Lambert azimuthal equal area GRIB fields; processing involving gridpoint computations will now work, including Grib To Geopoints, nearest_gridpoint() Macro function, cross sections, zonal means and Hovmoellers
  • Macro Editor: fixed issue where keyboard shortcuts for searching for text did not work on Leap42 workstations

Version 4.8.3

Externally released on 2017-02-06
Became metview/new at ECMWF on 2017-02-06 (Linux desktops, ecgate, lxc)

  • At ECMWF:
    • Installed 2017-02-06

    • Built with Magics 2.31.0

    • Built with ecCodes 2.1.0
    • Built with ODB_API version 0.16.1
    • Built with emoslib 000446
  • WMS: fixed crash in the WMS Client editor when retrieving images from a WMS server that gives a redirection
  • Build: fixed compilation error with clang in the DivRot module (error was introduced with Metview 4.8.2, and will affect compilation on Mac OSX)

Version 4.8.2

Externally released on 2017-02-01
Became metview/new at ECMWF on
 2017-02-01
(Linux desktops, ecgate, lxc)

  • At ECMWF:
    • Installed 2017-02-01

    • Built with Magics 2.31.0

    • Built with ecCodes 2.1.0
    • Built with ODB_API version 0.16.1
    • Built with emoslib 000446
  • ODB: fixed problem introduced in 4.8.1 where the ODB Visualiser no longer worked
  • DivRot: fixed problem where the Rotational and Divergent Wind (DivRot) module no longer worked
  • Build: removed the cause of CMake warning message about METVIEW_INSTALL_BIN_DIR

Version 4.8.1

Externally released on 2017-01-30
Became metview/new at ECMWF on
 2017-01-31
(Linux desktops, ecgate, lxc)

  • At ECMWF:
    • Installed 2017-01-30

    • Built with Magics 2.31.0

    • Built with ecCodes 2.1.0
    • Built with ODB_API version 0.16.1
    • Built with emoslib 000446
  • Macro: added new function to return the unique elements of a vector variable, e.g.

    a = |5, 7, 3, 3, 1, 3, 7|
    u = unique(a)  # u is now |5, 7, 3, 1|

    See Vector Functions.

  • Macro: the date() function now accepts a Julian date as an input number. Julian dates between 0001-01-01 and 4000-01-01 are accepted in Julian notation (1721426 to 3182030). Note that Metview treats Julian dates as starting from midnight, not noon. See Date Functions.
  • Legend: added a new parameter, Legend Symbol Height Factor, to the Legend icon. This is used when plotting small symbols on a chart, and you would like their representation in the legend to be larger - specify a scaling factor here, e.g. use "5" to see the symbols 5 times their chart size in the legend
  • Tephigram: the Thermo View now accepts data of type Input Visualiser
  • GRIB: added support for gridpoint calculations on GRIB data which is in "space view", i.e. satellite projection. This includes functionality of Grib To Geopoints for example. Note: this requires at least ecCodes 2.1.0.
  • Synop: New option in the Observation Plotting icon, OBS_WIND_PROJECTED, which controls whether the wind flag on a synop observation symbol is reprojected according to the map projection or not (default =ON). If OFF, then, for example, a wind flag pointing North will point upwards on the plot, regardless of the map projection - this was the behaviour in previous versions.
  • Macro: fixed issue where the nearest_gridpoint() function would not return a value when given a target point outside the Northern or Southern most latitude band of a grid that is global reduced Gaussian
  • Geopoints to GRIB: fixed issue where it could crash when given geopoints that were outside the Northern or Southern most latitude band of a target grid that is global reduced Gaussian
  • Geopoints to GRIB: fixed the handling of missing values in the "nearest" interpolation modes - Nearest Gridpoint Mean and Nearest Gridpoint Sum now write missing values into the grid points which are not the nearest to any geopoints (previously they wrote zeros into these positions)
  • Percentile: the Percentile module has had its memory usage dramatically reduced
  • Average Data/View: fixed issue where the computation was very slow when working on GRIB data on a reduced Gaussian grid
  • Average Data: the resulting netCDF files from this module always used lon as a variable dimension, even if the computation was for a zonal mean - now the variable uses lat as its dimension in this case
  • Macro: fixed problem in the macro mvl_ml2hPa, which did not work when computing pressure levels < 1hPa with GRIB 1 data
  • Single Column Model: the SCM Visualiser icon had stopped working - it is fixed now
  • NetCDF: fixed issue where the ncdump panel of the NetCDF Examiner was not populated when run on the Leap42 workstations at ECMWF
  • Meteograms: updated settings for communication with ECMWF Meteogram server so that it works with the new firewall configuration
  • ODB Filter: added an option to determine behaviour when the returned dataset is empty. This new option, "FAIL_ON_EMPTY_OUTPUT" has a default of "Yes" and an option of "No", which can be used in a macro to catch this situation programatically
  • Stations: use the latest WMO stations database
  • Macro Editor: increased space available for text editing
  • WMS: made a small adjustment to the WMS Client to make more space for the Extra Param boxes
  • Gallery: updated the Metview Gallery with examples of Cross Section, Hovmoeller and  page layout

 

Version 4.8.0

Externally released on 2016-11-23
Became metview/new at ECMWF on
 2016-11-??
(Linux desktops, ecgate, lxc)

  • At ECMWF:
    • Installed as metview/new

    • Built with Magics 2.30.0

    • Built with ecCodes 2.0.2
    • Built with ODB_API version 0.16.0
    • Built with emoslib 000445
  • Build: the CMake option ENABLE_ECCODES is now ON by default. To build Metview with GRIB_API, please set -DENABLE_ECCODES=OFF

  • GRIB support: this is the first version of Metview installed at ECMWF with GRIB support powered by ecCodes instead of GRIB_API.
  • Macro: new function - find(vector, number), which returns the index(es) where a given number occurs in a vector. See Vector Functions.
  • Macro: new vector indexing technique, where a vector may be used as an index into another vector. See Vectors.
  • Macro: updated the version_info() command so that, if built with ecCodes, it returns an eccodes_version member instead of grib_api_version
  • Axis Plotting: added new parameters for plotting minor grid lines
  • Axis Plotting: changed default axis grid line colour from yellow to black
  • MARS: removed message about "Ambiguous Verb" during MARS retrieve() and read() commands
  • Icon editors: fixed issue where the colour set in one custom colour widget could be mistakenly transferred to another colour parameter
  • Icon editors: fixed issue where a macro-generated user interface with multiple geography helper buttons could mistakenly transfer the settings from one parameter to another


 

 

Version 4.7.2

Externally released on 2016-10-20
Became metview/new at ECMWF on 2016-10-20 (Linux desktops, ecgate, lxc)

  • At ECMWF:

    • Installed as metview/new

    • Built with Magics 2.29.6

    • Built with GRIB_API 1.18.0
    • Built with ODB_API version 0.15.2
    • Built with emoslib 000444
  • GRIB: fixed issues when interpreting the base/valid dates of hindcast data - now the hindcast date is always used; the following aspects have been modified to use it:
    • Cross Section, Average, Vertical Profile, Hovmoeller, the frame list and meta-data in the Display Window, the default key profile in the Grib Examiner, the Macro functions base_date() and valid_date().
    • (note: a pending fix in Magics is still required to produce the correct plot title)
  • Plotting: fixed issue where occasionally a plot exported from the plot window did not produce a file (if the plot was generated from data specified via relative paths)
  • Average View: fixed issue where the area selection helper tool did not show the map
  • Geographical View: fixed issue where the projections defined by EPSG codes did not work (requires Magics 2.29.6)
  • Macro: added bounds-checking when indexing a geopoints variable
  • Coastlines: the list of countries available for plotting administrative boundaries is now sorted alphabetically
  • User Interface: optimised recognition of PDF, PNG and PS files by their file extensions
  • User Interface: improved display of file sizes when the mouse cursor hovers over an icon
  • Grib Examiner: improved display of file sizes in the Info panel

Version 4.7.1

Became metview/new at ECMWF on 2016-08-22 (Linux desktops, ecgate, lxc)

This version contains no changes to Metview itself - the only difference is that it is linked with GRIB_API 1.17.0 and emoslib 4.4.3.

  • At ECMWF:

    • Installed as metview/new

    • Built with Magics 2.29.3. See the Magics Latest News.

    • Built with GRIB_API 1.17.0
    • Built with ODB_API version 0.11.4
    • Built with emoslib 000443. See the Change History.

Version 4.7.0

Externally released on 2016-07-19
Became metview/new at ECMWF on 2016-07-19 (Linux desktops, ecgate, lxc)

  • At ECMWF:

    • Installed as metview/new

    • Built with Magics 2.29.3. See the Magics Latest News.

    • Built with GRIB_API 1.16.0
    • Built with ODB_API version 0.11.4
    • Built with emoslib 000442. See the Change History.
  • New module: the Download from URL module allows an arbitrary URL to be given as input, and Metview will download and cache the given file, writing to a local directory if directed to do so
  • Geopoints to GRIB: three new modes available: Nearest Gridpoint Mean, Nearest Gridpoint Sum and Nearest Gridpoint Count. See Geopoints To Grib for more information. Also see the example below.
  • Macro: added two new fieldset Macro functions to extract date and time information from GRIB data:
    • date or list base_date ( fieldset )
      • Returns the base dates (including the time components) of the given fields. If the fieldset has only one field, a date is returned; otherwise a list of dates is returned.
    • date or list valid_date ( fieldset )
      • Returns the valid dates (including the time components) of the given fields. If the fieldset has only one field, a date is returned; otherwise a list of dates is returned.
  • Macro editor: improved the behaviour of the search/replace dialogue so that it is possible to verify each replace operation before performing it
  • Stations: updated the stations database to use the latest list from WMO
  • SCM: fixed issue where Metview allowed the editing of SCM output files, but used the Macro Editor to do so; in fact, these files should not be editable at all, and this action has now been disallowed
  • Build: fixed issue where the layoutx3.mv test could take a very long time if the user had certain default Contouring settings
  • Documentation: added a gallery of plots from the OpenIFS workshop from May 2016
Example of Nearest Gridpoint Count mode of the Geopoints to GRIB module
PlotMacro Code
 # Metview macro

#  **************************** license start ***********************************
# 
#  copyright 2016 ecmwf. this software is distributed under the terms
#  of the apache license version 2.0. in applying this license, ecmwf does not
#  waive the privileges and immunities granted to it by virtue of its status as
#  an intergovernmental organization or submit itself to any jurisdiction.
# 
#  ***************************** license end ************************************


# retrieve some observation data and conver it to geopoints format
data1 = retrieve(
   type   : "ob",
   repres : "bu",
   date   : 20150715
   )

obs_wmo_block = obsfilter(
   output    : "geopoints",
   parameter : 01001,
   data      : data1
   )

# convert the geopoints to GRIB, counting the number of points in each 4-degree cell
obs_heat_map = geo_to_grib(
   grid                 : [ 4,4 ],
   interpolation_method : "nearest_gridpoint_count",
   geopoints            : obs_wmo_block
   )

# plotting attributes
heat_map_shade = mcont(
   legend                         : "on",
   contour                        : "off",
   contour_level_selection_type   : "level_list",
   contour_min_level              : 1,
   contour_level_list             : [ 1,3,6,9,12,15,20,50,100,150,200 ],
   contour_shade                  : "on",
   contour_shade_technique        : "grid_shading",
   contour_shade_max_level_colour : "red",
   contour_shade_min_level_colour : "grey",
   contour_shade_colour_direction : "clockwise"
   )

title = mtext(
   text_line_1 : "number of observations within each <grib_info key='jDirectionIncrementInDegrees'/> degree box"
   )

symb_advanced_mono = msymb(
   symbol_type         : "marker",
   symbol_outline      : "on",
   symbol_colour       : "bluish_green",
   symbol_marker_index : 15
   )


# call function to build layout (defined at end of macro)
dw = build_layout()

# plot commands
plot ( dw[1], title, obs_heat_map, heat_map_shade )
plot ( dw[2], obs_wmo_block, symb_advanced_mono )

# end of main program

# function to build the layout
function build_layout()

   #pagedescription
   
   land_sea_shade = mcoast(
      map_coastline_land_shade        : "on",
      map_coastline_land_shade_colour : "rgb(0.98,0.95,0.82)",
      map_coastline_sea_shade         : "on",
      map_coastline_sea_shade_colour  : "rgb(0.85,0.93,1)"
      )
   
   geographical_view = geoview(
      coastlines    : land_sea_shade
      )
   
   page = plot_page(
      top     : 2.58317033154,
      bottom  : 52.5831715633,
      left    : 0,
      right   : 100,
      view    : geographical_view
   )

   coastlines = mcoast(
      map_coastline_land_shade        : "on",
      map_coastline_land_shade_colour : "rgb(0.98,0.95,0.82)",
      map_coastline_sea_shade         : "on",
      map_coastline_sea_shade_colour  : "rgb(0.85,0.93,1)",
      map_label_top                   : "off"
      )
   
   gv_obs = geoview(
      coastlines    : coastlines
      )
   
   page_1 = plot_page(
      top     : 50,
      bottom  : 100,
      left    : 0,
      right   : 100,
      view    : gv_obs
   )
   
   # superpage description
   display_window = plot_superpage(
      layout_size        : "a4",
      layout_orientation : "landscape",
      custom_width       : 29.7,
      custom_height      : 21.0,
      pages              : [ page, page_1 ]
   )
   # plot_superpage returns a list of drop identifiers.
   # index 1 is for first page, and so on.

   return display_window

end build_layout

 

 

Version 4.6.7

Externally released on 2016-06-29
Became metview/new at ECMWF on 2016-07-12 (Linux desktops, ecgate, lxc)

  • At ECMWF:
    • Installed as metview/new

    • Built with Magics 2.29.2. See the Magics Latest News.

    • Built with GRIB_API 1.16.0
    • Built with ODB_API version 0.12.0
    • Built with emoslib 000442. See the Change History.
  • GRIB: fixed an issue when interpreting GRIB fields which are stored in Lambert projection - Metview's own internal routines can now handle the case where jScansPositively=0. Note that this does not affect the direct plotting of these fields, but will take effect when using other Metview functionality such as converting such fields to the Geopoints format, computing cross sections, and also when using the Macro functions nearest_point() and interpolate().
  • Plotting: a fix in Magics allows Metview to once again plot GRIB fields in Space View projection; this functionality had been lost in Metview 4.6.6.
  • Plotting: fixed a small bug in the plotting module which could have caused undefined behaviour (e.g. a crash) and a random name to appear in Metview's Process Monitor
  • Plotting: fixed an issue where particular locale settings on the workstation could disrupt the plotting of certain fields. This had been seen in MSLP fields, where incorrect scaling resulted in far too many isolines being plotted
  • Observation Filter: this can now return a CSV file as output for multiple parameters (this feature has been available for some time, but the output data was not available to the user interface). The ability to save these files from a macro is still to be implemented though.
  • FLEXTRA: the Flextra Run icon now works when relative paths are supplied
  • FLEXTRA: the text direction in the icons' images has been fixed
  • User Interface: fixed issue where missing icon files in the Metview installation could cause the user interface to hang
  • Build: this version of Metview can be built with ecCodes instead of GRIB_API. To do this, supply CMake with the command-line option -DENABLE_ECCODES=ON
  • Build: QtSvg is now a requirement when building Metview's user interface (it was always needed, but its absence will now be caught at build time)
  • Build: enabled compilation with GCC 6.1
  • Documentation: updated the Using the MARS Web API from Metview page
  • Documentation: updated the the Metview source bundle installation guide

Default Version at ECMWF upgraded to 4.6.6

Upgrade 2016-06-15 (Linux desktops, lxa cluster, ecgate)

  • Version 4.6.6 became the default version (command metview) at ECMWF
  • To use another version, please use the modules system:
    • module avail metview
    • module switch metview/x.x.x

Test Version 4.6.6

Externally released on 2016-05-10
Became metview/new at ECMWF on
2016-05-10
(Linux desktops, ecgate, lxc)

  • Installed as metview/new

  • Built with Magics 2.29.0. See the Magics Latest News.

  • Built with GRIB_API 1.15.0
  • Built with ODB_API version 0.11.4
  • Built with emoslib 000441. See the Change History.
  • Plotting: Metview now allows for the plotting of geographic areas smaller than 0.1 degrees N/S and E/W
  • BUFR: added support for satellite prepBUFR data from NCEP so that it can be filtered via the Observation Filter and the Bufr Picker. Metview already supported other prepBUFR formats, but this one was slightly different.
  • Macro: fixed issue when interpreting input from a generated user interface - strings, such as file paths, which contain forward slashes were interpreted as lists. This is still the default behaviour, but if exclusive: "true" is set as part of the definition then the result will be interpreted as a string ("exclusive" meaning that there will only be one result and not a list of results)
  • WMS: fixed issue where the default proxy settings prevented the use of ecCharts WMS layers from Metview's WMS Client icon when running at ECMWF
  • ODB: added the version of ODB_API to the following places:
    • the Macro function version_info()
    • the ODB Examiner's 'About' help box
    • the Display Window (uPlot)'s 'About' help box
  • GRIB: improved the automatic recognition of GRIB files, e.g. when they have some additional header information from GTS
  • Startup: fixed issue where scripts called by BASH_ENV could interfere with Metview's running
  • Simple Formula: this icon can now return BUFR as a data type; only likely to be used for merging two BUFR files
  • Documentation: added new page describing some techniques on how to write more efficient macros
  • Build: fixed issue with building with CMake 3.5; fixed issue building RPMs on OpenSUSE LEAP 42.1

Version 4.6.5

Externally released on 2016-03-06
Became metview/new at ECMWF on 2016-03-06

  • At ECMWF:
    • Built with Magics 2.28.0. See the Magics Latest News.

    • Built with GRIB_API 1.14.6
    • Built with ODB_API version 0.10.5.4
    • Built with emoslib 000439. See the Change History.
  • Startup: a data file can now be visualised directly from the command line without having to start Metview's whole user interface
    • metview -p /path/to/file
    • works with GRIB, BUFR and geopoints files
    • when plotting GRIB, it uses the ecCharts library of styles where applicable
  • Tephigram: fixed issue in dewpoint computation from GRIB data using Saturation Over Water (values will be different) ; added new option Saturation Over Ice
  • Plotting: vector quantities such as U/V can now be plotted even if they appear in the GRIB file in the 'reverse' order, e.g. V/U instead of U/V.
  • Plotting: the layers meta-data panel now indicates whether the displayed reduced Gaussian grid is octahedral
  • Plotting: uses Magics' updated coastlines database, which eliminates the stray lines we occasionally saw when zoomed into certain areas. For more details on Magics changes, please see here.
  • Plotting: automatic macro code generation has been improved for the following views: Hovmoeller View, Thermo View, Cross Section View, Average View, Vertical Profile View and their associated Data icons
  • Plotting: new Magics colour "ECMWF_blue" is now available
  • Plotting: added meta-data tag to selected output formats to indicate the version of Metview used to generate the plots
  • Meteograms: Metview now uses the new web service to retrieve meteograms. Small changes from the previous version may be observed.
    • a new meteogram, Plumes, is now available from the icon.
    • only PDF and PNG output are supported - the default output format is now PDF; jobs which assume PostScript output will need to be updated
    • the 'classic' metgram option (10_days_metgram) is no longer supported; users are advised to use Weather Parameter files to obtain a similar product
  • Observation Filter: updated the list of subtypes to include the following:
    • LSD - Bufr land synop, LSD - Bufr land synop 2, LSD - Bufr land synop Wmo region 6, LSD - Bufr land synop 1 hourly, SSD - Bufr ship synop
  • Stations: updated the list of WMO stations used by the Stations module
  • Environment: changed all of Metview's internal scripts from ksh to bash. This removes Metview's dependency on ksh
  • Examples: revised the icons and data in the Getting Started examples folder. Now includes some octahedral data, an ecCharts contouring icon and the MARS examples have been revised
  • Build: fixed issue where the batch-only version of Metview did not build (CMake option -DENABLE_UI=OFF). This also requires Magics 2.27.
  • Build: fixed issue where, in a parallel build, rpcmars.h was not built early enough and the build failed
  • Mac: fixed issue on the Mac where spurious files were seen in some directories

Default Version at ECMWF upgraded to 4.6.4

Upgrade 2016-02-09 (Linux desktops, lx* clusters, ecgate)

  • Version 4.6.4 became the default version (command metview) at ECMWF
  • To use another version, please use the modules system:
    • module avail metview
    • module switch metview/x.x.x

Version 4.6.4

Became metview/new at ECMWF on 2016-02-01

  • At ECMWF:
    • Built with Magics 2.26.1. See the Magics Latest News.

    • Built with GRIB_API 1.14.5
    • Built with ODB_API version 0.10.5.3
    • Built with emoslib 000437. See the Change History.

Version 4.6.3

Became metview/new at ECMWF on 2016-01-26

  • At ECMWF:
    • Built with Magics 2.26.1. See the Magics Latest News.

    • Built with GRIB_API 1.14.5
    • Built with ODB_API version 0.10.5.3
    • Built with emoslib 000436. See the Change History. Note that this version of emoslib offers some improved performance and accuracy - see Emoslib Releases.

Version 4.6.1

Externally released 2015-12-02
Became metview/new at ECMWF on 2015-12-09

  • At ECMWF:
    • Built with Magics 2.26.1. See the Magics Latest News.

    • Built with GRIB_API 1.14.4
    • Built with ODB_API version 0.10.5.3
    • Built with emoslib 000433. See the Change History. Note that this version of emoslib offers some improved performance and accuracy - see Emoslib Releases.
  • Grib To Geopoints: this module has a new mode which allows the user to create an output GRIB on any grid, simply by supplying a template GRIB file from which the grid of the output data will be derived.
  • Macro: new function, fill_missing_values_ew(fieldset). Currently, only implemented for regular lat/long grid format, this function can be useful for filling missing values with 'real' values in order to improve plotting quality.
    • For each latitude line, analyses each point along the row. If a point is a missing value then replaces it by the following:
      • if the next point is a non-missing value then take that value; otherwise, take the previous non-missing value.
  • Macro:  added Metview revision number (member "metview_revision") to function version_info().
  • Average View: fixed issue where it was not possible to plot the result of an Average Data computation inside an Average View (also with Cross Section)

Version 4.6.0

Externally released 2015-11-19

  • MARS: updated the MARS client and dependent libraries to versions which support octahedral grids. See also Detailed information of implementation of IFS cycle 41r2 for information on how to structure MARS requests for reduced Gaussian grids (including octahedral grids).
  • Plotting: re-introduced the Streamlines plotting parameters in the Wind Plotting icon, using the new streamlines plotting functionality in Magics. See example below.
  • Plotting: added new parameters to the Contouring icon for allowing WMO symbols to be used in marker shading: Contour Shade Marker Table Type (Index / Name) and Contour Shade Marker Name Table.
  • Plotting: fixed issue where the macro automatically generated from a plot did not honour the current geographical co-ordinates of the plot.
  • Plotting: fixed an issue where a small area was not filled with shaded contours.
  • Plotting: added a new parameter, Subpage Clipping (On / Off) to the View icons, primarily to allow the clipping of wind arrows/flags to the subpage. See the streamlines example below.
  • Plotting: added new parameters to the Contouring icon to control the interpolation of reduced Gaussian grids: Grib Interpolation Method (Interpolate / Nearest / Nearest Valid) and Grib Interpolation Method Missing Fill Count (only valid in mode Nearest Valid).
  • Plotting: the default Geographical View is now taken from the System/Defaults folder, in line with other icons.
  • Plotting: fixed an issue where sending a plot to a printer could result in part of the plot being clipped.
  • Plotting: fixed an issue where the automatically generated macro from a plot did not contain the legend specification.
  • Plotting: changed the default visdef used for plotting geopoints wind from Contouring to Wind Plotting.
  • Plotting: in the NetCDF Visualiser icon, changed the default missing value attribute to _FillValue in line with CF convention.
  • Plotting: fixed issue in the Plot Export dialogue where selecting an existing file could cause the plot to be immediately saved with that name rather than giving the user the opportunity to change the filename.
  • Macro: fixed issue where the nearest_gridpoint(fieldset, geopoints) function could accumulate memory.
  • Macro: added new function for more efficient setting of GRIB keys in one go, rather than one function call per key type (see example below).
  • Macro: Macro library function mvl_ml2hPa() has been fixed so that it works with GRIB 2 data with pressure levels smaller than 1hPa.
  • Macro: added new netcdf function setcurrent(netcdf, string) to set the current netcdf variable by name rather than by index
  • Macro: reduced the number of messages produced when computing zonal means.
  • Macro: improved the formatting of Macro code automatically generated by the 'Generate Macro' button in the Display Window.
  • Macro Editor: added a new code template to provide an example of setting different output drivers (F4 in the Macro Editor)
  • Network: fixed issue where the network proxy was always being used, despite the user setting to disable it
  • Mac: fixed issue where the main menu did not work properly on Mac OS X.
  • Build: changed the way in which Metview obtains the settings with which Magics was built. This requires at least Magics 2.25.3 to work.
  • Build: this version of Metview is also released as part of a bundle with Magics, GRIB_API and emoslib for easier installation.
Example of streamlines plotting and subpage clipping

The code to generate this plot is here (click to expand the source):

# Metview Macro
#  **************************** LICENSE START ***********************************
# 
#  Copyright 2015 ECMWF. This software is distributed under the terms
#  of the Apache License version 2.0. In applying this license, ECMWF does not
#  waive the privileges and immunities granted to it by virtue of its status as
#  an Intergovernmental Organization or submit itself to any jurisdiction.
# 
#  ***************************** LICENSE END ************************************
uv = retrieve(
    levelist : 1000,
    param    : ["u","v"],
    grid     : [1,1]
    )
streamlines = mwind(
    wind_field_type             : "streamlines",
    wind_streamline_min_density : 4,
    wind_streamline_min_speed   : 4,
    wind_streamline_colour      : "bluish_purple",
    wind_streamline_head_shape  : 1
    )
arrows = mwind(
    wind_arrow_colour        : "RGB(0.48,0.73,0.22)",
    wind_arrow_head_shape    : 1,
    wind_arrow_head_ratio    : 0.2,
    wind_arrow_unit_velocity : 15
    )
land_sea_shading = mcoast(
    map_coastline_land_shade        : "on",
    map_coastline_land_shade_colour : "cream",
    map_coastline_sea_shade         : "on",
    map_coastline_sea_shade_colour  : "RGB(0.9,0.95,1)",
    map_grid_latitude_increment     : 20,
    map_grid_longitude_increment    : 40,
    map_grid_colour                 : "charcoal"
    )
view_with_clipping = geoview(
    map_area_definition : "corners",
    area                : [6.71,-78.97,83.91,45.61],
    subpage_clipping    : "on",
    coastlines          : land_sea_shading
    )
plot(view_with_clipping, uv, arrows, streamlines)

 

Example of new grib_set function
# data types are automatically recognised as string, double or long
data = grib_set (data, ["dataTime", 1500,
                        "identificationOfOriginatingGeneratingCentre", 99,
                        "level", 101,
                        "longitudeOfLastGridPointInDegrees", 300.001,
                        "stepType","avgd"])

 

 

Export Version 4.5.7

External release 2015-10-16


Version 4.5.7-export became available. See the Releases page for download.

Test Version 4.5.7

Introduced 2015-10-07 (Linux desktops, lxab and lxc clusters, ecgb)

  • Tephigrams: added Thermo Grid and Thermo Plotting icons for controlling the plotting of the background and curves of a tephigram. Plotting of wind arrows is still controlled by the Wind Plotting icon. Full drag and drop support is now implemented between the various "Thermo" icons.
  • Cross Section: added support for plotting cross sections of wind vectors. Users are now able to customise the scaling of the vertical wind if desired.
  • Cross Section: added new parameter to the Cross Section View and Cross Section Data icons: Horizontal Point Mode, which now allows the points along the transect line to be computed either via interpolation of the surrounding grid points (the default behaviour) or using the nearest grid point (the new option).
  • Cross Section: revised method to determine which pressure levels to interpolate onto when converting from model level data. The new scheme ensures that the plot continues down to the bottom even in cases where there is extreme orography.
  • Cross Section: added parameters to allow a user-defined list of pressure levels to interpolate onto when converting from model level data. See Cross Section Data and Cross Section View.
  • Plotting: parameter Symbol Text Blanking in the Symbol Plotting icon is now available in the table modes
  • Plotting: new Coastlines parameters available: Map Label FontMap Label Font Style and Map Label Blanking
  • Display Window: the Cursor Data can now be significantly faster (e.g. 100x) with some large fields. Note that this requires Magics 2.25.2.
  • Display Window: some options in the Export dialogue from the plot window were erroneously displayed as plain strings instead of a fixed list of possible values.
  • User Interface: now closes properly during a system shutdown
  • GRIB: ensured that Metview now works with negative forecast steps (when built with GRIB_API 1.15.0)
  • GRIB: Metview now uses higher-level GRIB_API keys for checking flags relating to grid interpretation. This does not fix any known bugs, but should be safer.
  • Build: installers can now specify a different path to install Metview's executables by supplying to CMake a path relative to the base install directory, for example:
    • -DMETVIEW_INSTALL_EXE_BIN_DIR=lib/metview/bin
  • Build: fixed issue when building Metview's fortran modules with Intel compilers.
  • Build: Metview now builds with Qt5. There is an issue with the main menu on Mac OS X which seems to affect other applications; the menu becomes active only after switching context to and then from another application.
  • Build: added the ability to run post-installation tests for added confidence in the installation. From the build directory:
    • cd tests/macros
      ./post_install_tests.sh

Test Version 4.5.6

Introduced 2015-06-17 (Linux desktops, lxab and lxc clusters, ecgate)

Export Version 4.5.6

External release 2015-06-16


Version 4.5.6-export became available. See the Releases page for download.

  • Plotting: fixed issue where plotting of small details in PDF and PNG format gave a bad plot because of outline attributes which were too thick
  • Plotting: fixed rare issue where the plotting of a data file which is a symbolic link could fail
  • GRIB: fixed issue where Metview's internal GRIB navigation routines did not correctly compute the coordinates of the points on a GRIB field which is a sub-area of a reduced Gaussian grid. This affects a number of functions and modules, including Grib to Geopoints, Cross Section and the Macro functions nearest_gridpoint() and interpolate().
  • Grib Examiner: fixed issue where the Grib Examiner could crash when switched to Namespace mode
  • Examiners: fixed issue where the data examiner applications (e.g. the Grib Examiner) could crash when closed; this was normally not visible, but could show up on the Mac OS X
  • Stations: the Stations module has been updated to use the latest list of WMO stations
  • User Interface: allow the dropping of Metview 3 (e.g. PCONT) icons into the icon editor of Metview 4 (e.g. MCONT) icons to aid migration
  • Startup: fixed the display of the Metview version when typing "metview -h"

Default Version upgraded to 4.5.5

Upgrade 2015-06-09 (Linux desktops, lx* clusters, ecgate)

  • Version 4.5.5 became the default version (command metview) at ECMWF
  • To use another version, please use the modules system:
    • module avail metview
    • module switch metview/x.x.x

Export Version 4.5.5

External release 2015-05-27


Version 4.5.5-export became available. See the Releases page for download.

Test Version 4.5.5

Introduced 2015-05-27 (Linux desktops, lxab and lxc clusters, ecgate)

  • MARS: when building Metview outside ECMWF, MARS access through the Web API is enabled by default without the need to specify a Database parameter in the requests.
  • Plotting: fixed rare issue where plots could fail when producing multiple PostScript pages
  • Plotting: fixed issue where plots could fail when producing large numbers (>1000) of output graphics files in batch mode
  • ODB: improved the finding of the odb_migrator executable when filtering ODB-1 data

Export Version 4.5.4

External release 2015-05-14


Version 4.5.4-export became available. See the Releases page for download.

Note: it is recommended to use at least Magics 2.24.3 in order to build with plotting enabled.

Test Version 4.5.4

Introduced 2015-05-12 (Linux desktops, lxab cluster, ecgb)

  • Legend: added new parameter to the Legend icon - Legend Automatic Position. Can have one of two values: top (default) and right. This allows a legend to be automatically positioned to the right of the plot without the need to manually specify its coordinates
  • Contouring: now, when Contour Shade Technique is set to Grid Shading, all interpolation of the input GRIB field is automatically deactivated without the user having to set additional parameters, true to its original intention (e.g. Contour Method previously had to be set to Linear)
  • Contouring: parameter Contour Reference Level is now available even if Contour Highlight is Off
  • Contouring: allow access to the parameter Contour Internal Reduction Factor to allow fine-grain control over contouring of certain fields
  • Plotting: now the page_frame parameters from view icons are honoured
  • NetCDF: the ncdump panel of the NetCDF Examiner was not working on the new workstations at ECMWF; now it is
  • Reprojection: all the meta-data in the Product section of the input GRIB file is now transferred to the resulting GRIB file
  • Macro: it is now possible to specify that a coastlines definition be plotted on top of the data - just put the coastlines variable at the end of the plot command (or anywhere after the first data variable)
  • Macro: fixed issue where putting a visdef variable at the start of a plot() command could cause a crash
  • Macro: when supplying a relative path when using multiple output graphics file formats, the files will now be generated in relative to where the macro is located
  • Macro: improved printing of error messages from other modules
  • Macro: fixed an issue where the function nearest_gridpoint() could return the wrong point in a particular edge case where the longitude is beyond the last point, e.g. in a 1x1 degree grid, asking for the nearest gridpoint to (0, 359.1) returned the wrong result
  • Stations: a new parameter, Fail on Error was added. If this is set to No, then a macro can trap the condition where it does not find a matching station by checking whether the return result is nil.
  • SCM: fix to allow the running of SCM executables on the classroom machines
  • SCM: fixed occasional crash in SCM profile editor
  • Mac OS X: chosen better default viewers for image formats such as PNG and PostScript
  • Mac OS X: graphics are now crisper due to the choice of a different Qt rendering engine on this platform

Export Version 4.5.3

External release 2015-03-12


Version 4.5.3-export became available. See the Development Snapshots page for download.

Note: it is recommended to use Magics 2.24.1 in order to build with plotting enabled.

Test Version 4.5.3

Introduced 2015-03-12 (Linux desktops, lxab cluster, ecgb)

  • Installed as metview_new   (module swap metview/new ; metview)

  • Built with Magics 2.24.1. See the Magics Change History.

  • Built with GRIB_API 1.13.0
  • Built with ODB_API version 0.10.2
  • Built with emoslib 000400

  • WMS: fixed issue where a configuration file required for correct operation of Metview's Web Map Client module was not installed
  • Desktop: it's now easier to create a new icon: from the Create new Icon dialogue, pressing Return will create an instance of the currently selected icon
  • Desktop: fixed issue where creation of a new icon could fail
  • Plotting: fixed issue where the MAGPLUS_HOME environment variable could interfere with the correct finding of Magics resource files

Export Version 4.5.2

External release 2015-03-09


Version 4.5.2-export became available. See the Development Snapshots page for download.

Note: it is recommended to use Magics 2.24.1 in order to build with plotting enabled.

Test Version 4.5.2

Introduced 2015-03-05 (Linux desktops, lxab cluster, ecgb)

  • Plot export: when exporting a plot from the interactive display window, the available options for the selected file format are now presented in a dialogue if the user clicks on the spanner icon next to the output format
  • Macro: when supplying a relative path to an output graphics file, the file will now be generated in relative to where the macro is located
  • Display Window:
    • dropping of Legend and Text Plotting icons now more consistent behaviour
    • fixed an issue where using an old pcont icon or plotting BUFR data could result in an empty plot
    • automatic generation of Macro from Simple Formula icon could result in incorrect code - fixed
    • upload to Weather Room screen updated to work with new framework
  • Display Window icon: more flexibility when designing page layouts
  • Desktop improvements:
    • the status bar now shows information about a link's target when the mouse hovers over an icon which is a symbolic link
    • the mouse wheel behaves more nicely when scrolling through an icon editor which contains comboboxes

Export Version 4.5.1

External release 2015-02-11


Version 4.5.1-export became available. See the Development Snapshots page for download.

Note: this version requires Magics 2.24.0 in order to build with plotting enabled.

  • Contouring: added new Magics parameters for more control over the rainbow contouring:
    • contour_line_thickess_rainbow_list, contour_line_thickness_rainbow_list_policy, contour_line_style_rainbow_list and contour_line_style_rainbow_list_policy
    • added an example to the Gallery illustrating how rainbow contouring can replace Metview 3's split contours - see Rainbow Isolines Example
  • PostScript output: uses the new Magics default of RGB colour space (was CMYK) when producing PostScript output in order to maintain consistency between versions of GhostScript installed on different platforms
  • Geo View: allow MAP_VERTICAL_LONGITUDE to be set in Geos projection in order to simulate various geostationary satellites. Note that the coastlines have some stray lines when certain globe rotations are used.
  • Hovmoeller: fixed issue where an empty plot was obtain when the requested line was exactly vertical, i.e. if the longitudes at each end were the same
  • Cross Section: support for general height-based coordinate GRIB data
  • Desktop:
    • fixed a crash which occurred when running a macro which generates its own user interface
    • icons moved into a Folder icon now get a sensible position
    • fixed issue where editing some specific Metview 3 icons caused a crash
    • in the Contouring icon editor, parameter CONTOUR_LINE_COLOUR_RAINBOW_COLOUR_LIST now has a proper colour list helper tool
  • Build: like much other ECMWF software, Metview now uses CMake for its build system (see Installation Guide)
    • now supports Mac OS X - we welcome feedback on this, and are aware that there are some minor issues on retina displays
    • Motif support disabled by default, but can be enabled
    • parallel builds now supported on multi-core machines, e.g. make -j 8

Test Version 4.5.0

Introduced 2015-01-06 (Linux desktops, lxab cluster, ecgb)

  • User Interface: the new Desktop user interface (see New Desktop user interface) is now the default
  • Desktop: various improvements, including:
    • improvements in colour-selection helper in icon editors
    • 'rename' action added to icon context menus (shortcut: F2)
    • icon filter is now case-insensitive
    • fixed case-sensitivity issue in the New Icon dialogue
    • fixed issue where when a folder tab was moved it became deselected

    • fixed issue where creating a new icon could shift the position of existing icons
    • icon bounding rectangle has been slightly enlarged
  • Plotting: fixed issue where the association of visdefs to data did not work in some cases with multiple data sets
  • Macro: fixed issue where the distance() function returned an invalid result; this could happen when one of the geopoints was at exactly the same location as the target point
  • Macro: various gridpoint functions now support GRIBs which are on sub-areas of reduced lat/lon grids
  • Wind: Metview now recognises 10ua and10va as a wind vector pair
  • Coastlines: now have new value FULL for parameter MAP_COASTLINE_RESOLUTION
  • BUFR Examiner: masterTableVersion and localTableVersion have been added to the default profile
  • Stations: updated the Stations database with the latest WMO stations
  • VAPOR: the VAPOR Prepare icon now supports experimental GRIB fields with variable height coordinates
  • Reprojection: uses new code to convert from satellite to regular lat/lon projection; note, however, that this module is no longer required for the plotting of satellite images stored in GRIB - Metview can now plot them directly.
  • Build: like much other ECMWF software, Metview now uses CMake for its build system (see Installation Guide)
    • now supports Mac OS X - we welcome feedback on this, and are aware that there are some minor issues on retina displays; other small issues may be present
    • Motif support disabled by default, but can be enabled

Change of default Metview versions on ecgate

Done on 2014-11-26 (ecgate only)

  • Command metview now launches metview4
  • Commands metview_new and metview_test now launch metview4_new
  • Command metview_old now launches metview4_old
  • Commands metview3, metview3_test and metview3_old are still available for running Metview 3
  • See Metview at ECMWF for details of the version names

User Version 4.4.10

Upgrade 2014-10-08 (Linux desktops, lxab cluster, ecgate)

  • Version 4.4.10 became User Version (command metview or metview4 on ecgate) at ECMWF

Export Version 4.4.10

External release 2014-10-01

Version 4.4.10-export became available. See the Releases page for download.

Test Version 4.4.10

Introduced 2014-10-01 (Linux desktops, lxab cluster, ecgb)

  • Installed as metview4_new

  • Built with Magics 2.23.1. See the Magics Change History.

  • Built with GRIB_API 1.12.3
  • Built with ODB_API version 0.9.31
  • Built with emoslib 000396
  • Cross Section and Average: parameter Interpolate Values is no longer available in the user interface, as Metview will always compute the result on the actual vertical levels of the input data, without applying any vertical interpolation. The only exception is when there is a need to convert model level to pressure level data. In this case, model level and LNSP data are required and the algorithm to compute the set of target pressure level values has been changed. Previously, these levels were computed by taking a fixed number of evenly spaced intervals between the top and bottom pressure. This led to a lack of detail in the upper atmosphere. The new scheme computes the set of target pressure level values as follows: for each input model level, compute the average pressure from all points on that level.
  • Cross Section and Average: better handling of missing values from the input data
  • Hovmoeller: better handling of missing values from the input data
  • Build: fixed issue which could cause the Metview build to fail on Fedora 20 (and maybe other) systems; the symptom is the following error message during the last stage of compilation:
    • convert: unrecognized color `snow1' @ warning/color.c/GetColorCompliance/947.

Test Version 4.4.9

Introduced 2014-09-08 (Linux desktops, lxab cluster, ecgb)

  • Installed as metview4_new

  • Built with Magics 2.23.1. See the Magics Change History.

  • Built with GRIB_API 1.12.3
  • Built with ODB_API version 0.9.31
  • Built with emoslib 000396
  • Reprojection: now copies more meta-data (e.g. satellite and channel ID) from input to output GRIB
  • Grib Examiner: now works on MARS icons which return satellite imagery
  • User Interface: now recognises JPEG, GIF and TIFF as icon types
  • Desktop: improvements in Metview's new user interface (invoked by adding -desktop to the Metview command line)
    • Right-click | 'Save result' now works on MARS icons which return satellite imagery
    • Icon editors: colour list editor now displays correctly when disabled

Export Version 4.4.8

External release 2014-08-13

Version 4.4.8-export became available. See the Releases page for download.

  • Spectra: the Spectra module has been re-instated in Metview 4, providing the same level of functionality as Metview 3 (it is intended to expand this in the future)
  • Weather Room: added facilities for analysts to send plots to the Weather Room video wall and to synchronise plots between Metview and the wall (ECMWF only)
  • Thermo View: new icon for handling the view parameters of thermodynamic diagrams (the ability to drag and drop data into this view has yet to be implemented)
  • Fonts: updated the visual definition icons to provide the full list of Magics fonts (was Serif and SansSerif, is now Arial, Courier, Helvetica, Times, Serif, SansSerif and Symbol). The icons affected are Axis PlottingCoastlines, Contouring, Legend, Symbol Plotting and Text Plotting. Please note: in line with a change in Magics, parameter Symbol Text Font Name has been changed to Symbol Text Font. This might affect macros or icons which set the old parameter.
  • Macro: extended the nearest_gridpoint_info() Macro function to include the distance of the found point from the target point
  • Cross Section: it was not possible to create a cross section (or some other types of derived data) from an experimental GRIB where the parameter's shortName is not alpha-numeric, e.g. "~" or is missing; this has been fixed
  • Cross Section: now properly handles missing values when converting from model levels to pressure levels
  • Reprojection: now takes missing values in the input GRIB file into account
  • Reprojection: now copies meta-data (e.g. date, time, paramId) from input to output GRIB
  • Grib To Geopoints: fixed issue where some GRIB 2 files could not be converted because of differences in GRIB_API keys between GRIB 1 and 2
  • Lambert: fixed issue where Lambert grids stored in GRIB 2 could not be interpreted because of differences in GRIB_API keys between GRIB 1 and 2
  • Grib Examiner: fixed issue where occasionally the last-used profile was not remembered between sessions
  • Desktop: many improvements in Metview's new user interface (invoked by adding -desktop to the Metview command line)
    • added an advanced icon search dialogue
    • fixed issue where the editing of a floating-point number in an icon editor caused the decimal point to disappear (still to be fixed when editing a list of numbers)
    • improvement in layout of icons on the first visit to a given folder
    • fixed issue where icon drop boxes in editors were not greyed out when not needed
    • the e-mailing of icons is now more robust when the message contains special characters
    • the icon output log no longer misinterprets certain characters as HTML codes
    • bookmarks are now saved as soon as they are modified
    • colour-selection helper improved when choosing a colour from the colour grid
    • fixed issue where the text cursor did sometimes not appear when renaming an icon (only when built with Qt 4.8)
    • fixed issue where some 'family editor' icons could not be edited
    • relaxed a case-sensitive check when switching the icon editor back from text mode
    • the Display Window icon editor now correctly displays the page size (e.g. A3/A4)
    • improved file scanning when figuring out an icon's type
    • useful graphical icons are displayed in the host system's task bar
    • implemented the Empty Wastebasket action
    • in icon editors, the 'clear text' button is now highlighted when the mouse cursor hovers over it
    • we would like as much feedback as possible on the new interface before we make it the default version!
  • Documentation: documented the following icons: Cross Section Data, Cross Section View, Average Data, Average View, Vertical Profile Data, Vertical Profile View, Hovmoeller Data, Hovmoeller View
  • Wind: removed the Streamlines options from the Wind Plotting icon until this feature is fully implemented
  • Build: fixed configure option --with-wmo-code

Export Version 4.4.7

External release 2014-05-13

Version 4.4.7-export became available. See the Releases page for download.

Test Version 4.4.7

Introduced 2014-05-13 (Linux desktops, lxab cluster, ecgb)

  • Installed as metview4_new

  • Built with Magics 2.23.0. See the Magics Change History.

  • Built with GRIB_API 1.12.1
  • Built with ODB_API version 0.9.31
  • Built with emoslib 000394
  • Desktop: Metview's experimental new user interface (enabled with -desktop on the command line) has had many small fixes
  • Macro: function nearest_gridpoint_info() returns an additional member: index, which gives the (1-based) index of the found point in the data array
  • Grib Examiner: now correctly displays the messages in a GRIB file which is the result of enabling sorting in the Grib Filter icon
  • Grib Examiner: for convenience, now creates a user-writeable copy of the default key profile on startup
  • WMS: fixed an issue where wrong proxy settings were enabled when built outside ECMWF
  • MARS: creation of new Mars Retrieval icons is now enabled outside ECMWF when the Mars Web API access is available

Export Version 4.4.6

External release 2014-04-29

Version 4.4.6-export became available. See the Releases page for download.

Test Version 4.4.6

Introduced 2014-04-29 (Linux desktops, lxab cluster, ecgb)

  • Installed as metview4_new

  • Built with Magics 2.23.0. See the Magics Change History.

  • Built with GRIB_API 1.12.0
  • Built with ODB_API version 0.9.31
  • Built with emoslib 000394
  • Tephigrams: new module - Thermo Data - for generating thermodynamic diagrams; plot customisation will be available later, now it is possible only with some Macro code
  • VAPOR: new module (VAPOR Prepare) to prepare data for visualisation with the 3D package VAPOR. See 3D visualisation with VAPOR for more information, including a tutorial
  • Geo View: added Mercator projection
  • NetCDF: added the facility to plot XY Vectors in the NetCDF Visualiser icon
  • Grib Examiner: added statistics to the list of namespaces for the namespace dump mode

  • NetCDF: fixed case where visualisation of netCDF geographical matrices caused a crash
  • NetCDF: at ECMWF, the NetCDF Examiner now uses the netCDF 4 ncdump in its Ncdump panel (although Metview was already linked with the netCDF 4 library, it was calling the default version of ncdump for this purpose)
  • SCM: fixed an issue where calling the Scm Run icon could cause later problems in the Metview user interface
  • SCM: fixed an issue in the SCM profile editor where the corresponding table column was not selected when switching between parameters
  • Geo View: fixed issue where the geographical area was restricted to be 360° at the right-hand edge
  • Geo View: fixed issue where replacing a Map View with a Geographical View (or vice-versa) was disallowed
  • Macro: fixed an issue where calling values(geopoints) returned a vector of values even if the geopoints values were of type string; it now returns a list of strings in this case
  • Macro: fixed issue where the Observation Filter did not work if a Display Window had been defined beforehand
  • Macro: fixed issue where automatic generation of a Macro from a plot derived from a Simple Formula icon failed
  • Macro Editor: background has been slightly dimmed to help prevent eyestrain; this should be user-configurable in the future

  • Desktop: Metview's experimental new user interface (enabled with -desktop on the command line) has seen many improvements

Export Version 4.4.5

External release 2014-03-04

Version 4.4.5-export became available. See the Releases page for download.

Test Version 4.4.5

Introduced 2014-03-03 (Linux desktops, lxab cluster, ecgb)

  • Installed as metview4_new

  • Built with Magics 2.23.0. See the Magics Change History.

  • Built with GRIB_API 1.11.0
  • Built with ODB_API version 0.9.31
  • Built with emoslib 000394
  • Display Window: fixed issue where plotting a map with Coastlines switched off could cause a crash
  • Display Window: now recognises 100u/100v as wind vector components and will automatically plot as wind vectors
  • Observation Plotting: a new Observation Plotting icon has been created directly from the available Magics++ parameters. This replaces the Metview 3 Observation Plotting icon, as many of the parameters are different. The macro function is mobs().
  • Cartesian View: fixed error when setting both parameters X_AUTOMATIC = on and X_AXIS_TYPE = date
  • Cross Section: problem with the orography curve has been fixed
  • Vertical Profile: internal update to how the resulting netCDF variables are named
  • Examiners: the data examiners have been updated so that they can once again be invoked from the command line with the -e option
  • SCM: the Single Column Model interface has been updated so that invoking the SCM with two icons simultaneously works without a clash
  • RTTOV: the default channel files are now somewhere safe, and not stored in a volatile location
  • MARS: added latest definition files
  • MARS: improvements for accessing ECMWF's MARS  archive from a Metview built outside ECMWF
  • MARS: improvements for accessing ECMWF's MARS archive via the Web API - the Dataset parameter is now visible in the Mars Retrieval icon (see also A guide for new users)
  • Macro: mvl_geopotential_on_ml has been updated to avoid the use of deprecated functions

Export Version 4.4.4

External release 2014-02-06

Version 4.4.4-export became available. See the Releases page for download.

Test Version 4.4.4


Introduced 2014-01-22 (Linux desktops, lxab cluster, ecgb)

  • Installed as metview4_new

  • Built with Magics 2.23.0. See the Magics Change History.

  • Built with GRIB_API 1.11.0
  • Built with ODB_API version 0.9.31
  • Built with emoslib 000394
  • Display Window: fixed issue where the Cursor Data panel was not updated when the displayed frame was changed
  • FLEXTRA: fixed issue where running in CET mode failed
  • Meteogram: local meteogram generation now enabled on all platforms (internal to ECMWF)
  • Cross Section: can now plot the result of a Cross Section Data macro call in a Cross Section View (similarly for Average Data, Vertical Profile Data and Hovmoeller Data)
  • Cross Section: small fixes. Now, if a model level to pressure level conversion is required, Interpolate Values is automatically set to Yes. The algorithm for finding an LNSP field to use has become less strict: try first to find a LNSP field with the same date/time/expver of the given ML fieldset. If not found, find the first LNSP field in the fieldset.
  • Observations: fixed unwanted pop-up message about observation grouping
  • Macro: unary functions such as sin and log have been added to netCDF processing, e.g. new_nc = sin(nc). See NetCDF Functions.
  • Macro: automatic generation of a macro from a Map View fixed (previously did not honour the geographic region selected)
  • Macro: macro library function mvl_geolinehas been revised so that its input parameters are more sensible and so that it can work when given a line with the endpoints at the same longitude. Previously the input parameters were left_lon, right_lon, top_lat, bot_lat.

    Now they are lat1,lon1,lat2,lon2 - coordinates of the two end-points of the line in lat/lon. This means that existing macros which call this function will no longer give the correct result unless their code is changed!

  • Macro: the macro which is automatically-generated from the 'Generate Macro' button in the Display Window is now saved to the expected directory
  • Symbol Plotting: the parameter symbol_format is now enabled when table mode is on
  • Wind Plotting: the wind calm threshold parameters are now enabled when the wind calm indicator is off
  • GRIB: fixed the behaviour of the environment variable METVIEW_EXTRA_GRIB_DEFINITION_PATH so that it adds the correct system path to the user's path for GRIB tables
  • User Interface: double-clicking on a PostScript icon now visualises the file rather than opening it in a text editor
  • Build: the configure script now checks whether emoslib has been built with GRIB_API support or not
  • Build: missing .qrc files now in the tarball
  • Build: compilation errors relating to QXmlQuery on Ubuntu fixed

Change of default Metview versions

Done on 2013-12-03 (Linux desktops, lxab cluster only)

  • Command metview now launches metview4
  • Commands metview_new and metview_test now launch metview4_new
  • Command metview_old now launches metview4_old
  • Commands metview3, metview3_test and metview3_old are still available for running Metview 3
  • See Metview at ECMWF for more details

Export Version 4.4.3

External release 2013-11-08

Version 4.4.3-export became available. See the Releases page for download.

User Version 4.4.3

Upgrade 2013-11-05 (Linux desktops, lxab cluster, ecgate)

  • Version 4.4.3 became User Version (command metview4) at ECMWF

Test Version 4.4.3

Introduced 2013-10-16 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new

  • Macro: in the case where an icon-function is given an input definition which contains either an invalid parameter or an invalid value for a parameter, Metview's behaviour was always to reset the definition to its defaults. As this causes unexpected results, the new behaviour is to stop with an error message in this situation.

  • Graph Plotting: changed the default value of Legend from On to Off. This once again allows a legend to be plotted when a Graph Plotting visual definition is used.

Test Version 4.4.2

Introduced 2013-10-15 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new

  • Built with Magics 2.20.2. See the Magics Change History.

  • Built with latest Mars client code
  • Built with GRIB_API 1.11.0
  • Built with ODB_API version 0.9.31
  • Built with netCDF 4.1.2 libraries for HDF support
  • Cross Section, Average, Vertical Profile, Hovmoeller: redesigned these icons so as to have a clearer separation between the responsibilities of the Data icons and the View icons. Possible action required: please see New Cross Section, Average, Vertical Profile and Hovmoeller modules in Metview 4.4.
  • Cross Section, Average views: fixed issues where running in batch mode did not work properly when try to generate multiple plots either within one PostScript file, or between multiple PostScript files.
  • Hovmoeller View: re-introduced Hovmoeller View icon. Added new parameter: Vertical Scaling (Linear or Log).
  • Annotations: new Annotation View icon available. This accepts a Text Plotting icon; in this case it mimics Metview 3's Text View icon. If no Text Plotting icon is passed to it, then it mimics Metview 3's Empty View icon. See Migrating from Metview 3 to Metview 4.
  • Relative Humidity: re-introduced the Relative Humidity icon. When used in Macro, it has been simplified so that it only returns a fieldset, rather than the previous behaviour which was to return a list which included visual definitions. This may require user-changes to Macro code which does something with the result of this module call.
  • Macro: user-defined Macro functions now take precedence over built-in Macro functions of the same name if they are defined directly in the user's macro (not simply in their search path). The previous behaviour was that Metview's own Macro functions would always take precedence.
  • Macro: fixed issue where plotting the result of another module call could fail.
  • Macro: fixed issue where passing a merged fieldset to another module resulted in a temporary file not being deleted.
  • Macro: fixed issue where the function global_attributes(netcdf) was crashing if one of the global attributes was more than 1024 characters.
  • Macro: fixed issue where a command-line call to Metview in batch mode (option -b) failed if the path to the macro script contained whitespace.
  • Macro Editor: indenting a block of text no longer indents empty lines.
  • Visual definition icons: updated all visdef icons to reflect the latest Magics parameters. This is now done automatically from the Magics resource files.
  • Geopoints to Grib: fixed issue where a temporary file generated by the Geopoints To Grib module was not being deleted.
  • Geopoints to Grib: fixed issue where supplying a small Threshold value (< 0.5 degrees) meant that some surrounding points outwith the threshold area, but within 0.5 degrees, were included in the calculations.
  • Data Examiners: fixed an issue where invoking one of Metview's data examiners from the command line (-e option) with a path that contains spaces in it did not work.
  • ODB: Metview's ODB tools can now handle 'double' type ODB columns.
  • Plotting: harmonised the subpage coordinates for the non-geographic views (Cartesian, Cross Section, Average, Vertical Profile). This means that some plots may be slightly shifted on the page.
  • RTTOV: added new functionality for running the RTTOV model from within Metview and visualising the results. We plan to release some documentation on this.
  • Geo View: added new Magics projections - Robinson and  Lambert North Atlantic.
  • NetCDF: enabled '-e netcdf' option on startup in order to start the netCDF examiner on startup, e.g. metview -e netcdf /path/to/netcdf/file
  • Text Plotting: it is now possible to provide finer-grained control over which fields are used in generating a user-defined title which accesses GRIB_API keys. see the Magics Text Plotting page for more details.
  • Layout: fixed issue where setting the page orientation to Portrait did not work; the workaround was to set up user-defined page dimensions - this may no longer work.
  • MARS: when installing Metview on a non-ECMWF machine which has access to a local MARS server, (configure option --enable-mars-access), it is now possible to tell Metview where the MARS configuration files are by setting the new configure option: --with-local-mars-home=/path/to/mars/home.

 

Export Version 4.3.11

External release 2013-09-17

Version 4.3.11-export became available. See the Releases page for download.

User Version 4.3.11

Upgrade 2013-09-17 (Linux desktops, lxab cluster, ecgate)

  • Version 4.3.11 became User Version (command metview4) at ECMWF

Test Version 4.3.11

Introduced 2013-07-08 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new

     

  • Macro: added a vector function to return a vector of sorted indices from a vector:

vector sort_indices(vector)
vector sort_indices(vector, string)
Sorts a vector and returns the sorted indices. The default behaviour is to sort in ascending order unless an alternative comparison function is provided. A second argument consisting of a string can be given: '<' for ascending, '>' for descending order.

  • FLEXTRA: Metview's FLEXTRA modules can now run with 137-level model level data
  • ODB: built with ODB_API version 0.9.31
  • GRIB: built with GRIB_API 1.11.0
  • MARS: rebuilt with the latest MARS client code
  • Magics: rebuilt with latest Magics 2.18.16 (includes an improvement in the legend for marker shading)

Export Version 4.3.10

External release 2013-05-28

  • Version 4.3.10-export became available. See the Releases page for download. Anyone using version 4.3.8 should immediately upgrade to 4.3.10.

Test Version 4.3.10

Introduced 2013-05-28 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new

  • Macro: fixed issue where passing a relative path to a data file was not correctly interpreted by the module which received it
  • Macro: function tolist() now accepts a list as an input type; in this case it simply returns a copy of the input list. This function is normally used for converting a vector into a list, but it is now safe to pass it a list.
  • Macro Editor: fixed issue where dropping a Table Visualiser icon into the Macro Editor did not produce exactly the correct code
  • UI: Macro icons are now allowed as input into icon editors which accept data (GRIB, BUFR, GEOPOINTS and NETCDF) icons. Examples would be a Cross Section Data icon or a Simple Formula icon.

User Version 4.3.9

Upgrade 2013-05-21 (Linux desktops, lxab cluster, ecgate)

  • Version 4.3.9 became User Version (command metview4) at ECMWF

Export Version 4.3.9

External release 2013-05-16

  • Version 4.3.9-export became available. See the Releases page for download. Anyone using version 4.3.8 should immediately upgrade to 4.3.9.

Test Version 4.3.9

Introduced 2013-05-15 (Linux desktops, lxab cluster, ecgate (on 2013-05-16))

  • Installed as metview4_new

  • Macro: fixed a critical issue where non-temporary GRIB files could be deleted. This could occur when passing the result of a merged fieldset (e.g. a = b & c) to an icon-function (e.g. read() using the MARS filtering syntax).

Export Version 4.3.8

External release 2013-05-08

  • Version 4.3.8-export became available. See the Releases page for download.

Test Version 4.3.8

Introduced 2013-05-08 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new

  • Built with Magics 2.18.16 See the Magics Change History.

  • Built with updated Mars client code
  • Built with ODB_API version 0.9.28
  • ODB Data Probe: fixed issue where this was not showing the correct values when the plot was zoomed
  • Macro: fixed issue where temporary GRIB files were sometimes not cleared from the temporary directory
  • Macro: fixed issue where the area selection helper tool did not appear when invoked from a user's Macro-generated dialog
  • Macro: Improved performance when extracting a long list member from a definition variable
  • Performance when handling large numbers of Gaussian grid GRIB fields has been improved
  • Lambert: fixed issue where Metview's built-in macro functions for finding the nearest grid point in a Lambert projection GRIB field failed
  • Macro Editor: changed drag & drop behaviour - when an icon is dropped into a Macro Editor, the generated code is now placed where the drop was aimed (the previous behaviour was to place the code at the text cursor's current position)
  • Macro Editor: improved the layout of code generated when an icon is dropped into the editor; only when the tab settings are set to use spaces instead of tabs (Settings menu)
  • Meteogram: added option to return a 15-day meteogram with climatology. Note that setting Data Selection Type to Latest does not currently function.
  • Grib Examiner: fixed issue where closed instances could stay in memory and consume CPU time
  • Reprojection: fixed issue where the reprojection  module was not working on ecgate
  • Cartesian View: updated the icon graphic used for the Cartesian View
  • Single Column Model:
    • data from CY38R2 now works with the SCM icons
    • icons and tables updated to handle L137 data
    • ensured that the Scm Run icon works when given netCDF files with spaces in their filenames
    • ensured that the Scm Run icon can write its output file to a directory relative to the icon's location
    • fixed issue where error messages were not printed in the log window for the Scm Run icon
    • added level range and value range control per parameter for profile plotting in the Scm Data Editor
    • added step control buttons to the Scm Data Editor
    • added button to the Scm Data Editor to propagate changes to other time steps
    • the Scm Data Editor now saved modified surface data
    • the Scm Data Editor now adjusts its axis tick interval properly to the value range
    • the Scm Data Editor's plot is now updated if a data point is dragged out of the plot frame
    • option added to the Scm Visualiser icon to allow the plotting of grid lines
    • the Scm Visualiser icon now plots a pressure axis on the right-hand side when the vertical axis is in model levels
    • the Scm Visualiser icon now allows user-defined min/max value ranges for the matrix plotting mode
  • Installation: fixed small issue detecting the installed Magics version

Export Version 4.3.7

External release 2013-03-11

  • Version 4.3.7-export became available. See the Releases page for download.
  • NOTE: Requires Magics++ version 2.18.2 - see the Magics Releases page.

User Version 4.3.7

Upgrade 2013-03-11 (Linux desktops, lxab cluster, ecgate)

  • Version 4.3.7 became User Version (command metview4) at ECMWF
  • Note: the user version was reverted to 4.3.3 on 2012-03-12 because of incompatibilities with a particular plot. This is under investigation.

Test Version 4.3.7

Introduced 2013-02-26 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new

  • Built with updated Magics library. See the Magics Change History.
  • GRIB Filter icon now saves the MARS parameter short name (e.g. 't') instead of the number (e.g. 130)
  • Fixed issue where the legend for coloured wind in the Grib Vectors icon became corrupted when moving between fields
  • Layer metadata histogram in the Display Window once again allows the use of the current visdef
  • Improved logging (only of interest to the maintainer)
  • Fixed instability issue in the GRIB Examiner (hotfix applied 2013-03-08)

Test Version 4.3.6

Introduced 2013-02-19 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new

  • Built with Magics 2.18.13 See the Magics Change History.
  • Fixed issue where netCDF matrix plotswith a vertical date/time axis were empty
    • This also fixed the Forward setting of the Hovmoeller plots
  • Fixed issue in the Velocity Potential / Stream Function module where the parameters in GRIB 2 data were not being correctly identified
  • The SCM Visualiser now allows user-defined legend titles
  • The colour scales in the Profile option in the SCM Visualiser have been improved
  • New function added to The Metview Macro Library - mvl_geoline. This function can be used to draw geographical lines on a map regardless of projection

Test Version 4.3.5

Introduced 2013-01-28 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new

  • Built with Magics 2.18.9 See the Magics Change History.

  • Support for ECMWF Single Column Model data - new facilities to
    • examine and edit (modify) an input netCDF file
    • define a namelist file for SCM
    • run SCM using a given executable, input netCDF file and namelist
    • visualise the output data and compare runs
    • see the short tutorial: The SCM Interface in Metview - Tutorial

  • Macro: added new function dimension_names(netcdf). Description:

    list dimension_names(netcdf)
    returns a list of the dimension names for the current netCDF variable.

  • Improved efficiency (significantly) of Average Data icon
  • Improved HTML-style text in interactive (Qt) plotting
  • Fixed issue where DivRot module was failing with ECMWF GRIB 2 data
  • Fixed issue where Table Visualiser and NetCDF Visualiser icons could become corrupted
  • Fixed issue where the area selection button in the FLEXTRA Prepare icon did not work
  • Update: added a default y-axis title on Cross Section, Average Data and Vertical Profile plots
  • Update: added new parameter to the NetCDF Visualiser:Netcdf Dimension Setting. This parameter allows the slicing of multidimensional variables. For instance, if there is a variable with dimensions (time, level) then it is possible to plot just the values at a specific time by setting this parameter to, for example, time/1800. Note that this parameter's syntax has not been finalised.
  • Fixed issue where the font size on the line numbering area of the Macro Editor was inconsistent
  • Updated list of WMO stations used by the Stations icon

 

Export Version 4.3.4

External release 2012-10-29

  • Version 4.3.4-export became available. See the Releases page for download.
  • NOTE: Requires Magics++ version 2.18.1 - see the Magics Releases page.

Test Version 4.3.4

Introduced 2012-10-29 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new

  • Built with Magics 2.18.1 See the Magics Change History.

  • Fixed issue where ObsFilter was not working with Level=Occurrence
  • Fixed issue where Cross Section was producing an empty plot when transect line was of constant longitude
  • Fixed issue where Cross Section was producing an empty plot when given data in model levels with LNSP
  • Fixed issue where the Data Examiners would remain active after their Metview session had been closed, occasionally consuming large amounts of CPU time
  • Fixed issue where the Display Window crashed if the metadata sidebar was open when plotting grid values
  • Reorganised the sidebar's content in the Display Window. The Layers tab now only contains the layer list and a new tab called Data was added for the layer data. By selecting the Data tab users are able to see metadata and data values associated with the selected layer.
  • New feature: added the ability to shade the area between two curves with the Input Visualiser (Input Plot Type = XY Area)

  • New feature: ODB data probe. From the Display Window, select the Data tab, then click the Values button to show the data values for the current plot area. An icon at the bottom-left of this tab activates the data probe, which is a movable on-screen probe; as it is positioned over a data point, the corresponding row in the data table is highlighted. Conversely, if a row in the data table is highlighted, the data probe is automatically positioned over the corresponding point on the map.

 

  • New feature: enabled ODB Visualiser to save additional columns to the resulting ODB. A parameter called ODB_METADATA_VARIABLES was added to the ODB Visualiser. The columns specified here will be added to the ODB Visualiser's output on top of the lat/lon/value etc. columns. These extra columns can then be examined in the Display Window's Data/Values tab.

  • New feature: added show/hide columns option to the Data tab of the ODB Examiner
  • New feature: added expression support for column variables in the ODB Visualiser. Previously the column variables in ODB Viusaliser could strictly take column names. Now arbitrary ODB expressions/functions can be used for them, e..g. by setting ODB_VALUE_VARIABLE to an_depar-fg_depar will result in plotting of the difference between the analysis and first guess departures.
  • Alphabetically sorted columns in the Data tab of the ODB Examiner
  • Plotting speed has been improved in the interactive Display Window

  • New environment variable: METVIEW_EXTRA_GRIB_DEFINITION_PATH. Metview now understands a new environment variable which users can use to specify a directory where custom GRIB_API definition files are stored. METVIEW_EXTRA_GRIB_DEFINITION_PATH should be set before starting Metview.

  • New Macro function: grib_get() for the efficient retrieval of multiple GRIB keys from a fieldset. Description:

list grib_get(fieldset, list)
list grib_get(fieldset, list, string)

For the efficient retreival of multiple GRIB keys from a fieldset. The keys are provided as a list for the second argument; by default they will be retreived as strings, but their type can be specified by adding a modifier to their names, following the convention used by grib_ls where the key name is followed by a colon and then one or two characters which specify the type (s=string, l=long, d=double, la=long array, da=double array). For example, the key 'centre' can be retreived as a string with 'centre' or 'centre:s', or as a number with 'centre:l'. The result is always a list of lists; by default, or if the optional third argument is 'field', the result will be grouped by field, containing one list per field, each of these lists containing one element per key; if the optional third parameter is 'key', the result will be grouped by key, containing one list per key, each of these lists containing one element per field. Example - the following lines of Macro code on a particular 6-field fieldset:

print(grib_get(data, ['editionNumber', 'centre',   'level', 'step'], 'field'))
print(grib_get(data, ['editionNumber', 'centre:l', 'level', 'step'], 'key'))

produces this output:

[[1,ecmf,1000,0],[1,ecmf,500,0],[1,ecmf,100,0],[1,ecmf,1000,48],[1,ecmf,500,48],[1,ecmf,100,48]]
[[1,1,1,1,1,1],[98,98,98,98,98,98],[1000,500,100,1000,500,100],[0,0,0,48,48,48]]

User Version 4.3.3

Upgrade 2012-09-18 (Linux desktops, lxab cluster, ecgate)

  • Version 4.3.3 became User Version (command metview4) at ECMWF

Test Version 4.3.3

Introduced 2012-09-13 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new

  • Built with Magics 2.16.2 See the Magics Latest News.

  • The Macro function read() can now read a Macro file, returning a list of strings, one per line of text. This is the same behaviour as already existed for reading general ASCII text files.
  • Improved the Display Window's Cursor Data for very small values (if the values are very small, it switches to scientific notation).
  • Installation: fixed an issue where a custom startup script name was causing the build to fail in the scripts directory

  • NOTE: this is the version that will become the user version at ECMWF on Tuesday 18th September 2012, 09:00 GMT.

Export Version 4.3.2

External release 2012-08-14

  • Version 4.3.2-export became available. See the Releases page for download.
  • Built with latest Mars client code
  • Installation: issue with detecting the Magics library resolved
  • Installation: issue with building Qt modules on certain systems (e.g. Ubuntu 12.04) resolved
  • NOTE: Requires Magics++ version 2.16.1 in order to build the Qt/Magics-based plotting module - see the Magics Releases page

Export Version 4.3.1

External release 2012-08-06

  • Version 4.3.1-export became available. See the Releases page for download.

Test Version 4.3.1

Introduced 2012-08-06 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new

  • Built with Magics 2.15.8

  • New Macro function sort(vector, string) returns a sorted version of the given vector. If no second argument is given, the result will be sorted in ascending order; otherwise, a second argument consisting of a string can be given: '<' for ascending, '>' for descending order. See Vector Functions.

  • Macro: fixed issue when reading floating-point netCDF attributes - there had been occasions where very large numbers had some digits cropped . This only affected attributes which were floating point, and not actual data values.

  • Macro Editor: 'find/replace' actions now wrap around

Test Version 4.3.0

Introduced 2012-07-16 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new
  • Built with Magics 2.15.7
  • New module: Grib Vectors
    - similar to Metview 3's Vectors module. The purpose is to tell Metview to plot given pairs of fields as vectors. Also allows for the colouring of the arrows by a third field.
  • Improved automatic recognition of vector fields, including wave fields
  • New module: Opera Radar Filter
    - new module for the purpose of reading OPERA radar BUFR messages and converting the data to geopoints format.
  • ObsFilter module: extended level filter to work with arbitrary coordinate descriptors.
    The level filter in ObsFilter has so far only allowed surface or pressure level/layer selection. Now two new options were added to the level filter so that it could work for any kind of coordinate descriptors (e.g. height, satellite channel etc). These two new
    options are follows:
    - Descriptor Value: If Level is set to Descriptor Value then ObsFilter performs level filtering according to the descriptor specified in Level Descriptor. The level value is taken from parameter First Level.
    - Descriptor Range: If Level is set to Descriptor Range then ObsFilter works similarly but selects the first available level in the specified range. The level range is taken form parameters First Level and Second Level.
  • New macro function: filter(vector, vector)
    - takes two vectors, and returns a new vector containing only the values of the first vector where the second vector's values are non-zero and non-missing. See Vector Functions.
  • Plotting: added parameter LEGEND_TITLE_ORIENTATION to the Legend icon
    - Horizontal/Vertical
  • Macro: added optional 'resize' parameter to set_values(fieldset, vector)
    - if the user wants to create a new fieldset from a template, they may wish to change the number of values. The default behaviour is to produce an error if the input fieldset and vector have different numbers of values. If, however, a third parameter (set to the string 'resize') is passed to the function, the resulting fieldset will instead be resized to have the same number of values as the input vector.
  • Geo To Grib module: fixed issue in determining the size of the resulting grid. Also more checks to ensure the consistency of the requested grid (e.g. if grid resuolution matches the size of the domain)
  • Fix in stdev(fieldset) macro function (inherited from Mars code)
  • Macro editor: improved visual display of whitespace characters
    - available from the Settings | Tabs menu
  • Fix in the setting of a plot area in Lambert projection
  • Updated mvl_ml2hPa() to properly encode levels < 1 hPa
  • Removed code for handling computations with GRIB fields stored in polar
    stereographic grids. This does not affect the plotting of data onto a polar stereographic map.
  • Smaller fixes and improvements

Test Version 4.2.3

Introduced 2012-04-02 (Linux desktops, lxab cluster; not ecgate)

  • Installed as metview4_new
  • Rebuilt with latest Magics 2.15.1
  • Average View icon added
  • ODB Filter does not fail if the query runs correctly but returns no data
  • GRIB Examiner has a new tab to show the data values

Update 2012-04-04 (Linux desktops, lxab cluster; not ecgate)

  • Fixed issue in stdev(fieldset) macro function (rebuilt with updated libMars). This was an issue which would only occur rarely and would produce a massive, obviously wrong, number as a result.

Test Version 4.2.2

Introduced 2012-03-13 (Linux desktops, not lxab cluster yet; not ecgate)

  • Installed as metview4_new
  • Rebuilt with GRIB_API 1.10.1, odb_api 0.9.12, Magics 2.15.1 and the latest Mars client code.
  • Uses latest Magics++ projection code using proj4 to allow more projections
  • New icon: Geographical View. This is a replacement for the Map View icon and includes the new projections available in Magics. It also incorporates a simpler overlay control option. Map View is still available, but will not be developed further.
  • Added Vertical Profile Data module
  • Added Cross Section View and Vertical Profile View modules (still some development work to be done)
  • New FLEXTRA module for trajectories. See tutorial on the Tutorials page for more details.
  • Added NetCDF_XY_Points mode to NetCDF Visualiser icon
  • ASCII Table Reader can now parse meta-data if it is supplied as lines in the form PARAM1=VALUE1 PARAM2=VALUE2 PARAM3=VALUE3.
    New macro functions:
    • list metadata_keys(table)
      returns a list of all the available meta-data keys (list of strings)
    • string metadata_value(table, string)
    • list metadata_value(table, list)
      given a key (or list of keys), returns the corresponding value(s) from the table's meta-data. For any key that does not exist in the meta-data, a 'nil' variable is returned. If there is no meta-data for the table, then 'nil' is returned.
  • New macro functions:
    • number or list find(list, any)
      Searches the given list for an item and returns the index of the first occurrence of it. If an optional third argument is given as the string 'all', then a list of the indexes of all occurrences of the item is returned. In both cases, if the item is not contained
      in the list, nil is returned.
    • list unique(list)
      Returns a list of the unique elements in the input list.

    • vector vector(list)
      Returns a vector containing the numeric elements of the input list. Any
      'nil' list elements are converted to vector_missing_value. Any other
      non-numeric elements will cause an error. If the input list is empty, the
      function returns nil.

    • global_attributes(netcdf)
      Returns a definition variable holding the netcdf's global metadata

  • Macro function values(netcdf) has a new mode to allow more powerful access to data
    New syntax: values(netcdf, list) where list is a list with the same number of elements as the number of dimensions of the current netCDF variable. The elements (except one) should be numbers, specifying the indexes (1-based) into the respective
    dimensions from where the value(s) are to be taken. If all elements are numbers, then they simply specify the coordinates for a single value (returned as a single-value vector).
    Optionally, one of the elements can be set to the string 'all'; in this case, all the values from that dimension are returned in a vector. For example, if the current netCDF variable is defined with 3 dimensions: Q(time, region, exp) then we can obtain the values for all times, for the second region and the fifth exp with this syntax: v = values(nc, ['all', 2, 5]).
  • Added optional third parameter to parse() function
    The Macro parse() function now accepts an optional third parameter which specifies the data type that the result should be in. Currently it only accepts 'string', which means that the result will be a list of strings, with no 'intelligent conversion' performed. This can be
    useful, for instance, when a string such as '4/05/6' is parsed and we wish to preserve the full string '05'.
  • List macro functions now work between dates and lists,
    e.g. a = date + list # 'list' is a list of numbers
  • List-list macro operators now return nil if the two input lists have different numbers of elements. The previous behaviour was to issue an error message and stop the macro.
  • Macro function values(netcdf) can now handle 'ncChar' string variables
  • Layers tab now has 2 modes: 'Layers' and 'Meta-data'
  • Improved meta-data in Layers tab
  • Improved cursor data
  • Improved page layout
  • Bufr Picker can now pick ALL values related to the innermost coordinate. The innermost coordinate value can now be given as "ALL" in order to pick all corresponding values.
  • Fix in ObsFilter to handle non-compressed multisubset msgs where delayed descriptor counts varied from subset to subset.

Test Version 4.1.5

Introduced 2012-02-01 (Linux desktops, lxab cluster; not ecgate)

  • Installed as metview4_new
  • Rebuilt with GRIB_API 1.10.0, odb_api 0.9.9, latest Mars client and Magics 2.14.10

Introduced 2012-02-20 (Linux desktops, lxab cluster; not ecgate)

  • Rebuilt Mars client with latest GRIB_API 1.10.0

User Version 4.1.3

Upgrade 2011-11-28 (Linux desktops, lxab cluster; not ecgate)

  • Version 4.1.3 became User Version at ECMWF

Test Version 4.1.3

Update 2011-11-24

  • Rebuilt with Magics 2.14.7

Export Version 4.1.3

External release 2011-11-21

  • Version 4.1.3-export became available

Test Version 4.1.3

Introduced 2011-11-23 (Linux desktops, lxab cluster; not ecgate)

  • Installed as metview4_new
  • Data histogram available in the Display Window's 'Data Layer' tab
  • Cursor data in the Display Window shows both scaled and unscaled grid point values
  • The standard Mars client has been updated to the version which can handle ODB data. This makes the specialised Mars/ODB client redundant (it is still available for now though)
  • Fixed BUFR code to work with non-compressed multisubset BUFR messages
  • Enhanced BUFR code to work with NCEP "PrepBUFR" files
  • Fixes in ASCII table-reading code
  • Fix in setoutput() Macro function

Export Version 4.1.2

External release 2011-11-04

  • Version 4.1.2-export became available

User Version 4.1.2

Upgrade 2011-10-26 (Linux desktops, lxab cluster; not ecgate)

  • Version 4.1.2 became User Version at ECMWF

Test Version 4.1.2

Introduced 2011-10-19 (Linux desktops, lxab cluster; not ecgate)

  • Installed as metview4_new
  • Major update, including the following changes:

Plotting

    • Added basic page layout to Macro (multiple plots on a single page)
    • Exporting a plot now allows a user-selected range of pages
    • New set of Visualiser icons available from the 'Modules (Plotting)' icon drawer. These replace the 'Manager' icons which were in an earlier development release. The purpose of these icons is to enable the visualisation of certain data types which do not normally carry enough meta-information to plot them, or which can be plotted in various ways (e.g. in geographical or Cartesian space, as a matrix or as points). The supported data types are:

NetCDF - NetCDF files
ODB - ODB databases
Table - ASCII tables (e.g. CSV files)
Input - lists of coordinates and values

WMS

When zooming in a plot with a WMS layer, a new WMS request is issued in order to ensure optimal image quality for the new area

Other

    • On-screen font size issue fixed
    • Uses latest Magics++ features including updated coastlines and new legend mode: histogram

Display Window

    • Plots can be resized using controls in the toolbar. Note that this is a purely graphical scaling; plots are not recomputed.
    • Redesigned cursor data which now works with GRIB fields, NetCDF fields and ODB data
    • Faster interactive graphics rendering, noticeable mainly in the magnifier
    • New "Layer Data" tab for layer meta-data

ODB

    • Complete change to ODB interface in Metview for improved usability - old ODB icons will not be visible. Please see the revised ODB tutorial for information on the new icons.
    • Macro: odb_filter() and retrieve_odb() return 'nil' if no data was found
    • See also the relevant entries in "Data Examiners"
    • MARS-ODB client available

Macro

    • Can now read ASCII table files: use the Table Reader icon to help define how the file is read. Available functions are:

read_table() - read a file into a 'table' variable
count() - return the number of columns
name() - returns the name of the indexed column
values() - returns a vector or a list of strings for the column
specified by index or name

  • Renamed various Macro functions for consistency when extracting or setting arrays of values in various data types. The original versions still work, but issue a warning. All these functions work with vectors for efficiency. The list of deprecated functions and the new versions is:

fieldset functions:
gridvals->values, gridlats->latitudes, gridlons->longitudes, set_gridvals->set_values.
geopoint functions:
date->dates, level->levels, latitude->latitudes, longitude->longitudes, value->values, value2->value2s, set_latitude->set_latitudes, set_longitude->set_longitudes,
set_level->set_levels, set_date->set_dates, set_time->set_times, set_value->set_values, set_value2->set_value2s.
table functions:
value->values.
odb functions:
value->values.

    • New Macro function: number(string) - converts a string into a number; if a string cannot be converted into a number, then  zero is returned. Example: a = number('123.4')
    • Temporary files are now cleaned more effectively for ODB, geopoints and BUFR data
    • New function waitmode(), mainly useful for debugging: determines whether Macro waits immediately for asynchronous (icon-function) function calls (1) or not (0 = default). Returns the mode's previous value.
    • New Macro library function mvl_create_netcdf_2d()

Macro Editor

    • Program | Run Options... for more debugging options:
      • highlight current execution line
      • pause between line executions
      • wait for asynchronous function calls
      • choose a different run mode
    • Now detects and warns if a file has been externally modified

Data Examiners

    • New NetCDF data examiner (right-click | examine)
    • New geopoints data examiner (right-click | examine)
    • Added sorting to the Data tab of the ODB Examiner. Sorting can be enabled by clicking on any of the data column headers but it is only available if no data blocks are used by the ODB Examiner. By default for more than 10,000,000 data items to show, the ODB Examiner splits the data into individual blocks each having less than 10,000,000 items - this limit is configurable from the 'Settings' menu.
    • Fixed issue when displaying int values in the Odb Examiner
    • Added search facilities to all data examiners

New Module 'BUFR Picker'

    • Provides users with better access to BUFR satellite data. Users can define several coordinate descriptors (with given coordinate values), thus providing access to parameters within the given coordinates.
    • Temporary documentation can be found in /home/graphics/cgx/docs/mvug-bufr-picker.pdf

Geo To Grib Module

    • Added new interpolation methods to determine how points are weighted according to their distance from the target point:
      • Reciprocal - default, and the same as in previous versions:
if( dist == 0 )
	return grid_value(); //-- Here the point is on the Grid
weight = 1/dist;

 

    • Exponential Mean - note the special case where Tolerance is zero:
if ( Tolerance != 0 )
	weight = exp(-(dist/(pow(Tolerance,2))));
else
	weight = dist ? 1 : 0;

 

    • Exponential Sum - same as Exponential Mean, but the final value is not divided by the total weight; when Tolerance is zero, this mode will compute the number of source points located at each target point.

WMS

    • Added preview to the plain editor mode of the WMS Client
    • WMS client editor now only accepts CRSs with a valid bounding box for WMS 1.3.0
    • Added proper handling for percent encoding in URLs
    • The WMS Client can now handle fractional ISO8601 dates (e.g. 1991-01) appearing in the TIME dimension
    • See also the relevant entries in "Plotting"

Other

    • Re-introduced VelStr icon (Velocity Potential / Stream Function)
    • Area selection dialog can now be used to select a single point

Support libraries

    • The latest Mars client, emoslib 000390 and GRIB_API 1.9.10
    • Magics 2.14.1

User Version 4.0.8

Upgrade 2011-10-05 (all platforms)

  • Version 4.0.8 became User Version at ECMWF

Test Version 4.0.8

Introduced 2011-09-13 (all platforms)

  • Installed as metview4_new
  • Rebuilt with latest Mars client code, GRIB_API 1.9.10 and emoslib 000390

Test Version 4.0.7

Introduced 2011-06-20 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new
  • Macro functions pressure(), thickness(), vertint() and univertint() updated to work with GRIB 2 data
  • Built with Magics++ 2.12.10

Update 2011-07-14

  • New macro library function mvl_geopotential_on_ml() for computing geopotential on model levels. Example usage:
  • r = (date: -1, time: 12, levtype: "ml", grid: [1.5,1.5])
    T = retrieve(r,levelist: [1,"to",91],param: "t")
    q = retrieve(r,levelist: [1,"to",91],param: "q")
    zs = retrieve(r,levelist: 1,param: "z")
    lnsp = retrieve(r,levelist: 1,param: "lnsp")
    z_ml = mvl_geopotential_on_ml(T, q, lnsp, zs)

Update 2011-07-18 (ecgate only)

  • Rebuilt Qt libraries with antialiasing support. This results in a much nicer user interface for all Qt-based modules in Metview 4 (e.g. the data examiners, the Display Window and the Macro editor).

Export Version 4.0.6

External release 2011-06-17

  • Version 4.0.6-export became available

User Version 4.0.6

Upgrade 2011-06-06 (all platforms)

  • Version 4.0.6 became User Version at ECMWF

Update 2011-06-09

  • New macro functions sum(vector) and mean(vector). Return either the sum or the mean of all non-missing values in their input vectors. If all values are missing, then nil is returned.
  • Fix in set_gridvals() function when fieldset contains multiple fields
  • Note: these updates were applied directly to version 4.0.6 (currently metview4 and metview4_new)

Update 2011-06-14

  • List functions now available include unary operators such as abs(),
    cos(), etc and binary operators such as +, -, >, min, etc. These are the
    same set of basic operators and functions that are available for fieldsets,
    geopoints, numbers and vectors. Binary operators between two lists
    will fail if the lists contain different numbers of elements; otherwise,
    the result will be a new list, where each element is the result of
    applying the operator to each of the corresponding elements in the
    input lists. List elements can be of any type, as long as it is legal
    to perform the operation on elements of that type.
    Lists are not recommended for computations with many (hundreds) of values;
    for this, the vector data type is significantly more efficient.

    Examples of the new list operations:

    a = [1,2,3]
    b = [4,1,6]
    c = [|1,2,3|, |4,5,6|, [7,8,9]] # vector,vector,list
    d = [10, 20, 30]
    print (a + b) : output is [5,3,9]
    print (max(a,b)) : output is [4,2,6]
    print (max(a,2)) : output is [2,2,3]
    print (a - 5) : output is [-4,-3,-2]
    print (sqrt(b)) : output is [2,1,2.44948974278]
    print (c + 10) : output is [|11,12,13|,|14,15,16|,[17,18,19]]
    print (c + d) : output is [|11,12,13|,|24,25,26|,[37,38,39]]

    The complete list of operators is: +,-,/,*,^,>,<,>=,<=,=,<>,and,or,
    mod,div,max,min,neg,not,sgn,int,log10,log,exp,sqrt,sin,cos,tan,asin,acos,
    atan,abs.

Test Version 4.0.6

Introduced 2011-05-25 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new
  • Uses latest Mars client code, GRIB_API 1.9.10 and emoslib 000382
  • Built with Magics++ 2.12.8
  • Small updates to the WMS client module

Update 2011-06-03

  • Rebuilt ODB modules using latest ODB libraries (CY37R3.001 and 0.8.5)

Update 2011-06-06

  • Added ODB to the command-line version of the data examiners, invoked with:
  • metview4 -e odb /path/to/ODB-database

User Version 4.0.5

Upgrade 2011-05-16 (all platforms)

  • Version 4.0.5 became User Version at ECMWF

Test Version 4.0.5

Introduced 2011-05-10 (Linux desktops, lxab cluster, ecgate)

  • Installed as metview4_new
  • Uses latest Mars client code, GRIB_API 1.9.10 and emoslib 000382
  • Built with Magics++ 2.12.7
  • Fixed issue in Potential Temperature module which affected computations involving multiple fields

Update 2011-05-12

  • New 'standalone' data examiner mode - to examine a data GRIB or BUFR data file, use the command syntax:
  • metview4 -e grib /path/to/grib/file
  • metview4 -e bufr /path/to/bufr/file

User Version 4.0.4

Upgrade 2011-04-06 (all platforms)

  • Version 4.0.4 became User Version at ECMWF

Export Version 4.0.3

External release 2011-03-24

  • Version 4.0.3-export became available

Test Version 4.0.3

Introduced 2011-03-24 (Linux desktops)

  • Rebuilt with latest Mars client, GRIB_API 1.9.9 and emoslib 000381 for GRIB 2 transformation / interpolation.
  • Menory leak fixed in macro function datainfo().

Test Version 4.0.2

Introduced 2010-12-08 (Linux desktops, lxab cluster ; ecgate 2011-01-06)

  • Installed as metview4_new
  • Uses latest Mars client code
  • Uses a snapshot version of GRIB_API 1.9.7

Update 2011-01-06(Linux desktops, lxab cluster, ecgate)

  • Large expansion of the vector macro data type:
  • In functions such as gridvals() which return a large list of numbers, the
    use of the vector data type is much more efficient. As the accessing of
    vector elements is identical to the accessing of list elements, it was
    decided to change a number of macro functions which currently return
    a list of numbers to return instead a vector. This also prompted a
    development of the functions available on vectors.

    New vector functionality
    Vector functions now available include unary operators such as abs(),
    cos(), etc and binary operators such as +, -, >, min, etc. These are the
    same set of basic operators and functions that are available for fieldsets,
    geopoints and numbers.

    New macro functions
    The following are new macro functions:

    • set_gridvals(fieldset, vector) - takes a vector or a list of vectors;
      if a single vector, then it is applied to all fields; if a list of vectors, then there must be the same number of vectors as there are fields.
    • gridlats(fieldset), gridlons(fieldset) - return vectors.
    • tolist(vector) - convert a vector to a list of numbers (missing values become nil)

Revised functions
In addition, the following existing functions were modified in order
to return or accept vectors instead of lists:
gridvals(), grib_get_long_array(), grib_get_double_array(), average_ew(), average_ns(), level(geopoints), latitude(geopoints), longitude(geopoints), value(geopoints), value2(geopoints), value(odb).The following functions on geopoints now accept either a list of
numbers or a vector as input:
set_latitude(), set_longitude(), set_level(), set_date(), set_time(),
set_value(), set_value2().

Missing values
New functions are available for converting missing values:
bitmap(vector,number) and nobitmap(vector,number).
A new global variable, vector_missing_value, now exists for the purpose
of testing vector elements. Missing values derived from fieldsets and
geopoints variables are honoured.

Concatenation
Can concatenate 2 vectors, e.g. c = a & b
Can append a number to a vector, e.g. v = v & 7

Building a vector
The most efficient way to build a vector is to pre-allocate and then fill:

a = vector(num_elements)
for i = 1 to num_elements do
  a[i] = i
end forSimple vector definition:
a = |1, 2, 3, 4, 5|

Update 2011-01-17 (Linux desktops, lxab cluster, ecgate)

  • More expansion of the vector macro data type:
  • Macro function values(netcdf) now returns a vector.
  • The full set of ways to access a subset of a list was added to the vector data type in Macro, ie vector[i], vector[first, last], vector[first, last, step].
  • Also, a additional fourth parameter is now accepted (for vectors only): if supplied, it specifies how many elements to extract from the current step. For example, while vector[1, 20, 5] will create a new vector with elements from these indexes: 1,6,11,16,
    vector[1, 20, 5, 2] will create a new vector with elements from these indexes: 1,2,6,7,11,12,16,17. If a vector is actually holding data from a rectangular structure, this form could be used to extract a 'sub-area'.
  • Additionally, it is now possible to assign a vector to an indexed position in another vector, for example: v[4] = |99,99,99|. In this example, elements 4, 5 and 6 of v will be replaced.

Update 2011-01-31 (Linux desktops, lxab cluster, ecgate)

  • ODB examiner has a new tab which enables the inspection of data values
  • Improved performance of scrolling large message lists in GRIB and BUFR examiners
  • Small fixes in the Macro editor
  • Rebuilt with emoslib 000377, new GRIB_API 1.9.7 and Mars code for GRIB interpolation

Update 2011-02-07 (Linux desktops, lxab cluster, ecgate)

  • Updated with the latest emoslib 000377 and Mars code
  • WMS client editor redesigned and improved in 'plain mode'
  • Macro/fortran interface issue resolved for 64-bit systems
  • Magics errors now being reported when run in batch mode

Update 2011-02-09 (Linux desktops, lxab cluster, ecgate)

  • New macro function: fieldset indexes(fieldset, vector)

    Given a fieldset and a vector of target values, this function finds
    for each gridpoint the indexes of the nearest values in the target.
    Indexes are zero-based and will always have a minimum value of zero
    and a maximum value equal to the index of the last element of the
    target vector. A value lying between two values in the vector will
    use the index of the nearest value; if equidistant, then the higher
    value is used.
    The input vector MUST be sorted in ascending order.
    Example: if these are our inputs:
    GRIB: 10,20,30,40    VECTOR: | 5,10,15,20,25,30 |
          15,25,35,45
           8, 4,20,11
    
    then our output would be a new GRIB, with values equal to the input values' positions in the input vector:
    GRIB: 1,3,5,5
          2,4,5,5
          1,0,3,1
  • Macro function nearest_gridpoint()now accepts vector locations.

    New mode:
    vector or list nearest_gridpoint(fieldset, vector, vector)
    Updated function description:
    Returns the value of the nearest point to a given location in each field
    of a fieldset. If a list is given, it must contain two numbers -
    latitude and longitude. If two numbers or vectors are given, the first
    is the latitude(s), the second the longitude(s).The field must be a lat-long
    field. If the fieldset has only one field, a number or vector is returned;
    otherwise a list is returned. Where it is not possible to generate a sensible
    value due to lack of valid data in the fieldset, a 'nil' is returned in
    the case of a single coordinate, or vector_missing_value in the case of
    a vector.
    A performance test which extracted 20000 points from a set of 6 fields
    showed that the vector version took 0.27u/0.01s CPU, whereas performing
    a loop to extract the same points took 46.02u/1.63s CPU.

Update 2011-03-01 (Linux desktops, lxab cluster; ecgate 2011-03-02 )

  • New macro functions: minvalue(vector) and maxvalue(vector). Both functions return a number; if there are no valid values in the input vector, then nil is returned.
  • Passing vector arguments to inline C/Fortran code in a macro is now much more efficient for large data sets.
  • The Reprojection module has been re-introduced (the module was never documented - please ask the Visualisation Section for more information on it).
  • The resulting ODB of the ODB/SQL query in the ODB Manager icon can now be examined and saved.
  • Certain icons have a "save" item in their context menu. This brings up a file selection dialog of which initial directory is now set to the folder of the icon.
  • The WMS Client can now be used in macro via the wmsclient() macro command.
  • Rebuilt with GRIB_API 1.9.8 and the latest Mars client code.

User Version 4.0.1

Upgrade 2010-12-07 (all platforms)

  • Version 4.0.1 became User Version at ECMWF

Test Version 4.0.1

Introduced 2010-12-06 (Linux desktops, lxab cluster and ecgate)

  • Installed as metview4_new
  • Export version available
  • Display Window has a new section to display meta-data about a layer; currently only used for WMS layers
  • Various fixes in WMS client
  • New macro function grib_set_string()
  • Added 'Insert Code Template' functionality to Macro editor
  • Macro editor can now be used to edit and run shell commands
  • DivRot module been partially re-written, and now has a new mode, UVWIND, macro function uvwind(), for more efficient computation of U/V from VO/D
  • Improvements to ODB interface
  • Various fixes
  • Some small compilation issues fixed

Version 4.0.0

Introduced 2010-09-27 (Linux desktops, lxab cluster and ecgate)

  • First official release of Metview 4
  • Export version available
  • This version is for evaluation, and we value any feedback
  • It is not intended for operational use

 


  • No labels