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