operator_help.h 206 KB
Newer Older
Uwe Schulzweida's avatar
Uwe Schulzweida committed
1
/* Automatically created with makedoc, don't edit! */
Uwe Schulzweida's avatar
Uwe Schulzweida committed
2
3
4

static char *InfoHelp[] = {
    "NAME",
5
    "    info, infon, map - Information and simple statistics",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
6
7
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
8
    "    <operator>  ifiles",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
9
10
    "",
    "DESCRIPTION",
11
    "    This module writes information about the structure and contents ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
12
13
14
    "    of all input files to standard output.  All input files need to have ",
    "    the same structure with the same variables on different time steps.",
    "    The information displayed depends on the chosen operator.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
15
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
16
    "OPERATORS",
17
    "    info   Dataset information listed by parameter identifier",
18
    "           Prints information and simple statistics for each field of all",
19
20
    "           input datasets. For each field the operator prints one line with ",
    "           the following elements:",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
21
    "           - Date and Time",
22
    "           - Parameter identifier and Level",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
23
24
25
    "           - Size of the grid and number of Missing values",
    "           - Minimum, Mean and Maximum \\",
    "           The mean value is computed without the use of area weights!",
26
27
28
    "    infon  Dataset information listed by parameter name",
    "           The same as operator info but using the name instead of the",
    "           identifier to label the parameter.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
29
    "    map    Dataset information and simple map",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
30
    "           Prints information, simple statistics and a map for each field of all input",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
31
    "           datasets. The map will be printed only for fields on a regular lon/lat grid.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
32
33
34
35
36
    NULL
};

static char *SinfoHelp[] = {
    "NAME",
37
    "    sinfo, sinfon - Short information",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
38
39
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
40
    "    <operator>  ifiles",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
41
42
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
43
44
45
46
    "    This module writes information about the structure of ifiles to standard output.",
    "    ifiles is an unlimited number of input files. All input files need to have ",
    "    the same structure with the same variables on different time steps.",
    "    The information displayed depends on the chosen operator.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
47
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
48
    "OPERATORS",
49
    "    sinfo   Short information listed by parameter identifier",
50
    "            Prints short information of a dataset. The information is divided into",
51
52
    "            4 sections. Section 1 prints one line per parameter with the following ",
    "            information:",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
53
    "            - institute and source",
54
    "            - parameter identifier",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
55
    "            - horizontal grid size and number",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
56
    "            - number of vertical levels and z-axis number",
57
58
    "            Section 2 and 3 gives a short overview of all horizontal and vertical grids.",
    "            And the last section contains short information of the time axis.",
59
    "    sinfon  Short information listed by parameter name",
60
61
    "            The same as operator sinfo but using the name instead of the ",
    "            identifier to label the parameter.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
62
63
64
65
66
    NULL
};

static char *DiffHelp[] = {
    "NAME",
67
    "    diff, diffn - Compare two datasets field by field",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
68
69
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
70
    "    <operator>  ifile1 ifile2",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
71
72
    "",
    "DESCRIPTION",
73
    "    Compares the contents of two datasets field by field. The input",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
74
    "    datasets need to have the same structure and its fields need to have ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
75
    "    the same header information and dimensions.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
76
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
77
    "OPERATORS",
78
    "    diff   Compare two datasets listed by parameter id",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
79
80
    "           Provides statistics on differences between two datasets.",
    "           For each pair of fields the operator prints one line with the following information:",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
81
    "           - Date and Time",
82
    "           - Parameter identifier and Level",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
83
84
85
86
87
    "           - Size of the grid and number of Missing values",
    "           - Occurrence of coefficient pairs with different signs (S)",
    "           - Occurrence of zero values (Z)",
    "           - Maxima of absolute difference of coefficient pairs",
    "           - Maxima of relative difference of non-zero coefficient pairs with equal signs",
88
89
90
    "    diffn  Compare two datasets listed by parameter name",
    "           The same as operator diff. Using the name instead of the",
    "           identifier to label the parameter.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
91
92
93
94
95
    NULL
};

static char *NinfoHelp[] = {
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
96
    "    npar, nlevel, nyear, nmon, ndate, ntime - ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
97
    "    Print the number of parameters, levels or times",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
98
99
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
100
    "    <operator>  ifile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
101
102
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
103
104
    "    This module prints the number of variables, levels or times of the ",
    "    input dataset.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
105
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
106
    "OPERATORS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
107
108
    "    npar    Number of parameters",
    "            Prints the number of parameters (variables).",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
109
110
111
112
113
114
115
116
    "    nlevel  Number of levels",
    "            Prints the number of levels for each variable.",
    "    nyear   Number of years",
    "            Prints the number of different years.",
    "    nmon    Number of months",
    "            Prints the number of different combinations of years and months.",
    "    ndate   Number of dates",
    "            Prints the number of different dates.",
117
118
    "    ntime   Number of time steps",
    "            Prints the number of time steps.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
119
120
121
122
123
    NULL
};

static char *ShowinfoHelp[] = {
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
124
    "    showformat, showcode, showname, showstdname, showlevel, showltype, showyear, ",
125
    "    showmon, showdate, showtime, showtimestamp - Show variables, levels or times",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
126
127
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
128
    "    <operator>  ifile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
129
130
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
131
    "    This module prints the format, variables, levels or times of the input dataset.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
132
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
133
    "OPERATORS",
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
    "    showformat     Show file format",
    "                   Prints the file format of the input dataset.",
    "    showcode       Show code numbers",
    "                   Prints the code number of all variables.",
    "    showname       Show variable names",
    "                   Prints the name of all variables.",
    "    showstdname    Show standard names",
    "                   Prints the standard name of all variables.",
    "    showlevel      Show levels",
    "                   Prints all levels for each variable.",
    "    showltype      Show GRIB level types",
    "                   Prints the GRIB level type for all z-axes.",
    "    showyear       Show years",
    "                   Prints all years.",
    "    showmon        Show months",
    "                   Prints all months.",
    "    showdate       Show date information",
    "                   Prints date information of all time steps (format YYYY-MM-DD).",
    "    showtime       Show time information",
    "                   Prints time information of all time steps (format hh:mm:ss).",
    "    showtimestamp  Show timestamp",
    "                   Prints timestamp of all time steps (format YYYY-MM-DDThh:mm:ss).",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
156
157
158
159
    NULL
};

