Commit bca8d990 authored by Uwe Schulzweida's avatar Uwe Schulzweida
Browse files

Added docu for module Filter

parent e2319d0a
2010-07-12 Cedrick Ansorge <Cedrick.Ansorge@zmaw.de>
* Added module Filter - Time series filtering
2010-07-05 Uwe Schulzweida <Uwe.Schulzweida@zmaw.de>
* Version 1.4.5.1 released
......@@ -19,7 +23,7 @@
* Added operator setvals - Set list of old values to new values
2010-05-18 Cedrick Ansorge <Cedrick.Ansorge.zmaw.de>
2010-05-18 Cedrick Ansorge <Cedrick.Ansorge@zmaw.de>
* Added operator eof - Calculate EOFs in spatial or time space
* Added operator eoftime - Calculate EOFs in time space
......
CDO NEWS
--------
Version 1.4.5.1 (?? July 2010):
Version 1.4.6 (?? September 2010):
New operators:
* bandpass: Bandpass filtering
* lowpass: Lowpass filtering
* highpass: Highpass filtering
Version 1.4.5.1 (05 July 2010):
New features:
* GRIB1 decode: Correct ZeroShiftError of simple packed spherical harmonics
Fixed bugs:
* wrong result of SZIP compressed GRIB records with 24 packing and a compression ratio < 1.05
* wrong result of SZIP compressed GRIB1 records with 24 bit packing and a compression ratio < 1.05
Version 1.4.5 (28 June 2010):
......
......@@ -414,10 +414,13 @@ Operator catalog:
-------------------------------------------------------------
Miscellaneous
-------------------------------------------------------------
Gridcell gridarea Grid cell area
Gridcell gridweights Grid cell weights
Gradsdes gradsdes1 GrADS data descriptor file (version 1 GRIB map)
Gradsdes gradsdes2 GrADS data descriptor file (version 2 GRIB map)
Filter bandpass Bandpass filtering
Filter lowpass Lowpass filtering
Filter highpass Highpass filtering
Gridcell gridarea Grid cell area
Gridcell gridweights Grid cell weights
Smooth9 smooth9 9 point smoothing
Replacevalues setvals Set list of old values to new values
Replacevalues setrtoc Set range to constant
......
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# Makefile.in generated by automake 1.11 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
......
......@@ -93,8 +93,9 @@ Importcmsaf Import/Export
Importamsr Import/Export
Input Import/Export
Output Import/Export
Gridcell Miscellaneous
Gradsdes Miscellaneous
Filter Miscellaneous
Gridcell Miscellaneous
Smooth9 Miscellaneous
Replacevalues Miscellaneous
Timsort Miscellaneous
......
@BeginModule
@NewPage
@Name = Gridcell
@Title = Grid cell quantities
@Section = Miscellaneous
......
......@@ -506,7 +506,7 @@ static modules_t Modules[] =
{ Expr, ExprHelp, ExprOperators, CDI_REAL, 1, 1 },
{ Filedes, FiledesHelp, FiledesOperators, CDI_BOTH, 1, 0 },
{ Fillmiss, NULL, FillmissOperators, CDI_REAL, 1, 1 },
{ Filter, NULL, FilterOperators, CDI_REAL, 1, 1 },
{ Filter, FilterHelp, FilterOperators, CDI_REAL, 1, 1 },
{ Fldrms, NULL, FldrmsOperators, CDI_REAL, 2, 1 },
{ Fldstat, FldstatHelp, FldstatOperators, CDI_REAL, 1, 1 },
{ Fldstat2, FldcorHelp, Fldstat2Operators, CDI_REAL, 2, 1 },
......
......@@ -3231,6 +3231,86 @@ static char *OutputHelp[] = {
NULL
};
static char *GradsdesHelp[] = {
"NAME",
" gradsdes1, gradsdes2 - GrADS data descriptor file",
"",
"SYNOPSIS",
" <operator> ifile",
"",
"DESCRIPTION",
" 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 have to be specified with",
" the CDO option '-g <grid>'. This module takes ifile in order to create ",
" filenames for the descriptor (ifile.ctl) and the map (ifile.gmp) file.",
" \"gradsdes\" is an alias for gradsdes2.",
"",
"OPERATORS",
" gradsdes1 GrADS data descriptor file (version 1 GRIB map)",
" Creates a GrADS data descriptor file. Generated a machine",
" specific version 1 GrADS map file for GRIB datasets.",
" gradsdes2 GrADS data descriptor file (version 2 GRIB map)",
" Creates a GrADS data descriptor file. Generated a machine ",
" independent version 2 GrADS map file for GRIB datasets.",
" This map file can be used only with GrADS version 1.8 or newer. ",
NULL
};
static char *FilterHelp[] = {
"NAME",
" bandpass, lowpass, highpass - Time series filtering",
"",
"SYNOPSIS",
" bandpass,fmin,fmax ifile ofile",
" lowpass,fmax ifile ofile",
" highpass,fmin ifile ofile",
"",
"DESCRIPTION",
" This module takes the time series for each gridpoint in ifile and fills it with zeros (zero-",
" padding) up to the next time-step-number that is a power of 2. Then it (fast fourier) transforms ",
" the time series with 2^n elements into the frequency domain.",
" According to the particular operator and its parameters certain frequencies are filtered ",
" (set to zero) in the frequency domain and the spectrum is (inverse fast fourier) transformed ",
" back into the time domain. This time series is cut to the original number of timesteps from",
" ifile and written to ofile.",
" To determine the frequency the time-axis of ifile is used. (Data should have a constant time ",
" increment since this assumption applies for transformation. However, the time increment ",
" has to be different from zero.)",
" All frequencies given as parameter are interpreted per year. This is done by the ",
" assumption of a 365-day calendar. Consequently if you want to perform multiyear-filtering ",
" accurately you have to delete the 29th of February. If your ifile has a 360 year calendar",
" the frequency parameters fmin respectively fmax should be multiplied with a factor of",
" 360/365 in order to obtain accurate results. ",
" For the set up of a frequency filter the frequency parameters have to be adjusted to a ",
" frequency in the data. Here fmin is rounded down and fmax is always rounded up. ",
" Consequently it is possible to use bandpass with fmin=fmax without getting a zero-field ",
" for ofile. ",
" Hints for efficient usage: ",
" - to avoid effects of zero-padding cut or extend your time series down/up to the nearest power of two",
" - to get reliable results the time-series has to be detrended (cdo detrend)",
" - the lowest frequency greater zero that can be contained in ifile is 1/(N*dT), ",
" - the greatest frequency is 1/(2dT) (Nyquist frequency),",
" with N the number of time steps and dT the time increment of ifile in years. ",
"",
"OPERATORS",
" bandpass Bandpass filtering",
" Bandpass filtering (pass for frequencies between fmin and fmax).",
" Suppresses all variability outside the frequency range specified",
" by [fmin,fmax].",
" lowpass Lowpass filtering",
" Lowpass filtering (pass for frequencies lower than fmax).",
" Suppresses all variability with frequencies greater than fmax. ",
" highpass Highpass filtering",
" Highpass filtering (pass for frequencies greater than fmin). ",
" Suppresses all variabilty with frequencies lower than fmin. ",
"",
"PARAMETER",
" fmin FLOAT Minimum frequency per year that passes the filter.",
" fmax FLOAT Maximum frequency per year that passes the filter. ",
NULL
};
static char *GridcellHelp[] = {
"NAME",
" gridarea, gridweights - Grid cell quantities",
......@@ -3258,32 +3338,6 @@ static char *GridcellHelp[] = {
NULL
};
static char *GradsdesHelp[] = {
"NAME",
" gradsdes1, gradsdes2 - GrADS data descriptor file",
"",
"SYNOPSIS",
" <operator> ifile",
"",
"DESCRIPTION",
" 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 have to be specified with",
" the CDO option '-g <grid>'. This module takes ifile in order to create ",
" filenames for the descriptor (ifile.ctl) and the map (ifile.gmp) file.",
" \"gradsdes\" is an alias for gradsdes2.",
"",
"OPERATORS",
" gradsdes1 GrADS data descriptor file (version 1 GRIB map)",
" Creates a GrADS data descriptor file. Generated a machine",
" specific version 1 GrADS map file for GRIB datasets.",
" gradsdes2 GrADS data descriptor file (version 2 GRIB map)",
" Creates a GrADS data descriptor file. Generated a machine ",
" independent version 2 GrADS map file for GRIB datasets.",
" This map file can be used only with GrADS version 1.8 or newer. ",
NULL
};
static char *Smooth9Help[] = {
"NAME",
" smooth9 - 9 point smoothing",
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment