Unidata / rosetta

ρζητα ⇒ rosetta
http://www.unidata.ucar.edu/software/rosetta/
BSD 3-Clause "New" or "Revised" License
17 stars 7 forks source link

Bug (?) creating trajectory files #38

Open aleksandervines opened 7 years ago

aleksandervines commented 7 years ago

How is this supposed to work?

For a trajectory, it makes sense for me to require time, lat and lon as variables from the text file. Altitude could optionally either be assigned in "specify site specific information" or in variables from text file.

I'm trying this on the current version on https://rosetta.unidata.ucar.edu/create with following settings:

sessionStorage.delimiters = "Whitespace";
sessionStorage.headerLineNumbers = "0,1,2";
sessionStorage.generalMetadata = "title:title,description:desc,institution:inst";
sessionStorage.platformMetadata = "platformName:trajectory name";
sessionStorage.variableName0 = "time";
sessionStorage.variableName0Metadata = "standard_name:time,units:days since 2010-01-01,_coordinateVariable:coordinate,_coordinateVariableType:relTime,dataType:Float,long_name:var desc";
sessionStorage.variableName1 = "latitude";
sessionStorage.variableName1Metadata = "standard_name:latitude,units:degree_north,_coordinateVariable:coordinate,_coordinateVariableType:lat,dataType:Float,long_name:var desc";
sessionStorage.variableName2 = "longitude";
sessionStorage.variableName2Metadata = "standard_name:longitude,units:degree_east,_coordinateVariable:coordinate,_coordinateVariableType:lon,dataType:Float,long_name:var desc";
sessionStorage.variableName3 = "depth";
sessionStorage.variableName3Metadata = "standard_name:depth,units:m,_coordinateVariable:coordinate,_coordinateVariableType:alt,dataType:Float,long_name:var desc";
sessionStorage.variableName4 = "sea_water_pressure";
sessionStorage.variableName4Metadata = "standard_name:sea_water_pressure,units:dbar,_coordinateVariable:non-coordinate,dataType:Float,source:isnt desc,missing_value:-999,long_name:var desc";

The resulting output will not mark the lat/lon/depth from coord vars as coordinate variables. See the output cdl file: uni-trajectory-rosetta-test-minimum-dot.txt

I'm wondering about this, because I'm trying to test my development version of adding new cf-type - profile - and I've made some changes to e.g. NetcdfFileManager.java which is affecting the output from other cf-types, and I'm trying to test that I've not broken anything. But for me it appear that its already broken (unless the user is the problem:).

aleksandervines commented 7 years ago

This is related to "otherInfo" which is kind of hardcoded in for trajectory in TemplateController.parseFile

It seems quite illogical to have this logic in there. It should be generalized and moved (to NetcdfFileManager?)

aleksandervines commented 7 years ago

I think a good generic solution to this would solve #41 as well And I think it's related to #28

The commit I've tagged this issue with (3x because of me rebasing some silly stuff) is a good path to solving #7