static char *FiledesHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
160
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
161
    "    pardes, griddes, zaxisdes, vct - Dataset description",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
162
163
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
164
    "    <operator>  ifile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
165
166
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
167
168
    "    This module prints the description of the parameters, the grids,",
    "    the z-axis or the vertical coordinate table.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
169
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
170
    "OPERATORS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
171
172
173
174
175
176
    "    pardes    Parameter description",
    "              Prints a table with a description of all variables.",
    "              For each variable the operator prints one line listing the",
    "              code, name, description and units.",
    "    griddes   Grid description",
    "              Prints the description of all grids.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
177
178
    "    zaxisdes  Z-axis description",
    "              Prints the description of all z-axes.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
179
180
    "    vct       Vertical coordinate table",
    "              Prints the vertical coordinate table.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
181
182
183
184
    NULL
};

static char *CopyHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
185
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
186
    "    copy, cat - Copy datasets",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
187
188
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
189
    "    <operator>  ifiles ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
190
191
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
192
193
194
    "    This module contains operators to copy or concatenate datasets.",
    "    ifiles is an unlimited number of input files. All input files need to have ",
    "    the same structure with the same variables on different time steps.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
195
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
196
197
    "OPERATORS",
    "    copy  Copy datasets",
198
    "          Copies all input datasets to ofile. ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
199
    "    cat   Concatenate datasets",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
200
    "          Concatenates all input datasets and appends the result to the end ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
201
    "          of ofile. If ofile does not exist it will be created.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
202
203
204
    NULL
};

Uwe Schulzweida's avatar
Uwe Schulzweida committed
205
static char *ReplaceHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
206
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
207
    "    replace - Replace variables",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
208
209
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
210
    "    replace  ifile1 ifile2 ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
211
212
    "",
    "DESCRIPTION",
213
    "    Replaces all common fields of ifile2 and ifile1 with those of ifile1",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
214
    "    and write the result to ofile.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
215
    "    Both input datasets need to have the same number of time steps.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
216
217
218
219
    NULL
};

static char *MergeHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
220
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
221
    "    merge, mergetime - Merge datasets",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
222
223
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
224
    "    <operator>  ifiles ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
225
226
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
227
228
    "    This module reads datasets from several input files,",
    "    merges them and writes the resulting dataset to ofile.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
229
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
230
231
    "OPERATORS",
    "    merge      Merge datasets with different fields",
232
    "               Merges time series of different fields from several input datasets.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
233
234
    "               The number of fields per time step written to ofile",
    "               is the sum of the field numbers per time step in all input datasets.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
235
236
    "               The time series on all input datasets are required to have different",
    "               fields and the same number of time steps.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
237
238
239
    "               The fields in each different input file either have to be different variables",
    "               or different levels of the same variable. A mixture of different variables on",
    "               different levels in different input files is not allowed.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
240
241
    "    mergetime  Merge datasets sorted by date and time",
    "               Merges all time steps of all input files sorted by date and time.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
242
243
    "               All input files need to have the same structure with the same variables ",
    "               on different time steps.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
244
    "               After this operation every input time step is in ofile and",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
245
    "               all time steps are sorted by date and time.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
246
247
248
249
    NULL
};

static char *SplitHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
250
    "NAME",
251
252
    "    splitcode, splitparam, splitname, splitlevel, splitgrid, splitzaxis, ",
    "    splittabnum - Split a dataset",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
253
254
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
255
    "    <operator>  ifile obase",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
256
257
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
258
259
260
    "    This module splits ifile into pieces. The output files will be named <obase><xxx><suffix>",
    "    where suffix is the filename extension derived from the file format. xxx and the contents ",
    "    of the output files depends on the chosen operator. ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
261
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
262
    "OPERATORS",
263
264
    "    splitcode    Split code numbers",
    "                 Splits a dataset into pieces, one for each different code number.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
265
    "                 xxx will have three digits with the code number.",
266
267
268
    "    splitparam   Split parammeter identifiers",
    "                 Splits a dataset into pieces, one for each different parammeter identifier.",
    "                 xxx will be a string with the parammeter identifier.",
269
270
    "    splitname    Split variable names",
    "                 Splits a dataset into pieces, one for each variable name.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
271
    "                 xxx will be a string with the variable name.",
272
273
    "    splitlevel   Split levels",
    "                 Splits a dataset into pieces, one for each different level.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
274
    "                 xxx will have six digits with the level.",
275
276
    "    splitgrid    Split grids",
    "                 Splits a dataset into pieces, one for each different grid.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
277
    "                 xxx will have two digits with the grid number.",
278
279
    "    splitzaxis   Split z-axes",
    "                 Splits a dataset into pieces, one for each different z-axis.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
280
    "                 xxx will have two digits with the z-axis number.",
281
282
    "    splittabnum  Split parameter table numbers",
    "                 Splits a dataset into pieces, one for each GRIB1 parameter table number.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
283
284
285
286
287
288
289
    "                 xxx will have three digits with the GRIB1 parameter table number.",
    "",
    "ENVIRONMENT",
    "    CDO_FILE_SUFFIX",
    "        This environment variable can be used to set the default file suffix. This suffix will be",
    "        added to the output file names instead of the filename extension derived from the file format. ",
    "        Set this variable to NULL to disable the adding of a file suffix.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
