EDR : Environmental Data Records
1. Radiance files:
"io_measur.pro"
; read in header (ReadRadHdr: 7 elements)
readu,iu, nMeasurData
readu,iu, nchan
readu,iu, nPosScan, nScanLines
readu,iu, nqc
readu,iu, cfreq
readu,iu, polar
; read in body (ReadRad : 13 elements)
readu,iu, lat(iprof), lon(iprof), RelAziAngle(iprof), SolZenAngle(iprof),
readu,iu, direc(iprof), iscanPos(iprof), iscanLine(iprof), Year(iprof), Day(iprof), time(iprof),
readu,iu, angle(iprof,0:nchan-1)
readu,iu, tb(iprof,0:nchan-1)
readu,iu, qc(iprof,0:nqc-1)=qc0(0:nqc-1)
; Anonymous data structure
;======================================================================================
;---Set Up the Rad structure
Rad={ $
;----Header
nfilesRad : nfilesRad, $ ;Number of files
nProf : nprof, $ ;Number of profiles
nchan : nchan, $ ;Number of channels
nPosScan : nPosScan, $ ;Number of scan positions
nScanLines : nScanLines, $ ;Number of scan lines
nqc : fltarr(nfilesRad), $ ;Size of QC vector
Cfreq : cfreq, $ ;Central frequencies
Polarity : polar, $ ;Polarizations
tb : fltarr(nfilesRad,nProf,nchan), $ ;Array of TBs
Angle : fltarr(nfilesRad,nProf,nchan), $ ;Array of viewing angles
RelAziAngle : fltarr(nfilesRad,nProf), $ ;Array of relative azimuth angles
SolZenAngle : fltarr(nfilesRad,nProf), $ ;Array of solar zenith angles
Lat : fltarr(nfilesRad,nProf), $ ;Array of latitude
Lon : fltarr(nfilesRad,nProf), $ ;Array of longitude
Direc : intarr(nfilesRad,nProf), $ ;Array of orbot mode flags
ScanPos : intarr(nfilesRad,nProf), $ ;Scan positions
ScanLine : intarr(nfilesRad,nProf), $ ;Scan lines
Year : lonarr(nfilesRad,nProf), $ ;Year
Day : lonarr(nfilesRad,nProf), $ ;Day
Time : fltarr(nfilesRad,nProf), $ ;UTC Time
Hours : fltarr(nfilesRad,nProf), $ ;Hours (extended from Time)
Mins : fltarr(nfilesRad,nProf), $ ;Minutes (extended from Time)
Secs : fltarr(nfilesRad,nProf), $ ;Seconds (extended from Time)
qc : intarr(nfilesRad,nProf,14) $ ;QC information
}
2. EDR format (scene files )
Scene={ ;----Header algSN:algSN, readu,iu,algSN iTyp:iTyp, readu,iu,iTyp nProf:nPrf, readu,iu,nPrf nProfsProcessed:0L, not from scene file, Num of profs read successfully nLay:nLay, readu,iu,nLay nLev:nLev, readu,iu,nLev nChan:nChan, readu,iu,nChan nScanPos:nPosScan, readu,iu,nPosScan nScanLines:nScanLines, readu,iu,nScanLines nAbsorb:nAbsorb, readu,iu,nAbsorb nParmCLW:nParmCLW, readu,iu,nParmCLW nParmRain:nParmRain, readu,iu,nParmRain nParmSnow:nParmSnow, readu,iu,nParmSnow nParmIce:nParmIce, readu,iu,nParmIce nParmGrpl:nParmGrpl, readu,iu,nParmGrpl absorbID:absorbID2use4Declaration, A AbsorbID=lonarr(nAbsorb), readu,iu,absorbID cFreq:cFreq, A cfreq=fltarr(nChan), readu,iu,cFreq polarity:polar, A polar=lonarr(nChan), readu,iu,polar nQC:nQC, readu,iu,nQC declarN_Prf:nPrf, duplicate value nPrf ;----Body of Scene file ( all FOVs ) profIndxVec: intarr(nPrf), A readu,iu, profIndx PresLayVec: fltarr(nPrf,nLay), AA fltarr(Nlay), readu,iu, pressLay presLevVec: fltarr(nPrf,nLev), AA fltarr(nLev), readu,iu, pressLev tempLayVec: fltarr(nPrf,nLay), AA fltarr(Nlay), readu,iu, tempLay absorbLayVec: fltarr(nPrf,nLay,2), AA fltarr(nAbsorb), readu,iu,absorbents tpwVec: fltarr(nPrf), A DERIVED. !!! rhVec: fltarr(nPrf,nLay), A DERIVED. !!! clwLayVec: fltarr(nPrf,nParmCLW)AA fltarr(nParmCLW), readu,iu, xCLW clwVec: fltarr(nPrf), A DERIVED. !!! rwpVec: fltarr(nPrf), A DERIVED !!! iwpVec: fltarr(nPrf), A NOT SET !!! gwpVec: fltarr(nPrf), A DERIVED !!! swpVec: fltarr(nPrf), A NOT SET !!! rainLayVec: fltarr(nPrf,nParmRain),AA fltarr(nParmRain), readu,iu, xRain snowLayVec: fltarr(nPrf,nParmSnow),AA 0.0 (hard-coded) IceLayVec: fltarr(nPrf,nParmIce), AA 0.0 (hard-coded) grplLayVec: fltarr(nPrf,nParmGrpl),AA fltarr(Scene.nParmGrpl), readu,iu, xGrpl anglVec: fltarr(nPrf), A readu,iu, angl relAziAnglVec:fltarr(nPrf), A readu,iu, relAziAngl solZenAnglVec:fltarr(nPrf), A readu,iu, solZenAngl emissVec: fltarr(nPrf,nChan), AA fltarr(Scene.nchan), readu,iu, emiss reflVec: fltarr(nPrf,nChan), AA NOT SET !!! windSpVec: fltarr(nPrf), A readu,iu, windSp windUVec: fltarr(nPrf), A readu,iu, windU windVVec: fltarr(nPrf), A readu,iu, windV tskinVec: fltarr(nPrf), A readu,iu, tSkin snowDepthVec: fltarr(nPrf), A readu,iu, snowDepth sfcPressVec: fltarr(nPrf), A readu,iu, sfcPress sfcTypVec: intarr(nPrf), A readu,iu, sfcTyp QC: intarr(nPrf,nqc), AA intarr(Scene.nqc), readu,iu, qc lat: fltarr(nPrf), A readu,iu, lat lon: fltarr(nPrf), A readu,iu, lon direc: intarr(nPrf), A readu,iu, node (asc, desc) time: fltarr(nPrf), A readu,iu, scanUTC year: intarr(nPrf), A readu,iu, scanYear day: intarr(nPrf), A readu,iu, scanDay hours: fltarr(nPrf), DERIVED A fix(scanUTC/3600.) !!! mins: fltarr(nPrf), DERIVED A fix( ( time - fix(Hours) * 3600. )/60.) !!! secs: fltarr(nPrf), DERIVED A (Time - Hours*3600. - Mins*60.) !!! nAttempt: intarr(nPrf), COD A readu,iu, nAtt nIter: intarr(nPrf), COD A readu,iu, nIter chiSq: fltarr(nPrf), COD A readu,iu, chiSq yFwd: fltarr(nPrf,nChan),COD AA fltarr(Scene.nchan), readu,iu,yFwd chanSel: lonarr(nPrf,nChan),COD AA lonarr(Scene.nchan), readu,iu,chanSel ym: fltarr(nPrf,nChan),COD AA fltarr(Scene.nchan), readu,iu,ym ymCorr: fltarr(nPrf,nChan),cOD AA fltarr(Scene.nchan), readu,iu,ymCorr scanPos: lonarr(nPrf), A readu,iu, iScanPos scanLine: lonarr(nPrf) A readu,iu, iScanLine }
NOTE:
1. Condition : COD
COD: if Scene.iTyp eq 1
No comments:
Post a Comment