Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
mpim-sw
cdo
Commits
f154b6ea
Commit
f154b6ea
authored
Sep 24, 2015
by
Uwe Schulzweida
Browse files
added Remapcon docu
parent
555c43fb
Changes
9
Hide whitespace changes
Inline
Side-by-side
.gitattributes
View file @
f154b6ea
...
...
@@ -195,6 +195,8 @@ doc/tex/mod/Outputgmt -text
doc/tex/mod/Outputtab -text
doc/tex/mod/Regres -text
doc/tex/mod/Remap -text
doc/tex/mod/Remapcon -text
doc/tex/mod/Remapcon2 -text
doc/tex/mod/Remapeta -text
doc/tex/mod/Remapgrid -text
doc/tex/mod/Remapycon -text
...
...
OPERATORS
View file @
f154b6ea
...
...
@@ -444,6 +444,10 @@ Operator catalog:
-------------------------------------------------------------
Interpolation
-------------------------------------------------------------
Remapycon remapycon First order conservative remapping
Remapycon genycon Generate 1st order conservative remap weights
Remapcon remapcon First order conservative remapping
Remapcon gencon Generate 1st order conservative remap weights
Remapgrid remapbil Bilinear interpolation
Remapgrid remapbic Bicubic interpolation
Remapgrid remapdis Distance-weighted average remapping
...
...
doc/tex/Modules
View file @
f154b6ea
...
...
@@ -93,6 +93,7 @@ Subtrend Regression
EOFs EOFs
Eofcoeff EOFs
Remapycon Interpolation
Remapcon Interpolation
Remapgrid Interpolation
Genweights Interpolation
Remap Interpolation
...
...
doc/tex/makedoc
View file @
f154b6ea
...
...
@@ -892,6 +892,7 @@ while (<MOFILE>) {
$hline
=
$line
;
$hline
=~
s/\"/\\\"/g
;
$hline
=~
s/\\cite//og
;
$hline
=~
s/\@env\{([^}]*)\}/\1/og
;
# if ( $lines == 0 ) {
# print HELPFILE "$hline\",\n";
# }
...
...
doc/tex/mod/Remapcon
0 → 100644
View file @
f154b6ea
@BeginModule
@NewPage
@Name = Remapcon
@Title = First order conservative remapping
@Section = Interpolation
@Class = Interpolation
@Arguments = ifile ofile
@Operators = remapcon gencon
@BeginDescription
This module contains operators for a first order conservative remapping 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 @cite{SCRIP}.
The interpolation method is completely general and can be used for any grid on a sphere.
The search algorithm for the conservative remapping requires that no grid cell occurs more than once.
@EndDescription
@EndModule
@BeginOperator_remapcon
@Name = remapcon
@Title = First order conservative remapping
@Parameter = grid
@BeginDescription
Performs a first order conservative remapping on all input fields.
@EndDescription
@EndOperator
@BeginOperator_gencon
@Title = Generate 1st order conservative remap weights
@Parameter = grid
@BeginDescription
Generates first order conservative 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 = 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_AREA_MIN
This variable is used to set the minimum destination area fraction. The default
of this variable is 0.0.
@EndEnvironment
@BeginNote
The SCRIP conservative remapping method doesn't work correctly for some grid combinations.
Please use @mod{remapycon} or @mod{genycon} in case of problems.
@EndNote
@BeginExample
Say @file{ifile} contains fields on a quadrilateral curvilinear grid.
To remap all fields conservative to a Gaussian N32 grid, type:
@BeginVerbatim
cdo remapcon,n32 ifile ofile
@EndVerbatim
@EndExample
doc/tex/mod/Remapcon2
0 → 100644
View file @
f154b6ea
@BeginModule
@NewPage
@Name = Remapcon
@Title = First order conservative remapping
@Section = Interpolation
@Class = Interpolation
@Arguments = ifile ofile
@Operators = remapcon gencon
@BeginDescription
This module contains operators for a first order conservative remapping 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 @cite{SCRIP}.
The interpolation method is completely general and can be used for any grid on a sphere.
The search algorithm for the conservative remapping requires that no grid cell occurs more than once.
@EndDescription
@EndModule
@BeginOperator_remapcon
@Name = remapcon
@Title = First order conservative remapping
@Parameter = grid
@BeginDescription
Performs a first order conservative remapping on all input fields.
@EndDescription
@EndOperator
@BeginOperator_gencon
@Title = Generate 1st order conservative remap weights
@Parameter = grid
@BeginDescription
Generates first order conservative 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 = 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_AREA_MIN
This variable is used to set the minimum destination area fraction. The default
of this variable is 0.0.
@EndEnvironment
@BeginNote
The SCRIP conservative remapping method doesn't work correctly for some grid combinations.
Please use @mod{remapycon} or @mod{genycon} in case of problems.
@EndNote
@BeginExample
Say @file{ifile} contains fields on a quadrilateral curvilinear grid.
To remap all fields conservative to a Gaussian N32 grid, type:
@BeginVerbatim
cdo remapcon,n32 ifile ofile
@EndVerbatim
@EndExample
doc/tex/mod/Remapycon
View file @
f154b6ea
@BeginModule
@NewPage
@Name = Remapycon
@Title =
C
onservative remapping
@Title =
First order c
onservative remapping
@Section = Interpolation
@Class = Interpolation
@Arguments = ifile ofile
@Operators = remapycon genycon
@BeginDescription
This module contains operators for conservative remapping of fields between grids in spherical coordinates.
This module contains operators for
a first order
conservative remapping of fields between grids in spherical coordinates.
The operators in this module uses code from the YAC software package to compute the conservative remapping weights.
For a detailed description of the remapping method see @cite{YAC}.
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 the conservative remapping requires that no grid cell occurs more than once.
@EndDescription
@EndModule
...
...
@@ -32,13 +33,13 @@ Performs a first order conservative remapping on all input fields.
@Parameter = grid
@BeginDescription
Generates first order conservative remapping weights and writes the result to a file.
Generates first order conservative 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
...
...
src/modules.c
View file @
f154b6ea
...
...
@@ -373,8 +373,10 @@ void *Maggraph(void *argument);
#define PressureOperators {"pressure_fl", "pressure_hl", "deltap"}
#define RegresOperators {"regres"}
#define RemapOperators {"remap"}
#define RemapgridOperators {"remapycon", "remapcon", "remapbil", "remapbic", "remapdis", "remapnn", "remaplaf", "remapcon2", "remapsum"}
#define GenweightsOperators {"genycon", "gencon", "genbil", "genbic", "gendis", "gennn", "genlaf", "gencon2"}
#define RemapyconOperators {"remapycon", "genycon"}
#define RemapconOperators {"remapcon", "gencon"}
#define RemapgridOperators {"remapbil", "remapbic", "remapdis", "remapnn", "remaplaf", "remapcon2", "remapsum"}
#define GenweightsOperators {"genbil", "genbic", "gendis", "gennn", "genlaf", "gencon2"}
#define RemapetaOperators {"remapeta", "remapeta_s", "remapeta_z"}
#define ReplaceOperators {"replace"}
#define ReplacevaluesOperators {"setvals", "setrtoc", "setrtoc2"}
...
...
@@ -644,6 +646,8 @@ static modules_t Modules[] =
{
Pressure
,
NULL
,
PressureOperators
,
CDI_REAL
,
1
,
1
},
{
Regres
,
RegresHelp
,
RegresOperators
,
CDI_REAL
,
1
,
1
},
{
Remap
,
RemapHelp
,
RemapOperators
,
CDI_REAL
,
1
,
1
},
{
Remap
,
RemapyconHelp
,
RemapyconOperators
,
CDI_REAL
,
1
,
1
},
{
Remap
,
RemapconHelp
,
RemapconOperators
,
CDI_REAL
,
1
,
1
},
{
Remap
,
RemapgridHelp
,
RemapgridOperators
,
CDI_REAL
,
1
,
1
},
{
Remap
,
GenweightsHelp
,
GenweightsOperators
,
CDI_REAL
,
1
,
1
},
{
Remapeta
,
RemapetaHelp
,
RemapetaOperators
,
CDI_REAL
,
1
,
1
},
...
...
src/operator_help.h
View file @
f154b6ea
...
...
@@ -3388,6 +3388,88 @@ static const char *EofcoeffHelp[] = {
NULL
};
static
const
char
*
RemapyconHelp
[]
=
{
"NAME"
,
" remapycon, genycon - First order conservative remapping"
,
""
,
"SYNOPSIS"
,
" <operator>,grid ifile ofile"
,
""
,
"DESCRIPTION"
,
" This module contains operators for a first order conservative remapping of fields between grids in spherical coordinates."
,
" The operators in this module uses code from the YAC software package to compute the conservative remapping weights."
,
" 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 the conservative remapping requires that no grid cell occurs more than once. "
,
""
,
"OPERATORS"
,
" remapycon First order conservative remapping"
,
" Performs a first order conservative remapping on all input fields."
,
" genycon Generate 1st order conservative remap weights"
,
" Generates first order conservative 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_AREA_MIN"
,
" This variable is used to set the minimum destination area fraction. The default"
,
" of this variable is 0.0."
,
NULL
};
static
const
char
*
RemapconHelp
[]
=
{
"NAME"
,
" remapcon, gencon - First order conservative remapping"
,
""
,
"SYNOPSIS"
,
" <operator>,grid ifile ofile"
,
""
,
"DESCRIPTION"
,
" This module contains operators for a first order conservative remapping 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."
,
" The interpolation method is completely general and can be used for any grid on a sphere."
,
" The search algorithm for the conservative remapping requires that no grid cell occurs more than once. "
,
""
,
"OPERATORS"
,
" remapcon First order conservative remapping"
,
" Performs a first order conservative remapping on all input fields."
,
" gencon Generate 1st order conservative remap weights"
,
" Generates first order conservative 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_AREA_MIN"
,
" This variable is used to set the minimum destination area fraction. The default"
,
" of this variable is 0.0."
,
""
,
"NOTE"
,
" The SCRIP conservative remapping method doesn't work correctly for some grid combinations."
,
" Please use remapycon or genycon in case of problems. "
,
NULL
};
static
const
char
*
RemapgridHelp
[]
=
{
"NAME"
,
" remapbil, remapbic, remapdis, remapnn, remapcon, remapcon2, remaplaf - "
,
...
...
@@ -3428,7 +3510,7 @@ static const char *RemapgridHelp[] = {
"ENVIRONMENT"
,
" 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"
,
" 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"
,
...
...
@@ -3497,7 +3579,7 @@ static const char *GenweightsHelp[] = {
"ENVIRONMENT"
,
" 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"
,
" 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"
,
...
...
@@ -3539,7 +3621,7 @@ static const char *RemapHelp[] = {
"ENVIRONMENT"
,
" 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"
,
" 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"
,
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment