Page 1 of 1

No data for PAR products L2

Posted: Sat Sep 23, 2017 4:00 pm America/New_York
by joaofelipecsantos
Dear,

I downloaded some images from Level-2 MODIS-Aqua data to work with the PAR product, example:
A2008114163500.L2_LAC_OC.nc
A2007352171500.L2_LAC_OC.nc
A2007044160500.L2_LAC_OC.nc

When I opened using SeaDAS 7.x the chlor_a, chl_ocx, and other products have good pixels to work with. But the PAR product has just small pieces with data and most of the image is with no data.
I downloaded the same images using daily, 4km, MODIS-Aqua, Level-3 data to compare. With Level-3 the image is good with the PAR data available in most part of the image.

Why, Level-2 PAR product have so many no data pixels compared with the other Level-2 products that are downloaded together in the same archieve?
And why this difference between Level-2 PAR product (with most image without data) and Level-3 PAR product (with most image with data)?

Since now thank you for the attention.
João Santos.

No data for PAR products L2

Posted: Mon Sep 25, 2017 9:24 am America/New_York
by OB WebDev - norman
Dear João,

I downloaded your first example file and counted the number of no-data pixels.

wget https://oceandata.sci.gsfc.nasa.gov/cgi/getfile/A2008114163500.L2_LAC_OC.nc
h5dump -d /geophysical_data/chlor_a -b -o chl A2008114163500.L2_LAC_OC.nc
h5dump -d /geophysical_data/par -b -o par A20081143500.L2_LAC_OC.nc

perl -e '$no_data=pack "f",-32767;' \
     -e 'open F,"chl";' \
     -e 'while(read F,$value,4){' \
     -e '  $pix_count++;' \
     -e '  $nd_count++ if $value eq $no_data' \
     -e '}' \
     -e '$pct=sprintf "%.1f",100*$nd_count/$pix_count;' \
     -e 'print "$nd_count no-data values out of $pix_count total pixels ($pct%)\n"'
2405640 no-data values out of 2748620 total pixels (87.5%)

perl -e '$no_data=pack "s",-32767;' \
     -e 'open F,"par";' \
     -e 'while(read F,$value,2){' \
     -e '  $pix_count++;' \
     -e '  $nd_count++ if $value eq $no_data' \
     -e '}' \
     -e '$pct=sprintf "%.1f",100*$nd_count/$pix_count;' \
     -e 'print "$nd_count no-data values out of $pix_count total pixels ($pct%)\n"'
1759074 no-data values out of 2748620 total pixels (64.0%)

As expected, there is a lower percentage of no-data pixels in the par dataset (64.0%)
than in the chlor_a dataset (87.5%).   Are you sure you are reading the data correctly
i.e. chlor_a as a 32-bit float and par as a 16-bit signed integer?

Regards,
Norman

No data for PAR products L2

Posted: Mon Sep 25, 2017 11:14 am America/New_York
by OB.DAACx - SeanBailey
The problem is that there was an error in the definition of the valid_max metadata parameter for the PAR product that has since been rectified.  The data processed prior to the implementation of the fix have an incorrect valid_max value.  See:  https://oceancolor.gsfc.nasa.gov/forum/oceancolor/topic_show.pl?tid=5978

If you are using SeaDAS to view the files, you can reset the valid data range by modifying the loaded band parameters (right click on the par product in the file manager and modify the valid expression).  If you're using another program to read the data, you will have to either ignore the valid range setting or determine how to manually set it in that program.

Sean

No data for PAR products L2

Posted: Mon Sep 25, 2017 8:49 pm America/New_York
by joaofelipecsantos
Norman,

Thank you very much. The tips that Sean gave me resolved the problem.
My max_values were fixed in 18 Einstein m^-2 d^-1 and the region has a PAR higher than 60 Einstein m^-2 d^-1. I changed the max_values and the PAR pixels appeared!
And your scrip to count valid pixels is very useful, thank you!

Yours sincerely.

No data for PAR products L2

Posted: Mon Sep 25, 2017 8:51 pm America/New_York
by joaofelipecsantos
Sean,

Thank you very much. The tips that you gave me resolved the problem.
My max_values were fixed in 18 Einstein m^-2 d^-1 and the region has a PAR higher than 60 Einstein m^-2 d^-1. I changed the max_values and the PAR pixels appeared!

Yours sincerely.