Skip to main content

CCMValDiag with CDX Data Access

Project description

This is CCMValDiag with enhancements to read data from CDX.

CCMVal Diagnostic Tool

This is the Chemistry Climate Model Validation Diagnostic tool with modifications by the CDX (Climate Data Exchange) project of JPL to support transparent access to data stored within the CDX “cloud”.

These modifications enhance the CCMValDiag tool by enabling it to access data not only in NetCDF files in the local filesystem but also stored within CDX product servers. It does so by allowing you to specify a cdx: style URL in your diagnostic namelist file in place of a regular local filesystem path.

What You Get

In this distribution you’ll find:

The beta9 version of the CCMValDiag code taken from its subversion repository including enhancements by CDX.
This file.
Standard distutils and setuptools metadata.
Standard configuration for distutils and setuptools.


The enhancements to CCMValDiag rely on the cdx.client package. You can learn more about cdx.client at this address:

or by reviewing its Python Package Index (“Cheeseshop”) entry at:

See either website for detailed installation instructions. To see if your Python installation already has the cdx.client package, try running python and enter the following:

>>> import cdx.client

If you receive an ImportError, you’ll need to install cdx.client.


For use of CCMValDiag, consult the README* files in the ccmval directory. (JPL is solely responsible for the enhancements that enable reading from CDX product servers and, unfortunately, cannot assist you with running of CCMValDiag.)

The input models for CCMValDiag are specified as filesystem path names in a “namelist” file. You create a namelist file to identify input models, variables to validate, plot types, and so forth. To query from CDX, you replace the filesystem path name with a cdx: URL.

Here is an example cdx: URL:


Let’s look at each part of this URL.

This is the URL scheme. It should always be cdx:
This is the net location of the CDX product server. In this case, we’re access the host called and the server listening on port number 8080.
This is the web endpoint to use. It identifies a particular web application on the server listening on port 8080, in this case cdxesg. Each CDX product server is differentiated by its web endpoint.
This string indicates we want to access the product service. It should always be prod.
This identifies the path within the product server of the data to access. In this case, this path references three NetCDF files on the product server that live in the run1 directory (which lives in the ncar_ccsm3_0 directory, and so forth).

By placing such a URL in the MODELS section of a namelist file, CCMValDiag will be able to work its magic on CDX data.

For an example namelist that uses CDX URLs, see the namelist_cdx file in the ccmval directory.


0.0.0 - Unreleased

  • Initial release

Project details

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page