Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
mpim-sw
libcdi
Commits
15e51519
Commit
15e51519
authored
Oct 06, 2017
by
Uwe Schulzweida
Browse files
Fixed merge conflict.
parents
e7f4e5c4
a8e6ba86
Changes
46
Hide whitespace changes
Inline
Side-by-side
ChangeLog
View file @
15e51519
2017-10-
27
Uwe Schulzweida
2017-10-
05
Uwe Schulzweida
* using CGRIBEX library version 1.9.0
* Version 1.9.1 released
2017-09-28 Uwe Schulzweida
* Renamed TAXIS_CONSTANT to TIME_CONSTANT
2017-09-20 Uwe Schulzweida
* vlistCopyFlag: copy datatype (bug fix)
...
...
app/cdi.c
View file @
15e51519
...
...
@@ -178,7 +178,7 @@ void usage(void)
fprintf
(
stderr
,
" jpeg JPEG compression of GRIB2 records
\n
"
);
fprintf
(
stderr
,
" zip[_1-9] Deflate compression of netCDF4 variables
\n
"
);
fprintf
(
stderr
,
"
\n
"
);
fprintf
(
stderr
,
" Report bugs to <http://code.
zmaw
.de/projects/cdi>
\n
"
);
fprintf
(
stderr
,
" Report bugs to <http
s
://code.
mpimet.mpg
.de/projects/cdi>
\n
"
);
}
...
...
@@ -344,9 +344,9 @@ void printShortinfo(int streamID, int vlistID, int vardis)
int
nsubtypes
=
vlistNsubtypes
(
vlistID
);
if
(
nsubtypes
>
0
)
fprintf
(
stdout
,
" Var : Institut Source Ttype
Subtypes
Num
Levels Num
Gridsize
Num Dtype : "
);
fprintf
(
stdout
,
" Var : Institut Source T
Step
type Subtypes Levels Num
Points
Num Dtype : "
);
else
fprintf
(
stdout
,
" Var : Institut Source Ttype
Levels Num
Gridsize
Num Dtype : "
);
fprintf
(
stdout
,
" Var : Institut Source T
Step
type Levels Num
Points
Num Dtype : "
);
if
(
vardis
)
fprintf
(
stdout
,
"Parameter name
\n
"
);
...
...
@@ -361,24 +361,27 @@ void printShortinfo(int streamID, int vlistID, int vardis)
fprintf
(
stdout
,
"%6d : "
,
varID
+
1
);
/
*
institute info
*/
/
/
institute info
const
char
*
instptr
=
institutInqNamePtr
(
vlistInqVarInstitut
(
vlistID
,
varID
));
strcpy
(
tmpname
,
"unknown"
);
if
(
instptr
)
strncpy
(
tmpname
,
instptr
,
CDI_MAX_NAME
);
limit_string_length
(
tmpname
,
CDI_MAX_NAME
);
fprintf
(
stdout
,
"%-8s "
,
tmpname
);
/
*
source info
*/
/
/
source info
const
char
*
modelptr
=
modelInqNamePtr
(
vlistInqVarModel
(
vlistID
,
varID
));
strcpy
(
tmpname
,
"unknown"
);
if
(
modelptr
)
strncpy
(
tmpname
,
modelptr
,
CDI_MAX_NAME
);
limit_string_length
(
tmpname
,
CDI_MAX_NAME
);
fprintf
(
stdout
,
"%-8s "
,
tmpname
);
/* tsteptype */
// timetype
int
timetype
=
vlistInqVarTimetype
(
vlistID
,
varID
);
fprintf
(
stdout
,
"%c "
,
timetype
==
TIME_CONSTANT
?
'c'
:
'v'
);
// tsteptype
int
tsteptype
=
vlistInqVarTsteptype
(
vlistID
,
varID
);
if
(
tsteptype
==
TSTEP_CONSTANT
)
fprintf
(
stdout
,
"%-8s "
,
"constant"
);
else
if
(
tsteptype
==
TSTEP_INSTANT
)
fprintf
(
stdout
,
"%-8s "
,
"instant"
);
if
(
tsteptype
==
TSTEP_INSTANT
)
fprintf
(
stdout
,
"%-8s "
,
"instant"
);
else
if
(
tsteptype
==
TSTEP_INSTANT2
)
fprintf
(
stdout
,
"%-8s "
,
"instant"
);
else
if
(
tsteptype
==
TSTEP_INSTANT3
)
fprintf
(
stdout
,
"%-8s "
,
"instant"
);
else
if
(
tsteptype
==
TSTEP_MIN
)
fprintf
(
stdout
,
"%-8s "
,
"min"
);
...
...
@@ -980,7 +983,7 @@ int main(int argc, char *argv[])
{
for
(
varID
=
0
;
varID
<
nvars
;
varID
++
)
{
if
(
vlistInqVarT
step
type
(
vlistID1
,
varID
)
==
T
STEP
_CONSTANT
&&
tsID
>
0
)
continue
;
if
(
vlistInqVarT
ime
type
(
vlistID1
,
varID
)
==
T
IME
_CONSTANT
&&
tsID
>
0
)
continue
;
number
=
vlistInqVarNumber
(
vlistID1
,
varID
);
gridID
=
vlistInqVarGrid
(
vlistID1
,
varID
);
...
...
app/printinfo.h
View file @
15e51519
...
...
@@ -262,7 +262,7 @@ void printGridInfoKernel(int gridID, int index, bool lproj)
size_t
ysize
=
gridInqYsize
(
gridID
);
size_t
xysize
=
xsize
*
ysize
;
// int prec = gridInq
Prec
(gridID);
// int prec = gridInq
Datatype
(gridID);
// int dig = (prec == CDI_DATATYPE_FLT64) ? 15 : 7;
int
dig
=
7
;
#ifdef CDO
...
...
@@ -462,7 +462,7 @@ void printZaxisInfo(int vlistID)
int
zaxistype
=
zaxisInqType
(
zaxisID
);
int
ltype
=
zaxisInqLtype
(
zaxisID
);
int
levelsize
=
zaxisInqSize
(
zaxisID
);
// int prec = zaxisInq
Prec
(zaxisID);
// int prec = zaxisInq
Datatype
(zaxisID);
// int dig = (prec == CDI_DATATYPE_FLT64) ? 15 : 7;
int
dig
=
7
;
#ifdef CDO
...
...
doc/pio/tex/intro.tex
View file @
15e51519
...
...
@@ -3,7 +3,7 @@ The scalability of Earth System Models (ESMs) is the leading target of the
}{
ScalES
}
project, in particular with regard to future computer development. Our work
focuses on overcoming the I/O bottleneck. The
\href
{
https://code.
zmaw
.de/projects/cdi
}{
Climate Data Interface
}
(
{
\CDI
}
) is a
\href
{
https://code.
mpimet.mpg
.de/projects/cdi
}{
Climate Data Interface
}
(
{
\CDI
}
) is a
sophisticated data handling library of
the Max-Planck-Institute for Meteorology with broad acceptence in the
community.
...
...
doc/tex/c_quick_ref.tex
View file @
15e51519
...
...
@@ -1014,7 +1014,7 @@ Define the time axis of a variable list.
\section*
{
\tt
\htmlref
{
vlistDefVar
}{
vlistDefVar
}}
\begin{verbatim}
int vlistDefVar (int vlistID, int gridID, int zaxisID, int t
step
type);
int vlistDefVar (int vlistID, int gridID, int zaxisID, int t
ime
type);
\end{verbatim}
Create a new variable.
...
...
@@ -1113,7 +1113,7 @@ Define the standard name of a Variable.
\section*
{
\tt
\htmlref
{
vlistDefVarTiles
}{
vlistDefVarTiles
}}
\begin{verbatim}
int vlistDefVarTiles (int vlistID, int gridID, int zaxisID, int t
step
type,
int vlistDefVarTiles (int vlistID, int gridID, int zaxisID, int t
ime
type,
int tilesetID);
\end{verbatim}
...
...
doc/tex/f_quick_ref.tex
View file @
15e51519
...
...
@@ -1020,7 +1020,7 @@ Define the time axis of a variable list.
\begin{verbatim}
INTEGER FUNCTION vlistDefVar (INTEGER vlistID, INTEGER gridID, INTEGER zaxisID,
INTEGER t
step
type)
INTEGER t
ime
type)
\end{verbatim}
Create a new variable.
...
...
@@ -1125,7 +1125,7 @@ Define the standard name of a Variable.
\begin{verbatim}
INTEGER FUNCTION vlistDefVarTiles (INTEGER vlistID, INTEGER gridID,
INTEGER zaxisID, INTEGER t
step
type,
INTEGER zaxisID, INTEGER t
ime
type,
INTEGER tilesetID)
\end{verbatim}
...
...
doc/tex/install.tex
View file @
15e51519
...
...
@@ -4,8 +4,8 @@ This section describes how to build the {\CDI} library from the sources on a UNI
{
\CDI
}
is using the GNU configure and build system to compile the source code.
The only requirement is a working ANSI C99 compiler.
First go to the
\href
{
http://code.
zmaw
.de/projects/cdi/files
}{
\texttt
{
download
}}
page
(
\texttt
{
http://code.
zmaw
.de/projects/cdi/files
}
) to get the latest distribution,
First go to the
\href
{
http
s
://code.
mpimet.mpg
.de/projects/cdi/files
}{
\texttt
{
download
}}
page
(
\texttt
{
http
s
://code.
mpimet.mpg
.de/projects/cdi/files
}
) to get the latest distribution,
if you do not already have it.
To take full advantage of
{
\CDI
}
's features the following additional libraries should be installed:
...
...
examples/cdi_write.c
View file @
15e51519
...
...
@@ -33,8 +33,8 @@ int main(void)
int
vlistID
=
vlistCreate
();
// Define the variables
int
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
STEP_INSTANT
);
int
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
STEP_INSTANT
);
int
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
IME_VARYING
);
int
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
IME_VARYING
);
// Define the variable names
vlistDefVarName
(
vlistID
,
varID1
,
"varname1"
);
...
...
examples/cdi_write_const.c
View file @
15e51519
...
...
@@ -35,8 +35,8 @@ int main(void)
vlistID
=
vlistCreate
();
// Define the variables
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
STEP
_CONSTANT
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
STEP
_CONSTANT
);
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
IME
_CONSTANT
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
IME
_CONSTANT
);
// Define the variable names
vlistDefVarName
(
vlistID
,
varID1
,
"varname1"
);
...
...
examples/cdi_write_dbl.c
View file @
15e51519
...
...
@@ -37,8 +37,8 @@ int main(void)
vlistID
=
vlistCreate
();
// Define the variables
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
STEP_INSTANT
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
STEP_INSTANT
);
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
IME_VARYING
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
IME_VARYING
);
// Define the variable names
vlistDefVarName
(
vlistID
,
varID1
,
"varname1"
);
...
...
examples/cdi_write_ens.c
View file @
15e51519
...
...
@@ -36,7 +36,7 @@ int main(void)
instID
=
institutDef
(
252
,
0
,
NULL
,
NULL
);
vlistID
=
vlistCreate
();
varID
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID
,
T
STEP_INSTANT
);
varID
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID
,
T
IME_VARYING
);
vlistDefVarEnsemble
(
vlistID
,
varID
,
1
,
2
,
3
);
...
...
examples/cdi_write_f.f
View file @
15e51519
PROGRAM
CDIWRITE
1
,
PROGRAM
CDIWRITE
IMPLICIT
NONE
...
...
@@ -41,8 +41,8 @@
vlistID
=
vlistCreate
()
! Define the variables
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
STEP_INSTANT
)
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
STEP_INSTANT
)
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
IME_VARYING
)
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
IME_VARYING
)
! Define the variable names
CALL
vlistDefVarName
(
vlistID
,
varID1
,
"varname1"
)
...
...
examples/cdi_write_f2003.f90
View file @
15e51519
...
...
@@ -44,8 +44,8 @@
vlistID
=
vlistCreate
()
! Define the variables
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
STEP_INSTANT
)
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
STEP_INSTANT
)
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
IME_VARYING
)
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
IME_VARYING
)
! Define the variable names
varname
=
"varname1"
//
c_null_char
...
...
examples/cdi_write_float.c
View file @
15e51519
...
...
@@ -36,8 +36,8 @@ int main(void)
vlistID
=
vlistCreate
();
// Define the variables
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
STEP_INSTANT
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
STEP_INSTANT
);
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
IME_VARYING
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
IME_VARYING
);
// Define the variable names
vlistDefVarName
(
vlistID
,
varID1
,
"varname1"
);
...
...
examples/cdi_write_forecast.c
View file @
15e51519
...
...
@@ -37,7 +37,7 @@ int main(void)
// Define the variables
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
TSTEP_AVG
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
STEP_INSTANT
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
IME_VARYING
);
// Define the variable names
vlistDefVarName
(
vlistID
,
varID1
,
"varname1"
);
...
...
examples/cdi_write_gribkey.c
View file @
15e51519
...
...
@@ -37,7 +37,7 @@ int main(void)
// Define the variables
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
TSTEP_AVG
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
STEP_INSTANT
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
IME_VARYING
);
// Define the variable names
vlistDefVarName
(
vlistID
,
varID1
,
"varname1"
);
...
...
examples/cdi_write_hybrid.c
View file @
15e51519
...
...
@@ -54,10 +54,10 @@ int main(void)
vlistID
=
vlistCreate
();
// Define the variables
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
STEP_INSTANT
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
STEP_INSTANT
);
varID3
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID3
,
T
STEP_INSTANT
);
varID4
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID4
,
T
STEP_INSTANT
);
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
IME_VARYING
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
IME_VARYING
);
varID3
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID3
,
T
IME_VARYING
);
varID4
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID4
,
T
IME_VARYING
);
// Define the variable names
vlistDefVarName
(
vlistID
,
varID1
,
"sp"
);
...
...
examples/cdi_write_pl.c
View file @
15e51519
...
...
@@ -39,8 +39,8 @@ int main(void)
vlistID
=
vlistCreate
();
// Define the variables
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
STEP_INSTANT
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
STEP_INSTANT
);
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
IME_VARYING
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
IME_VARYING
);
// Define the variable names
vlistDefVarName
(
vlistID
,
varID1
,
"varname1"
);
...
...
examples/cdi_write_point.c
View file @
15e51519
...
...
@@ -29,8 +29,8 @@ int main(void)
vlistID
=
vlistCreate
();
// Define the variables
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
STEP_INSTANT
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
STEP_INSTANT
);
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
IME_VARYING
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
IME_VARYING
);
// Define the variable names
vlistDefVarName
(
vlistID
,
varID1
,
"varname1"
);
...
...
examples/cdi_write_refgrid.c
View file @
15e51519
...
...
@@ -34,8 +34,8 @@ int main(void)
vlistID
=
vlistCreate
();
// Define the variables
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
STEP_INSTANT
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
STEP_INSTANT
);
varID1
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID1
,
T
IME_VARYING
);
varID2
=
vlistDefVar
(
vlistID
,
gridID
,
zaxisID2
,
T
IME_VARYING
);
// Define the variable names
vlistDefVarName
(
vlistID
,
varID1
,
"varname1"
);
...
...
Prev
1
2
3
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment