Personal tools
You are here: Home Project Documentation Processing MODIS Processing (Terra + Aqua)

MODIS Processing (Terra + Aqua)

MODIS Processing from CCSDS to L1B

References

The following link documents the processing sequences used by the DAACs http://modis-sdst.gsfc.nasa.gov/documents/MODISV4.0SDD_Vol2.pdf
 

Processing UML

 

MODIS State and Processing UML Image

 

 


Explanation

 

  • The order is from CCSDS (raw) to PDS to Level 1A to Level 1B (calibrated+geolocated) and then upwards to L2, L3 etc. We cover to L1B here.
  • CCSDS (Consultative Committee for Space Data Systems) platform telemetry data received on cognac.ivec.org. EOS and NPP use this format. This is a primary archive format and is the most raw.
  • The raw CCSDS data needs to be pre-processed into a PDS (Production Data Set) by decrypting, having communication artefacts removed and having single sensor extracted from the platform data stream.
  • One pure software tool to do this is RT-STPS (Real-time Software Telemetry Processing System), a java application available from GSFC direct readout website (see Technology link). RT-STPS uses an XML configuration file.
  • However there is also a proprietary solution called Terascan to do this at receiving stations. Due to lack of knowledge in RT-STPS we will initially take the pre-formed Terascan-generated PDS files for applicable sensors to the prototype that we wish to produce 1B from.
  • MODISL1DB is part of SeaDAS and we are using to convert PDS Level 0 to Level 1A and then again to Level 1B (calibrated and geolocated).
  • Predicted geolocation is provided by instrument GPS or approximation of navigational data (depending on platform). Definitive geolocation is provided by corrected navigation data that is provided by GSFC Direct Readout 24-48 hours after a pass. This latter is also known as post ephemeris correction.
  • Terra data has on-board GPS, so can be processed immediately with its supplied predicted navigational data. Aqua however has no on-board GPS so for immediate processing it requires a tool called GBAD (Ground Based Attitude Determination) to provide the predicted GPS. Both Aqua and Terra can of course be geolocated with definitive post ephemeris processing.

 

 

RT-STPS (unused)

 

Has worked for me, but as we are inexperienced with the software we choose to stick to known ground and take pre-generated PDS files from the receiving station for the time being. This is included below only for future information. See also this document

.

$ cd /projects/wastac/tools/rt-stps
$ cd example
$ cat runscipt

  #!/bin/csh
  #PBS -P ap01
  #PBS -q normal
  #PBS -l walltime=01:00:00,vmem=2000MB
  #PBS -wd
  module load java
  ../bin/batch.sh TerraModis.xml ./mut01_20060929_0019_CCSDS

 

Executing the above on a sample CCSDS file, I got 3 PDS files:

  • P0420064AAAAAAAAAAAAAA06352184022001.PDS
  • P0420064AAAAAAAAAAAAAA06352184409000.PDS
  • P0420064AAAAAAAAAAAAAA06352184409001.PDS

 

 

MODISL1DB Setup (L0 to L1B)

 

Bundle of scripts and binaries that take us through from L0 to L1B. MODISL1DB seems to be the command-line driven part of SeaDAS

.

 

environment setup cognac.ivec.org:

 

export DBHOME=/projects/wastac/tools/modisl1db
source /projects/wastac/tools/modisl1db/scripts/modisl1db_env.bash

environment setup wastac.ivec.org:

 

export DBHOME=/home/wastac/modisl1db
source /home/wastac/modisl1db/scripts/modisl1db_env.bash

 

  • First we run modis_L0_to_L1A_GEO.csh on the PDS file to generate 2 files; 1A and geolocation. The script automatically updates the leapsecond, utcpole and gps corrections by default.
  • To get this to run for a Terra dataset, there was no definitive ancillary data available when it tried to automatically download so I had to use -disable-definitive to force fallback to onboard predicted GPS system.
  • For Aqua there is not this choice obviously (no onboard GPS). Post definitive correction expected to be better in any case (eg Terra real-time is 50-100m out but not a big issue for large pixels maybe).
  • Specifying the 2 output files from above, next I ran modis_L1A_to_L1B.csh to produce the 3 L1B files (250m/Q, 500m/H, 1km/L resolutions)

 

At the end of this process, I ended up with, for example, two Level 1A files:

 

  • T2006352015248.L1A_LAC (level 1a data)
  • T2006352015248.GEO (geolocation information)

 

and 3 Level 1B files:

 

  • T2006352015248.L1B_LAC (1km)
  • T2006352015248.L1B_HKM (500m)
  • T2006352015248.L1B_QKM (250m)

 

gdalinfo

was used to briefly verify the contents.

 

GBAD (Ground Based Attitude Determination - for Aqua)

 

The Ground-Based Attitude Determination (GBAD) Ephemeris and Attitude Data Converter creates ephemeris and attitude files from data packets in the Aqua spacecraft telemetry downlink [a Level-0 Consultative Committee for Space Data Systems (CCSDS) spacecraft bus telemetry packet file].  The output file formats are a subset of the Science Data Production (SDP) Toolkit ephemeris and attitude files.  These files are used by the Aqua Level-1 instrument-specific software to geolocate the image.  The Direct Readout Laboratory (DRL) intends to evolve GBAD to encompass future NPOESS Preparatory Project (NPP) missions.
  • Available from here.

 

After compiling GBAD, it is run as in the following example;

 

$ aqua_main -packetfile [GBAD PDS from Terascan, eg mua01_20061227_1703_GBD.pds]
            -noradfile [Either dodged TLE file from Terascan or NORAD fdf.tle]
            -configfile [Generic run-all config, eg testconfig]
            -ephemerisfile [Ephemeris output file, eg mua01_20061227_1703_GBD.eph]
            -attitudefile [Attitude output file, eg mua01_20061227_1703_GBD.att]

$ cat testconfig
-listconfig yes
-noradsatname AQUA
-pkt_count 0
-pkt_offset 0
-sdpsatname EOSPM1
-station GSFC
-version 1.0

$ cat mua01_20061227_1703_TLE.pds [SEE NOTE BELOW ON FIRST LINE]
AQUA - FDF
1 27424U 02022  A 06355.08244115  .00000243  00000-0  00000+0 0   695
2 27424  98.2159 293.2740 0000712  73.8480 286.3306 14.57115138246378

 

Regarding the TLE files, there seem to be two options;

  1. The Norad supplied FDF available from here (FTP link), or
  2. The TLE file supplied by the down-link receiving station.  However to get this particular file to work, I had to prepend the line "AQUA - FDF" to the file.

 

Now these two files can be utilised with the appropriate modis_L0_to_L1A_GEO

switches to establish the predicted navigation data for processing:

 

Usage: modis_L0_to_L1A_GEO.csh MODIS_L0_PDS_file [OPTIONS]

Options:

  -o L1A_file               Output MODIS L1A HDF filename
  -g GEO_file               Output MODIS GEO HDF filename
  -a1 attitude_file1        Input attitude file 1 (chronological)
  -a2 attitude_file2        Input attitude file 2 (chronological)
  -e1 ephemeris_file1       Input ephemeris file 1 (chronological)
  -e2 ephemeris_file2       Input ephemeris file 2 (chronological)
  -disable-definitive       Disable use of definitive attitude/ephemeris
  -disable-definitive-ftp   Disable auto-downloading of definitive attitude/ephemeris
  -disable-predicted        Disable use of real-time attitude/ephemeris
  -disable-predicted-ftp    Disable auto-downloading of real-time attitude/ephemeris
etc...

 

 

Other Links

Document Actions
Log in


Forgot your password?