CISL Annual Report banner  
   

NCL: Community Software for Geoscientific Analysis and Visualization

  Comparing models to observations
  NCL was used to create this Taylor diagram that allows a statistical comparison between atmospheric model simulations and observations. Taylor diagrams are designed to facilitate analyses of how model changes affect model performance and how different models perform relative to each other. NCL produces many types of high-level graphics that allow users to visualize complex processes and concepts.

NCL is a data analysis and visualization environment developed at NCAR to enable scientists to easily and effectively access, analyze, and visualize their geoscientific data on platforms ranging from personal systems to supercomputers. While NCL's initial design goals were aimed primarily at supporting climate research, it has since been embraced broadly across an international Earth System sciences community, spanning research and education, and many organizations and agencies. These community tools are now used by thousands of people in 66 different countries.

A top priority for FY 2006 was the continued development of PyNGL and PyNIO, software components that provide Python interfaces to NCL's file input/output and visualization capabilities. This effort targets a wide audience, as Python is a popular, open-source programming language that is becoming the choice of many scientific projects globally. An NCAR initiative is to provide robust, accessible, and innovative information services and tools. The NCL development team strives to make the software more accessible to the geoscientific user community by continuing to provide fast, detailed, and knowledgeable consulting services. A particular focus in FY 2006 was the revitalization of the NCL workshops, which had been on a one-year hiatus. Our work here thus supports several of NCAR's mission priorities, including "Engaging a broader and more diverse community" in the atmospheric and geosciences, "Developing and providing advanced services and tools," and "Creating an Earth system knowledge environment."

The NCL team achieved a top goal of releasing the first official version of PyNGL and PyNIO along with an extensive collection of user documentation and guides. In keeping up with the demands of the scientific community's data needs, a second major goal was to increase NCL's data input and output capabilities. Therefore, one of the main development efforts was to add support for GRIB2, a second-generation data format standard developed by the World Meteorological Organization for distributing gridded data. The plan is to release an alpha version of this GRIB2 reader in early FY 2007; this is expected to have a big impact on researchers' ability to analyze reanalysis and forecast data. The third goal completed was to conduct a detailed analysis and visualization survey.

Future plans for NCL and Python software development and support are largely based on continuous dialogs with the scientific community and on survey results. Our overall goal is to build a powerful, flexible framework for geoscientific analysis and visualization that supports multiple tools and interfaces. Goals for FY 2007 include:

  1. Add support for more data formats, including netCDF 4 and HDF 5
  2. Provide capability to generate vectors and streamlines on non-uniform grids
  3. Provide more support for the rapidly growing WRF community by incorporating their analysis functions into NCL
  4. Improve NCL's suite of interpolation routines by adding an interface to SCRIP
  5. Establish a dialog with experts in the oceanographic community that will enable us to enhance our software for their requirements
  6. Enhance the Python suite of atmospheric analysis functions and continue investigating integration of other tools and packages, including 3D capabilities
  7. Continue providing high-quality consulting support and training services for the user community

In addition, the integration of NCL and its Python counterparts is now a core activity of our new Earth System Grid Center for Enabling Technologies (ESG-CET) project. ESG will provide support for the integration of our tools as core client applications of ESG, and potentially as server-side capabilities as well.

This project is supported by NSF Core funding.