290
291
292
    NULL
};

Uwe Schulzweida's avatar
Uwe Schulzweida committed
293
static char *SplittimeHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
294
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
295
296
    "    splithour, splitday, splitmon, splitseas, splityear - ",
    "    Split time steps of a dataset",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
297
298
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
299
    "    <operator>  ifile obase",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
300
301
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
302
303
304
    "    This module splits ifile into  time steps pieces. The output files will be named",
    "    <obase><xxx><suffix> where suffix is the filename extension derived from the file format. ",
    "    xxx and the contents of the output files depends on the chosen operator. ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
305
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
306
307
308
    "OPERATORS",
    "    splithour  Split hours",
    "               Splits a file into pieces, one for each different hour.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
309
    "               xxx will have two digits with the hour.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
310
311
    "    splitday   Split days",
    "               Splits a file into pieces, one for each different day.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
312
    "               xxx will have two digits with the day.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
313
314
    "    splitmon   Split months",
    "               Splits a file into pieces, one for each different month.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
315
    "               xxx will have two digits with the month.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
316
317
    "    splitseas  Split seasons",
    "               Splits a file into pieces, one for each different season.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
318
    "               xxx will have three characters with the season.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
319
320
    "    splityear  Split years",
    "               Splits a file into pieces, one for each different year.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
321
322
323
324
325
326
327
    "               xxx will have four digits with the year.",
    "",
    "ENVIRONMENT",
    "    CDO_FILE_SUFFIX",
    "        This environment variable can be used to set the default file suffix. This suffix will be",
    "        added to the output file names instead of the filename extension derived from the file format. ",
    "        Set this variable to NULL to disable the adding of a file suffix.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
328
329
330
    NULL
};

Uwe Schulzweida's avatar
Uwe Schulzweida committed
331
332
333
334
335
static char *SplitselHelp[] = {
    "NAME",
    "    splitsel - Split selected time steps",
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
336
    "    splitsel,nsets[,noffset[,nskip]]  ifile obase",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
337
338
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
339
340
341
342
    "    This operator splits ifile into pieces, one for each adjacent",
    "    sequence t_1, ...., t_n of time steps of the same selected time range.",
    "    The output files will be named <obase><nnnnnn><suffix> where nnnnnn is the ",
    "    sequence number and suffix is the filename extension derived from the file format.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
343
344
    "",
    "PARAMETER",
345
    "    nsets    INTEGER  Number of input time steps for each output file",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
346
347
    "    noffset  INTEGER  Number of input time steps skipped before the first time step range (optional)",
    "    nskip    INTEGER  Number of input time steps skipped between time step ranges (optional)",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
348
349
350
351
352
353
    "",
    "ENVIRONMENT",
    "    CDO_FILE_SUFFIX",
    "        This environment variable can be used to set the default file suffix. This suffix will be",
    "        added to the output file names instead of the filename extension derived from the file format. ",
    "        Set this variable to NULL to disable the adding of a file suffix.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
354
355
356
    NULL
};

357
static char *SelvarHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
358
    "NAME",
359
360
    "    selparam, delparam, selcode, delcode, selname, delname, selstdname, sellevel, ",
    "    sellevidx, selgrid, selzaxis, selltype, seltabnum - Select fields",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
361
362
    "",
    "SYNOPSIS",
363
364
    "    selparam,params  ifile ofile",
    "    delparam,params  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
365
366
    "    selcode,codes  ifile ofile",
    "    delcode,codes  ifile ofile",
367
368
    "    selname,names  ifile ofile",
    "    delname,names  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
369
    "    selstdname,stdnames  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
370
    "    sellevel,levels  ifile ofile",
371
    "    sellevidx,levidx  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
372
    "    selgrid,grids  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
373
    "    selzaxis,zaxes  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
374
    "    selltype,ltypes  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
375
    "    seltabnum,tabnums  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
376
377
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
378
    "    This module selects some fields from ifile and writes them to ofile.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
379
    "    The fields selected depends on the chosen operator and the parameters.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
380
381
    "",
    "OPERATORS",
382
383
384
    "    selparam    Select parameters by identifier",
    "                Selects all fields with parameter identifiers in a user given list.",
    "    delparam    Delete parameters by identifier",
385
    "                Deletes all fields with parameter identifiers in a user given list.",
386
    "    selcode     Select parameters by code number",
387
    "                Selects all fields with code numbers in a user given list.",
388
    "    delcode     Delete parameters by code number",
389
    "                Deletes all fields with code numbers in a user given list.",
390
391
392
393
394
    "    selname     Select parameters by name",
    "                Selects all fields with parameter names in a user given list.",
    "    delname     Delete parameters by name",
    "                Deletes all fields with parameter names in a user given list.",
    "    selstdname  Select parameters by standard name",
395
396
397
398
399
400
401
402
403
404
405
406
407
    "                Selects all fields with standard names in a user given list.",
    "    sellevel    Select levels",
    "                Selects all fields with levels in a user given list.",
    "    sellevidx   Select levels by index",
    "                Selects all fields with index of levels in a user given list.",
    "    selgrid     Select grids",
    "                Selects all fields with grids in a user given list.",
    "    selzaxis    Select z-axes",
    "                Selects all fields with z-axes in a user given list.",
    "    selltype    Select GRIB level types",
    "                Selects all fields with GRIB level type in a user given list.",
    "    seltabnum   Select parameter table numbers",
    "                Selects all fields with parameter table numbers in a user given list.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
408
409
    "",
    "PARAMETER",
410
    "    params    INTEGER  Comma separated list of parameter identifiers",
411
    "    codes     INTEGER  Comma separated list of code numbers",
412
    "    names     STRING   Comma separated list of variable names",
