Opened 7 years ago

Closed 7 years ago

#418 closed upgrade (Done)

Input NetCDF files from an OPeNDAP server

Reported by: arango Owned by: arango
Priority: major Milestone: Release ROMS/TOMS 3.4
Component: Nonlinear Version: 3.4
Keywords: Cc:

Description (last modified by arango)

The NetCDF library version 4.1.1 or higher can now process OPeNDAP files when DAP (Data Access Protocol) support is activated. This is only possible for reading input NetCDF files. Writing to OPeNDAP NetCDF file is not possible.

Additional libraries associated with cURL are required during the linking process. This is set with the calling to the curl-config --libs script in any of the make configuration files:

 ifdef USE_DAP
             LIBS += $(shell curl-config --libs)

Here, the USE_DAP environmental variable can be activated in the makefile or scripts. A call to this script will usually return:

% curl-config --libs
-L/usr/kerberos/lib64 -lcurl -ldl -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lidn -lssl -lcrypto -lz

You need to install the cURL libraries for your system.

A new function, find_file, was added to inp_par.F to check if an input file exists. Special steps are taken for OPeNDAP files which have a URL in the name, for example:

All the file name variables are now declared with 256 characters. Previously, all were 80 characters long. For example, now we have:

        character (len=256), dimension(Ngrids) :: GRDname

For reason that will become obvious in the future, the cpp option NETCDF4 was renamed to HD5. This option can be activated to create NetCDF-4/HDF5 format files. That is, an HDF5 format file.

Version 4.1.1 of the NetCDF library also offer support for third party parallel-netcdf library (also known as pnetcdf) developed by the Argonne National Lab and Northwestern University. I started to looking into that but the documentation about how to compile this is very limited. We are having problems compiling with PGI and gfortran. The ifort sort of compiles but I have not been able to run satisfatoryly a simple parallel I/O example. Stay tunned about this development...

Change History (1)

comment:1 Changed 7 years ago by arango

  • Description modified (diff)
  • Resolution set to Done
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.