Custom Query (964 matches)
Results (175 - 177 of 964)
Ticket | Owner | Reporter | Resolution | Summary |
---|---|---|---|---|
#246 | Fixed | Bug in representer model 2D boundary conditions | ||
Description |
Corrected bugs in the representer model Flather boundary conditions in rp_u2dbc_im.F and rp_v2dbc_im.F and Chapman boudary condition in rp_zetabc.F. Many thanks to Andy Moore for finding and correcting these bugs. |
|||
#248 | Done | Updated output to NetCDF-4/HDF5 format file | ||
Description |
Introduced two new CPP options to create NetCDF-4/HDF5 format files (NETCDF4) and file compression (DEFLATE). All ROMS standard input scripts were modified to include the file compression parameters: ! NetCDF-4/HDF5 compression parameters for output files. NC_SHUFFLE = 1 ! if non-zero, turn on shuffle filter NC_DEFLATE = 1 ! if non-zero, turn on deflate filter NC_DLEVEL = 1 ! deflate level [0-9] In order to generate NetCDF-4/HDF5, we needed to change the calls to: status=nf90_create(TRIM(ncname), CMODE, ncHISid(ng)) where CMODE is defined in mod_netcdf.F for classic NetCDF-3 files or NetCDF-4/HDF5 format files: ! ! Netcdf file creation mode flag. ! #ifdef NETCDF4 integer :: CMODE = nf90_netcdf4 ! NetCDF-4/HDF5 format file #else integer :: CMODE = nf90_clobber ! NetCDF classic format file #endif The file compression cannot be used in parallel I/O for writing data. This is because the compression makes it impossible for the HDF5 library to exactly map the data to the disk location. However, deflated data can be read with parallel I/O. Notice that when the USE_NETCDF4 macro is activated in the makefile of build scripts (build.sh or build.bash), we need a serial and parallel version of the NetCDF-4/HDF5 library. The parallel library uses parallel I/O through MPI-I/O so we need compile also with the MPI library. This is fine in ROMS distributed-memory applications. However in serial or shared-memory ROMS applications, we need to use the serial version of the NetCDF-4/HDF5 to avoid conflicts with the compiler. Recall also that the MPI library comes in several flavors: MPICH, MPICH2, and OpenMPI. Therefore, you need to have several versions of the NetCDF library in your computer for all the various configuration possibilities. Many thanks to Rich Signell for taking a first look to this capability. |
|||
#249 | Done | Updated plotting package make configuration files | ||
Description |
Changed the plotting package make configuration files (plot/Compilers/*.mk) to allow compiling with the NetCDF4/HDF5 library. Notice that the NetCDF-4/HDF5 libraries are backwards compatible with the NetCDF classic format file. Therefore, when compiled with the NetCDF-4/HDF5 libraries the ROMS plotting package can plot both NetCDF format files. There are serial and parallel NetCDF-4 and HDF5 libraries. The parallel libraries also requires the MPI library. The plotting package is serial but it can be also compiled with the parallel libraries. In order to allow compiling with both serial and parallel libraries, the NCAR's library loader script ncargf90 is not longer used in the make configuration files. The required plotting libraries are specified explicitly as: LIBS := -L$(NCARG_ROOT)/lib -lncarg -lncarg_gks -lncarg_c LIBS += -L/usr/X11R6/lib64 -lX11 To compile with the NetCDF-4/HDF5, activate the following macro in the makefile: USE_NETCDF4 ?= on If compiling with a parallel NetCDF4 and HDF5, activate the following macro in the makefile to include the MPI library: ifdef USE_NETCDF4 USE_MPIF90 ?= endif Recall, that all the make configuration files are templates and the user needs to fine tune the path for all these libraries. This is working very nicely for me. I was able to plot both NetCDF-4 and classical NetCDF-3 with the same executable. |