413
414
415
416
417
418
419
    "    stdnames  STRING   Comma separated list of standard names",
    "    levels    FLOAT    Comma separated list of levels",
    "    levidx    INTEGER  Comma separated list of index of levels",
    "    ltypes    INTEGER  Comma separated list of GRIB level types",
    "    grids     STRING   Comma separated list of grid names or numbers",
    "    zaxes     STRING   Comma separated list of z-axis names or numbers",
    "    tabnums   INTEGER  Comma separated list of parameter table numbers",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
420
421
422
    NULL
};

Uwe Schulzweida's avatar
Uwe Schulzweida committed
423
static char *SeltimeHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
424
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
425
426
    "    seltimestep, seltime, selhour, selday, selmon, selyear, selseas, seldate, ",
    "    selsmon - Select time steps",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
427
428
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
429
430
431
432
433
434
435
436
    "    seltimestep,timesteps  ifile ofile",
    "    seltime,times  ifile ofile",
    "    selhour,hours  ifile ofile",
    "    selday,days  ifile ofile",
    "    selmon,months  ifile ofile",
    "    selyear,years  ifile ofile",
    "    selseas,seasons  ifile ofile",
    "    seldate,date1[,date2]  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
437
    "    selsmon,month[,nts1[,nts2]]  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
438
439
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
440
    "    This module selects user specified time steps from ifile and writes them to ofile.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
441
    "    The time steps selected depends on the chosen operator and the parameters.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
442
443
    "",
    "OPERATORS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
444
445
    "    seltimestep  Select time steps",
    "                 Selects all time steps with a time step in a user given list.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
446
    "    seltime      Select times",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
447
    "                 Selects all time steps with a time in a user given list.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
448
    "    selhour      Select hours",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
449
    "                 Selects all time steps with a hour in a user given list.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
450
    "    selday       Select days",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
451
    "                 Selects all time steps with a day in a user given list.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
452
    "    selmon       Select months",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
453
    "                 Selects all time steps with a month in a user given list.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
454
    "    selyear      Select years",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
455
    "                 Selects all time steps with a year in a user given list.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
456
    "    selseas      Select seasons",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
457
    "                 Selects all time steps with a month of a season in a user given list.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
458
    "    seldate      Select dates",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
459
    "                 Selects all time steps with a date in a user given range.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
460
461
    "    selsmon      Select single month",
    "                 Selects a month and optional an unlimited number of time steps before and after this month.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
462
463
    "",
    "PARAMETER",
464
    "    timesteps  INTEGER  Comma separated list of time steps",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
465
    "    times      STRING   Comma separated list of times (format hh:mm:ss)",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
466
467
468
469
470
    "    hours      INTEGER  Comma separated list of hours",
    "    days       INTEGER  Comma separated list of days",
    "    months     INTEGER  Comma separated list of months",
    "    years      INTEGER  Comma separated list of years",
    "    seasons    STRING   Comma separated list of seasons (DJF, MAM, JJA, SON)",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
471
472
    "    date1      STRING   Start date (format YYYY-MM-DDThh:mm:ss)",
    "    date2      STRING   End date (format YYYY-MM-DDThh:mm:ss)",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
473
474
    "    nts1       INTEGER  Number of time steps before the selected month [default: 0]",
    "    nts2       INTEGER  Number of time steps after the selected month [default: nts1]",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
475
476
477
    NULL
};

Uwe Schulzweida's avatar
Uwe Schulzweida committed
478
static char *SelboxHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
479
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
480
    "    sellonlatbox, selindexbox - Select a box of a field",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
481
482
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
483
484
    "    sellonlatbox,lon1,lon2,lat1,lat2  ifile ofile",
    "    selindexbox,idx1,idx2,idy1,idy2  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
485
486
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
487
    "    Selects a box of the rectangular understood field.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
488
    "    All input fields need to have the same horizontal grid.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
489
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
490
    "OPERATORS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
491
    "    sellonlatbox  Select a longitude/latitude box",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
492
    "                  Selects a longitude/latitude box. The user has to give the ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
493
494
    "                  longitudes and latitudes of the edges of the box. ",
    "                  Considered are only those grid cells with the grid center inside the lon/lat box.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
495
    "    selindexbox   Select an index box",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
496
497
498
    "                  Selects an index box. The user has to give the indexes of the ",
    "                  edges of the box. The index of the left edge may be greater ",
    "                  then that of the right edge.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
499
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
500
    "PARAMETER",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
501
502
503
504
    "    lon1  FLOAT    Western longitude",
    "    lon2  FLOAT    Eastern longitude",
    "    lat1  FLOAT    Southern or northern latitude",
    "    lat2  FLOAT    Northern or southern latitude",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
505
506
507
508
509
510
511
    "    idx1  INTEGER  Index of first longitude",
    "    idx2  INTEGER  Index of last longitude",
    "    idy1  INTEGER  Index of first latitude",
    "    idy2  INTEGER  Index of last latitude",
    NULL
};

Uwe Schulzweida's avatar
Uwe Schulzweida committed
512
513
514
515
516
517
518
519
static char *CondHelp[] = {
    "NAME",
    "    ifthen, ifnotthen - Conditional select one field",
    "",
    "SYNOPSIS",
    "    <operator>  ifile1 ifile2 ofile",
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
520
    "    This module selects field elements from ifile2 with respect to ifile1 and writes them ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
521
    "    to ofile. The fields in ifile1 are handled as a mask. A value ",
522
    "    not equal to zero is treated as \"true\", zero is treated as \"false\".",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
523
524
525
    "    The number of fields in ifile1 has either to be the same as in ifile2 or the",
    "    same as in one time step of ifile2 or only one.",
    "    The fields in ofile inherit the meta data from ifile2.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
526
527
528
    "",
    "OPERATORS",
    "    ifthen     If then",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
529
    "                        / i_2(t,x) if i_1([t,]x) NE 0  AND  i_1([t,]x) NE miss",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
530
    "               o(t,x) =",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
531
    "                        \\ miss     if i_1([t,]x) EQ 0  OR   i_1([t,]x) EQ miss",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
532
    "    ifnotthen  If not then",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
533
    "                        / i_2(t,x) if i_1([t,]x) EQ 0  AND  i_1([t,]x) NE miss",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
534
    "               o(t,x) = ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
535
    "                        \\ miss     if i_1([t,]x) NE 0  OR   i_1([t,]x) EQ miss",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
536
537
538
539
540
541
542
543
544
545
546
    NULL
};

