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
Relation of Outputs to NPP_Granule_ID_Basetime
Relation of Outputs to NPP_Granule_ID_Basetime
Last edited by jhuangadl on Wed Jan 25, 2012 12:37 pm, edited 1 time in total.
Re: Relation of Outputs to NPP_Granule_ID_Basetime
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.
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.
Re: Relation of Outputs to NPP_Granule_ID_Basetime
The group name (the second argument) is wrong. You have "VIIRS-Aeros-EDR", you should have "VIIRS-AEROS-EDR". The usage statement says this:
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
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
Code: Select all
<group name="VIIRS-AEROS-EDR">
<config>
<name>DataEndianType</name>
<configValue>Both</configValue>
</config>
<config>
<name>OfficialShortName</name>
Kevin Bisanz
Raytheon Company
Raytheon Company
Re: Relation of Outputs to NPP_Granule_ID_Basetime
Thanks, Kevin,
I tried the following as you suggested, but it still showed the error:
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.
Re: Relation of Outputs to NPP_Granule_ID_Basetime
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
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