mirror of https://github.com/ecmwf/eccodes.git
ECC-1168: Add new templates in v26.0.0
This commit is contained in:
parent
1d893380f3
commit
8e8012901a
|
@ -1,6 +1,7 @@
|
|||
# (C) Copyright 2005- ECMWF.
|
||||
|
||||
# TEMPLATE 4.47, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval
|
||||
# Note: This template is deprecated. Template 4.85 should be used instead.
|
||||
|
||||
include "grib2/template.4.parameter_aerosol.def"
|
||||
include "grib2/template.4.horizontal.def"
|
||||
|
|
|
@ -1,14 +1,6 @@
|
|||
# (C) Copyright 2005- ECMWF.
|
||||
#
|
||||
# This software is licensed under the terms of the Apache Licence Version 2.0
|
||||
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
|
||||
#
|
||||
# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by
|
||||
# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.
|
||||
#
|
||||
|
||||
# TEMPLATE 4.76, Analysis or forecast at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with source/sink
|
||||
|
||||
include "grib2/template.4.parameter_chemical_source.def";
|
||||
include "grib2/template.4.point_in_time.def";
|
||||
include "grib2/template.4.horizontal.def";
|
||||
|
|
|
@ -1,14 +1,6 @@
|
|||
# (C) Copyright 2005- ECMWF.
|
||||
#
|
||||
# This software is licensed under the terms of the Apache Licence Version 2.0
|
||||
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
|
||||
#
|
||||
# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by
|
||||
# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.
|
||||
#
|
||||
|
||||
# TEMPLATE 4.77, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer at a point in time for atmospheric chemical constituents with a source/sink
|
||||
|
||||
include "grib2/template.4.parameter_chemical_source.def"
|
||||
include "grib2/template.4.point_in_time.def";
|
||||
include "grib2/template.4.horizontal.def"
|
||||
|
|
|
@ -1,14 +1,6 @@
|
|||
# (C) Copyright 2005- ECMWF.
|
||||
#
|
||||
# This software is licensed under the terms of the Apache Licence Version 2.0
|
||||
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
|
||||
#
|
||||
# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by
|
||||
# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.
|
||||
#
|
||||
|
||||
# TEMPLATE 4.78, Average, accumulation and/or extreme values or other statistically processed values at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source/sink
|
||||
|
||||
include "grib2/template.4.parameter_chemical_source.def"
|
||||
include "grib2/template.4.horizontal.def"
|
||||
include "grib2/template.4.statistical.def"
|
||||
|
|
|
@ -1,14 +1,6 @@
|
|||
# (C) Copyright 2005- ECMWF.
|
||||
#
|
||||
# This software is licensed under the terms of the Apache Licence Version 2.0
|
||||
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
|
||||
#
|
||||
# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by
|
||||
# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.
|
||||
#
|
||||
|
||||
# TEMPLATE 4.79, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for atmospheric chemical constituents with source/sink
|
||||
|
||||
include "grib2/template.4.parameter_chemical_source.def"
|
||||
include "grib2/template.4.horizontal.def"
|
||||
include "grib2/template.4.eps.def"
|
||||
|
|
|
@ -1,13 +1,7 @@
|
|||
# (C) Copyright 2005- ECMWF.
|
||||
#
|
||||
# This software is licensed under the terms of the Apache Licence Version 2.0
|
||||
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
|
||||
#
|
||||
# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by
|
||||
# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.
|
||||
#
|
||||
|
||||
# TEMPLATE 4.83, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval with source/sink
|
||||
# Note: This template is deprecated. Template 4.84 should be used instead.
|
||||
|
||||
include "grib2/template.4.parameter_aerosol_source.def"
|
||||
include "grib2/template.4.horizontal.def"
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
# (C) Copyright 2005- ECMWF.
|
||||
|
||||
# TEMPLATE 4.84, Individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol with source or sink
|
||||
include "grib2/template.4.parameter_aerosol_source.def"
|
||||
include "grib2/template.4.horizontal.def"
|
||||
include "grib2/template.4.eps.def"
|
||||
include "grib2/template.4.statistical.def"
|
|
@ -0,0 +1,7 @@
|
|||
# (C) Copyright 2005- ECMWF.
|
||||
|
||||
# TEMPLATE 4.85, individual ensemble forecast, control and perturbed, at a horizontal level or in a horizontal layer in a continuous or non-continuous time interval for aerosol
|
||||
include "grib2/template.4.parameter_aerosol.def"
|
||||
include "grib2/template.4.horizontal.def"
|
||||
include "grib2/template.4.eps.def"
|
||||
include "grib2/template.4.statistical.def"
|
|
@ -1996,58 +1996,61 @@ int parse_keyval_string(const char* grib_tool,
|
|||
}
|
||||
|
||||
/* Return 1 if the productDefinitionTemplateNumber (GRIB2) is related to EPS */
|
||||
int grib2_is_PDTN_EPS(long productDefinitionTemplateNumber)
|
||||
int grib2_is_PDTN_EPS(long pdtn)
|
||||
{
|
||||
return (
|
||||
productDefinitionTemplateNumber == 1 || productDefinitionTemplateNumber == 11 ||
|
||||
productDefinitionTemplateNumber == 33 || productDefinitionTemplateNumber == 34 || /*simulated (synthetic) satellite data*/
|
||||
productDefinitionTemplateNumber == 41 || productDefinitionTemplateNumber == 43 || /*atmospheric chemical constituents*/
|
||||
productDefinitionTemplateNumber == 45 || productDefinitionTemplateNumber == 47 /*aerosols*/
|
||||
pdtn == 1 || pdtn == 11 ||
|
||||
pdtn == 33 || pdtn == 34 || /*simulated (synthetic) satellite data*/
|
||||
pdtn == 41 || pdtn == 43 || /*atmospheric chemical constituents*/
|
||||
pdtn == 45 || pdtn == 47 || pdtn == 85 /*aerosols*/
|
||||
);
|
||||
}
|
||||
|
||||
/* Return 1 if the productDefinitionTemplateNumber (GRIB2) is for atmospheric chemical constituents */
|
||||
int grib2_is_PDTN_Chemical(long productDefinitionTemplateNumber)
|
||||
int grib2_is_PDTN_Chemical(long pdtn)
|
||||
{
|
||||
return (
|
||||
productDefinitionTemplateNumber == 40 ||
|
||||
productDefinitionTemplateNumber == 41 ||
|
||||
productDefinitionTemplateNumber == 42 ||
|
||||
productDefinitionTemplateNumber == 43);
|
||||
pdtn == 40 ||
|
||||
pdtn == 41 ||
|
||||
pdtn == 42 ||
|
||||
pdtn == 43);
|
||||
}
|
||||
|
||||
/* Return 1 if the productDefinitionTemplateNumber (GRIB2) is for
|
||||
* atmospheric chemical constituents based on a distribution function */
|
||||
int grib2_is_PDTN_ChemicalDistFunc(long productDefinitionTemplateNumber)
|
||||
int grib2_is_PDTN_ChemicalDistFunc(long pdtn)
|
||||
{
|
||||
return (
|
||||
productDefinitionTemplateNumber == 57 ||
|
||||
productDefinitionTemplateNumber == 58 ||
|
||||
productDefinitionTemplateNumber == 67 ||
|
||||
productDefinitionTemplateNumber == 68);
|
||||
pdtn == 57 ||
|
||||
pdtn == 58 ||
|
||||
pdtn == 67 ||
|
||||
pdtn == 68);
|
||||
}
|
||||
|
||||
/* Return 1 if the productDefinitionTemplateNumber (GRIB2) is for aerosols */
|
||||
int grib2_is_PDTN_Aerosol(long productDefinitionTemplateNumber)
|
||||
int grib2_is_PDTN_Aerosol(long pdtn)
|
||||
{
|
||||
/* Notes: PDT 44 is deprecated and replaced by 48 */
|
||||
/* PDT 47 is deprecated and replaced by 85 */
|
||||
return (
|
||||
productDefinitionTemplateNumber == 44 || /* Note: PDT 44 is deprecated. Use 48 instead */
|
||||
productDefinitionTemplateNumber == 48 ||
|
||||
productDefinitionTemplateNumber == 49 ||
|
||||
productDefinitionTemplateNumber == 45 ||
|
||||
productDefinitionTemplateNumber == 46 ||
|
||||
productDefinitionTemplateNumber == 47);
|
||||
pdtn == 44 ||
|
||||
pdtn == 48 ||
|
||||
pdtn == 49 ||
|
||||
pdtn == 45 ||
|
||||
pdtn == 46 ||
|
||||
pdtn == 47 ||
|
||||
pdtn == 85);
|
||||
}
|
||||
|
||||
/* Return 1 if the productDefinitionTemplateNumber (GRIB2) is for optical properties of aerosol */
|
||||
int grib2_is_PDTN_AerosolOptical(long productDefinitionTemplateNumber)
|
||||
int grib2_is_PDTN_AerosolOptical(long pdtn)
|
||||
{
|
||||
/* Note: PDT 48 can be used for both plain aerosols as well as optical properties of aerosol.
|
||||
* For the former user must set the optical wavelength range to missing.
|
||||
*/
|
||||
return (
|
||||
productDefinitionTemplateNumber == 48 ||
|
||||
productDefinitionTemplateNumber == 49);
|
||||
pdtn == 48 ||
|
||||
pdtn == 49);
|
||||
}
|
||||
|
||||
/* Given some information about the type of grib2 parameter, return the productDefinitionTemplateNumber to use.
|
||||
|
|
Loading…
Reference in New Issue