doc: |
  ===================
  CF Standard indices
  ===================

  Indicators found here are defined by the `clix-meta project`_. Adapted documentation from that repository follows:

  The repository aims to provide a platform for thinking about, and developing, a unified view of metadata elements
  required to describe climate indices (aka climate indicators).

  To facilitate data exchange and dissemination the metadata should, as far as possible, follow the Climate and
  Forecasting (CF) Conventions. Considering the very rich and diverse flora of climate indices, this is however not
  always possible. By collecting a wide range of different indices it is easier to discover any common patterns and
  features that are currently not well covered by the CF Conventions. Currently identified issues frequently relate to
  standard_name and/or cell_methods which both are controlled vocabularies of the CF Conventions.

  .. _clix-meta project: https://github.com/clix-meta/clix-meta
realm: atmos
references: clix-meta https://github.com/clix-meta/clix-meta
indicators:
  cdd:
    cf_attrs:
    - cell_methods: 'time: sum over days'
      long_name: Maximum consecutive dry days (Precip < 1mm)
      proposed_standard_name: spell_length_with_lwe_thickness_of_precipitation_amount_below_threshold
      standard_name: spell_length_of_days_with_lwe_thickness_of_precipitation_amount_below_threshold
      units: day
      var_name: cdd
    compute: spell_length
    input:
      data: pr
    parameters:
      op: <
      freq:
        default: YS
      reducer: max
      threshold: 1 mm day-1
    references: ETCCDI
    context: hydro
  cddcoldTT:
    cf_attrs:
    - cell_methods: 'time: sum over days'
      long_name: Cooling Degree Days (Tmean > {threshold}C)
      standard_name: integral_wrt_time_of_air_temperature_excess
      units: degree_Celsius day
      var_name: cddcold{threshold}
    compute: temperature_sum
    input:
      data: tas
    parameters:
      op: '>'
      freq:
        default: YS
      threshold:
        description: air temperature
    references: ET-SCI
  cfd:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive frost days (Tmin < 0 C)
      proposed_standard_name: spell_length_with_air_temperature_below_threshold
      standard_name: spell_length_of_days_with_air_temperature_below_threshold
      units: day
      var_name: cfd
    compute: count_occurrences
    input:
      data: tasmin
    parameters:
      op: <
      freq:
        default: YS
      threshold: 0 degree_Celsius
    references: ECA&D
  csu:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive summer days (Tmax >25 C)
      proposed_standard_name: spell_length_with_air_temperature_above_threshold
      standard_name: spell_length_of_days_with_air_temperature_above_threshold
      units: day
      var_name: csu
    compute: count_occurrences
    input:
      data: tasmax
    parameters:
      op: '>'
      freq:
        default: YS
      threshold: 25 degree_Celsius
    references: ECA&D
  ctmgeTT:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive days with Tmean >= {threshold}C
      proposed_standard_name: spell_length_with_air_temperature_at_or_above_threshold
      standard_name: spell_length_of_days_with_air_temperature_above_threshold
      units: day
      var_name: ctmge{threshold}
    compute: spell_length
    input:
      data: tas
    parameters:
      op: '>'
      freq:
        default: YS
      reducer: max
      threshold:
        description: air temperature
    references: CLIPC
  ctmgtTT:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive days with Tmean > {threshold}C
      proposed_standard_name: spell_length_with_air_temperature_above_threshold
      standard_name: spell_length_of_days_with_air_temperature_above_threshold
      units: day
      var_name: ctmgt{threshold}
    compute: spell_length
    input:
      data: tas
    parameters:
      op: '>'
      freq:
        default: YS
      reducer: max
      threshold:
        description: air temperature
    references: CLIPC
  ctmleTT:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive days with Tmean <= {threshold}C
      proposed_standard_name: spell_length_with_air_temperature_at_or_below_threshold
      standard_name: spell_length_of_days_with_air_temperature_below_threshold
      units: day
      var_name: ctmle{threshold}
    compute: spell_length
    input:
      data: tas
    parameters:
      op: <
      freq:
        default: YS
      reducer: max
      threshold:
        description: air temperature
    references: CLIPC
  ctmltTT:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive days with Tmean < {threshold}C
      proposed_standard_name: spell_length_with_air_temperature_below_threshold
      standard_name: spell_length_of_days_with_air_temperature_below_threshold
      units: day
      var_name: ctmlt{threshold}
    compute: spell_length
    input:
      data: tas
    parameters:
      op: <
      freq:
        default: YS
      reducer: max
      threshold:
        description: air temperature
    references: CLIPC
  ctngeTT:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive days with Tmin >= {threshold}C
      proposed_standard_name: spell_length_with_air_temperature_at_or_above_threshold
      standard_name: spell_length_of_days_with_air_temperature_above_threshold
      units: day
      var_name: ctnge{threshold}
    compute: spell_length
    input:
      data: tasmin
    parameters:
      op: '>'
      freq:
        default: YS
      reducer: max
      threshold:
        description: air temperature
    references: CLIPC
  ctngtTT:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive days with Tmin > {threshold}C
      proposed_standard_name: spell_length_with_air_temperature_above_threshold
      standard_name: spell_length_of_days_with_air_temperature_above_threshold
      units: day
      var_name: ctngt{threshold}
    compute: spell_length
    input:
      data: tasmin
    parameters:
      op: '>'
      freq:
        default: YS
      reducer: max
      threshold:
        description: air temperature
    references: CLIPC
  ctnleTT:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive days with Tmin <= {threshold}C
      proposed_standard_name: spell_length_with_air_temperature_at_or_below_threshold
      standard_name: spell_length_of_days_with_air_temperature_below_threshold
      units: day
      var_name: ctnle{threshold}
    compute: spell_length
    input:
      data: tasmin
    parameters:
      op: <
      freq:
        default: YS
      reducer: max
      threshold:
        description: air temperature
    references: CLIPC
  ctnltTT:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive days with Tmin < {threshold}C
      proposed_standard_name: spell_length_with_air_temperature_below_threshold
      standard_name: spell_length_of_days_with_air_temperature_below_threshold
      units: day
      var_name: ctnlt{threshold}
    compute: spell_length
    input:
      data: tasmin
    parameters:
      op: <
      freq:
        default: YS
      reducer: max
      threshold:
        description: air temperature
    references: CLIPC
  ctxgeTT:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive days with Tmax >= {threshold}C
      proposed_standard_name: spell_length_with_air_temperature_at_or_above_threshold
      standard_name: spell_length_of_days_with_air_temperature_above_threshold
      units: day
      var_name: ctxge{threshold}
    compute: spell_length
    input:
      data: tasmax
    parameters:
      op: '>'
      freq:
        default: YS
      reducer: max
      threshold:
        description: air temperature
    references: CLIPC
  ctxgtTT:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive days with Tmax > {threshold}C
      proposed_standard_name: spell_length_with_air_temperature_above_threshold
      standard_name: spell_length_of_days_with_air_temperature_above_threshold
      units: day
      var_name: ctxgt{threshold}
    compute: spell_length
    input:
      data: tasmax
    parameters:
      op: '>'
      freq:
        default: YS
      reducer: max
      threshold:
        description: air temperature
    references: CLIPC
  ctxleTT:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive days with Tmax <= {threshold}C
      proposed_standard_name: spell_length_with_air_temperature_at_or_below_threshold
      standard_name: spell_length_of_days_with_air_temperature_below_threshold
      units: day
      var_name: ctxle{threshold}
    compute: spell_length
    input:
      data: tasmax
    parameters:
      op: <
      freq:
        default: YS
      reducer: max
      threshold:
        description: air temperature
    references: CLIPC
  ctxltTT:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum number of consecutive days with Tmax < {threshold}C
      proposed_standard_name: spell_length_with_air_temperature_below_threshold
      standard_name: spell_length_of_days_with_air_temperature_below_threshold
      units: day
      var_name: ctxlt{threshold}
    compute: spell_length
    input:
      data: tasmax
    parameters:
      op: <
      freq:
        default: YS
      reducer: max
      threshold:
        description: air temperature
    references: CLIPC
  cwd:
    cf_attrs:
    - cell_methods: 'time: sum over days'
      long_name: Maximum consecutive wet days (Precip >= 1mm)
      proposed_standard_name: spell_length_with_lwe_thickness_of_precipitation_amount_at_or_above_threshold
      standard_name: spell_length_of_days_with_lwe_thickness_of_precipitation_amount_above_threshold
      units: day
      var_name: cwd
    compute: spell_length
    input:
      data: pr
    parameters:
      op: '>'
      freq:
        default: YS
      reducer: max
      threshold: 1 mm day-1
    references: ETCCDI
    context: hydro
  ddgtTT:
    cf_attrs:
    - cell_methods: 'time: sum over days'
      long_name: Degree Days (Tmean > {threshold}C)
      standard_name: integral_wrt_time_of_air_temperature_excess
      units: degree_Celsius day
      var_name: ddgt{threshold}
    compute: temperature_sum
    input:
      data: tas
    parameters:
      op: '>'
      freq:
        default: YS
      threshold:
        description: air temperature
    references: CLIPC
  ddltTT:
    cf_attrs:
    - cell_methods: 'time: sum over days'
      long_name: Degree Days (Tmean < {threshold}C)
      standard_name: integral_wrt_time_of_air_temperature_deficit
      units: degree_Celsius day
      var_name: ddlt{threshold}
    compute: temperature_sum
    input:
      data: tas
    parameters:
      op: <
      freq:
        default: YS
      threshold:
        description: air temperature
    references: CLIPC
  dtr:
    cf_attrs:
    - cell_methods: 'time: range within days time: mean over days'
      long_name: Mean Diurnal Temperature Range
      proposed_standard_name: air_temperature_range
      units: degree_Celsius
      var_name: dtr
    compute: diurnal_temperature_range
    input:
      high_data: tasmax
      low_data: tasmin
    parameters:
      freq:
        default: MS
      reducer: mean
    references: ETCCDI
  etr:
    cf_attrs:
    - cell_methods: 'time: range'
      long_name: Intra-period extreme temperature range
      proposed_standard_name: air_temperature_range
      units: degree_Celsius
      var_name: etr
    compute: extreme_temperature_range
    input:
      high_data: tasmax
      low_data: tasmin
    parameters:
      freq:
        default: MS
    references: ECA&D
  fg:
    cf_attrs:
    - cell_methods: 'time: mean'
      long_name: Mean of daily mean wind strength
      standard_name: wind_speed
      units: meter second-1
      var_name: fg
    compute: statistics
    input:
      data: sfcWind
    parameters:
      freq:
        default: MS
      reducer: mean
    references: ECA&D
  fxx:
    cf_attrs:
    - cell_methods: 'time: maximum'
      long_name: Maximum value of daily maximum wind gust strength
      standard_name: wind_speed_of_gust
      units: meter second-1
      var_name: fxx
    compute: statistics
    input:
      data: wsgsmax
    parameters:
      freq:
        default: MS
      reducer: max
    references: ECA&D
  gd4:
    cf_attrs:
    - cell_methods: 'time: sum over days'
      long_name: Growing degree days (sum of Tmean > 4 C)
      standard_name: integral_wrt_time_of_air_temperature_excess
      units: degree_Celsius day
      var_name: gd4
    compute: temperature_sum
    input:
      data: tas
    parameters:
      op: '>'
      freq:
        default: YS
      threshold: 4 degree_Celsius
    references: ECA&D
  gddgrowTT:
    cf_attrs:
    - cell_methods: 'time: sum over days'
      long_name: Annual Growing Degree Days (Tmean > {threshold}C)
      standard_name: integral_wrt_time_of_air_temperature_excess
      units: degree_Celsius day
      var_name: gddgrow{threshold}
    compute: temperature_sum
    input:
      data: tas
    parameters:
      op: '>'
      freq:
        default: YS
      threshold:
        description: air temperature
    references: ET-SCI
  hd17:
    cf_attrs:
    - cell_methods: 'time: sum over days'
      long_name: Heating degree days (sum of Tmean < 17 C)
      standard_name: integral_wrt_time_of_air_temperature_excess
      units: degree_Celsius day
      var_name: hd17
    compute: temperature_sum
    input:
      data: tas
    parameters:
      op: <
      freq:
        default: YS
      threshold: 17 degree_Celsius
    references: ECA&D
  hddheatTT:
    cf_attrs:
    - cell_methods: 'time: sum over days'
      long_name: Heating Degree Days (Tmean < {threshold}C)
      standard_name: integral_wrt_time_of_air_temperature_deficit
      units: degree_Celsius day
      var_name: hddheat{threshold}
    compute: temperature_sum
    input:
      data: tas
    parameters:
      op: <
      freq:
        default: YS
      threshold:
        description: air temperature
    references: ET-SCI
  maxdtr:
    cf_attrs:
    - cell_methods: 'time: range within days time: maximum over days'
      long_name: Maximum Diurnal Temperature Range
      proposed_standard_name: air_temperature_range
      units: degree_Celsius
      var_name: maxdtr
    compute: diurnal_temperature_range
    input:
      high_data: tasmax
      low_data: tasmin
    parameters:
      freq:
        default: MS
      reducer: max
    references: SMHI
  pp:
    cf_attrs:
    - cell_methods: 'time: mean'
      long_name: Mean of daily sea level pressure
      standard_name: air_pressure_at_sea_level
      units: hPa
      var_name: pp
    compute: statistics
    input:
      data: psl
    parameters:
      freq:
        default: MS
      reducer: mean
    references: ECA&D
  rh:
    cf_attrs:
    - cell_methods: 'time: mean'
      long_name: Mean of daily relative humidity
      standard_name: relative_humidity
      units: '%'
      var_name: rh
    compute: statistics
    input:
      data: hurs
    parameters:
      freq:
        default: MS
      reducer: mean
    references: ECA&D
  sd:
    cf_attrs:
    - cell_methods: 'time: mean'
      long_name: Mean of daily snow depth
      standard_name: surface_snow_thickness
      units: cm
      var_name: sd
    compute: statistics
    input:
      data: snd
    parameters:
      freq:
        default: MS
      reducer: mean
    references: ECA&D
  sdii:
    cf_attrs:
    - cell_methods: 'time: mean over days'
      long_name: Average precipitation during Wet Days (SDII)
      standard_name: lwe_precipitation_rate
      units: mm day-1
      var_name: sdii
    compute: thresholded_statistics
    input:
      data: pr
    parameters:
      op: '>'
      freq:
        default: YS
      reducer: mean
      threshold: 1 mm day-1
    references: ETCCDI
  ss:
    cf_attrs:
    - long_name: Sunshine duration, sum
      standard_name: duration_of_sunshine
      units: hour
      var_name: ss
    compute: statistics
    input:
      data: sund
    parameters:
      freq:
        default: MS
      reducer: sum
    references: ECA&D
  tg:
    cf_attrs:
    - cell_methods: 'time: mean'
      long_name: Mean of daily mean temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tg
    compute: statistics
    input:
      data: tas
    parameters:
      freq:
        default: MS
      reducer: mean
    references: ECA&D
  tmm:
    cf_attrs:
    - cell_methods: 'time: mean over days'
      long_name: Mean daily mean temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tmm
    compute: statistics
    input:
      data: tas
    parameters:
      freq:
        default: YS
      reducer: mean
    references: null
  tmmax:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum daily mean temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tmmax
    compute: statistics
    input:
      data: tas
    parameters:
      freq:
        default: YS
      reducer: max
    references: CLIPC
  tmmean:
    cf_attrs:
    - cell_methods: 'time: mean over days'
      long_name: Mean daily mean temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tmmean
    compute: statistics
    input:
      data: tas
    parameters:
      freq:
        default: YS
      reducer: mean
    references: CLIPC
  tmmin:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Minimum daily mean temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tmmin
    compute: statistics
    input:
      data: tas
    parameters:
      freq:
        default: YS
      reducer: min
    references: CLIPC
  tmn:
    cf_attrs:
    - cell_methods: 'time: minimum over days'
      long_name: Minimum daily mean temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tmn
    compute: statistics
    input:
      data: tas
    parameters:
      freq:
        default: YS
      reducer: min
    references: null
  tmx:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum daily mean temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tmx
    compute: statistics
    input:
      data: tas
    parameters:
      freq:
        default: YS
      reducer: max
    references: null
  tn:
    cf_attrs:
    - cell_methods: 'time: mean'
      long_name: Mean of daily minimum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tn
    compute: statistics
    input:
      data: tasmin
    parameters:
      freq:
        default: MS
      reducer: mean
    references: ECA&D
  tnm:
    cf_attrs:
    - cell_methods: 'time: mean over days'
      long_name: Mean daily minimum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tnm
    compute: statistics
    input:
      data: tasmin
    parameters:
      freq:
        default: YS
      reducer: mean
    references: null
  tnmax:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum daily minimum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tnmax
    compute: statistics
    input:
      data: tasmin
    parameters:
      freq:
        default: YS
      reducer: max
    references: CLIPC
  tnmean:
    cf_attrs:
    - cell_methods: 'time: mean over days'
      long_name: Mean daily minimum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tnmean
    compute: statistics
    input:
      data: tasmin
    parameters:
      freq:
        default: YS
      reducer: mean
    references: CLIPC
  tnmin:
    cf_attrs:
    - cell_methods: 'time: minimum over days'
      long_name: Minimum daily minimum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tnmin
    compute: statistics
    input:
      data: tasmin
    parameters:
      freq:
        default: YS
      reducer: min
    references: CLIPC
  tnn:
    cf_attrs:
    - cell_methods: 'time: minimum over days'
      long_name: Minimum daily minimum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tnn
    compute: statistics
    input:
      data: tasmin
    parameters:
      freq:
        default: YS
      reducer: min
    references: ETCCDI
  tnx:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum daily minimum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tnx
    compute: statistics
    input:
      data: tasmin
    parameters:
      freq:
        default: YS
      reducer: max
    references: ETCCDI
  tx:
    cf_attrs:
    - cell_methods: 'time: mean'
      long_name: Mean of daily maximum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: tx
    compute: statistics
    input:
      data: tasmax
    parameters:
      freq:
        default: MS
      reducer: mean
    references: ECA&D
  txm:
    cf_attrs:
    - cell_methods: 'time: mean over days'
      long_name: Mean daily maximum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: txm
    compute: statistics
    input:
      data: tasmax
    parameters:
      freq:
        default: YS
      reducer: mean
    references: null
  txmax:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum daily maximum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: txmax
    compute: statistics
    input:
      data: tasmax
    parameters:
      freq:
        default: YS
      reducer: max
    references: CLIPC
  txmean:
    cf_attrs:
    - cell_methods: 'time: mean over days'
      long_name: Mean daily maximum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: txmean
    compute: statistics
    input:
      data: tasmax
    parameters:
      freq:
        default: YS
      reducer: mean
    references: CLIPC
  txmin:
    cf_attrs:
    - cell_methods: 'time: minimum over days'
      long_name: Minimum daily maximum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: txmin
    compute: statistics
    input:
      data: tasmax
    parameters:
      freq:
        default: YS
      reducer: min
    references: CLIPC
  txn:
    cf_attrs:
    - cell_methods: 'time: minimum over days'
      long_name: Minimum daily maximum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: txn
    compute: statistics
    input:
      data: tasmax
    parameters:
      freq:
        default: YS
      reducer: min
    references: ETCCDI
  txx:
    cf_attrs:
    - cell_methods: 'time: maximum over days'
      long_name: Maximum daily maximum temperature
      standard_name: air_temperature
      units: degree_Celsius
      var_name: txx
    compute: statistics
    input:
      data: tasmax
    parameters:
      freq:
        default: YS
      reducer: max
    references: ETCCDI
  vdtr:
    cf_attrs:
    - long_name: Mean day-to-day variation in Diurnal Temperature Range
      proposed_standard_name: air_temperature_difference
      units: degree_Celsius
      var_name: vdtr
    compute: interday_diurnal_temperature_range
    input:
      high_data: tasmax
      low_data: tasmin
    parameters:
      freq:
        default: MS
    references: ECA&D
