MODULE MATXATTS
Fortran-90 style MODULE MATXATTS
uses the I/O API
"extra-attributes" interface to provide input-grid and
output-grid metadata for matrix-files, in terms of
Models-3 I/O API map projection and
grid description conventions.
MODULE MATXATTS
- PARAMETER INGRD3
- Token to use in matrix-attribute calls to indicate that the grid whose metadata bein accessed is an input grid for the matrix.
- PARAMETER OUTGRD3
- Token to use in matrix-attribute calls to indicate that the grid whose metadata bein accessed is an output grid for the matrix.
- GETMTXATT()
- get input or output grid description attributes for matrix-files and return as arguments.
- SETMTXATT()
- set or check input and output grid description attributes from arguments for matrix-files: if file is NEW, set the attributes; else check them.
- CHKMTXATT()
- check input or output grid description attributes for matrix-files against attributes from the argument list. Return
.TRUE.
if they match,.FALSE.
otherwise.
LOGICAL FUNCTION GETMTXATT( FNAME, IMODE, GDNAM, & GDTYP, P_ALP, P_BET, P_GAM, XCENT, YCENT, & XORIG, YORIG, XCELL, YCELL, NCOLS, NROWS ) CHARACTER( LEN=* ), INTENT( IN ):: FNAME !! logical file name INTEGER , INTENT( IN ):: IMODE !! INGRD3 or OUTGRD3 CHARACTER( LEN=* ), INTENT( OUT ):: GDNAM !! grid name INTEGER , INTENT( OUT ):: GDTYP !! map projection type REAL*8 , INTENT( OUT ):: P_ALP !! map projection parameters... REAL*8 , INTENT( OUT ):: P_BET !! " REAL*8 , INTENT( OUT ):: P_GAM !! " REAL*8 , INTENT( OUT ):: XCENT !! " REAL*8 , INTENT( OUT ):: YCENT !! " REAL*8 , INTENT( OUT ):: XORIG !! Grid origin REAL*8 , INTENT( OUT ):: YORIG !! " REAL*8 , INTENT( OUT ):: XCELL !! Grid cell-size REAL*8 , INTENT( OUT ):: YCELL !! " INTEGER , INTENT( OUT ):: NCOLS !! Grid dimension INTEGER , INTENT( OUT ):: NROWS !! "Back to Contents
LOGICAL FUNCTION SETMTXATT( FNAME, IMODE, GDNAM, & GDTYP, P_ALP, P_BET, P_GAM, XCENT, YCENT, & XORIG, YORIG, XCELL, YCELL, NCOLS, NROWS ) CHARACTER( LEN=* ), INTENT( IN ):: FNAME !! logical file name INTEGER , INTENT( IN ):: IMODE !! INGRD3 or OUTGRD3 CHARACTER( LEN=* ), INTENT( IN ):: GDNAM !! grid name INTEGER , INTENT( IN ):: GDTYP !! map projection type REAL*8 , INTENT( IN ):: P_ALP !! map projection parameters... REAL*8 , INTENT( IN ):: P_BET !! " REAL*8 , INTENT( IN ):: P_GAM !! " REAL*8 , INTENT( IN ):: XCENT !! " REAL*8 , INTENT( IN ):: YCENT !! " REAL*8 , INTENT( IN ):: XORIG !! Grid origin REAL*8 , INTENT( IN ):: YORIG !! " REAL*8 , INTENT( IN ):: XCELL !! Grid cell-size REAL*8 , INTENT( IN ):: YCELL !! " INTEGER , INTENT( IN ):: NCOLS !! Grid dimension INTEGER , INTENT( IN ):: NROWS !! "Back to Contents
LOGICAL FUNCTION CHKMTXATT( FNAME, IMODE, GDNAM, & GDTYP, P_ALP, P_BET, P_GAM, XCENT, YCENT, & XORIG, YORIG, XCELL, YCELL, NCOLS, NROWS ) CHARACTER( LEN=* ), INTENT( IN ):: FNAME !! logical file name INTEGER , INTENT( IN ):: IMODE !! INGRD3 or OUTGRD3 CHARACTER( LEN=* ), INTENT( IN ):: GDNAM !! grid name INTEGER , INTENT( IN ):: GDTYP !! map projection type REAL*8 , INTENT( IN ):: P_ALP !! map projection parameters... REAL*8 , INTENT( IN ):: P_BET !! " REAL*8 , INTENT( IN ):: P_GAM !! " REAL*8 , INTENT( IN ):: XCENT !! " REAL*8 , INTENT( IN ):: YCENT !! " REAL*8 , INTENT( IN ):: XORIG !! Grid origin REAL*8 , INTENT( IN ):: YORIG !! " REAL*8 , INTENT( IN ):: XCELL !! Grid cell-size REAL*8 , INTENT( IN ):: YCELL !! " INTEGER , INTENT( IN ):: NCOLS !! Grid dimension INTEGER , INTENT( IN ):: NROWS !! "Back to Contents
Send comments to
Carlie J. Coats, Jr.
cjcoats@email.unc.edu