...
(include an explanation about previous conventions.... SPECS, CF, ACDD)
include link to standard names, and list of variables...
Encoding Guide
Global attributes
...
Type (CMIP5) | Coordinate Name (CMIP5) | Dimension Names (CMIP5) | Axis | standard_name | long_name (CMIP5) | units (CF canonical units) | positive | valid_min (CMIP5) | valid_max (CMIP5) | bounds | Notes |
---|---|---|---|---|---|---|---|---|---|---|---|
double | lat | lat | Y | latitude | latitude | degrees_north | N/A | -90. | 90. | lat_bounds | Values (1x1deg grid) prescribed: [-90. , -89. , ..., 0., ... 90.] |
double | lon | lon | X | longitude | longitude | degrees_east | N/A | 0. | 360. | lon_bounds | Values (1x1deg grid) prescribed: dimension lon=360 [0. , 1. , ..., 358., 359.] |
double | plev | plev | Z | air_pressure | pressure | Pa | down | N/A | N/A | bounds? | This is also referred to as isobaric level by some tools [925., 850., 700., 500., 400., 300., 200., 100., 50., 30., 10.] |
double | depth | depth | Z | depth | depth | m | down | N/A | N/A | depth_bounds | Only used for soil model levels NOTE: Number and depth of levels is not prescribed by C3S |
double | height | height | Z | height | height | m | up or down | CMIP5: 2mtemp: 1. | CMIP5: 2mtemp: 10. | Used for single level fields (height, soil,SST) e.g. 2 m (for Temperature) | |
C3S: string
| realization | C3S: realization_dim CF: a different name is needed for dim/variable | E | realization | realization | 1 | N/A | N/A | N/A | members are not a physical quantity. Realization is a discrete coordinate and the mebers it categorical values (ordered or non-ordered ones) |
...
Code Block |
---|
char latitude_longitude ; latitude_longitude:grid_mapping_name = "latitude_longitude" ; |
NOTE: Wouldn't a different name be more appropriate? (e.g. CRS as in CF examples)
Variables
NOTE: coordinates should list first of all the auxiliary coordinate(s) and then all the other coordinates.... SHOULD reftime and leadtime be included as well????
NOTE: type double/real????
Static Fields
attributes | |||||||
name (CMIP5) | dimensions | standard_name | long_name (CMIP5) | units | coordinates | grid_mapping | NOTES |
---|---|---|---|---|---|---|---|
sftlf | lat,lon | land_area_fraction | "Land Area Fraction" | 1 | "lat lon"
| latitude_longitude | |
orog | lat,lon | surface_altitude | "Surface Altitude" | m | "lat lon" | latitude_longitude |
Surface Fields (defined at a given height level)
...
attributes | ||||||||
name (CMIP5) | dimensions | standard_name | long_name (CMIP5) | units | coordinates | cell_methods | grid_mapping | NOTES |
---|---|---|---|---|---|---|---|---|
tas | time,lat,lon | air_temperature | "Near-Surface Air Temperature" | K | "height time lat lon"
| "time: point" | latitude_longitude | height is usually 2m |
tasmax | time,lat,lon | air_temperature | "Daily Maximum Near-Surface Air Temperature" | K | "height time lat lon" | "time: maximum (interval: <value> <unit>)" C3S: required. CF: interval is optional | latitude_longitude | height is usually 2m C3S: The interval is required to have a value<=3 hours) |
tasmin | time,lat,lon | air_temperature | "Daily Minimum Near-Surface Air Temperature" | K | "height time lat lon" | "time: minimum (interval: <value> <unit>)" C3S: required. CF: interval is optional | latitude_longitude | height is usually 2m C3S: The interval is required to have a value<=3 hours) |
time,lat,lon | dew_point_temperature | K | "height time lat lon" | "time: point" C3S: required CF: recommended | latitude_longitude | height is usually 2m
| ||
uas | time,lat,lon | x_wind | Eastward Near-Surface Wind | m s-1 | "height time lat lon" | "time: point" C3S: required CF: recommended | latitude_longitude | height is usually 10m |
vas | time,lat,lon | y_wind | Northward Near-Surface Wind | m s-1 | "height time lat lon" | "time: point" C3S: required CF: recommended | latitude_longitude | height is usually 10m |
time,lat,lon | wind_speed_of_gust | m s-1 | "height time lat lon" | "time: maximum (interval: <value> <unit>)" C3S: required. CF: interval is optional | latitude_longitude | height is usually 10m C3S: The interval is required to have a value<=3 hours) |
Surface Fields (not defined at
...
a height level)
attributes | ||||||||
name (CMIP5) | dimensions | standard_name | long_name (CMIP5) | units | coordinates | cell_methods | grid_mapping | NOTES |
---|---|---|---|---|---|---|---|---|
time,lat,lon |
step
name
air_pressure_at_sea_level | Pa |
intervals must represent 6 hours
"time: point" C3S: required CF: recommended | latitude_longitude | ||
time,lat,lon | cloud_area_fraction |
1 |
intervals must represent 6 hours
intervals must represent 6 hours
skin_temperature" doesn't exist as a CF standard_name, so maybe the required one should be "surface_temperature"
starting at 0Z (to be agreed)
starting at 0Z (to be agreed)
To cope with the fact that some providers send instantaneous 00UTC values and some others daily averages, it was agreed as a compromise to request 6h instantaneous SST values (so the value at 00h would be the same for everyone, and a daily average to account for the diurnal cycle could be obtained from the 6h values)
lwe_thickness_of_surface_snow_amount
starting at 0Z (to be agreed)
Note it is snow amount, not snowfall amount.
A check is needed whether this should be an average or an instantaneous value.
starting at 0Z (to be agreed)
A check is needed whether this should be an average or an instantaneous value
starting at 0Z (to be agreed)
don't know how the cell_methods could be coded for this variable if it is obtained from ratios of daily accumulations of shortwave radiation.
Soil Level Fields
...
step
...
name
...
soil model layer(level)
number
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
scalar
value=1
...
the number of soil levels shouldn't be prescribed (they will likely differ from model to model) and the vertical coordinate for them should be the height -need bounds- of each layer. In addition, there was an issue with the units, Anca should have the final conclusion about that.
...
starting at 0Z (to be agreed)
...
scalar
value=2
...
starting at 0Z (to be agreed)
...
scalar
value=3
...
starting at 0Z (to be agreed)
...
scalar
value=4
...
starting at 0Z (to be agreed)
...
scalar
value=1
...
"time: point" C3S: required CF: recommended | latitude_longitude | |||||||
time,lat,lon | soil_temperature | K | "time: point" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | sea_surface_temperature | K | "time: point" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | sea_ice_temperature | K | "time: point" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | sea_ice_area_fraction | 1 | "time: point" C3S: required CF: recommended | latitude_longitude | ||||
time,depth,lat,lon | mass_content_of_water_in_soil_layer | kg m-2 | "time: point" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | lwe_thickness_of_surface_snow_amount | m | "time: point" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | snow_density | kg m-3 | "time: point" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | lwe_thickness_of_stratiform_precipitation_amount | m | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | lwe_thickness_of_convective_precipitation_amount | m | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | lwe_thickness_of_precipitation_amount | m | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | lwe_thickness_of_snowfall_amount | m | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | integral_of_surface_downward_sensible_heat_of_flux_wrt_time | W s m-2 | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | integral_of_surface_downward_latent_heat_of_flux_wrt_time | W s m-2 | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | integral_of_surface_downwelling_shortwave_flux_in_air_wrt_time | W s m-2 | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | integral_of_surface_net_downward_shortwave_flux_wrt_time | W s m-2 | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | integral_of_surface_net_downward_longwave_flux_wrt_time | W s m-2 | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | integral_of_toa_net_downward_shortwave_flux_wrt_time | W s m-2 | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | integral_of_toa_net_downward_longwave_flux_wrt_time | W s m-2 | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | integral_of_toa_incoming_shortwave_flux_wrt_time | W s m-2 | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | integral_of_surface_downward_eastward_stress_wrt_time | Pa s | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | integral_of_surface_downward_northward_stress_wrt_time | Pa s | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | lwe_thickness_of_watert_evaporation_amount | m | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | runoff_amount | kg m-2 | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | surface_runoff_amount | kg m-2 | "time: sum" C3S: required CF: recommended | latitude_longitude | ||||
time,lat,lon | subsurface_runoff_amount | kg m-2 | "time: sum" C3S: required CF: recommended | latitude_longitude |
Pressure Level Fields
attributes | ||||||||
name (CMIP5) | dimensions | standard_name | long_name (CMIP5) | units | coordinates | cell_methods | grid_mapping | NOTES |
---|---|---|---|---|---|---|---|---|
time,lat,lon | air_pressure_at_sea_level | Pa | "time: point" C3S: required CF: recommended | latitude_longitude |
Accumulation Fields
...
step
...
name
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
is the "interval" is needed in cell_methods with "time: sum"?
...
lwe_thickness_of_snowfall_amount
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
surface_upward_sensible_heat_flux
-may request integral_of_XXXXX_wrt_time instead (diff units)
NOTE: this one is not in the CF standard names list , but the "downward" version is
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
If we are not going to request accumulations since the beginning of the forecast, maybe it is more natural for the providers to send daily averaged values (which affects the standard name -integral_of_XXXXX_wrt_time- and hence the units)
...
surface_upward_latent_heat_flux
-may request integral_of_XXXXX_wrt_time instead (diff units)
NOTE: this one is not in the CF standard names list, but the "downward" version is
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
surface_downwelling_shortwave_flux_in_air
-may request integral_of_XXXXX_wrt_time instead (diff units)
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
surface_downwelling_longwave_flux
-may request integral_of_XXXXX_wrt_time instead (diff units)
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
surface_net_downward_shortwave_flux
-may request integral_of_XXXXX_wrt_time instead (diff units)
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
surface_net_downward_longwave_flux
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
toa_incoming_shortwave_flux
-may request integral_of_XXXXX_wrt_time instead (diff units)
NOTE: this one is not in the CF standard names list
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
toa_outgoing_longwave_flux
-may request integral_of_XXXXX_wrt_time instead (diff units)
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
surface_downward_eastward_stress
-may request integral_of_XXXXX_wrt_time instead (diff units)
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
surface_downward_northward_stress
-may request integral_of_XXXXX_wrt_time instead (diff units)
...
intervals must represent 24 hours
starting at 0Z (to be agreed)
...
lwe_thickness_of_water_evaporation_amount
...
starting at 0Z (to be agreed)
...
starting at 0Z (to be agreed)
...
...
starting at 0Z (to be agreed)
...
starting at 0Z (to be agreed)
...
Pressure Level Fields
step
name
intervals must represent 12 hours
Alternative is "geopotential_height" in m
intervals must represent 12 hours
Additional Questions to be addressed
Question | Discussion | Decision |
---|---|---|
File format to be used? | Francisco Doblas-Reyes NetCDF4? With or without compression? Kevin Marsh netCDF4 classic model (with deflate =6 suggested by Pierre-Antoine) | |
File naming, | Kevin Marsh Pierre-Antoine Bretonniere proposed follow SPECS convention | |
forecast/hindcast matching and labelling | ||
File size recommendation (maximum size)? | Kevin Marsh Pierre-Antoine Bretonniere suggested 4GB recommended maximum size | Kevin Marsh recommend 4GB Max Size for data files |
Versioning of data files? | ||
DOI | Kevin Marsh DOI likely to be assigned at dataset level | Kevin Marsh DOI likely to be assigned at dataset level |
Variable short names to be specified? | Kevin Marsh Antonio S. Cofino Gonzalez suggested follow cmip5 short names | Kevin Marsh follow cmip5 short names |
Coordinate short names to be specified? | Kevin Marsh Antonio S. Cofino Gonzalez suggested follow cmip5 coordinate short names | Kevin Marsh follow cmip5 coordinate short names |
Extension to include ocean data for C3S? | Kevin Marsh yes, but not in the initial convention release | Kevin Marsh Not considered in initial release |
Grids, resolution etc to be specified? | Kevin Marsh Antonio S. Cofino Gonzalez agreed 1 degree grid specified with valid max/min, but actual grid points not specified | Kevin Marsh 1 degree grid specified with valid max/min, but actual grid points not specified |
MARS attributes to be specified? | Kevin Marsh These will be added by C3S, rather than data provider | Kevin Marsh These will be added by C3S |
standard name request/assignment process? | Kevin Marsh requested via standard name mailing list. Note that this process can take some considerable time. | Kevin Marsh requested via standard name mailing list |
...