## Difference between revisions of "NetCDF time coordinate"

### From BAWiki

imported>Lang Guenther m (first version without detailed text) |
imported>Lang Guenther (englisch text added the first time) |
||

Line 1: | Line 1: | ||

[[de:NetCDF Zeitkoordinate]] | [[de:NetCDF Zeitkoordinate]] | ||

− | + | ||

+ | =Introduction= | ||

+ | |||

+ | Date, time and calendar plus (optional) use of time intervals. | ||

+ | |||

+ | =Time information in a netCDF file= | ||

+ | ==Dimensions== | ||

+ | |||

+ | dimensions: | ||

+ | : time = ''number of time steps'' or ''UNLIMITED''; | ||

+ | : bnd = 2 ; | ||

+ | Comment: In case the number of time steps is known before-hand, '''Bert Jagers''' (Deltares) recommends to use a fixed length instead of an UNLIMITED dimension due to performace reasons. But this only works for variables not exceeding 4 GiB. | ||

+ | |||

+ | ==Variables== | ||

+ | |||

+ | ===Coordinate ''time''=== | ||

+ | |||

+ | double time(time) ; | ||

+ | : time:standard_name = "'''time'''" ; | ||

+ | : time:long_name = "time" ; | ||

+ | : time:units = "''time units'' since YYYY-MM-DD hh:mm:ss ''zone''" ; | ||

+ | : time:axis = "T" | ||

+ | : time:calendar = "gregorian" | ||

+ | : time:bounds = "timebnd" | ||

+ | |||

+ | Comment: | ||

+ | * For ''time units'' the following units are common: | ||

+ | *# ''seconds'', | ||

+ | *# ''minutes'', | ||

+ | *# ''hours'', and | ||

+ | *# ''days''. | ||

+ | * Specification of ''zone'' is optional (default is UTC). Some examples for other time zones: | ||

+ | *# ''zone'' = +1:00 for CET (Central European Time), or | ||

+ | *# ''zone'' = +2:00 for CEST (Central European Summer Time). | ||

+ | * Attribute ''bounds'' must be specified, in case (some) data are e.g. mean or integral (sum) values with respect to time. Examples: Daily mean temperature, daily rainfall. These data must possess attribute ''cell_methods'' with e.g. "time: mean" or "time: sum". See also [http://cfconventions.org/cf-conventions/v1.6.0/cf-conventions.html#cell-methods CF Conventions "cell_methods"]. | ||

+ | |||

+ | ===Time intervals=== | ||

+ | |||

+ | double timebnd(time,bnd) ; | ||

+ | |||

+ | Comment: | ||

+ | * timebnd(n,1) is equivalent to the ''lower'' bound for the n-th time step. | ||

+ | * timebnd(n,2) is equivalent to the ''upper'' bound for the n-th time step. | ||

+ | * Subsequent intervals may not be continous. | ||

+ | * For continuous intervals timebnd(n,2) == timebnd(n+1,1) holds. | ||

+ | |||

+ | =Remarks= | ||

+ | |||

+ | * A double precision variable should be used for ''time'' to guarantee sufficient accuracy.. | ||

---- | ---- | ||

back to [[NetCDF]] | back to [[NetCDF]] | ||

---- | ---- | ||

[[Overview]] | [[Overview]] |

## Latest revision as of 13:56, 18 April 2016

## Contents

# Introduction

Date, time and calendar plus (optional) use of time intervals.

# Time information in a netCDF file

## Dimensions

dimensions:

- time =
*number of time steps*or*UNLIMITED*; - bnd = 2 ;

Comment: In case the number of time steps is known before-hand, **Bert Jagers** (Deltares) recommends to use a fixed length instead of an UNLIMITED dimension due to performace reasons. But this only works for variables not exceeding 4 GiB.

## Variables

### Coordinate *time*

double time(time) ;

- time:standard_name = "
**time**" ; - time:long_name = "time" ;
- time:units = "
*time units*since YYYY-MM-DD hh:mm:ss*zone*" ; - time:axis = "T"
- time:calendar = "gregorian"
- time:bounds = "timebnd"

Comment:

- For
*time units*the following units are common:*seconds*,*minutes*,*hours*, and*days*.

- Specification of
*zone*is optional (default is UTC). Some examples for other time zones:*zone*= +1:00 for CET (Central European Time), or*zone*= +2:00 for CEST (Central European Summer Time).

- Attribute
*bounds*must be specified, in case (some) data are e.g. mean or integral (sum) values with respect to time. Examples: Daily mean temperature, daily rainfall. These data must possess attribute*cell_methods*with e.g. "time: mean" or "time: sum". See also CF Conventions "cell_methods".

### Time intervals

double timebnd(time,bnd) ;

Comment:

- timebnd(n,1) is equivalent to the
*lower*bound for the n-th time step. - timebnd(n,2) is equivalent to the
*upper*bound for the n-th time step. - Subsequent intervals may not be continous.
- For continuous intervals timebnd(n,2) == timebnd(n+1,1) holds.

# Remarks

- A double precision variable should be used for
*time*to guarantee sufficient accuracy..

back to NetCDF