C $Header: /u/gcmpack/MITgcm/pkg/matrix/matrix_write_grid.F,v 1.1 2005/04/18 19:41:13 spk Exp $
C $Name: $
#include "PACKAGES_CONFIG.h"
#include "CPP_OPTIONS.h"
SUBROUTINE MATRIX_WRITE_GRID( myThid )
IMPLICIT NONE
#include "SIZE.h"
#include "EEPARAMS.h"
#include "PARAMS.h"
#include "GRID.h"
INTEGER myThid
#ifdef ALLOW_MATRIX
C local variables:
_RS r4seg(Nr)
INTEGER dUnit, k
IF (useMatrix) THEN
CALL WRITE_FLD_XY_RS( 'DXF',' ',DXF,0,myThid)
CALL WRITE_FLD_XY_RS( 'DYF',' ',DYF,0,myThid)
call MDSFINDUNIT( dUnit, mythid )
do k=1,Nr
r4seg(k)=rC(k)
enddo
#ifdef RS_IS_REAL4
open(dUnit, file='RC', status='unknown',
& access='direct', recl=4*Nr )
#ifdef _BYTESWAPIO
call MDS_BYTESWAPR4( Nr, r4seg )
#endif
#else
open( dUnit, file='RC', status='unknown',
& access='direct', recl=8*Nr )
#ifdef _BYTESWAPIO
call MDS_BYTESWAPR8( Nr, r4seg )
#endif
#endif
write(dUnit,rec=1) r4seg
close(dUnit)
call MDSFINDUNIT( dUnit, mythid )
do k=1,Nr
r4seg(k)=drF(k)
enddo
#ifdef RS_IS_REAL4
open( dUnit, file='DRF', status='unknown',
& access='direct', recl=4*Nr )
#ifdef _BYTESWAPIO
call MDS_BYTESWAPR4( Nr, r4seg )
#endif
#else
open( dUnit, file='DRF', status='unknown',
& access='direct', recl=8*Nr )
#ifdef _BYTESWAPIO
call MDS_BYTESWAPR8( Nr, r4seg )
#endif
#endif
write(dUnit,rec=1) r4seg
close(dUnit)
ENDIF /* useMatrix */
#endif /* ALLOW_MATRIX */
RETURN
END