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
cdo
Commits
fff84508
Commit
fff84508
authored
Oct 02, 2007
by
Uwe Schulzweida
Browse files
Docu update
parent
8d551197
Changes
19
Hide whitespace changes
Inline
Side-by-side
doc/cdo_refcard.pdf
View file @
fff84508
No preview for this file type
doc/tex/bib.tex
View file @
fff84508
...
...
@@ -16,6 +16,13 @@
\href
{
http://www.mpimet.mpg.de
}
{
Max Planck Institute for Meteorologie
}
\label
{
GrADS
}
\bibitem
[GrADS]
{
GrADS
}
\ \\
\href
{
http://www.iges.org/grads/
}
{
Grid Analysis and Display System
}
,
from the Center for Ocean-Land-Atmosphere Studies
(
\href
{
http://www.iges.org/cola.html
}{
COLA
}
)
\label
{
GRIB
}
\bibitem
[GRIB]
{
GRIB
}
\ \\
\href
{
http://www.wmo.ch/web/www/WMOCodes/Guides/GRIB/GRIB1-Contents.html
}
...
...
doc/tex/grid.tex
View file @
fff84508
...
...
@@ -251,7 +251,7 @@ The keywords nvertex, xbounds and ybounds are optional if the area weights are n
\vspace
{
2mm
}
For a lon/lat grid with a
n
rotated pole, the north pole must be defined.
For a lon/lat grid with a rotated pole, the north pole must be defined.
As far as you define the keywords xnpole/ynpole all coordinate values
are for the rotated system.
...
...
doc/tex/mod/Genweights
View file @
fff84508
...
...
@@ -9,7 +9,7 @@
@BeginDescription
Grid interpolation can be a very time consuming process. Especially if the
data is on an unstructured or on a large grid. In this case the
SCRIP
data is on an unstructured or on a large grid. In this case the
\htmlref{SCRIP}{SCRIP}
interpolation process can be split into two parts. First generation of the
interpolation weights, this is the most time consuming part. These interpolation
weights can be reused for every remapping process.
...
...
doc/tex/mod/Gradsdes
View file @
fff84508
...
...
@@ -7,7 +7,7 @@
@Operators = gradsdes1 gradsdes2
@BeginDescription
Creates a
GrADS
data descriptor file. Supported file formats are GRIB,
Creates a
\htmlref{GrADS}{GrADS}
data descriptor file. Supported file formats are GRIB,
SERVICE, EXTRA and IEG. For GRIB files the GrADS map file is also
generated. For SERVICE and EXTRA files the grid must be specified with
the CDO option '-g <grid>'. This module takes @file{ifile} in order to create
...
...
doc/tex/mod/Histogram
View file @
fff84508
...
...
@@ -8,7 +8,7 @@
@BeginDescription
This module creates bins for a histogram of the input data.
Only 2-dimensional input field are allowed. The ouput file
Only 2-dimensional input field
s
are allowed. The ouput file
contains one vertical level for each of the bins requested.
@EndDescription
@EndModule
...
...
doc/tex/mod/Inttime
View file @
fff84508
...
...
@@ -30,7 +30,7 @@ The user has to define the start date/time with an optional increment.
@BeginDescription
This operator performs linear interpolation between time steps.
The user has to define the number of time steps f
o
rm one time step
The user has to define the number of time steps fr
o
m one time step
to the next.
@EndDescription
@EndOperator
...
...
doc/tex/mod/Mastrfu
View file @
fff84508
...
...
@@ -12,7 +12,7 @@
@BeginDescription
This is a special operator for the post processing of the atmospheric
general circulation model
ECHAM
. It computes the mass stream function
general circulation model
\htmlref{ECHAM}{ECHAM}
. It computes the mass stream function
(code number 272). The input dataset must be a zonal mean of v-velocity
(code number 132) on pressure levels.
@EndDescription
...
...
doc/tex/mod/Output
View file @
fff84508
...
...
@@ -30,7 +30,8 @@ Each row has 6 elements with the C-style format "%13.6g".
@BeginDescription
Prints all values to standard output.
The format and number of elements for each row can be specified by the parameters.
The format and number of elements for each row must be specified by the parameters
@var{format} and @var{nelem}.
@EndDescription
@EndOperator
...
...
doc/tex/mod/Remap
View file @
fff84508
...
...
@@ -16,7 +16,7 @@
@BeginDescription
This operator remaps all input fields to a new grid. The remap type and the
interpolation weights of one grid are read from a netCDF file. The netCDF
file with the weights must follow the
SCRIP
convention. Normaly these weights
file with the weights must follow the
\htmlref{SCRIP}{SCRIP}
convention. Normaly these weights
come from a previous call to module @mod{GENWEIGHTS} or was created by the original
SCRIP package.
@EndDescription
...
...
doc/tex/mod/Rotuv
View file @
fff84508
...
...
@@ -13,9 +13,9 @@
@Parameter = u v ...
@BeginDescription
This is a special operator for datsets with wind components on a
n
rotated grid,
This is a special operator for datsets with wind components on a rotated grid,
e.g. data from the regional model REMO. It performs a backward transformation of
velocity components U and V from a
n
rotated spherical system to a geographical system.
velocity components U and V from a rotated spherical system to a geographical system.
@EndDescription
@EndOperator
...
...
@@ -27,7 +27,7 @@ STRING Pairs of zonal and meridional velocity components (use variable names or
@BeginExample
To transform the u and v velocity of a dataset from a
n
rotated
To transform the u and v velocity of a dataset from a rotated
spherical system to a geographical system use:
@BeginVerbatim
cdo rotuvb,u,v ifile ofile
...
...
doc/tex/mod/Select
View file @
fff84508
...
...
@@ -36,7 +36,7 @@ Deletes all fields with code numbers in a user given list.
@BeginOperator_selname
@Title = Select variables by name
@Parameter = vars
@Parameter = var
name
s
@BeginDescription
Selects all fields with variable names in a user given list.
...
...
@@ -46,7 +46,7 @@ Selects all fields with variable names in a user given list.
@BeginOperator_delname
@Title = Delete variables by name
@Parameter = vars
@Parameter = var
name
s
@BeginDescription
Deletes all fields with variable names in a user given list.
...
...
@@ -148,7 +148,7 @@ This operator can not be used with netCDF data!
@BeginParameter
@Item = codes
INTEGER Comma separated list of code numbers
@Item = vars
@Item = var
name
s
STRING Comma separated list of variable names
@Item = stdnames
STRING Comma separated list of standard names
...
...
doc/tex/mod/Seltime
View file @
fff84508
...
...
@@ -9,7 +9,7 @@
@BeginDescription
This module selects user specified time steps from @file{ifile} and writes them to @file{ofile}.
The time steps selected depend on the actual operator and the parameters.
The time steps selected depend
s
on the actual operator and the parameters.
@EndDescription
@EndModule
...
...
doc/tex/mod/Settime
View file @
fff84508
...
...
@@ -89,7 +89,7 @@ Sets the time axis.
@Parameter = date time
@BeginDescription
Sets the reference time of a
n
relative time axis.
Sets the reference time of a relative time axis.
@EndDescription
@EndOperator
...
...
@@ -99,7 +99,7 @@ Sets the reference time of an relative time axis.
@Parameter = calendar
@BeginDescription
Sets the calendar of a
n
relative time axis.
Sets the calendar of a relative time axis.
@EndDescription
@EndOperator
...
...
doc/tex/mod/Vertint
View file @
fff84508
...
...
@@ -34,7 +34,7 @@ Interpolates 3D variables on hybrid model level to pressure level.
Interpolates 3D variables on hybrid model level to height level.
The procedure is the same as for operator @oper{mh2pl} except that
the pressure levels are calculated from the heights by:
@math{plev = 101325*exp(hlev/-7000)}
@math{plev
el
= 101325*exp(hlev
el
/-7000)}
@EndDescription
@EndOperator
...
...
doc/tex/ref_intro_statis.tex
View file @
fff84508
...
...
@@ -7,7 +7,7 @@ size. Computing the average is just adding the sample members and divide
the result by the sample size. For example, the mean of 1, 2, miss and 3
is (1+2+3)/3 = 2, whereas the average is (1+2+miss+3)/4 = miss/4 = miss.
If there are no missing values in the sample, the average and the mean are
identical.
identical.
\\
In this section the abbreviations as in the following table are used:
\vspace
{
3mm
}
...
...
src/Intgrid.c
View file @
fff84508
...
...
@@ -33,9 +33,9 @@
#include
"interpol.h"
int
gen
ReduceGrid
(
int
gridID1
,
int
xinc
,
int
yinc
)
int
gen
Thinout
(
int
gridID1
,
int
xinc
,
int
yinc
)
{
static
char
func
[]
=
"gen
ReduceGrid
"
;
static
char
func
[]
=
"gen
Thinout
"
;
int
debug
=
1
;
int
i
,
j
,
i1
,
yoff
=
0
,
ilon
,
ilat
,
olon
,
olat
;
int
gridID2
,
gridtype
;
...
...
@@ -229,9 +229,9 @@ void boxavg(FIELD *field1, FIELD *field2, int xinc, int yinc)
}
void
reducegrid
(
FIELD
*
field1
,
FIELD
*
field2
,
int
xinc
,
int
yinc
)
void
thinout
(
FIELD
*
field1
,
FIELD
*
field2
,
int
xinc
,
int
yinc
)
{
static
char
func
[]
=
"
reducegrid
"
;
static
char
func
[]
=
"
thinout
"
;
int
nlon1
,
nlat1
;
int
nlon2
,
nlat2
;
int
ilat
,
ilon
,
olat
,
olon
;
...
...
@@ -295,7 +295,7 @@ void reducegrid(FIELD *field1, FIELD *field2, int xinc, int yinc)
void
*
Intgrid
(
void
*
argument
)
{
static
char
func
[]
=
"Intgrid"
;
int
INTGRID
,
INTPOINT
,
INTERPOLATE
,
BOXAVG
,
REDUCEGRID
;
int
INTGRID
,
INTPOINT
,
INTERPOLATE
,
BOXAVG
,
THINOUT
;
int
operatorID
;
int
streamID1
,
streamID2
;
int
nrecs
,
ngrids
;
...
...
@@ -318,7 +318,7 @@ void *Intgrid(void *argument)
INTPOINT
=
cdoOperatorAdd
(
"intpoint"
,
0
,
0
,
NULL
);
INTERPOLATE
=
cdoOperatorAdd
(
"interpolate"
,
0
,
0
,
NULL
);
BOXAVG
=
cdoOperatorAdd
(
"boxavg"
,
0
,
0
,
NULL
);
REDUCEGRID
=
cdoOperatorAdd
(
"
reducegrid
"
,
0
,
0
,
NULL
);
THINOUT
=
cdoOperatorAdd
(
"
thinout
"
,
0
,
0
,
NULL
);
operatorID
=
cdoOperatorID
();
...
...
@@ -339,7 +339,7 @@ void *Intgrid(void *argument)
gridDefXvals
(
gridID2
,
&
slon
);
gridDefYvals
(
gridID2
,
&
slat
);
}
else
if
(
operatorID
==
REDUCEGRID
||
operatorID
==
BOXAVG
)
else
if
(
operatorID
==
THINOUT
||
operatorID
==
BOXAVG
)
{
operatorInputArg
(
"xinc, yinc"
);
operatorCheckArgc
(
2
);
...
...
@@ -362,7 +362,7 @@ void *Intgrid(void *argument)
{
gridID1
=
vlistGrid
(
vlistID1
,
index
);
if
(
operatorID
==
BOXAVG
||
operatorID
==
REDUCEGRID
)
if
(
operatorID
==
BOXAVG
||
operatorID
==
THINOUT
)
{
if
(
index
==
0
)
{
...
...
@@ -370,7 +370,7 @@ void *Intgrid(void *argument)
gridInqType
(
gridID1
)
!=
GRID_CURVILINEAR
)
cdoAbort
(
"Interpolation of %s data unsupported!"
,
gridNamePtr
(
gridInqType
(
gridID1
))
);
gridID2
=
gen
ReduceGrid
(
gridID1
,
xinc
,
yinc
);
gridID2
=
gen
Thinout
(
gridID1
,
xinc
,
yinc
);
}
else
cdoAbort
(
"Too many different grids!"
);
...
...
@@ -427,8 +427,8 @@ void *Intgrid(void *argument)
interpolate
(
&
field1
,
&
field2
);
else
if
(
operatorID
==
BOXAVG
)
boxavg
(
&
field1
,
&
field2
,
xinc
,
yinc
);
else
if
(
operatorID
==
REDUCEGRID
)
reducegrid
(
&
field1
,
&
field2
,
xinc
,
yinc
);
else
if
(
operatorID
==
THINOUT
)
thinout
(
&
field1
,
&
field2
,
xinc
,
yinc
);
nmiss
=
field2
.
nmiss
;
...
...
src/modules.c
View file @
fff84508
...
...
@@ -248,7 +248,7 @@ void *Wct(void *argument);
#define HistogramOperators {"histcount", "histsum", "histmean", "histfreq"}
#define InfoOperators {"info", "infov", "map"}
#define InputOperators {"input", "inputsrv", "inputext"}
#define IntgridOperators {"intgridbil", "intpoint", "interpolate", "intarea", "boxavg", "
reducegrid
"}
#define IntgridOperators {"intgridbil", "intpoint", "interpolate", "intarea", "boxavg", "
thinout
"}
#define IntgridtrajOperators {"intgridtraj"}
#define InttimeOperators {"inttime"}
#define IntntimeOperators {"intntime"}
...
...
src/operator_help.h
View file @
fff84508
...
...
@@ -331,8 +331,8 @@ static char *SelectHelp[] = {
"SYNOPSIS"
,
" selcode,codes ifile ofile"
,
" delcode,codes ifile ofile"
,
" selname,vars ifile ofile"
,
" delname,vars ifile ofile"
,
" selname,var
name
s ifile ofile"
,
" delname,var
name
s ifile ofile"
,
" selstdname,stdnames ifile ofile"
,
" sellevel,levels ifile ofile"
,
" selgrid,grids ifile ofile"
,
...
...
@@ -374,7 +374,7 @@ static char *SelectHelp[] = {
""
,
"PARAMETER"
,
" codes INTEGER Comma separated list of code numbers"
,
" var
s
STRING Comma separated list of variable names"
,
" var
names
STRING Comma separated list of variable names"
,
" stdnames STRING Comma separated list of standard names"
,
" levels FLOAT Comma separated list of levels"
,
" ltypes INTEGER Comma separated list of GRIB level types"
,
...
...
@@ -404,7 +404,7 @@ static char *SeltimeHelp[] = {
""
,
"DESCRIPTION"
,
" This module selects user specified time steps from ifile and writes them to ofile."
,
" The time steps selected depend on the actual operator and the parameters."
,
" The time steps selected depend
s
on the actual operator and the parameters."
,
""
,
"OPERATORS"
,
" seltimestep Select time steps"
,
...
...
@@ -700,9 +700,9 @@ static char *SettimeHelp[] = {
" settaxis Set time axis"
,
" Sets the time axis."
,
" setreftime Set reference time"
,
" Sets the reference time of a
n
relative time axis."
,
" Sets the reference time of a relative time axis."
,
" setcalendar Set calendar"
,
" Sets the calendar of a
n
relative time axis."
,
" Sets the calendar of a relative time axis."
,
" shifttime Shift time steps"
,
" Shifts all time steps by the parameter sval."
,
""
,
...
...
@@ -2514,7 +2514,7 @@ static char *GenweightsHelp[] = {
""
,
"DESCRIPTION"
,
" Grid interpolation can be a very time consuming process. Especially if the"
,
" data is on an unstructured or on a large grid. In this case the
SCRIP
"
,
" data is on an unstructured or on a large grid. In this case the
\\
htmlref{SCRIP}{SCRIP}
"
,
" interpolation process can be split into two parts. First generation of the"
,
" interpolation weights, this is the most time consuming part. These interpolation "
,
" weights can be reused for every remapping process. "
,
...
...
@@ -2559,7 +2559,7 @@ static char *RemapHelp[] = {
"DESCRIPTION"
,
" This operator remaps all input fields to a new grid. The remap type and the "
,
" interpolation weights of one grid are read from a netCDF file. The netCDF "
,
" file with the weights must follow the
SCRIP
convention. Normaly these weights "
,
" file with the weights must follow the
\\
htmlref{SCRIP}{SCRIP}
convention. Normaly these weights "
,
" come from a previous call to module GENWEIGHTS or was created by the original"
,
" SCRIP package."
,
""
,
...
...
@@ -2656,7 +2656,7 @@ static char *IntvertHelp[] = {
" Interpolates 3D variables on hybrid model level to height level."
,
" The procedure is the same as for operator mh2pl except that "
,
" the pressure levels are calculated from the heights by:"
,
" plev = 101325*exp(hlev/-7000)"
,
" plev
el
= 101325*exp(hlev
el
/-7000)"
,
""
,
"PARAMETER"
,
" plevels FLOAT Pressure levels in pascal"
,
...
...
@@ -2685,7 +2685,7 @@ static char *InttimeHelp[] = {
" The user has to define the start date/time with an optional increment."
,
" intntime Time interpolation"
,
" This operator performs linear interpolation between time steps."
,
" The user has to define the number of time steps f
o
rm one time step"
,
" The user has to define the number of time steps fr
o
m one time step"
,
" to the next."
,
""
,
"PARAMETER"
,
...
...
@@ -2875,7 +2875,8 @@ static char *OutputHelp[] = {
" Each row has 6 elements with the C-style format
\"
%13.6g
\"
."
,
" outputf Formatted output"
,
" Prints all values to standard output."
,
" The format and number of elements for each row can be specified by the parameters."
,
" The format and number of elements for each row must be specified by the parameters"
,
" format and nelem."
,
" outputint Integer output"
,
" Prints all values rounded to the nearest interger to standard output."
,
" outputsrv SERVICE output"
,
...
...
@@ -2899,7 +2900,7 @@ static char *GradsdesHelp[] = {
" <operator> ifile"
,
""
,
"DESCRIPTION"
,
" Creates a
GrADS
data descriptor file. Supported file formats are GRIB,"
,
" Creates a
\\
htmlref{GrADS}{GrADS}
data descriptor file. Supported file formats are GRIB,"
,
" SERVICE, EXTRA and IEG. For GRIB files the GrADS map file is also "
,
" generated. For SERVICE and EXTRA files the grid must be specified with"
,
" the CDO option '-g <grid>'. This module takes ifile in order to create "
,
...
...
@@ -2925,7 +2926,7 @@ static char *Smooth9Help[] = {
" smooth9 ifile ofile"
,
""
,
"DESCRIPTION"
,
" Performs a 9 point smoothing on all fields with a
n
rectangular grid."
,
" Performs a 9 point smoothing on all fields with a rectangular grid."
,
" The result at each grid point is a weighted average of the grid point plus"
,
" the 8 surrounding points. The center point receives a weight of 1.0, the "
,
" points at each side and above and below receive a weight of 0.5, and corner "
,
...
...
@@ -3018,9 +3019,9 @@ static char *RotuvHelp[] = {
" rotuvb,u,v,... ifile ofile"
,
""
,
"DESCRIPTION"
,
" This is a special operator for datsets with wind components on a
n
rotated grid, "
,
" This is a special operator for datsets with wind components on a rotated grid, "
,
" e.g. data from the regional model REMO. It performs a backward transformation of "
,
" velocity components U and V from a
n
rotated spherical system to a geographical system."
,
" velocity components U and V from a rotated spherical system to a geographical system."
,
""
,
"PARAMETER"
,
" u,v,... STRING Pairs of zonal and meridional velocity components (use variable names or code numbers)"
,
...
...
@@ -3036,7 +3037,7 @@ static char *MastrfuHelp[] = {
""
,
"DESCRIPTION"
,
" This is a special operator for the post processing of the atmospheric "
,
" general circulation model
ECHAM
. It computes the mass stream function "
,
" general circulation model
\\
htmlref{ECHAM}{ECHAM}
. It computes the mass stream function "
,
" (code number 272). The input dataset must be a zonal mean of v-velocity"
,
" (code number 132) on pressure levels."
,
NULL
...
...
@@ -3051,7 +3052,7 @@ static char *HistogramHelp[] = {
""
,
"DESCRIPTION"
,
" This module creates bins for a histogram of the input data."
,
" Only 2-dimensional input field are allowed. The ouput file "
,
" Only 2-dimensional input field
s
are allowed. The ouput file "
,
" contains one vertical level for each of the bins requested."
,
""
,
"OPERATORS"
,
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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