ocssw 7.5 modis_L1A.py failed to process some pds
Posted: Thu Sep 05, 2019 3:24 am America/New_York
Hello.
After a recent update, some MODIS files are no longer processed.
To check error i have decided to install the ocssw on a clean machine with the following script:
For example, i took two files from 2019/09/03 and 2007/04/05
Second file was handled correctly by previous versions.
Data files and log files you can look at
That's what gave ocssw on the first file.
pdsinfo output:
modis_L1A.py output:
As you can see, pdsinfo returns the correct time of the first and last packet.
But in the modis_L1A.py "Start Time" and "Stop Time" are equals 2019-09-03T03:10:00.000000Z
However it ended without error, return code is 0 and no L1A-file generated.
Forth on the second file.
pdsinfo output:
modis_L1A.py output:
In this case modis_L1A.py also misread the time, but now returned with an error.
We have noticed that not all files are handled with errors. But only those that are smaller than some threshold.
Has anyone met a similar problem?
Any workaround?
PS ${HOME}/.local/bin/ocssw:
----------------------
#!/bin/bash
export LANG=C
export OCSSWROOT=${HOME}/ocssw
source ${OCSSWROOT}/OCSSW_bash.env
ulimit -s unlimited
"${@}"
----------------------
After a recent update, some MODIS files are no longer processed.
To check error i have decided to install the ocssw on a clean machine with the following script:
#!/bin/bash
export OCSSWROOT=$HOME/ocssw
mkdir -p ${OCSSWROOT}
BDIR=${HOME}/.local/bin
wget -O ${BDIR}/install_ocssw.py https://oceandata.sci.gsfc.nasa.gov/ocssw/install_ocssw.py || exit
chmod +x ${BDIR}/install_ocssw.py
${BDIR}/install_ocssw.py -i ${OCSSWROOT} --git-branch=v7.5 -a linux_64 --avhrr --aqua --terra
For example, i took two files from 2019/09/03 and 2007/04/05
Second file was handled correctly by previous versions.
Data files and log files you can look at
ftp://ftp.satellite.dvo.ru/pub/ocssw/
That's what gave ocssw on the first file.
pdsinfo output:
$ ocssw pdsinfo P1540064AAAAAAAAAAAAAA19246030843001.PDS
pdsinfo V1.6 (Aug 16 2019)
APID 64: count 444011 invalid 0 missing 18
first packet: 2019/09/03 03:08:42.769570
last packet: 2019/09/03 03:12:18.427976
missing seconds: 0
day packets: 396707/46720
night packets: 0/0
engineering packets: 584/0
modis_L1A.py output:
$ ocssw modis_L1A.py --verbose --log --mission aqua --output P1540064AAAAAAAAAAAAAA19246030843001.L1A P1540064AAAAAAAAAAAAAA19246030843001.PDS
Determining pass start and stop time...
Using specified output L1A filename: P1540064AAAAAAAAAAAAAA19246030843001.L1A
Input Level 0: P1540064AAAAAAAAAAAAAA19246030843001.PDS
Output Level 1A: P1540064AAAAAAAAAAAAAA19246030843001.L1A
Satellite: aqua
Start Time: 2019-09-03T03:10:00.000000Z
Stop Time: 2019-09-03T03:10:00.000000Z
Granule Duration: 0.0 seconds
Processing MODIS L0 file to L1A...
MODIS L1A version 6.0.6, built Aug 16 2019 12:46:26
l1agen_modis exit status: 0
MODIS L1A processing complete.
As you can see, pdsinfo returns the correct time of the first and last packet.
But in the modis_L1A.py "Start Time" and "Stop Time" are equals 2019-09-03T03:10:00.000000Z
However it ended without error, return code is 0 and no L1A-file generated.
Forth on the second file.
pdsinfo output:
$ ocssw pdsinfo PM0704050335.pds
pdsinfo V1.6 (Aug 16 2019)
APID 64: count 108151 invalid 0 missing 12215
first packet: 2007/04/05 03:41:20.519309
last packet: 2007/04/05 03:42:18.126695
missing seconds: 4
day packets: 96811/11200
night packets: 0/0
engineering packets: 140/0
modis_L1A.py output:
$ ocssw modis_L1A.py --verbose --log --mission aqua --output PM0704050335.L1A PM0704050335.pds
Determining pass start and stop time...
Using specified output L1A filename: PM0704050335.L1A
Input Level 0: PM0704050335.pds
Output Level 1A: PM0704050335.L1A
Satellite: aqua
Start Time: 2007-04-05T03:40:00.000000Z
Stop Time: 2007-04-05T03:40:00.000000Z
Granule Duration: 0.0 seconds
Processing MODIS L0 file to L1A...
MODIS L1A version 6.0.6, built Aug 16 2019 12:46:26
l1agen_modis exit status: 1
modis_l1a: ERROR: MODIS L1A processing failed.
Please examine the LogStatus and LogUser files for more information.
In this case modis_L1A.py also misread the time, but now returned with an error.
We have noticed that not all files are handled with errors. But only those that are smaller than some threshold.
Has anyone met a similar problem?
Any workaround?
PS ${HOME}/.local/bin/ocssw:
----------------------
#!/bin/bash
export LANG=C
export OCSSWROOT=${HOME}/ocssw
source ${OCSSWROOT}/OCSSW_bash.env
ulimit -s unlimited
"${@}"
----------------------