- Contemporary messages sorted: [ by date ] [ by thread ] [ by subject ] [ by author ] [ by messages with attachments ]

From: Jonathan Gregory <j.m.gregory>

Date: Tue, 5 Sep 2006 09:38:10 +0100

Dear John

We had a long discussion, initiated by Ag, on the CF email list in summer 2003

about forecast time etc. but no-one has ever had time to put the outcome into

the CF standard. I have just been looking through the emails and below is what

I have found. Maybe we can find the time to put it in the standard now before

we forget again! Please have a look yourself at the past emails.

In a discussion about five years ago in PCMDI, we identified four cases, and

the discussion in 2003 added a fifth case, in effect. They are:

(i) A forecast run with multiple forecast periods (12 h, 24 h, 36 h, etc.)

from a single analysis. This can be done with a single-valued analysis time

and a separate validity time axis. If the reference time for the validity time

units is the analysis time, the values of the validity time coordinates equal

the forecast period.

(ii) A set of forecasts for the same validity time, made from different

analyses. This can be done with a single-valued validity time and a separate

analysis time axis.

(iii) Multiple validity and analysis times, where all combinations exist.

(iv) Multiple forecast periods from various analyses, where all combinations

exist.

(v) Multiple validity and analysis times, where not all cases exist.

The outcome of the discussion on the email list in 2003 was that we identified

two structurally different situations.

(a) If validity time and analysis time, or both, are single-valued (cases i

and ii), we have independent coordinates for them. Single-valued coordinates

can be supplied either as scalar coordinate variables or as size-one axes.

(b) If they are both multivalued (cases iii, iv and v), we introduce an index

dimension and make them both one-dimensional auxiliary coordinate variables

with this dimension.

The standard name for the analysis time is "forecast_reference_time", and for

validity time is "time". There is an example in CF 5.7 of structure

(a) (case i), with a scalar coordinate variable for forecast_reference_time

and a multivalued time axis for validity time.

In that example, the "since" date and time in the units string of the validity

time is the analysis time, which means that the values of the validity time

coordinates are equal to the forecast periods. But if that were not so, you

could have another auxiliary coordinate variable with a standard name

of forecast_period.

I think what we need to do is add an example of structure (b), and here is

one (an instance of case v) from the earlier discussion.

*> 20030101 12:00 analysis (at 00hr) and 12hr,36hr forecasts
*

*> 20030101 00:00 analysis 6hr,12hr,18hr,24hr forecasts
*

*> 20030101 06:00 analysis 6hr,18hr forecasts
*

could be expressed as follows (ordering the time samples as they are above)

variables:

double reftime(record);

time1:standard_name = "forecast_reference_time" ;

time1:units = "hours since 2003-01-01 00:00" ;

double valtime(record);

time2:standard_name = "time" ;

time2:units = "hours since 2003-01-01 00:00" ;

float temp(record,level,lat,lon);

temp:long_name = "Air temperature on model levels" ;

temp:standard_name = "air_temperature" ;

temp:units = "K" ;

temp:coordinates = "valtime reftime"

data:

reftime = 12., 12., 12., 0., 0., 0., 0., 6., 6. ;

valtime = 12., 24., 48., 6., 12., 18., 24., 12., 24. ;

In this example, again you could add another auxiliary coordinate of

forecast_period, which would have values

0, 12, 36, 6, 12, 18, 24, 6, 18;

i.e. it's just the difference valtime-reftime, so it doesn't really seem

to be necessary.

In the earlier discussion, we did *not* propose to introduce a structure with

two multivalued time axes, because those situations can be handled by

structure (b). It's less efficient, but simpler not to have lots of different

structures.

Does this cover your needs?

Best wishes

Jonathan

Received on Tue Sep 05 2006 - 02:38:10 BST

Date: Tue, 5 Sep 2006 09:38:10 +0100

Dear John

We had a long discussion, initiated by Ag, on the CF email list in summer 2003

about forecast time etc. but no-one has ever had time to put the outcome into

the CF standard. I have just been looking through the emails and below is what

I have found. Maybe we can find the time to put it in the standard now before

we forget again! Please have a look yourself at the past emails.

In a discussion about five years ago in PCMDI, we identified four cases, and

the discussion in 2003 added a fifth case, in effect. They are:

(i) A forecast run with multiple forecast periods (12 h, 24 h, 36 h, etc.)

from a single analysis. This can be done with a single-valued analysis time

and a separate validity time axis. If the reference time for the validity time

units is the analysis time, the values of the validity time coordinates equal

the forecast period.

(ii) A set of forecasts for the same validity time, made from different

analyses. This can be done with a single-valued validity time and a separate

analysis time axis.

(iii) Multiple validity and analysis times, where all combinations exist.

(iv) Multiple forecast periods from various analyses, where all combinations

exist.

(v) Multiple validity and analysis times, where not all cases exist.

The outcome of the discussion on the email list in 2003 was that we identified

two structurally different situations.

(a) If validity time and analysis time, or both, are single-valued (cases i

and ii), we have independent coordinates for them. Single-valued coordinates

can be supplied either as scalar coordinate variables or as size-one axes.

(b) If they are both multivalued (cases iii, iv and v), we introduce an index

dimension and make them both one-dimensional auxiliary coordinate variables

with this dimension.

The standard name for the analysis time is "forecast_reference_time", and for

validity time is "time". There is an example in CF 5.7 of structure

(a) (case i), with a scalar coordinate variable for forecast_reference_time

and a multivalued time axis for validity time.

In that example, the "since" date and time in the units string of the validity

time is the analysis time, which means that the values of the validity time

coordinates are equal to the forecast periods. But if that were not so, you

could have another auxiliary coordinate variable with a standard name

of forecast_period.

I think what we need to do is add an example of structure (b), and here is

one (an instance of case v) from the earlier discussion.

could be expressed as follows (ordering the time samples as they are above)

variables:

double reftime(record);

time1:standard_name = "forecast_reference_time" ;

time1:units = "hours since 2003-01-01 00:00" ;

double valtime(record);

time2:standard_name = "time" ;

time2:units = "hours since 2003-01-01 00:00" ;

float temp(record,level,lat,lon);

temp:long_name = "Air temperature on model levels" ;

temp:standard_name = "air_temperature" ;

temp:units = "K" ;

temp:coordinates = "valtime reftime"

data:

reftime = 12., 12., 12., 0., 0., 0., 0., 6., 6. ;

valtime = 12., 24., 48., 6., 12., 18., 24., 12., 24. ;

In this example, again you could add another auxiliary coordinate of

forecast_period, which would have values

0, 12, 36, 6, 12, 18, 24, 6, 18;

i.e. it's just the difference valtime-reftime, so it doesn't really seem

to be necessary.

In the earlier discussion, we did *not* propose to introduce a structure with

two multivalued time axes, because those situations can be handled by

structure (b). It's less efficient, but simpler not to have lots of different

structures.

Does this cover your needs?

Best wishes

Jonathan

Received on Tue Sep 05 2006 - 02:38:10 BST

*
This archive was generated by hypermail 2.3.0
: Tue Sep 13 2022 - 23:02:40 BST
*