11.2 Time Standard
Internal PEcAn standard time follows ISO_8601 format for dates and time (https://en.wikipedia.org/wiki/ISO_8601). For example ordinal dates go from 1 365/366 (https://en.wikipedia.org/wiki/ISO_8601#Ordinal_dates). However, time used in met drivers or model outputs follows CF convention with julian dates following the 0 to 364/365 format
To aid in the conversion between PEcAn internal ISO_8601 standard and CF convention used in all met drivers and PEcAn standard output you can utilize the functions: “cf2datetime”,“datetime2doy”,“cf2doy”, and for SIPNET “sipnet2datetime”
11.2.1 Input Standards
11.2.1.1 Meterology Standards
11.2.1.1.1 Dimensions:
CF standard-name | units |
---|---|
time | days since 1700-01-01 00:00:00 UTC |
longitude | degrees_east |
latitude | degrees_north |
General Note: dates in the database should be date-time (preferably with timezone), and datetime passed around in PEcAn should be of type POSIXct.
11.2.1.1.2 The variable names should be standard_name
- preferred variables indicated in bold
- wind_direction has no CF equivalent and should not be converted, instead the met2CF functions should convert wind_direction and wind_speed to eastward_wind and northward_wind
- standard_name is CF-convention standard names
- units can be converted by udunits, so these can vary (e.g. the time denominator may change with time frequency of inputs)
- soil moisture for the full column, rather than a layer, is soil_moisture_content
- A full list of PEcAn standard variable names, units and dimensions can be found here: https://github.com/PecanProject/pecan/blob/develop/base/utils/data/standard_vars.csv
For example, in the MsTMIP-CRUNCEP data, the variable rain
should be precipitation_rate
.
We want to standardize the units as well as part of the met2CF.<product>
step. I believe we want to use the CF “canonical” units but retain the MsTMIP units any time CF is ambiguous about the units.
The key is to process each type of met data (site, reanalysis, forecast, climate scenario, etc) to the exact same standard. This way every operation after that (extract, gap fill, downscale, convert to a model, etc) will always have the exact same inputs. This will make everything else much simpler to code and allow us to avoid a lot of unnecessary data checking, tests, etc being repeated in every downstream function.
11.2.2 Soils and Vegetation Inputs
11.2.2.0.1 Soil Data
Check out the Soil Data section on more into on creating a standard soil data file.
11.2.2.0.2 Vegetation Data
Check Out the Vegetation Data section on more info on creating a standard vegetation data file
11.2.3 Output Standards
- created by
model2netcdf
functions - based on format used by MsTMIP
- Can be seen at HERE
We originally used the MsTMIP conventions. Since then, we’ve added the PaLEON variable conventions to our standard as well. If a variable isn’t in one of those two, we stick to the CF conventions.