NCAR Command Language

From Wikipedia, the free encyclopedia

Overview (information source: [1])

The NCAR (National Center for Atmospheric Research) Command Language (NCL) is a free interpreted language designed specifically for scientific data processing and visualization. NCL has robust file input and output. It can read in netCDF, HDF4, HDF4-EOS, GRIB, binary and [ASCII] data. The graphics are world class and highly customizable.

It runs on many different operating systems including Solaris, AIX, IRIX, Linux, MacOSX, Dec Alpha, and Cygwin/X running on Windows. It's available for free in binary format.

NCL can be run in interactive mode, where each line is interpreted as it is entered at your workstation, or it can be run in batch mode as an interpreter of complete scripts. You can also use command line options to set options or variables on the NCL command line.

The power and utility of the language are evident in three areas:

  • file input and output
  • data analysis
  • visualization

NCL has many features common to modern programming languages, including types, variables, operators, expressions, conditional statements, loops, and functions and procedures.

In addition to common programming features, NCL also has features that are not found in other programming languages, including features that handle the manipulation of metadata, the configuration of the visualizations, the import of data from a variety of data formats, and an algebra that supports array operations.

NCL comes with many useful built-in functions and procedures for processing and manipulating data. There are over 600 functions and procedures that include routines for:

  • use specifically with climate and model data
  • computing empirical orthogonal functions, Fourier coefficients, singular value decomposition, averages, standard deviations, sin, cosine, log, min, max, etc.
  • retrieving and converting date information
  • drawing primitives (lines, filled areas, and markers), wind barbs, weather map symbols, isosurfaces, and other graphical objects
  • robust file handling
  • 1-dimensional, 2-dimensional, and 3-dimensional interpolation, approximation, and regridding
  • facilitating computer analysis of scalar and vector global geophysical quantities (most are based on the package known as Spherepack)
  • retrieving environment variables and executing system commands

NCL supports calling C and Fortran external routines, which makes NCL infinitely configurable.

NCL website at NCAR