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.
carlie.coats@baronams.com