All Projects → ERA-URBAN → Netcdf2littler

ERA-URBAN / Netcdf2littler

Licence: apache-2.0
An application to convert NetCDF files to the Little-R format. The Little-R format is the accepted input format for the WRF data assimilation system (WRFDA) preprocessor (obsproc). Currently only the conversion of synoptical weather stations are supported by this application.

Programming Languages

fortran
972 projects

Projects that are alternatives of or similar to Netcdf2littler

mo netcdf
Modern fortran netcdf wrapper
Stars: ✭ 15 (+200%)
Mutual labels:  netcdf
Netcdf C
Official GitHub repository for netCDF-C libraries and utilities.
Stars: ✭ 336 (+6620%)
Mutual labels:  netcdf
Netcdf4 Python
netcdf4-python: python/numpy interface to the netCDF C library
Stars: ✭ 510 (+10100%)
Mutual labels:  netcdf
Jalali Moment
Display, parse, manipulate, validate and convert jalali (Persian, Khorshidi, Shamsi) or Gregorian (Miladi) dates and times.
Stars: ✭ 264 (+5180%)
Mutual labels:  convert
Cashify
💸 Lightweight currency conversion library, successor of money.js
Stars: ✭ 329 (+6480%)
Mutual labels:  convert
Breakdance
It's time for your markup to get down! HTML to markdown converter. Breakdance is a highly pluggable, flexible and easy to use.
Stars: ✭ 418 (+8260%)
Mutual labels:  convert
mooda
Module for Ocean Observatory Data Analysis - Python package
Stars: ✭ 17 (+240%)
Mutual labels:  netcdf
Ason
[DEPRECATED]: Prefer Moshi, Jackson, Gson, or LoganSquare
Stars: ✭ 777 (+15440%)
Mutual labels:  convert
Laravel Glide
Easily convert images with Glide
Stars: ✭ 333 (+6560%)
Mutual labels:  convert
Canmatrix
Converting Can (Controller Area Network) Database Formats .arxml .dbc .dbf .kcd ...
Stars: ✭ 486 (+9620%)
Mutual labels:  convert
Datacube Core
Open Data Cube analyses continental scale Earth Observation data through time
Stars: ✭ 285 (+5600%)
Mutual labels:  netcdf
Korkut
Quick and simple image processing at the command line. 🔨
Stars: ✭ 310 (+6100%)
Mutual labels:  convert
Iris
A powerful, format-agnostic, and community-driven Python package for analysing and visualising Earth science data
Stars: ✭ 418 (+8260%)
Mutual labels:  netcdf
jog
Command line tool to view structured(JSON) log like 'tail -f', with filtering by log level and time range
Stars: ✭ 16 (+220%)
Mutual labels:  convert
Imagemagick
🧙‍♂️ ImageMagick 7
Stars: ✭ 6,400 (+127900%)
Mutual labels:  convert
ConveRT-pytorch
ConveRT Paper Pytorch Implementation
Stars: ✭ 49 (+880%)
Mutual labels:  convert
Js Quantities
JavaScript library for quantity calculation and unit conversion
Stars: ✭ 335 (+6600%)
Mutual labels:  convert
Alchemy
🔮 File conversion, all from the menu bar
Stars: ✭ 815 (+16200%)
Mutual labels:  convert
Pdf2image
A python module that wraps the pdftoppm utility to convert PDF to PIL Image object
Stars: ✭ 720 (+14300%)
Mutual labels:  convert
Convert Units
An elegant way to convert quantities between different units.
Stars: ✭ 480 (+9500%)
Mutual labels:  convert

License Build Status codecov DOI

NetCDF2LittleR

Description

A FORTRAN application to convert NetCDF files to the Little-R format. The Little-R format is the accepted input format for the WRF data assimilation system (WRFDA) preprocessor (obsproc). Currently only the conversion of synoptical weather stations are supported by this application.

Installation

NetCDF2LittleR uses the cmake build system. NetCDF2LittleR requires building out of source, e.g. by creating a build directory. During build a binary is created with the name convert-littler.

