Commit 5369e7a0 authored by Uwe Schulzweida's avatar Uwe Schulzweida
Browse files

added Remaplaf docu

parent 8bc13915
......@@ -202,6 +202,7 @@ doc/tex/mod/Remapcon2 -text
doc/tex/mod/Remapdis -text
doc/tex/mod/Remapeta -text
doc/tex/mod/Remapgrid -text
doc/tex/mod/Remaplaf -text
doc/tex/mod/Remapnn -text
doc/tex/mod/Remapycon -text
doc/tex/mod/Replace -text
......
......@@ -448,6 +448,8 @@ Operator catalog:
Remapbil genbil Generate bilinear interpolation weights
Remapbic remapbic Bicubic interpolation
Remapbic genbic Generate bicubic interpolation weights
Remapnn remapnn Nearest neighbor remapping
Remapnn gennn Generate nearest neighbor remap weights
Remapdis remapdis Distance-weighted average remapping
Remapdis gendis Generate distance-weighted average remap weights
Remapycon remapycon First order conservative remapping
......@@ -456,10 +458,8 @@ Operator catalog:
Remapcon gencon Generate 1st order conservative remap weights
Remapcon2 remapcon2 Second order conservative remapping
Remapcon2 gencon2 Generate 2nd order conservative remap weights
Remapgrid remapnn Nearest neighbor remapping
Remapgrid remaplaf Largest area fraction remapping
Genweights gennn Generate nearest neighbor remap weights
Genweights genlaf Generate largest area fraction remap weights
Remaplaf remaplaf Largest area fraction remapping
Remaplaf genlaf Generate largest area fraction remap remap weights
Remap remap SCRIP grid remapping
Remapeta remapeta Remap vertical hybrid level
Vertint ml2pl Model to pressure level interpolation
......
......@@ -99,8 +99,7 @@ Remapdis Interpolation
Remapycon Interpolation
Remapcon Interpolation
Remapcon2 Interpolation
Remapgrid Interpolation
Genweights Interpolation
Remaplaf Interpolation
Remap Interpolation
Remapeta Interpolation
Vertint Interpolation
......
@BeginModule
@NewPage
@Name = Genweights
@Title = Generate SCRIP grid interpolation weights
@Section = Interpolation
@Class = Interpolation
@Arguments = ifile ofile
@Operators = genlaf
@BeginDescription
Interpolation between different horizontal grids can be a very time-consuming
process. Especially if the data are on an unstructured or a large grid.
In this case the @ref{SCRIP} interpolation process can be split
into two parts. Firstly the generation of the interpolation weights, which is
the most time-consuming part. These interpolation weights can be reused for
every remapping process with the operator @mod{remap}. This method should be
used only if all input fields are on the same grid and a possibly
mask (missing values) does not change. This module contains operators to
generate SCRIP interpolation weights of the first input field.
Each operator is using a different interpolation method.
@EndDescription
@EndModule
@BeginOperator_genlaf
@Title = Generate largest area fraction remap weights
@Parameter = grid
@BeginDescription
Generates largest area fraction remapping weights and
writes the result to a file.
@EndDescription
@EndOperator
@BeginParameter
@Item = grid
STRING Target grid description file or name
@EndParameter
@BeginEnvironment
@Item = CDO_REMAP_NORM
This variable is used to choose the normalization of the conservative interpolation.
By default @env{CDO_REMAP_NORM} is set to 'fracarea'. 'fracarea' uses the sum of the
non-masked source cell intersected areas to normalize each target cell field value.
This results in a reasonable flux value but the flux is not locally conserved.
The option 'destarea' uses the total target cell area to normalize each target cell
field value. Local flux conservation is ensured, but unreasonable flux values may result.
@Item = REMAP_EXTRAPOLATE
This variable is used to switch the extrapolation feature 'on' or 'off'.
By default the extrapolation is enabled for remapdis, remapnn
and for circular grids.
@Item = REMAP_AREA_MIN
This variable is used to set the minimum destination area fraction. The default
of this variable is 0.0.
@Item = CDO_REMAP_RADIUS
Remap search radius in degree, default 180 degree.
@EndEnvironment
@BeginNote
For this module the author has converted the original Fortran 90 SCRIP software to
ANSI C99. If there are any problems send a bug report to CDO and not to SCRIP!
@EndNote
@BeginExample
Say @file{ifile} contains fields on a quadrilateral curvilinear grid.
To remap all fields bilinear to a Gaussian N32 grid use:
@BeginVerbatim
cdo genbil,n32 ifile remapweights.nc
cdo remap,n32,remapweights.nc ifile ofile
@EndVerbatim
@EndExample
@BeginModule
@NewPage
@Name = Remapgrid
@Title = SCRIP grid interpolation
@Section = Interpolation
@Class = Interpolation
@Arguments = ifile ofile
@Operators = remaplaf
@BeginDescription
This module contains operators to remap all input fields to a new horizontal grid.
Each operator uses a different remapping method. The interpolation is based
on an adapted SCRIP library version. For a detailed description of the remapping
methods see @cite{SCRIP}.
The search algorithm for the conservative remapping requires that no grid cell occurs more than once.
@EndDescription
@EndModule
@BeginOperator_remaplaf
@Name = remaplaf
@Title = Largest area fraction remapping
@Parameter = grid
@BeginDescription
Performs a largest area fraction remapping on all input fields.
@EndDescription
@EndOperator
@BeginParameter
@Item = grid
STRING Target grid description file or name
@EndParameter
@BeginEnvironment
@Item = CDO_REMAP_NORM
This variable is used to choose the normalization of the conservative interpolation.
By default @env{CDO_REMAP_NORM} is set to 'fracarea'. 'fracarea' uses the sum of the
non-masked source cell intersected areas to normalize each target cell field value.
This results in a reasonable flux value but the flux is not locally conserved.
The option 'destarea' uses the total target cell area to normalize each target cell
field value. Local flux conservation is ensured, but unreasonable flux values may result.
@Item = REMAP_EXTRAPOLATE
This variable is used to switch the extrapolation feature 'on' or 'off'.
By default the extrapolation is enabled for remapdis, remapnn and for circular grids.
@Item = REMAP_AREA_MIN
This variable is used to set the minimum destination area fraction. The default
of this variable is 0.0.
@Item = CDO_REMAP_RADIUS
Remap search radius in degree, default 180 degree.
@EndEnvironment
@BeginNote
For this module the author has converted the original Fortran 90 SCRIP
software to ANSI C99. If there are any problems send a bug report to CDO and
not to SCRIP!
@EndNote
@BeginExample
Say @file{ifile} contains fields on a quadrilateral curvilinear grid.
To remap all fields bilinear to a Gaussian N32 grid, type:
@BeginVerbatim
cdo remapbil,n32 ifile ofile
@EndVerbatim
@EndExample
@BeginModule
@NewPage
@Name = Remaplaf
@Title = Largest area fraction remapping
@Section = Interpolation
@Class = Interpolation
@Arguments = ifile ofile
@Operators = remaplaf genlaf
@BeginDescription
This module contains operators for a largest area fraction remapping of fields between grids in spherical coordinates.
The operators in this module uses code from the YAC software package to compute the largest area fraction.
For a detailed description of the interpolation method see @cite{YAC}.
The interpolation method is completely general and can be used for any grid on a sphere.
The search algorithm for this remapping method requires that no grid cell occurs more than once.
@EndDescription
@EndModule
@BeginOperator_remaplaf
@Name = remaplaf
@Title = Largest area fraction remapping
@Parameter = grid
@BeginDescription
Performs a largest area fraction remapping on all input fields.
@EndDescription
@EndOperator
@BeginOperator_genlaf
@Name = genlaf
@Title = Generate largest area fraction remap remap weights
@Parameter = grid
@BeginDescription
Generates largest area fraction remap remapping weights for the first input field and
writes the result to a file. The format of this file is netCDF following the SCRIP convention.
Use the operator @mod{remap} to apply this remapping weights to a data file with the same source grid.
@EndDescription
@EndOperator
@BeginParameter
@Item = grid
STRING Target grid description file or name
@EndParameter
@BeginEnvironment
@Item = REMAP_AREA_MIN
This variable is used to set the minimum destination area fraction. The default
of this variable is 0.0.
@EndEnvironment
......@@ -375,12 +375,13 @@ void *Maggraph(void *argument);
#define RemapOperators {"remap"}
#define RemapbilOperators {"remapbil", "genbil"}
#define RemapbicOperators {"remapbic", "genbic"}
#define RemapnnOperators {"remapnn", "gennn"}
#define RemapdisOperators {"remapdis", "gendis"}
#define RemapyconOperators {"remapycon", "genycon"}
#define RemapconOperators {"remapcon", "gencon"}
#define Remapcon2Operators {"remapcon2", "gencon2"}
#define RemapgridOperators {"remapnn", "remaplaf", "remapsum"}
#define GenweightsOperators {"gennn", "genlaf"}
#define RemaplafOperators {"remaplaf", "genlaf"}
#define RemapgridOperators {"remapsum"}
#define RemapetaOperators {"remapeta", "remapeta_s", "remapeta_z"}
#define ReplaceOperators {"replace"}
#define ReplacevaluesOperators {"setvals", "setrtoc", "setrtoc2"}
......@@ -652,12 +653,13 @@ static modules_t Modules[] =
{ Remap, RemapHelp, RemapOperators, CDI_REAL, 1, 1 },
{ Remap, RemapbilHelp, RemapbilOperators, CDI_REAL, 1, 1 },
{ Remap, RemapbicHelp, RemapbicOperators, CDI_REAL, 1, 1 },
{ Remap, RemapnnHelp, RemapnnOperators, CDI_REAL, 1, 1 },
{ Remap, RemapdisHelp, RemapdisOperators, CDI_REAL, 1, 1 },
{ Remap, RemapyconHelp, RemapyconOperators, CDI_REAL, 1, 1 },
{ Remap, RemapconHelp, RemapconOperators, CDI_REAL, 1, 1 },
{ Remap, Remapcon2Help, Remapcon2Operators, CDI_REAL, 1, 1 },
{ Remap, RemapgridHelp, RemapgridOperators, CDI_REAL, 1, 1 },
{ Remap, GenweightsHelp, GenweightsOperators, CDI_REAL, 1, 1 },
{ Remap, RemaplafHelp, RemaplafOperators, CDI_REAL, 1, 1 },
{ Remap, NULL, RemapgridOperators, CDI_REAL, 1, 1 },
{ Remapeta, RemapetaHelp, RemapetaOperators, CDI_REAL, 1, 1 },
{ Replace, ReplaceHelp, ReplaceOperators, CDI_REAL, 2, 1 },
{ Replacevalues, ReplacevaluesHelp, ReplacevaluesOperators, CDI_REAL, 1, 1 },
......
......@@ -3450,6 +3450,37 @@ static const char *RemapbicHelp[] = {
NULL
};
static const char *RemapnnHelp[] = {
"NAME",
" remapnn, gennn - Nearest neighbor remapping",
"",
"SYNOPSIS",
" <operator>,grid ifile ofile",
"",
"DESCRIPTION",
" This module contains operators for a nearest neighbor remapping of fields between grids",
" in spherical coordinates.",
"",
"OPERATORS",
" remapnn Nearest neighbor remapping",
" Performs a nearest neighbor remapping on all input fields.",
" gennn Generate nearest neighbor remap weights",
" Generates nearest neighbor remapping weights for the first input field and writes the result to a file.",
" The format of this file is netCDF following the SCRIP convention.",
" Use the operator remap to apply this remapping weights to a data file with the same source grid.",
"",
"PARAMETER",
" grid STRING Target grid description file or name",
"",
"ENVIRONMENT",
" REMAP_EXTRAPOLATE",
" This variable is used to switch the extrapolation feature 'on' or 'off'.",
" By default the extrapolation is enabled for this remapping method.",
" CDO_REMAP_RADIUS ",
" Remap search radius in degree, default 180 degree.",
NULL
};
static const char *RemapdisHelp[] = {
"NAME",
" remapdis, gendis - Distance-weighted average remapping",
......@@ -3462,7 +3493,6 @@ static const char *RemapdisHelp[] = {
" nearest neighbor values of fields between grids in spherical coordinates.",
" The interpolation is based on an adapted SCRIP library version. ",
" For a detailed description of the interpolation method see SCRIP.",
" This interpolation method only works on quadrilateral curvilinear source grids.",
"",
"OPERATORS",
" remapdis Distance-weighted average remapping",
......@@ -3611,103 +3641,35 @@ static const char *Remapcon2Help[] = {
NULL
};
static const char *RemapgridHelp[] = {
static const char *RemaplafHelp[] = {
"NAME",
" remapnn, remaplaf - SCRIP grid interpolation",
" remaplaf, genlaf - Largest area fraction remapping",
"",
"SYNOPSIS",
" <operator>,grid ifile ofile",
"",
"DESCRIPTION",
" This module contains operators to remap all input fields to a new horizontal grid.",
" Each operator uses a different remapping method. The interpolation is based",
" on an adapted SCRIP library version. For a detailed description of the remapping ",
" methods see SCRIP.",
" The search algorithm for the conservative remapping requires that no grid cell occurs more than once. ",
" This module contains operators for a largest area fraction remapping of fields between grids in spherical coordinates.",
" The operators in this module uses code from the YAC software package to compute the largest area fraction.",
" For a detailed description of the interpolation method see YAC.",
" The interpolation method is completely general and can be used for any grid on a sphere.",
" The search algorithm for this remapping method requires that no grid cell occurs more than once. ",
"",
"OPERATORS",
" remapnn Nearest neighbor remapping",
" Performs a nearest neighbor remapping on all input fields.",
" remaplaf Largest area fraction remapping",
" Performs a largest area fraction remapping on all input fields.",
" genlaf Generate largest area fraction remap remap weights",
" Generates largest area fraction remap remapping weights for the first input field and",
" writes the result to a file. The format of this file is netCDF following the SCRIP convention.",
" Use the operator remap to apply this remapping weights to a data file with the same source grid.",
"",
"PARAMETER",
" grid STRING Target grid description file or name",
"",
"ENVIRONMENT",
" CDO_REMAP_NORM ",
" This variable is used to choose the normalization of the conservative interpolation. ",
" By default CDO_REMAP_NORM is set to 'fracarea'. 'fracarea' uses the sum of the",
" non-masked source cell intersected areas to normalize each target cell field value.",
" This results in a reasonable flux value but the flux is not locally conserved.",
" The option 'destarea' uses the total target cell area to normalize each target cell",
" field value. Local flux conservation is ensured, but unreasonable flux values may result.",
" REMAP_EXTRAPOLATE",
" This variable is used to switch the extrapolation feature 'on' or 'off'.",
" By default the extrapolation is enabled for remapdis, remapnn and for circular grids.",
" REMAP_AREA_MIN ",
" This variable is used to set the minimum destination area fraction. The default",
" of this variable is 0.0.",
" CDO_REMAP_RADIUS ",
" Remap search radius in degree, default 180 degree.",
"",
"NOTE",
" For this module the author has converted the original Fortran 90 SCRIP ",
" software to ANSI C99. If there are any problems send a bug report to CDO and",
" not to SCRIP!",
NULL
};
static const char *GenweightsHelp[] = {
"NAME",
" gennn, genlaf - Generate SCRIP grid interpolation weights",
"",
"SYNOPSIS",
" <operator>,grid ifile ofile",
"",
"DESCRIPTION",
" Interpolation between different horizontal grids can be a very time-consuming ",
" process. Especially if the data are on an unstructured or a large grid. ",
" In this case the SCRIP interpolation process can be split ",
" into two parts. Firstly the generation of the interpolation weights, which is ",
" the most time-consuming part. These interpolation weights can be reused for ",
" every remapping process with the operator remap. This method should be ",
" used only if all input fields are on the same grid and a possibly",
" mask (missing values) does not change. This module contains operators to ",
" generate SCRIP interpolation weights of the first input field.",
" Each operator is using a different interpolation method.",
"",
"OPERATORS",
" gennn Generate nearest neighbor remap weights",
" Generates nearest neighbor remapping weights and writes the result to a file.",
" genlaf Generate largest area fraction remap weights",
" Generates largest area fraction remapping weights and",
" writes the result to a file.",
"",
"PARAMETER",
" grid STRING Target grid description file or name",
"",
"ENVIRONMENT",
" CDO_REMAP_NORM ",
" This variable is used to choose the normalization of the conservative interpolation. ",
" By default CDO_REMAP_NORM is set to 'fracarea'. 'fracarea' uses the sum of the",
" non-masked source cell intersected areas to normalize each target cell field value.",
" This results in a reasonable flux value but the flux is not locally conserved.",
" The option 'destarea' uses the total target cell area to normalize each target cell",
" field value. Local flux conservation is ensured, but unreasonable flux values may result.",
" REMAP_EXTRAPOLATE",
" This variable is used to switch the extrapolation feature 'on' or 'off'.",
" By default the extrapolation is enabled for remapdis, remapnn",
" and for circular grids.",
" REMAP_AREA_MIN ",
" REMAP_AREA_MIN",
" This variable is used to set the minimum destination area fraction. The default",
" of this variable is 0.0.",
" CDO_REMAP_RADIUS ",
" Remap search radius in degree, default 180 degree.",
"",
"NOTE",
" For this module the author has converted the original Fortran 90 SCRIP software to ",
" ANSI C99. If there are any problems send a bug report to CDO and not to SCRIP!",
NULL
};
......
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