Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
mpim-sw
libcdi
Commits
0d84e48d
Commit
0d84e48d
authored
May 25, 2006
by
Uwe Schulzweida
Browse files
Docu update
parent
7c711ada
Changes
28
Hide whitespace changes
Inline
Side-by-side
README
View file @
0d84e48d
...
...
@@ -7,15 +7,28 @@ CDI - Climate Data Interface
CDI is a C and Fortran Interface to access Climate model Data.
Supported file formats are GRIB, netCDF, SERVICE, EXTRA and IEG.
CDI is licensed under the GNU General Public License, version 2.
Read the file COPYING in the source distribution for details.
Documentation:
Not available.
ANSI C Manual: ./doc/cdi_cman.pdf
Fortran Manual: ./doc/cdi_fman.pdf
Installation:
Read INSTALL on how to configure, compile and install the library.
The configuration script has some more environment variables.
Type 'configure -h' to see them.
1. Run ./configure, with some options if you wish. The standard
options are documented in the INSTALL file. The configuration
script has some more options; type 'configure -h' to see them.
The most interesting ones are the usual
--prefix=<installation directory> and
--with-netcdf=<netCDF root directory> to enable netCDF support.
2. Do "make" to compile the library.
3. (Optional) Do "make install", possibly as root if the destination
permissions require that. This installs CDI in the directory
specified during configuration. The default prefix is /usr/local.
Porting:
...
...
@@ -27,5 +40,5 @@ Porting:
Contact:
Send questions, comments and bug reports to
s
chulzweida@
dkrz
.de
Send questions, comments and bug reports to
Uwe.S
chulzweida@
zmaw
.de
doc/tex/c_examples.tex
View file @
0d84e48d
\chapter
{
\label
{
example
}
Examples
}
This appendix contains complete examples to write, read
and copy a dataset with the CDI library.
and copy a dataset with the
\
CDI
library.
\section
{
\label
{
example
_
write
}
Write a dataset
}
Here is an example using CDI to write a netCDF dataset with
Here is an example using
\
CDI
to write a netCDF dataset with
2 variables on 3 time steps. The first variable is a 2D field
on surface level and the second variable is a 3D field on 5 pressure
levels. Both variables are on the same lon/lat grid.
...
...
doc/tex/c_grid.tex
View file @
0d84e48d
...
...
@@ -15,8 +15,8 @@ The function {\tt gridCreate} creates a horizontal Grid.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
gridtype
\
}
\item
[{\tt gridtype}]
The type of the grid, one of the set of predefined CDI grid types.
The valid CDI grid types are
{
\tt
GRID
\_
GENERIC
}
,
{
\tt
GRID
\_
GAUSSIAN
}
,
The type of the grid, one of the set of predefined
\
CDI
grid types.
The valid
\
CDI
grid types are
{
\tt
GRID
\_
GENERIC
}
,
{
\tt
GRID
\_
GAUSSIAN
}
,
{
\tt
GRID
\_
LONLAT
}
,
{
\tt
GRID
\_
SPECTRAL
}
,
{
\tt
GRID
\_
GME
}
,
{
\tt
GRID
\_
CURVILINEAR
}
and
{
\tt
GRID
\_
CELL
}
.
\item
[{\tt size}]
...
...
@@ -88,7 +88,7 @@ The function {\tt gridDuplicate} duplicates a horizontal Grid.
\begin{deflist}
{
\tt
gridID
\
}
\item
[{\tt gridID}]
Grid ID, from a previous call to
{
\htmlref
{
\tt
gridCreate
}{
gridCreate
}}
,
{
\tt
gridDuplicate
}
or
{
\tt
vlistInqVarGrid
}
.
{
\htmlref
{
\tt
gridDuplicate
}
{
gridDuplicate
}}
or
{
\htmlref
{
\tt
vlistInqVarGrid
}{
vlistInqVarGrid
}
}
.
\end{deflist}
\end{minipage}
...
...
@@ -122,8 +122,8 @@ Grid ID, from a previous call to {\htmlref{\tt gridCreate}{gridCreate}}
\subsubsection*
{
Result
}
{
\tt
gridInqType
}
returns the type of the grid,
one of the set of predefined CDI grid types.
The valid CDI grid types are
{
\tt
GRID
\_
GENERIC
}
,
{
\tt
GRID
\_
GAUSSIAN
}
,
one of the set of predefined
\
CDI
grid types.
The valid
\
CDI
grid types are
{
\tt
GRID
\_
GENERIC
}
,
{
\tt
GRID
\_
GAUSSIAN
}
,
{
\tt
GRID
\_
LONLAT
}
,
{
\tt
GRID
\_
SPECTRAL
}
,
{
\tt
GRID
\_
GME
}
,
{
\tt
GRID
\_
CURVILINEAR
}
and
{
\tt
GRID
\_
CELL
}
.
...
...
doc/tex/c_link.tex
View file @
0d84e48d
Every C file that references CDI functions or constants must contain
Every C file that references
\
CDI
functions or constants must contain
an appropriate
{
\tt
include
}
statement before the first such reference:
\begin{verbatim}
...
...
@@ -15,11 +15,11 @@ the compiler, to specify a directory where {\tt cdi.h} is installed, for example
Alternatively, you could specify an absolute path name in the
{
\tt
include
}
statement, but then your program would not compile on another platform
where CDI is installed in a different location.
where
\
CDI
is installed in a different location.
Unless the CDI library is installed in a standard directory where the linker
Unless the
\
CDI
library is installed in a standard directory where the linker
always looks, you must use the
{
\tt
-L
}
and
{
\tt
-l
}
options to links an object file that
uses the CDI library. For example:
uses the
\
CDI
library. For example:
\begin{verbatim}
cc -o myprogram myprogram.o -L/usr/local/cdi/lib -lcdi -lm
...
...
@@ -31,7 +31,7 @@ Alternatively, you could specify an absolute path name for the library:
cc -o myprogram myprogram.o -L/usr/local/cdi/lib/libcdi -lm
\end{verbatim}
If the CDI library is using other external libraries, you must add this
If the
\
CDI
library is using other external libraries, you must add this
libraries in the same way.
For example with the netCDF library:
...
...
doc/tex/c_stream.tex
View file @
0d84e48d
...
...
@@ -16,8 +16,8 @@ The function {\tt streamOpenWrite} creates a new datset.
\item
[{\tt path}]
The name of the new dataset
\item
[{\tt filetype}]
The type of the file format, one of the set of predefined CDI file format types.
The valid CDI file format types are
{
\tt
FILETYPE
\_
GRB
}
,
{
\tt
FILETYPE
\_
NC
}
,
The type of the file format, one of the set of predefined
\
CDI
file format types.
The valid
\
CDI
file format types are
{
\tt
FILETYPE
\_
GRB
}
,
{
\tt
FILETYPE
\_
NC
}
,
{
\tt
FILETYPE
\_
NC2
}
,
{
\tt
FILETYPE
\_
SRV
}
,
{
\tt
FILETYPE
\_
EXT
}
and
{
\tt
FILETYPE
\_
IEG
}
.
\end{deflist}
...
...
@@ -167,8 +167,8 @@ Stream ID, from a previous call to {\htmlref{\tt streamOpenRead}{streamOpenRead}
\subsubsection*
{
Result
}
{
\tt
streamInqFiletype
}
returns the type of the file format,
one of the set of predefined CDI file format types.
The valid CDI file format types are
{
\tt
FILETYPE
\_
GRB
}
,
{
\tt
FILETYPE
\_
NC
}
,
one of the set of predefined
\
CDI
file format types.
The valid
\
CDI
file format types are
{
\tt
FILETYPE
\_
GRB
}
,
{
\tt
FILETYPE
\_
NC
}
,
{
\tt
FILETYPE
\_
NC2
}
,
{
\tt
FILETYPE
\_
SRV
}
,
{
\tt
FILETYPE
\_
EXT
}
and
{
\tt
FILETYPE
\_
IEG
}
.
...
...
@@ -191,7 +191,7 @@ with the file format type {\tt FILETYPE\_SRV}, {\tt FILETYPE\_EXT} or {\tt FILET
\item
[{\tt streamID}]
Stream ID, from a previous call to
{
\htmlref
{
\tt
streamOpenRead
}{
streamOpenRead
}}
or
{
\htmlref
{
\tt
streamOpenWrite
}{
streamOpenWrite
}}
\item
[{\tt byteorder}]
The byte order of a dataset, one of the CDI constants
{
\tt
CDI
\_
BIGENDIAN
}
and
The byte order of a dataset, one of the
\
CDI
constants
{
\tt
CDI
\_
BIGENDIAN
}
and
{
\tt
CDI
\_
LITTLEENDIAN
}
.
\end{deflist}
...
...
@@ -222,7 +222,7 @@ Stream ID, from a previous call to {\htmlref{\tt streamOpenRead}{streamOpenRead}
\subsubsection*
{
Result
}
{
\tt
streamInqByteorder
}
returns the type of the byte order.
The valid CDI byte order types are
{
\tt
CDI
\_
BIGENDIAN
}
and
{
\tt
CDI
\_
LITTLEENDIAN
}
The valid
\
CDI
byte order types are
{
\tt
CDI
\_
BIGENDIAN
}
and
{
\tt
CDI
\_
LITTLEENDIAN
}
...
...
doc/tex/c_taxis.tex
View file @
0d84e48d
...
...
@@ -15,8 +15,8 @@ The function {\tt taxisCreate} creates a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxistype
\
}
\item
[{\tt taxistype}]
The type of the Time axis, one of the set of predefined CDI time axis types.
The valid CDI time axis types are
{
\tt
TAXIS
\_
ABSOLUTE
}
and
{
\tt
TAXIS
\_
RELATIVE
}
.
The type of the Time axis, one of the set of predefined
\
CDI
time axis types.
The valid
\
CDI
time axis types are
{
\tt
TAXIS
\_
ABSOLUTE
}
and
{
\tt
TAXIS
\_
RELATIVE
}
.
\end{deflist}
\end{minipage}
...
...
@@ -78,7 +78,7 @@ The function {\tt taxisDefVdate} defines the reference date of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\item
[{\tt rdate}]
Reference date (YYYYMMDD)
...
...
@@ -101,7 +101,7 @@ The function {\tt taxisInqRdate} returns the reference date of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\end{deflist}
\end{minipage}
...
...
@@ -127,7 +127,7 @@ The function {\tt taxisDefVdate} defines the reference time of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\item
[{\tt rtime}]
Reference time (HHMM)
...
...
@@ -150,7 +150,7 @@ The function {\tt taxisInqRtime} returns the reference time of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\end{deflist}
\end{minipage}
...
...
@@ -176,7 +176,7 @@ The function {\tt taxisDefVdate} defines the verification date of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\item
[{\tt vdate}]
Verification date (YYYYMMDD)
...
...
@@ -199,7 +199,7 @@ The function {\tt taxisInqVdate} returns the verification date of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\end{deflist}
\end{minipage}
...
...
@@ -225,7 +225,7 @@ The function {\tt taxisDefVtime} defines the verification time of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\item
[{\tt vtime}]
Verification time (HHMM)
...
...
@@ -248,7 +248,7 @@ The function {\tt taxisInqVtime} returns the verification time of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\end{deflist}
\end{minipage}
...
...
@@ -274,10 +274,10 @@ The function {\tt taxisDefCalendar} defines the calendar of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
calendar
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\item
[{\tt calendar}]
The type of the calendar, one of the set of predefined CDI calendar types.
The valid CDI calendar types are
{
\tt
CALENDAR
\_
STANDARD
}
,
{
\tt
CALENDAR
\_
360DAYS
}
,
The type of the calendar, one of the set of predefined
\
CDI
calendar types.
The valid
\
CDI
calendar types are
{
\tt
CALENDAR
\_
STANDARD
}
,
{
\tt
CALENDAR
\_
360DAYS
}
,
{
\tt
CALENDAR
\_
365DAYS
}
and
{
\tt
CALENDAR
\_
366DAYS
}
.
\end{deflist}
...
...
@@ -299,7 +299,7 @@ The function {\tt taxisInqCalendar} returns the calendar of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\end{deflist}
\end{minipage}
...
...
@@ -307,7 +307,7 @@ Time axis ID, from a previous call to {\tt taxisCreate}
\subsubsection*
{
Result
}
{
\tt
taxisInqCalendar
}
returns the type of the calendar,
one of the set of predefined CDI calendar types.
The valid CDI calendar types are
{
\tt
CALENDAR
\_
STANDARD
}
,
{
\tt
CALENDAR
\_
360DAYS
}
,
one of the set of predefined
\
CDI
calendar types.
The valid
\
CDI
calendar types are
{
\tt
CALENDAR
\_
STANDARD
}
,
{
\tt
CALENDAR
\_
360DAYS
}
,
{
\tt
CALENDAR
\_
365DAYS
}
and
{
\tt
CALENDAR
\_
366DAYS
}
.
doc/tex/c_vlist.tex
View file @
0d84e48d
...
...
@@ -238,7 +238,7 @@ The function {\tt vlistDefTaxis} defines the time axis of a variable list.
\item
[{\tt vlistID}]
Variable list ID, from a previous call to
{
\htmlref
{
\tt
vlistCreate
}{
vlistCreate
}}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\end{deflist}
\end{minipage}
...
...
doc/tex/c_vlist_var.tex
View file @
0d84e48d
...
...
@@ -21,8 +21,8 @@ Grid ID, from a previous call to {\htmlref{\tt gridCreate}{gridCreate}}
\item
[{\tt zaxisID}]
Z-axis ID, from a previous call to
{
\htmlref
{
\tt
zaxisCreate
}{
zaxisCreate
}}
\item
[{\tt timeID}]
One of the set of predefined CDI time identifiers.
The valid CDI time identifiers are
{
\tt
TIME
\_
CONSTANT
}
and
{
\tt
TIME
\_
VARIABLE
}
.
One of the set of predefined
\
CDI
time identifiers.
The valid
\
CDI
time identifiers are
{
\tt
TIME
\_
CONSTANT
}
and
{
\tt
TIME
\_
VARIABLE
}
.
\end{deflist}
\end{minipage}
...
...
@@ -291,7 +291,7 @@ Variable list ID, from a previous call to {\htmlref{\tt vlistCreate}{vlistCreate
Variable identifier
\item
[{\tt datatype}]
The data type identifier.
The valid CDI data types are
{
\tt
DATATYPE
\_
PACK1
}
,
{
\tt
DATATYPE
\_
PACK2
}
,
The valid
\
CDI
data types are
{
\tt
DATATYPE
\_
PACK1
}
,
{
\tt
DATATYPE
\_
PACK2
}
,
{
\tt
DATATYPE
\_
PACK3
}
,
{
\tt
DATATYPE
\_
REAL4
}
and
{
\tt
DATATYPE
\_
REAL8
}
.
...
...
@@ -324,7 +324,7 @@ Variable identifier
\subsubsection*
{
Result
}
{
\tt
vlistInqVarDatatype
}
returns an identifier to the data type of the variable.
The valid CDI data types are
{
\tt
DATATYPE
\_
PACK1
}
,
{
\tt
DATATYPE
\_
PACK2
}
,
{
\tt
DATATYPE
\_
PACK3
}
,
The valid
\
CDI
data types are
{
\tt
DATATYPE
\_
PACK1
}
,
{
\tt
DATATYPE
\_
PACK2
}
,
{
\tt
DATATYPE
\_
PACK3
}
,
{
\tt
DATATYPE
\_
REAL4
}
and
{
\tt
DATATYPE
\_
REAL8
}
.
...
...
doc/tex/c_zaxis.tex
View file @
0d84e48d
...
...
@@ -15,8 +15,8 @@ The function {\tt zaxisCreate} creates a vertical Z-axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
zaxistype
\
}
\item
[{\tt zaxistype}]
The type of the Z-axis, one of the set of predefined CDI Z-axis types.
The valid CDI Z-axis types are
{
\tt
ZAXIS
\_
GENERIC
}
,
{
\tt
ZAXIS
\_
SURFACE
}
,
The type of the Z-axis, one of the set of predefined
\
CDI
Z-axis types.
The valid
\
CDI
Z-axis types are
{
\tt
ZAXIS
\_
GENERIC
}
,
{
\tt
ZAXIS
\_
SURFACE
}
,
{
\tt
ZAXIS
\_
HYBRID
}
,
{
\tt
ZAXIS
\_
PRESSURE
}
,
{
\tt
ZAXIS
\_
HEIGHT
}
,
{
\tt
ZAXIS
\_
DEPTH
\_
BELOW
\_
SEA
}
and
{
\tt
ZAXIS
\_
DEPTH
\_
BELOW
\_
LAND
}
.
\item
[{\tt size}]
...
...
@@ -90,8 +90,8 @@ Z-axis ID, from a previous call to {\htmlref{\tt zaxisCreate}{zaxisCreate}}
\subsubsection*
{
Result
}
{
\tt
zaxisInqType
}
returns the type of the Z-axis,
one of the set of predefined CDI Z-axis types.
The valid CDI Z-axis types are
{
\tt
ZAXIS
\_
GENERIC
}
,
{
\tt
ZAXIS
\_
SURFACE
}
,
one of the set of predefined
\
CDI
Z-axis types.
The valid
\
CDI
Z-axis types are
{
\tt
ZAXIS
\_
GENERIC
}
,
{
\tt
ZAXIS
\_
SURFACE
}
,
{
\tt
ZAXIS
\_
HYBRID
}
,
{
\tt
ZAXIS
\_
PRESSURE
}
,
{
\tt
ZAXIS
\_
HEIGHT
}
,
{
\tt
ZAXIS
\_
DEPTH
\_
BELOW
\_
SEA
}
and
{
\tt
ZAXIS
\_
DEPTH
\_
BELOW
\_
LAND
}
.
...
...
doc/tex/dataset.tex
View file @
0d84e48d
This module contains functions to read and write the data.
To create a new dataset the output format must be specified
with one of the following predefined file types:
with one of the following predefined file
format
types:
\vspace*
{
3mm
}
\hspace*
{
8mm
}
\begin{minipage}
{
15cm
}
...
...
@@ -15,9 +15,11 @@ with one of the following predefined file types:
\end{minipage}
\vspace*
{
3mm
}
NetCDF is only available if the
\CDI
library was compiled with netCDF support!
To set the byte order of a binary dataset with the file format
type
{
\tt
FILETYPE
\_
SRV
}
,
{
\tt
FILETYPE
\_
EXT
}
or
{
\tt
FILETYPE
\_
IEG
}
use one of the
following constants in the call to
{
\htmlref
{
\tt
streamDefByteorder
}{
streamDefByteorder
}}
:
following
predefined
constants in the call to
{
\htmlref
{
\tt
streamDefByteorder
}{
streamDefByteorder
}}
:
\vspace*
{
3mm
}
\hspace*
{
8mm
}
\begin{minipage}
{
15cm
}
...
...
doc/tex/f_examples.tex
View file @
0d84e48d
\chapter
{
\label
{
example
}
Examples
}
This appendix contains complete examples to write, read
and copy a dataset with the CDI library.
and copy a dataset with the
\
CDI
library.
\section
{
\label
{
example
_
write
}
Write a dataset
}
Here is an example using CDI to write a netCDF dataset with
Here is an example using
\
CDI
to write a netCDF dataset with
2 variables on 3 time steps. The first variable is a 2D field
on surface level and the second variable is a 3D field on 5 pressure
levels. Both variables are on the same lon/lat grid.
...
...
doc/tex/f_grid.tex
View file @
0d84e48d
...
...
@@ -15,8 +15,8 @@ The function {\tt gridCreate} creates a horizontal Grid.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
gridtype
\
}
\item
[{\tt gridtype}]
The type of the grid, one of the set of predefined CDI grid types.
The valid CDI grid types are
{
\tt
GRID
\_
GENERIC
}
,
{
\tt
GRID
\_
GAUSSIAN
}
,
The type of the grid, one of the set of predefined
\
CDI
grid types.
The valid
\
CDI
grid types are
{
\tt
GRID
\_
GENERIC
}
,
{
\tt
GRID
\_
GAUSSIAN
}
,
{
\tt
GRID
\_
LONLAT
}
,
{
\tt
GRID
\_
SPECTRAL
}
,
{
\tt
GRID
\_
GME
}
,
{
\tt
GRID
\_
CURVILINEAR
}
and
{
\tt
GRID
\_
CELL
}
.
\item
[{\tt size}]
...
...
@@ -88,7 +88,7 @@ The function {\tt gridDuplicate} duplicates a horizontal Grid.
\begin{deflist}
{
\tt
gridID
\
}
\item
[{\tt gridID}]
Grid ID, from a previous call to
{
\htmlref
{
\tt
gridCreate
}{
gridCreate
}}
,
{
\tt
gridDuplicate
}
or
{
\tt
vlistInqVarGrid
}
.
{
\htmlref
{
\tt
gridDuplicate
}
{
gridDuplicate
}}
or
{
\htmlref
{
\tt
vlistInqVarGrid
}{
vlistInqVarGrid
}
}
.
\end{deflist}
\end{minipage}
...
...
@@ -122,8 +122,8 @@ Grid ID, from a previous call to {\htmlref{\tt gridCreate}{gridCreate}}
\subsubsection*
{
Result
}
{
\tt
gridInqType
}
returns the type of the grid,
one of the set of predefined CDI grid types.
The valid CDI grid types are
{
\tt
GRID
\_
GENERIC
}
,
{
\tt
GRID
\_
GAUSSIAN
}
,
one of the set of predefined
\
CDI
grid types.
The valid
\
CDI
grid types are
{
\tt
GRID
\_
GENERIC
}
,
{
\tt
GRID
\_
GAUSSIAN
}
,
{
\tt
GRID
\_
LONLAT
}
,
{
\tt
GRID
\_
SPECTRAL
}
,
{
\tt
GRID
\_
GME
}
,
{
\tt
GRID
\_
CURVILINEAR
}
and
{
\tt
GRID
\_
CELL
}
.
...
...
doc/tex/f_link.tex
View file @
0d84e48d
Every FORTRAN file that references CDI functions or constants must contain
Every FORTRAN file that references
\
CDI
functions or constants must contain
an appropriate
{
\tt
INCLUDE
}
statement before the first such reference:
\begin{verbatim}
...
...
@@ -15,11 +15,11 @@ the compiler, to specify a directory where {\tt cdi.inc} is installed, for examp
Alternatively, you could specify an absolute path name in the
{
\tt
INCLUDE
}
statement, but then your program would not compile on another platform
where CDI is installed in a different location.
where
\
CDI
is installed in a different location.
Unless the CDI library is installed in a standard directory where the linker
Unless the
\
CDI
library is installed in a standard directory where the linker
always looks, you must use the
{
\tt
-L
}
and
{
\tt
-l
}
options to links an object file that
uses the CDI library. For example:
uses the
\
CDI
library. For example:
\begin{verbatim}
f77 -o myprogram myprogram.o -L/usr/local/cdi/lib -lcdi
...
...
@@ -31,7 +31,7 @@ Alternatively, you could specify an absolute path name for the library:
f77 -o myprogram myprogram.o -L/usr/local/cdi/lib/libcdi
\end{verbatim}
If the CDI library is using other external libraries, you must add this
If the
\
CDI
library is using other external libraries, you must add this
libraries in the same way.
For example with the netCDF library:
...
...
doc/tex/f_stream.tex
View file @
0d84e48d
...
...
@@ -16,8 +16,8 @@ The function {\tt streamOpenWrite} creates a new datset.
\item
[{\tt path}]
The name of the new dataset
\item
[{\tt filetype}]
The type of the file format, one of the set of predefined CDI file format types.
The valid CDI file format types are
{
\tt
FILETYPE
\_
GRB
}
,
{
\tt
FILETYPE
\_
NC
}
,
The type of the file format, one of the set of predefined
\
CDI
file format types.
The valid
\
CDI
file format types are
{
\tt
FILETYPE
\_
GRB
}
,
{
\tt
FILETYPE
\_
NC
}
,
{
\tt
FILETYPE
\_
NC2
}
,
{
\tt
FILETYPE
\_
SRV
}
,
{
\tt
FILETYPE
\_
EXT
}
and
{
\tt
FILETYPE
\_
IEG
}
.
\end{deflist}
...
...
@@ -167,8 +167,8 @@ Stream ID, from a previous call to {\htmlref{\tt streamOpenRead}{streamOpenRead}
\subsubsection*
{
Result
}
{
\tt
streamInqFiletype
}
returns the type of the file format,
one of the set of predefined CDI file format types.
The valid CDI file format types are
{
\tt
FILETYPE
\_
GRB
}
,
{
\tt
FILETYPE
\_
NC
}
,
one of the set of predefined
\
CDI
file format types.
The valid
\
CDI
file format types are
{
\tt
FILETYPE
\_
GRB
}
,
{
\tt
FILETYPE
\_
NC
}
,
{
\tt
FILETYPE
\_
NC2
}
,
{
\tt
FILETYPE
\_
SRV
}
,
{
\tt
FILETYPE
\_
EXT
}
and
{
\tt
FILETYPE
\_
IEG
}
.
...
...
@@ -191,7 +191,7 @@ with the file format type {\tt FILETYPE\_SRV}, {\tt FILETYPE\_EXT} or {\tt FILET
\item
[{\tt streamID}]
Stream ID, from a previous call to
{
\htmlref
{
\tt
streamOpenRead
}{
streamOpenRead
}}
or
{
\htmlref
{
\tt
streamOpenWrite
}{
streamOpenWrite
}}
\item
[{\tt byteorder}]
The byte order of a dataset, one of the CDI constants
{
\tt
CDI
\_
BIGENDIAN
}
and
The byte order of a dataset, one of the
\
CDI
constants
{
\tt
CDI
\_
BIGENDIAN
}
and
{
\tt
CDI
\_
LITTLEENDIAN
}
.
\end{deflist}
...
...
@@ -222,7 +222,7 @@ Stream ID, from a previous call to {\htmlref{\tt streamOpenRead}{streamOpenRead}
\subsubsection*
{
Result
}
{
\tt
streamInqByteorder
}
returns the type of the byte order.
The valid CDI byte order types are
{
\tt
CDI
\_
BIGENDIAN
}
and
{
\tt
CDI
\_
LITTLEENDIAN
}
The valid
\
CDI
byte order types are
{
\tt
CDI
\_
BIGENDIAN
}
and
{
\tt
CDI
\_
LITTLEENDIAN
}
...
...
doc/tex/f_taxis.tex
View file @
0d84e48d
...
...
@@ -15,8 +15,8 @@ The function {\tt taxisCreate} creates a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxistype
\
}
\item
[{\tt taxistype}]
The type of the Time axis, one of the set of predefined CDI time axis types.
The valid CDI time axis types are
{
\tt
TAXIS
\_
ABSOLUTE
}
and
{
\tt
TAXIS
\_
RELATIVE
}
.
The type of the Time axis, one of the set of predefined
\
CDI
time axis types.
The valid
\
CDI
time axis types are
{
\tt
TAXIS
\_
ABSOLUTE
}
and
{
\tt
TAXIS
\_
RELATIVE
}
.
\end{deflist}
\end{minipage}
...
...
@@ -78,7 +78,7 @@ The function {\tt taxisDefVdate} defines the reference date of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\item
[{\tt rdate}]
Reference date (YYYYMMDD)
...
...
@@ -101,7 +101,7 @@ The function {\tt taxisInqRdate} returns the reference date of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\end{deflist}
\end{minipage}
...
...
@@ -127,7 +127,7 @@ The function {\tt taxisDefVdate} defines the reference time of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\item
[{\tt rtime}]
Reference time (HHMM)
...
...
@@ -150,7 +150,7 @@ The function {\tt taxisInqRtime} returns the reference time of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\end{deflist}
\end{minipage}
...
...
@@ -176,7 +176,7 @@ The function {\tt taxisDefVdate} defines the verification date of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\item
[{\tt vdate}]
Verification date (YYYYMMDD)
...
...
@@ -199,7 +199,7 @@ The function {\tt taxisInqVdate} returns the verification date of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\end{deflist}
\end{minipage}
...
...
@@ -225,7 +225,7 @@ The function {\tt taxisDefVtime} defines the verification time of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\item
[{\tt vtime}]
Verification time (HHMM)
...
...
@@ -248,7 +248,7 @@ The function {\tt taxisInqVtime} returns the verification time of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\end{deflist}
\end{minipage}
...
...
@@ -274,10 +274,10 @@ The function {\tt taxisDefCalendar} defines the calendar of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
calendar
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\item
[{\tt calendar}]
The type of the calendar, one of the set of predefined CDI calendar types.
The valid CDI calendar types are
{
\tt
CALENDAR
\_
STANDARD
}
,
{
\tt
CALENDAR
\_
360DAYS
}
,
The type of the calendar, one of the set of predefined
\
CDI
calendar types.
The valid
\
CDI
calendar types are
{
\tt
CALENDAR
\_
STANDARD
}
,
{
\tt
CALENDAR
\_
360DAYS
}
,
{
\tt
CALENDAR
\_
365DAYS
}
and
{
\tt
CALENDAR
\_
366DAYS
}
.
\end{deflist}
...
...
@@ -299,7 +299,7 @@ The function {\tt taxisInqCalendar} returns the calendar of a Time axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
taxisID
\
}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\end{deflist}
\end{minipage}
...
...
@@ -307,7 +307,7 @@ Time axis ID, from a previous call to {\tt taxisCreate}
\subsubsection*
{
Result
}
{
\tt
taxisInqCalendar
}
returns the type of the calendar,
one of the set of predefined CDI calendar types.
The valid CDI calendar types are
{
\tt
CALENDAR
\_
STANDARD
}
,
{
\tt
CALENDAR
\_
360DAYS
}
,
one of the set of predefined
\
CDI
calendar types.
The valid
\
CDI
calendar types are
{
\tt
CALENDAR
\_
STANDARD
}
,
{
\tt
CALENDAR
\_
360DAYS
}
,
{
\tt
CALENDAR
\_
365DAYS
}
and
{
\tt
CALENDAR
\_
366DAYS
}
.
doc/tex/f_vlist.tex
View file @
0d84e48d
...
...
@@ -238,7 +238,7 @@ The function {\tt vlistDefTaxis} defines the time axis of a variable list.
\item
[{\tt vlistID}]
Variable list ID, from a previous call to
{
\htmlref
{
\tt
vlistCreate
}{
vlistCreate
}}
\item
[{\tt taxisID}]
Time axis ID, from a previous call to
{
\tt
taxisCreate
}
Time axis ID, from a previous call to
{
\htmlref
{
\tt
taxisCreate
}
{
taxisCreate
}}
\end{deflist}
\end{minipage}
...
...
doc/tex/f_vlist_var.tex
View file @
0d84e48d
...
...
@@ -22,8 +22,8 @@ Grid ID, from a previous call to {\htmlref{\tt gridCreate}{gridCreate}}
\item
[{\tt zaxisID}]
Z-axis ID, from a previous call to
{
\htmlref
{
\tt
zaxisCreate
}{
zaxisCreate
}}
\item
[{\tt timeID}]
One of the set of predefined CDI time identifiers.
The valid CDI time identifiers are
{
\tt
TIME
\_
CONSTANT
}
and
{
\tt
TIME
\_
VARIABLE
}
.
One of the set of predefined
\
CDI
time identifiers.
The valid
\
CDI
time identifiers are
{
\tt
TIME
\_
CONSTANT
}
and
{
\tt
TIME
\_
VARIABLE
}
.
\end{deflist}
\end{minipage}
...
...
@@ -294,7 +294,7 @@ Variable list ID, from a previous call to {\htmlref{\tt vlistCreate}{vlistCreate
Variable identifier
\item
[{\tt datatype}]
The data type identifier.
The valid CDI data types are
{
\tt
DATATYPE
\_
PACK1
}
,
{
\tt
DATATYPE
\_
PACK2
}
,
The valid
\
CDI
data types are
{
\tt
DATATYPE
\_
PACK1
}
,
{
\tt
DATATYPE
\_
PACK2
}
,
{
\tt
DATATYPE
\_
PACK3
}
,
{
\tt
DATATYPE
\_
REAL4
}
and
{
\tt
DATATYPE
\_
REAL8
}
.
...
...
@@ -327,7 +327,7 @@ Variable identifier
\subsubsection*
{
Result
}
{
\tt
vlistInqVarDatatype
}
returns an identifier to the data type of the variable.
The valid CDI data types are
{
\tt
DATATYPE
\_
PACK1
}
,
{
\tt
DATATYPE
\_
PACK2
}
,
{
\tt
DATATYPE
\_
PACK3
}
,
The valid
\
CDI
data types are
{
\tt
DATATYPE
\_
PACK1
}
,
{
\tt
DATATYPE
\_
PACK2
}
,
{
\tt
DATATYPE
\_
PACK3
}
,
{
\tt
DATATYPE
\_
REAL4
}
and
{
\tt
DATATYPE
\_
REAL8
}
.
...
...
doc/tex/f_zaxis.tex
View file @
0d84e48d
...
...
@@ -15,8 +15,8 @@ The function {\tt zaxisCreate} creates a vertical Z-axis.
\hspace*
{
4mm
}
\begin{minipage}
[]
{
15cm
}
\begin{deflist}
{
\tt
zaxistype
\
}
\item
[{\tt zaxistype}]
The type of the Z-axis, one of the set of predefined CDI Z-axis types.
The valid CDI Z-axis types are
{
\tt
ZAXIS
\_
GENERIC
}
,
{
\tt
ZAXIS
\_
SURFACE
}
,
The type of the Z-axis, one of the set of predefined
\
CDI
Z-axis types.
The valid
\
CDI
Z-axis types are
{
\tt
ZAXIS
\_
GENERIC
}
,
{
\tt
ZAXIS
\_
SURFACE
}
,
{
\tt
ZAXIS
\_
HYBRID
}
,
{
\tt
ZAXIS
\_
PRESSURE
}
,
{
\tt
ZAXIS
\_
HEIGHT
}
,
{
\tt
ZAXIS
\_
DEPTH
\_
BELOW
\_
SEA
}
and
{
\tt
ZAXIS
\_
DEPTH
\_
BELOW
\_
LAND
}
.
\item
[{\tt size}]
...
...
@@ -90,8 +90,8 @@ Z-axis ID, from a previous call to {\htmlref{\tt zaxisCreate}{zaxisCreate}}
\subsubsection*
{
Result
}
{
\tt
zaxisInqType
}
returns the type of the Z-axis,
one of the set of predefined CDI Z-axis types.
The valid CDI Z-axis types are
{
\tt
ZAXIS
\_
GENERIC
}
,
{
\tt
ZAXIS
\_
SURFACE
}
,
one of the set of predefined
\
CDI
Z-axis types.
The valid
\
CDI
Z-axis types are
{
\tt
ZAXIS
\_
GENERIC
}
,
{
\tt
ZAXIS
\_
SURFACE
}
,
{
\tt
ZAXIS
\_
HYBRID
}
,
{
\tt
ZAXIS
\_
PRESSURE
}
,
{
\tt
ZAXIS
\_
HEIGHT
}
,
{
\tt
ZAXIS
\_
DEPTH
\_
BELOW
\_
SEA
}
and
{
\tt
ZAXIS
\_
DEPTH
\_
BELOW
\_
LAND
}
.