| 1 |
\section{Basic binary I/O utilities} |
| 2 |
\label{sec:pkg:rw} |
| 3 |
The {\tt rw} package provides a very rudimentary binary I/O capability |
| 4 |
for quickly writing {\it single record} direct-access Fortran binary files. |
| 5 |
It is primarily used for writing diagnostic output. |
| 6 |
|
| 7 |
\subsection{Introduction} |
| 8 |
Package {\tt rw} is an interface to the more general {\tt mdsio} package. |
| 9 |
The {\tt rw} package can be used to write or read direct-access Fortran |
| 10 |
binary files for two-dimensional XY and three-dimensional XYZ arrays. |
| 11 |
The arrays are assumed to have been decalred according to the standard |
| 12 |
MITgcm two-dimensional or the-dimensional floating poit array type e.g |
| 13 |
\begin{verbatim} |
| 14 |
C Example of declaring a standard two dimensional "long" floating |
| 15 |
C point type array (the _RL macro is usually mapped to 64-bit |
| 16 |
C floats in most configurations) |
| 17 |
_RL anArray(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
| 18 |
\end{verbatim} |
| 19 |
Each call to an {\tt rw} read or write routine will read (or write) to the |
| 20 |
first record of a file. To write files with multiple records use the |
| 21 |
package {\tt mdsio} (see section) or the package {\tt mnc} (see section {sec:pkg:mnc}) |
| 22 |
which produces netCDF \cite{rew:97} based output. |
| 23 |
|
| 24 |
\subsection{Key subroutines, parameters and files} |
| 25 |
\label{sec:pkg:rw:implementation_synopsis} |
| 26 |
\subsection{Package Reference} |