I have been working on a major overhaul of Matlab scripts and tools in the ROMS repository for several weeks. Since all the data in ROMS is managed with NetCDF files, some of these scripts use a NetCDF interface to Matlab to process the data. There are several interfaces for Matlab available from third parties. The most widely used interfaces are
MEXNC and
SNCTOOLS.
![Idea :idea:](./images/smilies/icon_idea.gif)
However, starting with Matlab version
2012a, released on Feb 9, 2012, the
native interface to NetCDF is the preferred method for processing NetCDF data in the scripts distributed in the ROMS
repository matlab and described here. The
native interface was introduced in Matlab version
2008b for
NetCDF-3 type files. The
NetCDF-4 support started in version
2010b. The support for
HDF5 files was completed in version
2011a. The
OpenDAP support began in version
2012a. If your Matlab version is older than
2008b, we highly recommend that you update to the newest version. However, in the basic generic scripts we have switches for older versions to activate either the
MEXNC interface for standard NetCDF files and the
SNCTOOLS interface to process NetCDF files on an
OpenDAP server.
![Idea :idea:](./images/smilies/icon_idea.gif)
Notice that a new sub-directory is added
matlab/netcdf containing several
high level scripts on top of the
native NetCDF interface if using Matlab Version
2008b or newer for local NetCDF files and Matlab Version
2012a or newer for
OpenDAP files. For older Matlab versions, the
MEXNC interface is used for local files whereas the
SNCTOOLS java interface is used for
OpenDAP files. Notice that processing of
OpenDAP files is only possible for reading.
Warning: You need to add the new sub-directory
matlab/netcdf of the repository to your Matlab
startup.m script of Matlab desktop window
Set Path.... Previously, all the
nc_*.m scripts were located in the
matlab/utility sub-directory. They have been all modified and moved to the new sub-directory
matlab/netcdf.
Nesting Scripts:
This update also includes several new scripts to process ROMS nesting
contact regions and
contact points. The
contact points are processed outside of ROMS and all the connectivity within nested grids is read from an input NetCDF file. This facilitates the configuration of various grid Sub-Classes. It tremendously simplifies the processing of such points in parallel computations. It also gives the user full editing control of the
contact points. The
contact points need to be set-up once for a particular application.
The information about these new scripts is very technical and difficult to explain with plain words. We need definitions, equations, and a lot of diagrams to explain and illustrate the complexity of ROMS nesting capabilities. Therefore, we decided to put all that information in
WikiROMS instead of a very long message in this forum. In particular, we added two new menus to the documentation portal:
Below is an example of several nested grids for the US East Coast for the
ESPRESSO coarse grid. This example is discussed in
WikiROMS.
I know that several of you are looking forward for start playing with these nesting capabilities.
You just need to be a little bit patient
It is coming soon ![Cool 8)](./images/smilies/icon_cool.gif)
This capability is complex and we need provide a lot of documentation and testing. Also, I need to do this systematically. Otherwise, this forum is going to be flooded with a lot of frustrating messages. At least you now have all the Matlab scripts available to start thinking about a particular nesting application. I am sure that setting such applications will take time, knowledge, and experience.