Relation of Outputs to NPP_Granule_ID_Basetime

Issues related to VIIRS EDR algorithms and data
Post Reply
jhuangadl
Posts: 142
Joined: Fri Apr 29, 2011 7:57 am

Relation of Outputs to NPP_Granule_ID_Basetime

Post by jhuangadl »

I am test-running the example cases of VIIRS Aerosol EDR algorithm using ADL 3.1.

1) I ran the algorithm twice, one with proxy basetime, the other with NPP basetime. Since the outputs are in h5, I used hdfview and compared the two outputs, and it seems they are identical.
2) Now I wish to compare the output to the truth outputs provided. But they are in blob format, so I have to do the adl_packer. The packing seems run smoothly. But the packed h5 file does not show the same value as the two outputs in 1). Are there anything wrong in my way of running?

I thought it was the BE and LE tricks, so I tried to do the byteswap of the blob file. Unfortunately I was told 'conversion not successful'. I checked the log files, but couldn't find a clue.

Any hints/guidance out there?

Thanks a lot!

-- Jingfeng, NASA/GSFC
Last edited by jhuangadl on Wed Jan 25, 2012 12:37 pm, edited 1 time in total.
jhuangadl
Posts: 142
Joined: Fri Apr 29, 2011 7:57 am

Re: Relation of Outputs to NPP_Granule_ID_Basetime

Post by jhuangadl »

Here is the Endian Conversion I ran:

scientist@scienceAppliance:~/ADL/log$ $ADL_HOME/tools/bin/AdlFileEndianConverter.exe ~/ADL/data/output/withMetadata/ProEdrViirsAerosolControllerTruthOutputs/4e5d3b2e-bc76a-9b9dea53-ea0686cb.VIIRS-Aeros-EDR VIIRS-Aeros-EDR VIIRS ~/ADL/data/test/4e5d3b2e-bc76a-9b9dea53-ea0686cb.VIIRS-Aeros-EDR

ERROR: conversion of /home/scientist/ADL/data/output/withMetadata/ProEdrViirsAerosolControllerTruthOutputs/4e5d3b2e-bc76a-9b9dea53-ea0686cb.VIIRS-Aeros-EDR was not successful. See the debug log in $ADL_HOME/log.
kbisanz
Posts: 280
Joined: Wed Jan 05, 2011 7:02 pm
Location: Omaha NE

Re: Relation of Outputs to NPP_Granule_ID_Basetime

Post by kbisanz »

The group name (the second argument) is wrong. You have "VIIRS-Aeros-EDR", you should have "VIIRS-AEROS-EDR". The usage statement says this:

Code: Select all

  Usage: /vobs/IDPS-CAT3/ADL/tools/bin/AdlFileEndianConverter.exe <input file name>  <group name> <sensor name> <output file name>
Required Arguments:
    -- <input file name> : The name of the file on which
       endian conversion will be performed
    -- <group name> : The group name of the product, as
       specified by <ProductGroupName> in product profile XML
    -- <sensor name> : Name of the sensor to retrieve the
       dictionary entry from.  The sensor should be one of: 
       Science Template ANC CRIMSS OMPS-NP OMPS-TC VIIRS
    -- <output file name> : The name of the file where the
       endian converted data should be written
The group name can be found in $ADL_HOME/xml/VIIRS/VIIRS_AEROS_EDR.xml in the <ProductGroupName> tag. Or it can be found in $ADL_HOME/ProEdrViirsAerosol_CFG.xml:

Code: Select all

         <group name="VIIRS-AEROS-EDR">
            <config>
               <name>DataEndianType</name>
               <configValue>Both</configValue>
            </config>
            <config>
               <name>OfficialShortName</name>
Kevin Bisanz
Raytheon Company
jhuangadl
Posts: 142
Joined: Fri Apr 29, 2011 7:57 am

Re: Relation of Outputs to NPP_Granule_ID_Basetime

Post by jhuangadl »

Thanks, Kevin,
I tried the following as you suggested, but it still showed the error:

Code: Select all

scientist@scienceAppliance:~/ADL/data/input/withMetadata/ProEdrViirsAerosolControllerInputs$ $ADL_HOME/tools/bin/AdlFileEndianConverter.exe ~/ADL/data/output/withMetadata/ProEdrViirsAerosolControllerTruthOutputs/4e5d3b2e-bc76a-9b9dea53-ea0686cb.VIIRS-Aeros-EDR VIIRS-AEROS-EDR VIIRS ~/ADL/data/test/4e5d3b2e-bc76a-9b9dea53-ea0686cb.VIIRS-Aeros-EDR
ERROR:  conversion of /home/scientist/ADL/data/output/withMetadata/ProEdrViirsAerosolControllerTruthOutputs/4e5d3b2e-bc76a-9b9dea53-ea0686cb.VIIRS-Aeros-EDR was not successful.  See the debug log in $ADL_HOME/log.
jhuangadl
Posts: 142
Joined: Fri Apr 29, 2011 7:57 am

Re: Relation of Outputs to NPP_Granule_ID_Basetime

Post by jhuangadl »

Sorry to bother you all, I think I finally caught the problem(s):

Besides the wrong group name, I found in the log file that it is a writing file error. So I had to make the output file writable (sorry I missed this important step when I added and removed the test folder couple times). Then the conversion worked like a magic!

After that, I repeated the ADL_packer to pack the blob file to h5 file. The results are the same as what I produced through ADL. Success!

But I realized that I forgot 'Add ("ByteOrder" STRING EQ "LE") to .asc file...'. I repeated the last step and found barely any difference. It is always a good practice to make a more informative metadata though.

Thanks a lot!
-- Jingfeng
Post Reply