I am working with some non-standard MERIS and OLCI "Level 2" imagery that I have wrapped into the l2gen format so that they can be input to SeaDAS. I plan to: 1) spatially bin (l2bin), 2) temporally bin (l3bin), and 3) export (l3mapgen). At least with l3mapgen I have encountered the issue that my non-standard products are not recognized by SeaDAS. A few questions below:
- I believe the solution is to add these products to the ocssw/share/common/product.xml file - is that correct?
- At a minimum, which fields are necessary to specify?
- What is the cat_ix field, and should it be specified?
- Is this only necessary for l3mapgen, or do other functions use the product.xml file?
- Subject Matter Expert
- Posts: 248
- Joined: Thu Mar 05, 2009 10:25 am America/New_York
Code: Select all
</product> <product name="my_new_product"> <units>m s^-1</units> <category>Derived</category> <range> <validMin>0</validMin> <validMax>50</validMax> <displayMin>0</displayMin> <displayMax>20</displayMax> </range> <algorithm> <cat_ix>-1</cat_ix> <description>My product for Speed</description> </algorithm> </product>
The cat_ix field is only used by l2gen. We us -1 for non-l2gen products.
By "not recognized by SeaDAS" are you referring to the SeaDAS display GUI?
The error I was receiving occurred when calling l3mapgen, and was:
"-E- product MDN_chl not found in XML product table"
Adding the info for my product to the product.xml file solved the problem!
Given that l2bin and l3bin use the product.xml file, is there a reason that they did not complain about not finding the product info (and only l3mapgen did)?
Simple....l3bin doesn't use it, so that's easy. All l3bin does is combine l2bin files. As for l2bin, it currently only uses the file to check for the valid min value. If it doesn't find one (in that either the product.xml record didn't define it or the product wasn't found in the xml file) it set the min to zero.
The l3mapgen code uses the product.xml file more 'fully' and simply expects the product to exist in it or it bails.