Bits for NetCDFPerl

RedHat RPMs

Here are source and binary RPMs you can download to run NetCDFPerl under RedHat 9. The version available here is 1.2.3. The original package was written by Steve Emmerson, and it is packaged using a spec file based on one which Zhangfan XING wrote for version 1.2.1.

The RPM package is not officially endorsed by Unidata, but I hope you'll find it useful. (If you are paranoid, build from the source RPM, after examining the spec file and differencing the source tarball from a copy downloaded from the official site.)

Thank you to Patrice Dumas for sending me an updated version.

ncmanipulate

Here is a little module I wrote to sit on top of NetCDFPerl for the purpose of manipulating NetCDF files. What it is useful for is making NetCDF files which are based on some input NetCDF file, but with some little changes.

The basic aim is that your program is short if the input and output files are similar -- so for identical input and output files you have:

use NetCDF;
use ncmanipulate;
$nc = nc_read("foo.nc");
nc_write("bar.nc",$nc);
nc_close($nc);

and then if you want to make changes there are lines you can add between the nc_read and nc_write lines.

(In reality the nc_read returns a smallish structure containing the metadata, but leaves the input file open, and the actual data is not stored in memory but read as it is written -- hence the later nc_close. This prevents memory problems with large files.)

I chose to document the various manipulations by example, so here are:

The module
ncmanipulate.pm
Example program
ncexample.pl
Input file read by example program
foo.nc (dump)
Output file as written by example program
bar.nc (dump)

Alan Iwi <A.M.Iwi@rl.ac.uk>