Go to the documentation of this file.
64 data wantgac /.false./
65 data wantlac /.false./
70 write(*,
'(a)')
'Enter input L0 file name: '
72 open(mnflun,file=mnffile,access=
'direct',
73 . recl=512/frec,err=900)
78 write(*,
'(a)')
'Output TLM type (GAC, LAC, BOTH): '
81 if (
type .eq.
'GAC' .or. type .eq.
'BOTH')
then
86 write(*,
'(a)')
'Enter output GAC TLM file name: '
88 open(gtelun,file=gtefile,access=
'direct',
89 . status=
'unknown',recl=4/frec,err=901)
93 if (
type .eq.
'LAC' .or. type .eq.
'BOTH')
then
98 write(*,
'(a)')
'Enter output LAC TLM file name: '
100 open(ltelun,file=ltefile,access=
'direct',
101 . status=
'unknown',recl=4/frec,err=902)
104 if (.not. wantgac .and. .not. wantlac)
then
105 write(*,*)
'Error: no output will be generated for type=',
type
112 read(mnflun, rec=1, err=900) hdr
117 status =
getmnf( mnflun, mnfcnt, mnf, mnflen)
123 dowhile( status .eq. 0 )
128 if ( wantgac .and. mnf(idbyte) .eq. gacid )
then
133 status =
mkgactlm(gtelun,gaccnt,mnf)
136 elseif ( wantlac .and. mnf(idbyte) .ne. gacid )
then
141 status =
mklactlm(ltelun,laccnt,mnf)
149 status =
getmnf( mnflun, mnfcnt, mnf, mnflen)
152 if (mod(mnfcnt,1000) .eq. 0)
then
153 write(*,*)
'Processing minor frame ',mnfcnt
159 write(*,*)
'Total minor frames: ',mnfcnt-1
160 write(*,*)
'GAC frames: ',gaccnt
161 write(*,*)
'LAC frames: ',laccnt
170 900
write(*,*)
'Error opening input file: ',mnffile
172 901
write(*,*)
'Error opening output file: ',gtefile
174 902
write(*,*)
'Error opening output file: ',ltefile
184 integer*2 function getmnf(lun,mnfcnt,mnf,mnflen)
205 read(lun,rec=mnfcnt*nbuf+i+1,err=10) buf
207 mnf( (i-1)*buflen + j ) = buf(j)
226 integer*2 function puttlm(lun,cnt,tlm,tlmlen)
248 buf(j) = tlm( (i-1)*buflen + j )
250 write(lun,rec=cnt*nbuf+i,err=10) buf
276 integer*2 function mkgactlm(lun,cnt,mnf)
306 integer*2 map( 3, nflds )
317 data firstcall /.true./
326 if ( firstcall )
then
343 tlm( tlmoffset + j ) = mnf( mnfoffset + j )
371 integer*2 function mklactlm(lun,cnt,mnf)
401 integer*2 map( 3, nflds )
408 data firstcall /.true./
417 if ( firstcall )
then
433 tlm( tlmoffset + j ) = mnf( mnfoffset + j )
integer *2 function getmnf(lun, mnfcnt, mnf, mnflen)
integer *2 function mklactlm(lun, cnt, mnf)
README for MOD_PR03(V6.1.0) 2. POINTS OF CONTACT it can be either SDP Toolkit or MODIS Packet for Terra input files The orbit validation configuration parameter(LUN 600281) must be either "TRUE" or "FALSE". It needs to be "FALSE" when running in Near Real Time mode
integer *2 function mkgactlm(lun, cnt, mnf)
integer *2 function puttlm(lun, cnt, tlm, tlmlen)