static char *Cond2Help[] = {
    "NAME",
    "    ifthenelse - Conditional select  two fields",
    "",
    "SYNOPSIS",
    "    ifthenelse  ifile1 ifile2 ifile3 ofile",
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
547
548
    "    This operator selects field elements from ifile2 or ifile3 with respect to",
    "    ifile1 and writes them to ofile. The fields in ifile1 are handled as a mask.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
549
    "    A value not equal to zero is treated as \"true\", zero is treated as \"false\".",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
550
551
552
553
554
555
556
557
    "    The number of fields in ifile1 has either to be the same as in ifile2 or the ",
    "    same as in one time step of ifile2 or only one.",
    "    ifile2 and ifile3 need to have the same number of fields.",
    "    The fields in ofile inherit the meta data from ifile2.",
    "    ",
    "              / i_2(t,x) if i_1([t,]x) NE 0  AND  i_1([t,]x) NE miss",
    "    o(t,x) = <  i_3(t,x) if i_1([t,]x) EQ 0  AND  i_1([t,]x) NE miss",
    "              \\ miss     if i_1([t,]x) EQ miss",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
558
559
560
561
562
563
564
565
566
567
568
569
    NULL
};

static char *CondcHelp[] = {
    "NAME",
    "    ifthenc, ifnotthenc - Conditional select a constant",
    "",
    "SYNOPSIS",
    "    <operator>,c  ifile ofile",
    "",
    "DESCRIPTION",
    "    This module creates fields with a constant value or missing value.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
570
    "    The fields in ifile are handled as a mask. A value not equal ",
571
    "    to zero is treated as \"true\", zero is treated as \"false\".",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
    "",
    "OPERATORS",
    "    ifthenc     If then constant",
    "                         / c      if i(t,x) NE 0  AND  i(t,x) NE miss",
    "                o(t,x) =",
    "                         \\ miss   if i(t,x) EQ 0  OR   i(t,x) EQ miss",
    "    ifnotthenc  If not then constant",
    "                         / c      if i(t,x) EQ 0  AND  i(t,x) NE miss",
    "                o(t,x) =",
    "                         \\ miss   if i(t,x) NE 0  OR   i(t,x) EQ miss",
    "",
    "PARAMETER",
    "    c  FLOAT  Constant",
    NULL
};

static char *CompHelp[] = {
    "NAME",
    "    eq, ne, le, lt, ge, gt - Comparison of two fields",
    "",
    "SYNOPSIS",
    "    <operator>  ifile1 ifile2 ofile",
    "",
    "DESCRIPTION",
    "    This module compares two datasets field by field. The resulting",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
597
598
599
600
    "    field is a mask containing 1 if the comparison is true and 0 if not. ",
    "    The number of fields in ifile1 should be the same as in ifile2.",
    "    One of the input files can contain only one time step or one field.",
    "    The fields in ofile inherit the meta data from ifile1 or ifile2.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
601
    "    The type of comparison depends on the chosen operator.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
    "",
    "OPERATORS",
    "    eq  Equal",
    "                  /   1   if i_1(t,x) EQ i_2(t,x)  AND  i_1(t,x),i_2(t,x) NE miss",
    "        o(t,x) = <    0   if i_1(t,x) NE i_2(t,x)  AND  i_1(t,x),i_2(t,x) NE miss",
    "                  \\  miss if i_1(t,x) EQ miss      OR   i_2(t,x) EQ miss",
    "    ne  Not equal",
    "                  /   1   if i_1(t,x) NE i_2(t,x)  AND  i_1(t,x),i_2(t,x) NE miss",
    "        o(t,x) = <    0   if i_1(t,x) EQ i_2(t,x)  AND  i_1(t,x),i_2(t,x) NE miss",
    "                  \\  miss if i_1(t,x) EQ miss      OR   i_2(t,x) EQ miss",
    "    le  Less equal",
    "                  /   1   if i_1(t,x) LE i_2(t,x)  AND  i_1(t,x),i_2(t,x) NE miss",
    "        o(t,x) = <    0   if i_1(t,x) GT i_2(t,x)  AND  i_1(t,x),i_2(t,x) NE miss",
    "                  \\  miss if i_1(t,x) EQ miss      OR   i_2(t,x) EQ miss",
    "    lt  Less than",
    "                  /   1   if i_1(t,x) LT i_2(t,x)  AND  i_1(t,x),i_2(t,x) NE miss",
    "        o(t,x) = <    0   if i_1(t,x) GE i_2(t,x)  AND  i_1(t,x),i_2(t,x) NE miss",
    "                  \\  miss if i_1(t,x) EQ miss      OR   i_2(t,x) EQ miss",
    "    ge  Greater equal",
    "                  /   1   if i_1(t,x) GE i_2(t,x)  AND  i_1(t,x),i_2(t,x) NE miss",
    "        o(t,x) = <    0   if i_1(t,x) LT i_2(t,x)  AND  i_1(t,x),i_2(t,x) NE miss",
    "                  \\  miss if i_1(t,x) EQ miss      OR   i_2(t,x) EQ miss",
    "    gt  Greater than",
    "                  /   1   if i_1(t,x) GT i_2(t,x)  AND  i_1(t,x),i_2(t,x) NE miss",
    "        o(t,x) = <    0   if i_1(t,x) LE i_2(t,x)  AND  i_1(t,x),i_2(t,x) NE miss",
    "                  \\  miss if i_1(t,x) EQ miss      OR   i_2(t,x) EQ miss",
    NULL
};

