1 |
|
% $Header$ |
2 |
|
% $Name$ |
3 |
|
|
4 |
|
|
5 |
\section{RW Basic binary I/O utilities} |
\section{RW Basic binary I/O utilities} |
6 |
\label{sec:pkg:rw} |
\label{sec:pkg:rw} |
7 |
|
\begin{rawhtml} |
8 |
|
<!-- CMIREDIR:package_rw: --> |
9 |
|
\end{rawhtml} |
10 |
|
|
11 |
The {\tt rw} package provides a very rudimentary binary I/O capability |
The {\tt rw} package provides a very rudimentary binary I/O capability |
12 |
for quickly writing {\it single record} direct-access Fortran binary files. |
for quickly writing {\it single record} direct-access Fortran binary files. |
13 |
It is primarily used for writing diagnostic output. |
It is primarily used for writing diagnostic output. |
16 |
Package {\tt rw} is an interface to the more general {\tt mdsio} package. |
Package {\tt rw} is an interface to the more general {\tt mdsio} package. |
17 |
The {\tt rw} package can be used to write or read direct-access Fortran |
The {\tt rw} package can be used to write or read direct-access Fortran |
18 |
binary files for two-dimensional XY and three-dimensional XYZ arrays. |
binary files for two-dimensional XY and three-dimensional XYZ arrays. |
19 |
The arrays are assumed to have been decalred according to the standard |
The arrays are assumed to have been declared according to the standard |
20 |
MITgcm two-dimensional or the-dimensional floating poit array type |
MITgcm two-dimensional or three-dimensional floating point array type: |
|
(see figure \ref{fig:pkg:rw:standarddeclaration}). |
|
|
|
|
|
\begin{figure} |
|
21 |
\begin{verbatim} |
\begin{verbatim} |
22 |
C Example of declaring a standard two dimensional "long" floating |
C Example of declaring a standard two dimensional "long" |
23 |
C point type array (the _RL macro is usually mapped to 64-bit |
C floating point type array (the _RL macro is usually |
24 |
C floats in most configurations) |
C mapped to 64-bit floats in most configurations) |
25 |
_RL anArray(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RL anArray(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
26 |
\end{verbatim} |
\end{verbatim} |
27 |
\caption{An example of the fixed form Fortran declaration for a |
|
28 |
standard MITgcm two-dimensional array type. } |
Each call to an {\tt rw} read or write routine will read (or write) to |
29 |
\label{fig:pkg:rw:standarddeclaration} |
the first record of a file. To write direct access Fortran files with |
30 |
\end{figure} |
multiple records use the package {\tt mdsio} (see section |
31 |
|
\ref{sec:pkg:mdsio}). To write self-describing files that contain |
32 |
Each call to an {\tt rw} read or write routine will read (or write) to the |
embedded information describing the variables being written and the |
33 |
first record of a file. To write direct access Fortran files with |
spatial and temporal locations of those variables use the package {\tt |
34 |
multiple records use the package {\tt mdsio} (see section |
mnc} (see section \ref{sec:pkg:mnc}) which produces |
35 |
\ref{sec:pkg:mdsio}). To write self-describing files that contain |
\htlink{netCDF}{http://www.unidata.ucar.edu/packages/netcdf} |
|
embedded information describing the variables being written and |
|
|
the spatial and temporal locations of those variables use the |
|
|
package {\tt mnc} (see section \ref{sec:pkg:mnc}) which produces |
|
|
\htlink{netCDF}{http://www.unidata.ucar.edu/packages/netcdf} |
|
36 |
\cite{rew:97} based output. |
\cite{rew:97} based output. |
37 |
|
|
38 |
\subsection{Key subroutines, parameters and files} |
%% \subsection{Key subroutines, parameters and files} |
39 |
\label{sec:pkg:rw:implementation_synopsis} |
%% \label{sec:pkg:rw:implementation_synopsis} |
40 |
The {\tt rw} package has |
%% The {\tt rw} package has |
41 |
\subsection{Package Reference} |
|