NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.

To learn about what's going on, see About the Archive Site.

Re: [netcdf-java] Storm tracks as trajectories

Hi Don-
The following still does not work (but may be closer).
My two cents: Altitude should not be required for trajectory ... in this case, it would spuriously inflate the file size and likely confuse users.

Could ToolsUI be changed to say what causes a data type to fail (e.g., missing variable, dimension, etc)?

Thanks ... and still looking for the answer-
-Ken

p.s. Does someone have sample files for multiple trajectory files?

netcdf one_file {
dimensions:
        storm = 2 ;
        record = UNLIMITED ; // (39 currently)
variables:
        short storm(storm) ;
        int firstObs(storm) ;
        short numObs(storm) ;
        short trajectoryIndex(record) ;
        float time(record) ;
                time:long_name = "Modified Julian Day" ;
                time:units = "days since 1858-11-17 00:00:00" ;
        float lat(record) ;
                lat:long_name = "Storm center latitude" ;
                lat:units = "degrees_north" ;
        float lon(record) ;
                lon:long_name = "Storm center longitude" ;
                lon:units = "degrees_east" ;
        short alt(record) ;
                alt:long_name = "Altitude" ;
                alt:units = "m" ;
        short wind(record) ;
                wind:long_name = "Maximum Sustained Wind (10 min)" ;
                wind:units = "knots" ;

// global attributes:
                :cdm_datatype = "Trajectory" ;
                :trajectoryDimension = "storm" ;
                :Conventions = "Unidata Observation Dataset v1.0" ;
data:

 storm = 0, 1 ;

 firstObs = 0, 34 ;

 numObs = 34, 5 ;

trajectoryIndex = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 0, 1,
    2, 3, 4 ;

 time = 53601.75, 53602, 53602.25, 53602.5, 53602.75, 53603, 53603.25,
53603.5, 53603.75, 53604, 53604.25, 53604.5, 53604.75, 53605, 53605.25, 53605.5, 53605.75, 53606, 53606.25, 53606.5, 53606.75, 53607, 53607.25, 53607.5, 53607.75, 53608, 53608.25, 53608.5, 53608.75, 53609, 53609.25, 53609.5, 53609.75, 53610, 53604.5, 53604.75, 53605, 53605.25, 53605.5 ;

lat = 13.3, 13.5, 13.6, 13.8, 14, 14.3, 14.9, 15.7, 16.5, 17.2, 17.8, 18.3, 18.6, 18.9, 19.2, 19.6, 20, 20.4, 20.9, 21.4, 22, 22.7, 23.3, 23.9, 24.3,
    24.7, 25, 25.3, 25.6, 25.7, 25.7, 25.6, 25.5, 25.5, 19.4, 19.6, 19.7,
    19.7, 19.7 ;

lon = -96.6, -98.2, -99.8, -101.3, -102.5, -103.7, -104.7, -105.6, -107.1,
    -108.5, -110, -111.5, -112.3, -113.2, -114.1, -114.9, -115.6, -116.1,
-116.7, -117.2, -117.7, -118.4, -119.1, -119.9, -120.7, -121.6, -122.6,
    -123.6, -124.6, -125.5, -126.5, -127.5, -128.5, -129.4, -94.5, -95,
    -95.7, -96.7, -97.7 ;

alt = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ;

wind = 22, 26, 35, 44, 48, 57, 62, 62, 66, 79, 79, 79, 75, 70, 66, 62, 62, 57, 57, 57, 48, 40, 35, 31, 26, 22, 22, 22, 22, 22, 22, 22, 22, 22, 26,
    31, 40, 31, 22 ;
}



Don Murray said the following on 8/20/2008 10:13 AM:
Hi Ken-

Most likely you need an altitude variable as well (can  just be 0).
The trajectory interface assumes there is always an altitude.  I've
argued against that, but I think that's what's missing.

Don