static char *CompcHelp[] = {
    "NAME",
    "    eqc, nec, lec, ltc, gec, gtc - Comparison of a field with a constant",
    "",
    "SYNOPSIS",
    "    <operator>,c  ifile ofile",
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
639
640
    "    This module compares all fields of a dataset with a constant. The resulting",
    "    field is a mask containing 1 if the comparison is true and 0 if not.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
641
    "    The type of comparison depends on the chosen operator.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
642
643
644
645
646
647
648
649
650
651
652
653
654
655
    "",
    "OPERATORS",
    "    eqc  Equal constant",
    "                   /   1   if i(t,x) EQ c     AND  i(t,x),c NE miss",
    "         o(t,x) = <    0   if i(t,x) NE c     AND  i(t,x),c NE miss",
    "                   \\  miss if i(t,x) EQ miss  OR   c EQ miss",
    "    nec  Not equal constant",
    "                   /   1   if i(t,x) NE c     AND  i(t,x),c NE miss",
    "         o(t,x) = <    0   if i(t,x) EQ c     AND  i(t,x),c NE miss",
    "                   \\  miss if i(t,x) EQ miss  OR   c EQ miss",
    "    lec  Less equal constant",
    "                   /   1   if i(t,x) LE c     AND  i(t,x),c NE miss",
    "         o(t,x) = <    0   if i(t,x) GT c     AND  i(t,x),c NE miss",
    "                   \\  miss if i(t,x) EQ miss  OR   c EQ miss",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
656
    "    ltc  Less than constant",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
657
658
659
660
661
662
663
    "                   /   1   if i(t,x) LT c     AND  i(t,x),c NE miss",
    "         o(t,x) = <    0   if i(t,x) GE c     AND  i(t,x),c NE miss",
    "                   \\  miss if i(t,x) EQ miss  OR   c EQ miss",
    "    gec  Greater equal constant",
    "                   /   1   if i(t,x) GE c     AND  i(t,x),c NE miss",
    "         o(t,x) = <    0   if i(t,x) LT c     AND  i(t,x),c NE miss",
    "                   \\  miss if i(t,x) EQ miss  OR   c EQ miss",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
664
    "    gtc  Greater than constant",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
665
666
667
668
669
670
671
672
673
    "                   /   1   if i(t,x) GT c     AND  i(t,x),c NE miss",
    "         o(t,x) = <    0   if i(t,x) LE c     AND  i(t,x),c NE miss",
    "                   \\  miss if i(t,x) EQ miss  OR   c EQ miss",
    "",
    "PARAMETER",
    "    c  FLOAT  Constant",
    NULL
};

Uwe Schulzweida's avatar
Uwe Schulzweida committed
674
static char *SetHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
675
    "NAME",
676
    "    setpartab, setcode, setparam, setname, setlevel, setltype - Set field info",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
677
678
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
679
680
    "    setpartab,table  ifile ofile",
    "    setcode,code  ifile ofile",
681
    "    setparam,param  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
682
    "    setname,name  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
683
    "    setlevel,level  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
684
    "    setltype,ltype  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
685
686
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
687
    "    This module sets some field information. Depending on the chosen",
688
    "    operator the parameter table, code number, parameter identifier, variable name or",
689
    "    level is set.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
690
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
691
692
693
    "OPERATORS",
    "    setpartab  Set parameter table",
    "               Sets the parameter table for all variables.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
694
695
    "    setcode    Set code number",
    "               Sets the code number for all variables to the same given value.",
696
697
    "    setparam   Set parameter identifier",
    "               Sets the parameter identifier of the first variable.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
698
    "    setname    Set variable name",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
699
700
701
    "               Sets the name of the first variable.",
    "    setlevel   Set level",
    "               Sets the first level of all variables.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
702
703
    "    setltype   Set GRIB level type",
    "               Sets the GRIB level type of all variables.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
704
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
705
706
707
    "PARAMETER",
    "    table  STRING   Parameter table file or name",
    "    code   INTEGER  Code number",
708
    "    param  STRING  Parameter identifier (format: code[.tabnum] or num[.cat[.dis]])",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
709
710
    "    name   STRING   Variable name",
    "    level  FLOAT    New level",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
711
    "    ltype  INTEGER  GRIB level type",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
712
713
714
715
    NULL
};

static char *SettimeHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
716
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
717
718
    "    setdate, settime, setday, setmon, setyear, settunits, settaxis, setreftime, ",
    "    setcalendar, shifttime - Set time",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
719
720
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
721
722
723
724
725
726
727
    "    setdate,date  ifile ofile",
    "    settime,time  ifile ofile",
    "    setday,day  ifile ofile",
    "    setmon,month  ifile ofile",
    "    setyear,year  ifile ofile",
    "    settunits,units  ifile ofile",
    "    settaxis,date,time[,inc]  ifile ofile",
728
    "    setreftime,date,time[,units]  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
729
730
    "    setcalendar,calendar  ifile ofile",
    "    shifttime,sval  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
731
732
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
733
    "    This module sets the time axis or part of the time axis. Which part of the",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
734
    "    time axis is overwritten depends on the chosen operator.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
735
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
736
737
    "OPERATORS",
    "    setdate      Set date",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
738
    "                 Sets the date in every time step to the same given value.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
739
    "    settime      Set time of the day",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
740
    "                 Sets the time in every time step to the same given value.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
741
    "    setday       Set day",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
