Don et al,
On Tue, Dec 10, 2013 at 9:42 AM, Don Murray <don.murray@xxxxxxxx> wrote:
> Roland-
>
> The values will be relative to the time unit and if that has changed, then
> so will the values. Are the time units different between the original files
> and the aggregation? If you look at the actual "dates" described by the
> values, are they correct?
>
Well, that's my point. The time unit is the time unit of the first file so
the time values for the first 12 should be the same as they are in the
first file.
Aggregation:
double time(time) ;
time:bounds = "time_bnds" ;
time:units = "days since 1982-04-01 00:00:00" ;
time:calendar = "JULIAN" ;
time:axis = "T" ;
time:long_name = "time" ;
time:standard_name = "time" ;
File:
double time(time) ;
time:bounds = "time_bnds" ;
time:units = "days since 1982-04-01 00:00:00" ;
time:calendar = "JULIAN" ;
time:axis = "T" ;
time:long_name = "time" ;
time:standard_name = "time"
So in the resulting aggregation the dates are "wrong". The values in the
coordinate variable should not change until the 13th value.
> Since you are only aggregating on the time dimension, that's all that gets
> changed, hence time_bnds stays with the original values. I'm not sure if
> that's a feature or a bug. ;-)
>
Bug or needed feature enchancement, IMO. CF relates the two variables so
the aggregation machinery should too.
Roland
>
> Don
>
>
> On 12/10/13 8:31 AM, Roland Schweitzer - NOAA Affiliate wrote:
>
>> Hi,
>>
>> This will run a little long, so thanks for bearing with me.
>>
>> I pulled down these 6 files:
>>
>> ftp://nomads.gfdl.noaa.gov/gfdl_cm2_1/CM2.1U_CDAef_v1.0_
>> apf/r1/pp/atmos/ts/monthly/tas_CLIVAR_atm_monthly.198204-198303.nc
>> ftp://nomads.gfdl.noaa.gov/gfdl_cm2_1/CM2.1U_CDAef_v1.0_
>> apf/r1/pp/atmos/ts/monthly/tas_CLIVAR_atm_monthly.198304-198403.nc
>> ftp://nomads.gfdl.noaa.gov/gfdl_cm2_1/CM2.1U_CDAef_v1.0_
>> apf/r1/pp/atmos/ts/monthly/tas_CLIVAR_atm_monthly.198404-198503.nc
>>
>> ftp://nomads.gfdl.noaa.gov/gfdl_cm2_1/CM2.1U_CDAef_v1.0_
>> apf/r1/pp/atmos/ts/monthly/zg_CLIVAR_atm_monthly.198204-198303.nc
>> ftp://nomads.gfdl.noaa.gov/gfdl_cm2_1/CM2.1U_CDAef_v1.0_
>> apf/r1/pp/atmos/ts/monthly/zg_CLIVAR_atm_monthly.198304-198403.nc
>> ftp://nomads.gfdl.noaa.gov/gfdl_cm2_1/CM2.1U_CDAef_v1.0_
>> apf/r1/pp/atmos/ts/monthly/zg_CLIVAR_atm_monthly.198404-198503.nc
>>
>> If I build the aggregation using this XML
>>
>> <?xml version="1.0"?>
>> <catalog
>> xmlns="http://www.unidata.ucar.edu/namespaces/thredds/InvCatalog/v1.0"
>> xmlns:xlink="http://www.w3.org/1999/xlink" name="CLIVAR Datasets">
>> <service name="ipcc" base="" serviceType="compound">
>> <service name="ipcc_odap" serviceType="OpenDAP"
>> base="/thredds/dodsC/"/>
>> <service name="wcs" serviceType="WCS" base="/thredds/wcs/"/>
>> <service name="wms" serviceType="WMS" base="/thredds/wms/"/>
>> <service name="ncss" serviceType="NetcdfSubset"
>> base="/thredds/ncss/grid/"/>
>> <service name="ncml" serviceType="NCML" base="/thredds/ncml/"/>
>> <service name="uddc" serviceType="UDDC" base="/thredds/uddc/"/>
>> <service name="iso" serviceType="ISO" base="/thredds/iso/"/>
>> </service>
>> <dataset name="GFDL CM2.1 Seasonal-Interannual Experimental Forecast">
>> <dataset name="CM2.1U_CDAef_v1.0_apf">
>> <dataset name="r1">
>> <dataset name="atmos">
>> <dataset ID="CM2.1U_CDAef_v1.0_apf r1 Atmosphere"
>> name="CM2.1U_CDAef_v1.0_apf r1 Atmosphere"
>> urlPath="CM2.1U_CDApf_v1.0_r1Atmos_wo_vars">
>> <dataType>Grid</dataType>
>> <property name="viewer"
>> value="http://data1.gfdl.noaa.gov:8380/lasV7/getUI.do?data_
>> url=http://data1.gfdl.noaa.gov:8380/thredds/dodsC/CM2.1U_
>> CDApf_v1.0_r1Atmos,
>> Visualize with Live Access Serve
>> r"/>
>> <serviceName>ipcc</serviceName>
>> <netcdf
>> xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2">
>> <aggregation type="union">
>> <netcdf
>> xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2">
>> <aggregation dimName="time" type="joinExisting"
>> timeUnitsChange="true">
>> <scan
>> location="/home/users/rhs/clivar/gfdl_cm2_1/CM2.1U_
>> CDAef_v1.0_apf/r1/pp/atmos/ts/monthly"
>> suffix="tas_*.nc"/>
>> </aggregation>
>> </netcdf>
>> <netcdf
>> xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2">
>> <aggregation dimName="time" type="joinExisting"
>> timeUnitsChange="true">
>> <scan
>> location="/home/users/rhs/clivar/gfdl_cm2_1/CM2.1U_
>> CDAef_v1.0_apf/r1/pp/atmos/ts/monthly"
>> suffix="zg_*.nc"/>
>> </aggregation>
>> </netcdf>
>> </aggregation>
>> </netcdf>
>> </dataset>
>> </dataset>
>> </dataset>
>> </dataset>
>> </dataset>
>> </catalog>
>>
>> I get a time axis and a time_bnds that looks like this:
>>
>> Dataset {
>> Float64 time[time = 36];
>> Float64 time_bnds[time = 36][bnds = 2];
>> } CM2.1U_CDApf_v1.0_r1Atmos_wo_vars;
>> ---------------------------------------------
>> time[36]
>> 28.0, 58.5, 89.0, 119.5, 150.5, 181.0, 211.5, 242.0, 272.5, 303.5, 333.0,
>> 362.5, 393.0, 423.5, 454.0, 484.5, 515.5, 546.0, 576.5, 607.0, 637.5,
>> 668.5, 698.5, 728.5, 759.0, 789.5, 820.0, 850.5, 881.5, 912.0, 942.5,
>> 973.0, 1003.5, 1034.5, 1064.0, 1093.5
>>
>> time_bnds[36][2]
>> [0], 0.0, 30.0
>> [1], 30.0, 61.0
>> [2], 61.0, 91.0
>> [3], 91.0, 122.0
>> [4], 122.0, 153.0
>> [5], 153.0, 183.0
>> [6], 183.0, 214.0
>> [7], 214.0, 244.0
>> [8], 244.0, 275.0
>> [9], 275.0, 306.0
>> [10], 306.0, 334.0
>> [11], 334.0, 365.0
>> [12], 0.0, 30.0
>> [13], 30.0, 61.0
>> [14], 61.0, 91.0
>> [15], 91.0, 122.0
>> [16], 122.0, 153.0
>> [17], 153.0, 183.0
>> [18], 183.0, 214.0
>> [19], 214.0, 244.0
>> [20], 244.0, 275.0
>> [21], 275.0, 306.0
>> [22], 306.0, 335.0
>> [23], 335.0, 366.0
>> [24], 0.0, 30.0
>> [25], 30.0, 61.0
>> [26], 61.0, 91.0
>> [27], 91.0, 122.0
>> [28], 122.0, 153.0
>> [29], 153.0, 183.0
>> [30], 183.0, 214.0
>> [31], 214.0, 244.0
>> [32], 244.0, 275.0
>> [33], 275.0, 306.0
>> [34], 306.0, 334.0
>> [35], 334.0, 365.0
>>
>> In each of the of the original files the time coordinate looks like this:
>>
>> time = 15, 45.5, 76, 106.5, 137.5, 168, 198.5, 229, 259.5, 290.5, 320,
>> 349.5 ;
>>
>> So I would expect the aggregation time axis to start with 15. Based on
>> some emails in the list archive, I'm pretty sure the time_bnds is a known
>> issue. So the main questions how are the values for the time axis
>> calculated?
>>
>> This is all being done with:
>>
>> Implementation-Vendor: UCAR/Unidata
>> Implementation-Title: THREDDS Data Server (TDS)
>> Implementation-Version: 4.3.20
>>
>> And for completeness, I know I can get close to what I want by defining
>> the time coordinate and time bounds myself, but it seems like a lot of
>> extra work.
>>
>> <?xml version="1.0"?>
>> <catalog
>> xmlns="http://www.unidata.ucar.edu/namespaces/thredds/InvCatalog/v1.0"
>> xmlns:xlink="http://www.w3.org/1999/xlink" name="CLIVAR Datasets">
>> <service name="ipcc" base="" serviceType="compound">
>> <service name="ipcc_odap" serviceType="OpenDAP"
>> base="/thredds/dodsC/"/>
>> <service name="wcs" serviceType="WCS" base="/thredds/wcs/"/>
>> <service name="wms" serviceType="WMS" base="/thredds/wms/"/>
>> <service name="ncss" serviceType="NetcdfSubset"
>> base="/thredds/ncss/grid/"/>
>> <service name="ncml" serviceType="NCML" base="/thredds/ncml/"/>
>> <service name="uddc" serviceType="UDDC" base="/thredds/uddc/"/>
>> <service name="iso" serviceType="ISO" base="/thredds/iso/"/>
>> </service>
>> <dataset name="GFDL CM2.1 Seasonal-Interannual Experimental Forecast">
>> <dataset name="CM2.1U_CDAef_v1.0_apf">
>> <dataset name="r1">
>> <dataset name="atmos">
>> <dataset ID="CM2.1U_CDAef_v1.0_apf r1 Atmosphere"
>> name="CM2.1U_CDAef_v1.0_apf r1 Atmosphere"
>> urlPath="CM2.1U_CDApf_v1.0_r1Atmos">
>> <dataType>Grid</dataType>
>> <property name="viewer"
>> value="http://data1.gfdl.noaa.gov:8380/lasV7/getUI.do?data_
>> url=http://data1.gfdl.noaa.gov:8380/thredds/dodsC/CM2.1U_
>> CDApf_v1.0_r1Atmos,
>> Visualize with Live Access Serve
>> r"/>
>> <serviceName>ipcc</serviceName>
>> <netcdf
>> xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2">
>> <aggregation type="union">
>> <netcdf
>> xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2">
>> <variable name="time" shape="time" type="float">
>> <attribute name="units" value="days since
>> 1982-04-01 00:00:00"/>
>> <attribute name="bounds" value="tbnds"/>
>> <attribute name="_CoordinateAxisType" value="Time"/>
>> <values start="15" increment="30.5"/>
>> </variable>
>> <variable name="time_bnds" shape="time bnds"
>> type="float">
>> <values>
>> 0 30
>> 30 61
>> 61 91
>> 91 122
>> 122 153
>> 153 183
>> 183 214
>> 214 244
>> 244 275
>> 275 306
>> 306 334
>> 334 365
>> 365 395
>> 395 426
>> 426 456
>> 456 487
>> 487 518
>> 518 548
>> 548 579
>> 579 609
>> 609 640
>> 640 671
>> 671 700
>> 700 731
>> 731 761
>> 761 792
>> 792 822
>> 822 853
>> 853 884
>> 884 914
>> 914 945
>> 945 975
>> 975 1006
>> 1006 1037
>> 1037 1065
>> 1065 1096
>> </values>
>> </variable>
>> <aggregation dimName="time" type="joinExisting"
>> timeUnitsChange="true">
>> <scan
>> location="/home/users/rhs/clivar/gfdl_cm2_1/CM2.1U_
>> CDAef_v1.0_apf/r1/pp/atmos/ts/monthly"
>> suffix="tas_*.nc"/>
>> </aggregation>
>> </netcdf>
>> <netcdf
>> xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2">
>> <variable name="time" shape="time" type="float">
>> <attribute name="units" value="days since
>> 1982-04-01 00:00:00"/>
>> <attribute name="bounds" value="tbnds"/>
>> <attribute name="_CoordinateAxisType" value="Time"/>
>> <values start="15" increment="30.5"/>
>> </variable>
>> <variable name="time_bnds" shape="time bnds"
>> type="float">
>> <values>
>> 0 30
>> 30 61
>> 61 91
>> 91 122
>> 122 153
>> 153 183
>> 183 214
>> 214 244
>> 244 275
>> 275 306
>> 306 334
>> 334 365
>> 365 395
>> 395 426
>> 426 456
>> 456 487
>> 487 518
>> 518 548
>> 548 579
>> 579 609
>> 609 640
>> 640 671
>> 671 700
>> 700 731
>> 731 761
>> 761 792
>> 792 822
>> 822 853
>> 853 884
>> 884 914
>> 914 945
>> 945 975
>> 975 1006
>> 1006 1037
>> 1037 1065
>> 1065 1096
>> </values>
>> </variable>
>> <aggregation dimName="time" type="joinExisting"
>> timeUnitsChange="true">
>> <scan
>> location="/home/users/rhs/clivar/gfdl_cm2_1/CM2.1U_
>> CDAef_v1.0_apf/r1/pp/atmos/ts/monthly"
>> suffix="zg_*.nc"/>
>> </aggregation>
>> </netcdf>
>> </aggregation>
>> </netcdf>
>> </dataset>
>> </dataset>
>> </dataset>
>> </dataset>
>> </dataset>
>> </catalog>
>>
>>
>>
>>
>> _______________________________________________
>> netcdf-java mailing list
>> netcdf-java@xxxxxxxxxxxxxxxx
>> For list information or to unsubscribe, visit:
>> http://www.unidata.ucar.edu/mailing_lists/
>>
>>
> --
> Don Murray
> NOAA/ESRL/PSD and CIRES
> 303-497-3596
> http://www.esrl.noaa.gov/psd/people/don.murray/
>
> _______________________________________________
> netcdf-java mailing list
> netcdf-java@xxxxxxxxxxxxxxxx
> For list information or to unsubscribe, visit:
> http://www.unidata.ucar.edu/mailing_lists/