Ocean Color Forum - Not logged in
I just installed new version SeaDAS6.3 a couple weeks ago. I have scripts to process MODIS L0 files to L2 and make reprojection. But there is an error when mapping GEO file generated from L0 file. The L0 file is A2011164055500.L0_LAC.
The mapping scripts are:
The error is "MAP_SET: Longitude must be in range of +/- 360 degree"
I open GEO file using hdfview and find that the values in last ten rows both of Latitude and Longitude dataset are _FillValue(-999.0). I doubt these _Fillvalues may cause the error. So I read GEO file using IDL and fill these -999 using proper values then run the scripts. The scripts work well and generate mapped data.
My questions are :
1. why SeaDAS can not recognize _FillValue (-999) but take them as values out of range? Is this the bug of new SeaDAS?
2. This scripts have been run under old version of SeaDAS( not sure which one) processing the same L0 file (A2011164055500.L0_LAC.0) without any problem. So I open the GEO file processed using old SeaDAS and do not find _FillValue in the latitude and Longitude dataset. I also find the the dimensions of Latitude and Longitude are also different generated by different SeaDAS. It is 2030*1354 in the new GEO file but it is 1960*1354 in the old one.
3 Another scripts similar with the above one is used to map L1B data but succeed. I noticed that the Latitude and Longitude dataset in the MODIS L1B file is the same with in the GEO file. I do not know why the scripts failed when mapping GEO file.
Any help will be appreciated.
Thank you in advance.
SeaDAS has never supported the direct reading of the geolocation files. That said, there is nothing that changed recently that would result in a change in behavior for the loading of the geofiles.
So, the load command as you've have shown will read the SDSs from the GEO files. I was able to create the GEO file for the A2011164055500.L1A_LAC file and confirmed the problem you
encountered exists in 6.1 through 6.3. What is happening here is you are trying to read the file as a generic HDF file and this reader will map the data based on lat/lon arrays found in the
file. This feature was never perfect and does not handle non-valid data well.
You second question - previous versions of SeaDAS would not process the first 10 scans of a file (the 'startnudge' feature). This was put in place for direct broadcast data that may have bad scan lines
at the beginning (and/or end) of the file. We set the 'startnudge' to 0 as the default, thus processing all scan lines in the file. Why your getting 70 fewer scan lines is a mystery to me, unless you have
non-default start/stop-nudge values set.
The successful mapping of the L1B suggests all is well with your GEO file...
Thank you very much. Your reply is very helpful. I will set the startnudge and stopnudge to 1.