742
    "                 Sets the day in every time step to the same given value.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
743
    "    setmon       Set month",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
744
    "                 Sets the month in every time step to the same given value.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
745
    "    setyear      Set year",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
746
    "                 Sets the year in every time step to the same given value.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
747
    "    settunits    Set time units",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
748
    "                 Sets the base units of a relative time axis.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
749
750
751
    "    settaxis     Set time axis",
    "                 Sets the time axis.",
    "    setreftime   Set reference time",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
752
    "                 Sets the reference time of a relative time axis.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
753
    "    setcalendar  Set calendar",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
754
    "                 Sets the calendar of a relative time axis.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
755
756
    "    shifttime    Shift time steps",
    "                 Shifts all time steps by the parameter sval.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
757
758
759
760
761
    "",
    "PARAMETER",
    "    day       INTEGER  Value of the new day",
    "    month     INTEGER  Value of the new month",
    "    year      INTEGER  Value of the new year",
762
    "    units     STRING   Base units of the time axis (seconds, minutes, hours, days, months, years)",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
763
764
    "    date      STRING   Date (format: YYYY-MM-DD)",
    "    time      STRING   Time (format: hh:mm:ss)",
765
    "    inc       STRING   Optional increment (seconds, minutes, hours, days, months, years) [default: 0hour]",
766
    "    calendar  STRING   Calendar (standard, proleptic, 360days, 365days, 366days)",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
767
768
769
770
771
    "    sval      STRING   Shift value (e.g. -3hour)",
    NULL
};

static char *ChangeHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
772
    "NAME",
773
    "    chcode, chparam, chname, chlevel, chlevelc, chlevelv - Change field header",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
774
775
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
776
    "    chcode,oldcode,newcode[,...]  ifile ofile",
777
    "    chparam,oldparam,newparam,...  ifile ofile",
778
    "    chname,oldname,newname,...  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
779
780
    "    chlevel,oldlev,newlev,...  ifile ofile",
    "    chlevelc,code,oldlev,newlev  ifile ofile",
781
    "    chlevelv,name,oldlev,newlev  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
782
783
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
784
    "    This module reads fields from ifile, changes some header values",
785
    "    and writes the results to ofile. The kind of changes depends on ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
786
    "    the chosen operator.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
787
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
788
    "OPERATORS",
789
    "    chcode    Change code number",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
790
    "              Changes some user given code numbers to new user given values.",
791
792
    "    chparam   Change parameter identifier",
    "              Changes some user given parameter identifiers to new user given values.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
793
    "    chname    Change variable name",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
794
795
796
797
798
799
    "              Changes some user given variable names to new user given names.",
    "    chlevel   Change level",
    "              Changes some user given levels to new user given values.",
    "    chlevelc  Change level of one code",
    "              Changes one level of a user given code number.",
    "    chlevelv  Change level of one variable",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
800
    "              Changes one level of a user given variable name.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
801
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
802
    "PARAMETER",
803
804
805
806
807
808
809
810
    "    code                   INTEGER  Code number",
    "    oldcode,newcode,...    INTEGER  Pairs of old and new code numbers",
    "    oldparam,newparam,...  STRING   Pairs of old and new parameter identifiers",
    "    name                   STRING   Variable name",
    "    oldname,newname,...    STRING   Pairs of old and new variable names",
    "    oldlev                 FLOAT    Old level",
    "    newlev                 FLOAT    New level",
    "    oldlev,newlev,...      FLOAT    Pairs of old and new levels",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
811
812
813
814
    NULL
};

static char *SetgridHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
815
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
816
    "    setgrid, setgridtype, setgridarea - Set grid information",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
817
818
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
819
820
    "    setgrid,grid  ifile ofile",
    "    setgridtype,gridtype  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
821
    "    setgridarea,gridarea  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
822
823
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
824
825
826
    "    This module modifies the metadata of the horizontal grid. Depending on the ",
    "    chosen operator a new grid description is set, the coordinates are converted",
    "    or the grid cell area is added.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
827
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
828
829
    "OPERATORS",
    "    setgrid      Set grid",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
830
831
    "                 Sets a new grid description. The input fields need to have the same grid size",
    "                 as the size of the target grid description.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
832
    "    setgridtype  Set grid type",
833
    "                 Sets the grid type of all input fields. The following grid types are available:",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
834
    "                 curvilinear "    "                 Converts regular grid to curvilinear grid",
835
    "                 unstructured"    "                 Converts grid type to unstructured grid",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
836
837
    "                 dereference "    "                 Dereference grid type REFERENCE",
    "                 regular     "    "                 Converts reduced Gaussian grid to regular Gaussian grid",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
838
839
840
841
842
    "    setgridarea  Set grid cell area",
    "                 Sets the grid cell area. The parameter gridarea is the path to a data file,",
    "                 the first field is used as grid cell area. The input fields need to have the same",
    "                 grid size as the grid cell area. The grid cell area is used to compute",
    "                 the weights of each grid cell if needed by an operator, e.g. for fldmean.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
843
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
844
    "PARAMETER",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
845
    "    grid      STRING  Grid description file or name",
846
    "    gridtype  STRING  Grid type (curvilinear, unstructured, regular or dereference)",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
847
    "    gridarea  STRING  Data file, the first field is used as grid cell area",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
848
849
850
    NULL
};

Uwe Schulzweida's avatar
Uwe Schulzweida committed
851
static char *SetzaxisHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
852
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
853
    "    setzaxis - Set z-axis type",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
854
855
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
856
    "    setzaxis,zaxis  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
857
858
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
859
860
    "    This operator sets the z-axis description of all variables with the",
    "    same number of level as the new z-axis.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
861
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
862
    "PARAMETER",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
863
    "    zaxis  STRING  Z-axis description file or name of the target z-axis",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
