Hi,
No answer... anybody try to store fixed buoys/mooring data and get
timeseries graphs by LAS ???
Thanks in avance,
Adrien
Le 16/07/2012 21:24, Adrien Cheype a écrit :
Hi,
I would like to declare some datasets in LAS. They are mooring
data which respect the OceanSites convention [1] (COARDS
compliant).
However, these datasets are not gridded data and it is my
understanding gridded data is a requirement for LAS. As we can see
in the file structure [2], as the DEPH, LONGITUDE and LATITUDE
dimensions are always equals to 1, only the variable TEMP depends
on TIME.
So I've changed the file structure so that the dataset may be
recognized by LAS. I've changed the TEMP variable and its depends
now on 4 dimensions : LONGITUDE, LATITUDE, DEPH and TIME [3]. The
DDS returned by Thredds shows us the grid is found [4] (the same
for the Ferret command line). Thus, the addXml.sh script is now
able to generate the declaration xml and after a configuration
restart I can access to this dataset in LAS.
However, it's impossible to select a correct coordinate. The North
& South coordinates is initialized with a "NaN N" value (but
we can select others latitudes), and the East & West
coordinates is always blocked at 2.5 E" ! [5]
LAS suggests only timeseries plots so we can conclude it detects
correctly the data dimensions. But why doesn't it select correctly
the only longitude/latitude filled in the dataset ? (the depth
value seams to be recognized)
Thanks for your help,
Cheer,
Adrien
[1] http://www.oceansites.org/docs/oceansites_user_manual.pdf
[2]
dimensions:
TIME = 16798 ;
DEPH = 1 ;
LONGITUDE = 1 ;
LATITUDE = 1 ;
variables:
double TIME(TIME) ;
TIME:long_name = "DECIMAL JULIAN DAY (UTC) OF EACH
MEASUREMENT" ;
TIME:standard_name = "time" ;
TIME:units = "days since 1950-01-01T00:00:00Z" ;
TIME:conventions = "Relative julian days with decimal part
(as parts of the day) from REFERENCE_DATE_TIME" ;
TIME:valid_min = "0." ;
TIME:valid_max = "90000." ;
TIME:format = "%9.5lf" ;
TIME:epic_code = "601." ;
TIME:axis = "T" ;
TIME:comment = "Julian day of the measurement" ;
TIME:coordinate = "TIME" ;
double LATITUDE(LATITUDE) ;
LATITUDE:long_name = "LATITUDE OF THE MEASUREMENT" ;
LATITUDE:standard_name = "latitude" ;
LATITUDE:units = "degree_north" ;
LATITUDE:valid_min = "-90." ;
LATITUDE:valid_max = "90." ;
LATITUDE:format = "%+8.4lf" ;
LATITUDE:_FillValue = "9999" ;
LATITUDE:epic_code = "500." ;
LATITUDE:axis = "Y" ;
LATITUDE:comment = "Latitude of the measurement (decimal)"
;
LATITUDE:coordinate = "LATITUDE" ;
double LONGITUDE(LONGITUDE) ;
LONGITUDE:long_name = "LONGITUDE OF THE MEASUREMENT" ;
LONGITUDE:standard_name = "longitude" ;
LONGITUDE:units = "degree_east" ;
LONGITUDE:valid_min = "-180." ;
LONGITUDE:valid_max = "180." ;
LONGITUDE:format = "%+9.4lf" ;
LONGITUDE:_FillValue = "9999" ;
LONGITUDE:epic_code = "501." ;
LONGITUDE:axis = "X" ;
LONGITUDE:comment = "Latitude of the measurement
(decimal)" ;
LONGITUDE:coordinate = "LONGITUDE" ;
double DEPH(DEPH) ;
DEPH:long_name = "SEA WATER DEPH" ;
DEPH:standard_name = "deph" ;
DEPH:units = "m" ;
DEPH:positive = "up" ;
DEPH:format = "%7.2lf" ;
DEPH:_FillValue = "9999" ;
DEPH:axis = "Z" ;
DEPH:comment = "Pressure of the measurement " ;
DEPH:coordinate = "LEVEL" ;
byte TEMP_QC(TIME) ;
TEMP_QC:_FillValue = "0" ;
double TEMP(TIME) ;
TEMP:long_name = "SEA TEMPERATURE" ;
TEMP:units = "Celsius degree" ;
TEMP:valid_max = "30.0" ;
TEMP:valid_min = "0.0" ;
TEMP:_FillValue = "99999.0" ;
TEMP:resolution = "0.001" ;
TEMP:format = "%6.3lf" ;
// global attributes:
:data_type = "time-series" ;
:type_position = "GPS" ;
:cycle_mesure = "ANSEVA01_199704" ;
:time_coverage_start = "1997-04-15T22:55:00Z" ;
:time_coverage_end = "1997-10-07T22:15:00Z" ;
:project_name = "COTIERES-NOUMEA" ;
:pi_name = "Varillon" ;
:platform_code = "ANSEVA01" ;
:cycle_traitement = "0A" ;
:type_instrument = "StowAway-TEMP (C) ONSET -4C TO 38C" ;
:number_instrument = "69" ;
:conventions = "OceanSITES 1.1, CF1.4" ;
[3]
netcdf ANSE {
dimensions:
LATITUDE = 1 ;
LONGITUDE = 1 ;
TIME = 16798 ;
DEPH = 1 ;
variables:
double LATITUDE(LATITUDE) ;
LATITUDE:_FillValue = 9.969209968386869e+36 ;
LATITUDE:axis = "Y" ;
LATITUDE:comment = "Latitude of the measurement (decimal)"
;
LATITUDE:coordinate = "LATITUDE" ;
LATITUDE:epic_code = "500." ;
LATITUDE:format = "%+8.4lf" ;
LATITUDE:long_name = "LATITUDE OF THE MEASUREMENT" ;
LATITUDE:standard_name = "latitude" ;
LATITUDE:units = "degree_north" ;
LATITUDE:valid_max = "90." ;
LATITUDE:valid_min = "-90." ;
double LONGITUDE(LONGITUDE) ;
LONGITUDE:_FillValue = 9.969209968386869e+36 ;
LONGITUDE:axis = "X" ;
LONGITUDE:comment = "Latitude of the measurement
(decimal)" ;
LONGITUDE:coordinate = "LONGITUDE" ;
LONGITUDE:epic_code = "501." ;
LONGITUDE:format = "%+9.4lf" ;
LONGITUDE:long_name = "LONGITUDE OF THE MEASUREMENT" ;
LONGITUDE:standard_name = "longitude" ;
LONGITUDE:units = "degree_east" ;
LONGITUDE:valid_max = "180." ;
LONGITUDE:valid_min = "-180." ;
double TIME(TIME) ;
TIME:long_name = "DECIMAL JULIAN DAY (UTC) OF EACH
MEASUREMENT" ;
TIME:standard_name = "time" ;
TIME:units = "days since 1950-01-01T00:00:00Z" ;
TIME:conventions = "Relative julian days with decimal part
(as parts of the day) from REFERENCE_DATE_TIME" ;
TIME:valid_min = "0." ;
TIME:valid_max = "90000." ;
TIME:format = "%9.5lf" ;
TIME:epic_code = "601." ;
TIME:axis = "T" ;
TIME:comment = "Julian day of the measurement" ;
TIME:coordinate = "TIME" ;
double DEPH(DEPH) ;
DEPTH:long_name = "SEA WATER DEPH" ;
DEPTH:standard_name = "deph" ;
DEPTH:units = "m" ;
DEPTH:positive = "up" ;
DEPTH:format = "%7.2lf" ;
DEPTH:_FillValue = 9.969209968386869e+36 ;
DEPTH:axis = "Z" ;
DEPTH:comment = "Pressure of the measurement " ;
DEPTH:coordinate = "LEVEL" ;
double TEMP(LONGITUDE, LATITUDE, DEPH, TIME) ;
TEMP_ADJUSTED:long_name = "SEA TEMPERATURE" ;
TEMP_ADJUSTED:units = "Celsius degree" ;
TEMP_ADJUSTED:valid_max = "30.0" ;
TEMP_ADJUSTED:valid_min = "0.0" ;
TEMP_ADJUSTED:_FillValue = 9.969209968386869e+36 ;
TEMP_ADJUSTED:resolution = "0.001" ;
TEMP_ADJUSTED:format = "%6.3lf" ;
byte TEMP_QC(TIME) ;
// global attributes:
:data_type = "time-series" ;
:type_position = "GPS" ;
:cycle_mesure = "ANSEVA01_199704" ;
:time_coverage_start = "1997-04-15T22:55:00Z" ;
:time_coverage_end = "1997-10-07T22:15:00Z" ;
:project_name = "COTIERES-NOUMEA" ;
:pi_name = "Varillon" ;
:platform_code = "ANSEVA01" ;
:cycle_traitement = "0A" ;
:type_instrument = "StowAway-TEMP (C) ONSET -4C TO 38C" ;
:number_instrument = "69" ;
:conventions = "OceanSITES 1.1, CF1.4" ;
}
[4]
Dataset {
Float64 LATITUDE[LATITUDE = 1];
Float64 LONGITUDE[LONGITUDE = 1];
Float64 TIME[TIME = 16798];
Float64 DEPH[DEPH = 1];
Grid {
ARRAY:
Float64 TEMP[LONGITUDE = 1][LATITUDE = 1][DEPH = 1][TIME =
16798];
MAPS:
Float64 LONGITUDE[LONGITUDE = 1];
Float64 LATITUDE[LATITUDE = 1];
Float64 DEPH[DEPH = 1];
Float64 TIME[TIME = 16798];
} TEMP;
Byte TEMP_QC[TIME = 16798];
} oceano_series/grid/ANSE.nc;
[5] see "las_timeseries_coordinates_error.jpg" in the attached
file
--
Adrien Cheype
Ingénieur en Systèmes d'Information
Service « Informatique Scientifique et Appui aux Partenaires du
Sud »
Direction du Système d'Information (DSI)
http://www.ird.fr/dsi/
http://www.ird.fr/informatique-scientifique/
INSTITUT DE RECHERCHE POUR LE DEVELOPPEMENT
BP A5 - 98848 Nouméa - Nouvelle Calédonie
Tél. +687 260 789
|