So I'm starting with 2 MODIS granules and when I process them individually they modis_GEO.py without issue.
This command:
modis_atteph.py -d --verbose ./MOD00.P2020269.1220_1.GOG_FULL.L1A_LAC
returns:
searobin 183 :/optics1/home1/oo_processing/test> cat MOD00.P2020269.1220_1.GOG_FULL.L1A_LAC.atteph
att1=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1215.061
att2=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1220.061
att3=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1225.061
eph1=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1215.061
eph2=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1220.061
eph3=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1225.061
modis_atteph.py -d --verbose ./MOD00.P2020269.1225_1.GOG_FULL.L1A_LAC
returns
searobin 184 :/optics1/home1/oo_processing/test> cat MOD00.P2020269.1225_1.GOG_FULL.L1A_LAC.atteph
att1=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1220.061
att2=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1225.061
att3=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1230.061
eph1=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1220.061
eph2=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1225.061
eph3=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1230.061
And both can be run to completion in modis_GEO.py
But in my processing stream, where I have 2 files that match my region of interest I cat them together like this:
cat MOD00.P2020269.1220_1.PDS MOD00.P2020269.1225_1.PDS > MOD00.P2020269.1220.PDS
I can then:
modis_L1A.py ./MOD00.P2020269.1220.PDS -o ./MOD00.P2020269.1220.GOG_FULL.L1A_LAC --startnudge=0 --stopnudge=10
and get the outfile MOD00.P2020269.1220.GOG_FULL.L1A_LAC
BUT when I do this:
modis_atteph.py -d --verbose ./MOD00.P2020269.1220.GOG_FULL.L1A_LAC
I get this returned (Notice the order of the att and eph files in the returned .atteph file):
cat MOD00.P2020269.1220.GOG_FULL.L1A_LAC.atteph
att1=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1215.061
att2=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1225.061
att3=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1230.061
att4=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1220.061
eph1=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1215.061
eph2=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1220.061
eph3=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1230.061
eph4=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1225.061
When I then do this it fails:
modis_GEO.py ./MOD00.P2020269.1220.GOG_FULL.L1A_LAC -o ./MOD00.P2020269.1220.GOG_FULL.GEO --threshold=95 --ancdb=./ancillary_data.db
MODIS GEO version 6.1.0, built Aug 16 2019 12:46:24
scan: 0 out of 400 Fri Sep 25 16:24:35 2020
...
scan: 390 out of 400 Fri Sep 25 16:24:43 2020
Percent valid data (0.00) is less than threshold (95.00)
ERROR: MODIS geolocation processing failed.
However, if I go in and fix the order of the eph and att inside the returned atteph file:
cat MOD00.P2020269.1220.GOG_FULL.L1A_LAC.atteph.fixed
att1=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1215.061
att2=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1220.061
att3=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1225.061
att4=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1ATTNR_NRT.A2020269.1230.061
eph1=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1215.061
eph2=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1220.061
eph3=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1225.061
eph4=/optics1/software/seadas/seadas-7.5.3/ocssw/var/anc/2020/269/PM1EPHND_NRT.A2020269.1230.061
And then copy it to the proper filename:
cp MOD00.P2020269.1220.GOG_FULL.L1A_LAC.atteph.fixed MOD00.P2020269.1220.GOG_FULL.L1A_LAC.atteph
And then run it again from the start (meaning I have to create a new L1A from the PDS files) it is successful:
modis_GEO.py ./MOD00.P2020269.1220_1.GOG_FULL.L1A_LAC -o ./MOD00.P2020269.1220_1.GOG_FULL.GEO --threshold=95 --ancdb=./ancillary_data.db
MODIS GEO version 6.1.0, built Aug 16 2019 12:46:24
scan: 0 out of 197 Fri Sep 25 16:37:18 2020
...
scan: 190 out of 197 Fri Sep 25 16:37:31 2020
And I get a GEO file:
-rw-rw-r-- 1 oo_processing oo_processing 87M Sep 25 16:37 MOD00.P2020269.1220_1.GOG_FULL.GEO
-rw-rw-r-- 1 oo_processing oo_processing 530M Sep 25 16:37 MOD00.P2020269.1220_1.GOG_FULL.L1A_LAC
So why did this occur?
Why was the .atteph returned out of order?
I have a second region in close proximity to this example that is failing in the same manner.
This has never happened to me before today.
I have been running this way for years and years without issues (unless there are 3 input granules)
Brock
atteph file incorect
-
- Posts: 338
- Joined: Wed Apr 06, 2005 12:11 pm America/New_York
- Has thanked: 10 times
- Been thanked: 3 times
-
- Posts: 1519
- Joined: Wed Sep 18, 2019 6:15 pm America/New_York
- Been thanked: 9 times
atteph file incorect
| So why did this occur?
| Why was the .atteph returned out of order?
Not sure. The order should have been sorted, but we've modified the select to ensure time order. Hopefully, this will resolve this issue for you.
Sean
| Why was the .atteph returned out of order?
Not sure. The order should have been sorted, but we've modified the select to ensure time order. Hopefully, this will resolve this issue for you.
Sean