Usage

The binary convert-littler requires a Fortran namelist as argument, for example:

netcdf2littler --namelist netcdf2littler.namelist

If no argument is supplied, netcdf2littler tries to use the file netcdf2littler.namelist from the current working directory.

The input namelist provides information to the application on the variables in the NetCDF file, the timeframe for which observations need to be converted, as well as the variables. Below is an example input.namelist (which has just one variable):

&NETCDF2LITTLER
  filename = 'test.nc'
  outfile = 'results.txt'
  variable_name = 'temperature', 'rltvh', 'pressure_station', 'winddir',
  variable_mapping = 'temperature' 'humidity' 'pressure' 'direction'
  devices = 1
  dimensions = 1
  startdate = 20140630
  enddate = 20140802
/

here variable_name is the name of the variables in the NetCDF file, variable_mapping is a mapping to the name used in the application. Valid names to be used in the variable_mapping definition (and their meaning) are:

temperature: temperature (degC or degK)
dew_point: dew point temperature (degC or degK)
humidity: relative humidity (%)
pressure: pressure at measurement height (Pa)
mslp: sea level pressure (Pa)
windspeed: windspeed (m/s)
direction: wind direction (deg)
uwind: wind speed in U direction (m/s)
vwind: wind speed in V direction (m/s)

Devices should be set equal to the number of devices in the netCDF file, i.e. this is equal to the number of observation stations.

Structure input NetCDF files

NetCDF2LittleR only supports NetCDF files with a structure according to (for a single observation station):

netcdf test_1d {
dimensions:
        time = UNLIMITED ; // (10 currently)
        lon = 1 ;
        lat = 1 ;
        elevation = 1 ;
variables:
        int time(time) ;
                time:_FillValue = -999 ;
                time:units = "seconds since 2010-01-01 00:00" ;
                time:calendar = "standard" ;
                time:timezone = "UTC" ;
        float lat(lat) ;
                lat:units = "degrees_north" ;
                lat:cell_methods = "device: mean" ;
        float lon(lon) ;
                lon:units = "degrees_east" ;
                lon:cell_methods = "device: mean" ;
        float elevation(elevation) ;
                elevation:units = "meter" ;
                elevation:standard_name = "elevation" ;
        float temperature(time) ;
                temperature:_FillValue = -999.99f ;
                temperature:units = "degC" ;
                temperature:coordinates = "lat lon" ;
                temperature:cell_methods = "point device: mean" ;
        float humidity(time) ;
                humidity:_FillValue = -999.99f ;
                humidity:units = "1" ;
                humidity:coordinates = "lat lon" ;
                humidity:cell_methods = "point device: mean" ;

Alternatively, for multiple observation stations, the following structure is supported as well:

netcdf test_2d {
dimensions:
        device = 29 ;
        time = UNLIMITED ; // (10 currently)
        lat = 29 ;
        lon = 29 ;
        elevation = 29 ;
variables:
        int device(device) ;
                device:_FillValue = -999 ;
                device:coordinates = "lat lon" ;
                device:units = "1" ;
        int time(time) ;
                time:_FillValue = -999 ;
                time:units = "seconds since 2010-01-01 00:00" ;
                time:calendar = "standard" ;
                time:timezone = "UTC" ;
        float lat(lat) ;
                lat:units = "degrees_north" ;
        float lon(lon) ;
                lon:units = "degrees_east" ;
        float elevation(elevation) ;
                elevation:units = "meter" ;
                elevation:standard_name = "elevation" ;
        float temperature(time, device) ;
                temperature:_FillValue = -999.99f ;
                temperature:units = "degC" ;
                temperature:coordinates = "lat lon" ;
                temperature:cell_methods = "point" ;
        float humidity(time, device) ;
                humidity:_FillValue = -999.99f ;
                humidity:units = "1" ;
                humidity:coordinates = "lat lon" ;
                humidity:cell_methods = "point" ;

Note that LittleR output files can be concatenated as well by the user in a postprocessing step.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].