864
865
866
867
    NULL
};

static char *SetgattHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
868
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
869
    "    setgatt, setgatts - Set global attribute",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
870
871
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
872
873
    "    setgatt,attname,attstring  ifile ofile",
    "    setgatts,attfile  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
874
875
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
876
    "    This module sets global text attributes of a dataset. Depending on the chosen ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
877
    "    operator the attributes are read from a file or can be specified by a parameter.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
878
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
879
880
881
882
883
884
    "OPERATORS",
    "    setgatt   Set global attribute",
    "              Sets one user defined global text attribute.",
    "    setgatts  Set global attributes",
    "              Sets user defined global text attributes. The name and text",
    "              of the global attributes are read from a file.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
885
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
886
    "PARAMETER",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
887
888
    "    attname,attstring  STRING  Name and text of the global attribute (without spaces!)",
    "    attfile            STRING  File name which contains global text attributes",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
889
890
891
892
    NULL
};

static char *InvertHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
893
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
894
    "    invertlat - Invert latitudes",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
895
896
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
897
    "    invertlat  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
898
899
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
900
    "    This operator inverts the latitudes of all fields with a regular lon/lat grid. ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
901
902
903
904
905
    NULL
};

static char *InvertlevHelp[] = {
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
906
    "    invertlev - Invert levels",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
907
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
908
909
910
911
    "SYNOPSIS",
    "    invertlev  ifile ofile",
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
912
    "    This operator inverts the levels of all non hybrid 3D variables.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
913
914
915
    NULL
};

Uwe Schulzweida's avatar
Uwe Schulzweida committed
916
917
918
919
920
921
922
923
static char *MaskregionHelp[] = {
    "NAME",
    "    maskregion - Mask regions",
    "",
    "SYNOPSIS",
    "    maskregion,regions  ifile ofile",
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
924
925
926
    "    Masks different regions of fields with a regular lon/lat grid. ",
    "    The elements inside a region are untouched, the elements outside are ",
    "    set to missing value. All input fields must have the same horizontal grid.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
927
    "    The user has to give ASCII formatted files with different regions.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
928
    "    A region is defined by a polygon. Each line of a polygon description file ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
929
    "    contains the longitude and latitude of one point.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
930
931
    "    Each polygon description file can contain one or more polygons separated",
    "    by a line with the character \\&.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
932
933
934
935
936
937
    "",
    "PARAMETER",
    "    regions  STRING Comma separated list of ASCII formatted files with different regions",
    NULL
};

Uwe Schulzweida's avatar
Uwe Schulzweida committed
938
static char *MaskboxHelp[] = {
Uwe Schulzweida's avatar
Uwe Schulzweida committed
939
    "NAME",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
940
    "    masklonlatbox, maskindexbox - Mask a box",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
941
942
    "",
    "SYNOPSIS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
943
944
    "    masklonlatbox,lon1,lon2,lat1,lat2  ifile ofile",
    "    maskindexbox,idx1,idx2,idy1,idy2  ifile ofile",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
945
946
    "",
    "DESCRIPTION",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
947
948
    "    Masks a box of the rectangular understood field. The elements inside ",
    "    the box are untouched, the elements outside are set to missing value.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
949
    "    All input fields need to have the same horizontal grid.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
950
951
    "    Use sellonlatbox or selindexbox if only the data inside the",
    "    box are needed.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
952
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
953
    "OPERATORS",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
954
    "    masklonlatbox  Mask a longitude/latitude box",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
955
956
    "                   Masks a longitude/latitude box. The user has to give the ",
    "                   longitudes and latitudes of the edges of the box.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
957
    "    maskindexbox   Mask an index box",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
958
    "                   Masks an index box. The user has to give the indexes of the ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
959
960
    "                   edges of the box. The index of the left edge can be greater ",
    "                   then the one of the right edge.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
961
    "",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
962
    "PARAMETER",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
963
964
965
966
    "    lon1  FLOAT    Western longitude",
    "    lon2  FLOAT    Eastern longitude",
    "    lat1  FLOAT    Southern or northern latitude",
    "    lat2  FLOAT    Northern or southern latitude",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
967
    "    idx1  INTEGER  Index of first longitude",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
    "    idx2  INTEGER  Index of last longitude",
    "    idy1  INTEGER  Index of first latitude",
    "    idy2  INTEGER  Index of last latitude",
    NULL
};

static char *SetboxHelp[] = {
    "NAME",
    "    setclonlatbox, setcindexbox - Set a box to constant",
    "",
    "SYNOPSIS",
    "    setclonlatbox,c,lon1,lon2,lat1,lat2  ifile ofile",
    "    setcindexbox,c,idx1,idx2,idy1,idy2  ifile ofile",
    "",
    "DESCRIPTION",
    "    Sets a box of the rectangular understood field to a constant value. ",
    "    The elements outside the box are untouched, the elements inside are ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
985
    "    set to the given constant. All input fields need to have the same ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
986
987
988
989
990
991
992
993
994
    "    horizontal grid.",
    "",
    "OPERATORS",
    "    setclonlatbox  Set a longitude/latitude box to constant",
    "                   Sets the values of a longitude/latitude box to a constant value. The ",
    "                   user has to give the longitudes and latitudes of the edges of the box.",
    "    setcindexbox   Set an index box to constant",
    "                   Sets the values of an index box to a constant value. The user has to ",
    "                   give the indexes of the edges of the box. The index of the left edge ",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
995
    "                   can be greater than the one of the right edge.",
Uwe Schulzweida's avatar
Uwe Schulzweida committed
996
997
998
999
1000
    "",
    "PARAMETER",
    "    c     FLOAT    Constant",
    "    lon1  FLOAT    Western longitude",
    "    lon2  FLOAT    Eastern longitude",
For faster browsing, not all history is shown. View entire blame