ICE_IO
Reading and Writing ICE Datasets in NETCDF Files
ICE_IO
is a FORTRAN77 library which can
read or write an ICE dataset, which defines a 3D grid,
using the NETCDF file format.
The flakiness of the NETCDF library required me to end up
abandoning the GFORTRAN compiler and switching to the G95 compiler,
which was able, for some reason, to get NETCDF to behave.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
ICE_IO is available in
a C version and
a C++ version and
a FORTRAN77 version and
a FORTRAN90 version and
a MATLAB version.
Related Programs:
ICE,
a data directory which
contains examples of ICE files,
which store icesheet grid datasets in the NETCDF format.
ICE_TO_MESH,
a FORTRAN77 program which
reads a NETCDF file containing an ICE dataset and rewrites the
information as a MESH file.
MESH,
a data directory which
contains examples of MESH files, which can be used to define the geometry
of a finite element mesh in 2D or 3D, using triangles, quadrilaterals,
tetrahedrons or hexahedrons.
MESH_TO_ICE,
a FORTRAN77 program which
reads the ICE dataset information from a MESH files and rewrites
it to a NETCDF file.
NETCDF,
MATLAB programs which
read and write NETCDF files.
NETCDF_MPAS,
MATLAB programs which
read and write MPAS grid data stored as NETCDF files.
Reference:
-
Pascal Frey,
MEDIT: An interactive mesh visualization software,
Technical Report RT-0253,
Institut National de Recherche en Informatique et en Automatique,
03 December 2001,
medit.pdf.
-
Russ Rew, Glenn Davis, Steve Emmerson, Harvey Davies, Ed Hartne,
The NetCDF User's Guide,
Unidata Program Center, March 2009,
netcdf.pdf.
-
Russ Rew, Glenn Davis, Steve Emmerson, Harvey Davies,
The NetCDF Fortran77 Interface Guide,
Unidata Program Center, March 2010.
Source Code:
Examples and Tests:
List of Routines:
-
CYL248_DATA defines the data for a 3D tetrahedral mesh.
-
CYL248_SIZE defines the sizes for a 3D tetrahedral mesh.
-
DATA_PRINT prints the data of an ICE grid dataset.
-
DATA_READ reads ICE data from a NETCDF file.
-
GET_UNIT returns a free FORTRAN unit number.
-
HEXAHEXA_2X2X2_DATA defines the data for a 3D hexahedral mesh.
-
HEXAHEXA_2x2x2_SIZE defines the sizes for a 3D hexahedral mesh.
-
I4MAT_COPY copies an I4MAT.
-
I4VEC_COPY copies an I4VEC.
-
ICE_WRITE writes 3D ICE sizes and data to a NETCDF file.
-
R8MAT_COPY copies an R8MAT.
-
R8VEC_COPY copies an R8VEC.
-
SIZE_PRINT prints the sizes of an ICE grid dataset.
-
SIZE_READ reads ICE sizes from a NETCDF file.
-
TIMESTAMP prints out the current YMDHMS date as a timestamp.
You can go up one level to
the FORTRAN77 source codes.
Last revised on 29 October 2010.
<