Ken Knapp wrote:
I'm working on writing tropical storm track data in netCDF.
I think they should be written as CDM trajectories, but am unsure how to have ToolsUI recognize them as trajectories. I've attached below the CDL for a simple set of two storms. What do I need to change to have ToolsUI recognize them as trajectories??

Thanks in advance-
-Ken

netcdf one_file {
dimensions:
        storm = 2 ;
        record = UNLIMITED ; // (39 currently)
variables:
        short storm(storm) ;
        int firstObs(storm) ;
        short numObs(storm) ;
        short trajectoryIndex(record) ;
        float time(record) ;
                time:long_name = "Modified Julian Day" ;
                time:units = "days since 1858-11-17 00:00:00" ;
        float lat(record) ;
                lat:long_name = "Storm center latitude" ;
                lat:units = "degrees_north" ;
        float lon(record) ;
                lon:long_name = "Storm center longitude" ;
                lon:units = "degrees_east" ;
        short wind(record) ;
                wind:long_name = "Minimum Central Pressure" ;
                wind:units = "mb" ;
        short pres(record) ;

// global attributes:
                :cdm_datatype = "Trajectory" ;
                :trajectoryDimension = "storm" ;
                :Conventions = "Unidata Observation Dataset v1.0" ;
data:

 storm = 0, 1 ;

 firstObs = 0, 34 ;

 numObs = 34, 5 ;

trajectoryIndex = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 0, 1,
    2, 3, 4 ;

 time = 53601.75, 53602, 53602.25, 53602.5, 53602.75, 53603, 53603.25,
    53603.5, 53603.75, 53604, 53604.25, 53604.5, 53604.75, 53605, 53605.25,
    53605.5, 53605.75, 53606, 53606.25, 53606.5, 53606.75, 53607, 53607.25,
    53607.5, 53607.75, 53608, 53608.25, 53608.5, 53608.75, 53609, 53609.25,
    53609.5, 53609.75, 53610, 53604.5, 53604.75, 53605, 53605.25, 53605.5 ;

lat = 13.3, 13.5, 13.6, 13.8, 14, 14.3, 14.9, 15.7, 16.5, 17.2, 17.8, 18.3, 18.6, 18.9, 19.2, 19.6, 20, 20.4, 20.9, 21.4, 22, 22.7, 23.3, 23.9, 24.3,
    24.7, 25, 25.3, 25.6, 25.7, 25.7, 25.6, 25.5, 25.5, 19.4, 19.6, 19.7,
    19.7, 19.7 ;

 lon = -96.6, -98.2, -99.8, -101.3, -102.5, -103.7, -104.7, -105.6, -107.1,
    -108.5, -110, -111.5, -112.3, -113.2, -114.1, -114.9, -115.6, -116.1,
    -116.7, -117.2, -117.7, -118.4, -119.1, -119.9, -120.7, -121.6, -122.6,
    -123.6, -124.6, -125.5, -126.5, -127.5, -128.5, -129.4, -94.5, -95,
    -95.7, -96.7, -97.7 ;

 wind = 22, 26, 35, 44, 48, 57, 62, 62, 66, 79, 79, 79, 75, 70, 66, 62, 62,
    57, 57, 57, 48, 40, 35, 31, 26, 22, 22, 22, 22, 22, 22, 22, 22, 22, 26,
    31, 40, 31, 22 ;

 pres = 1007, 1006, 1002, 997, 994, 987, 983, 981, 979, 972, 970, 972, 974,
    976, 981, 983, 985, 986, 987, 990, 994, 998, 1000, 1002, 1003, 1004,
    1005, 1006, 1007, 1008, 1008, 1009, 1009, 1010, 1006, 1004, 1001, 1002,
    1005 ;
}



--
Ken Knapp
Remote Sensing and Applications Division
National Climatic Data Center
151 Patton Ave
Asheville, NC 28801
828-271-4339 (voice) 828-271-4328 (fax)
http://www.ncdc.noaa.gov/
http://www.ncdc.noaa.gov/oa/rsad/isccpb1/

  • 2008 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdf-java archives: