C $Header: /u/gcmpack/MITgcm/pkg/regrid/regrid_readparms.F,v 1.1 2006/08/15 04:05:48 edhill Exp $
C $Name: $
#include "REGRID_OPTIONS.h"
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
CBOP 0
C !ROUTINE: REGRID_READPARMS
C !INTERFACE:
SUBROUTINE REGRID_READPARMS( myThid )
C !DESCRIPTION:
C Initialize REGRID variables and constants.
C !USES:
IMPLICIT NONE
#include "SIZE.h"
#include "EEPARAMS.h"
#include "PARAMS.h"
#include "GRID.h"
#include "REGRID_SIZE.h"
#include "REGRID.h"
C !INPUT PARAMETERS:
INTEGER myThid
CEOP
#ifdef ALLOW_REGRID
CHARACTER*(MAX_LEN_MBUF) msgBuf
CHARACTER*(MAX_LEN_FNAM) blank
INTEGER iUnit, i
NAMELIST //REGRID_PARM01
& regrid_MNC, regrid_MDSIO,
& regrid_ngrids, regrid_fbname_in,
& regrid_nout
_BEGIN_MASTER(myThid)
DO i = 1,MAX_LEN_FNAM
blank(i:i) = ' '
ENDDO
C Default values for REGRID
REGRID_MNC = useMNC
REGRID_MDSIO = .FALSE.
regrid_ngrids = 0
DO i = 1,REGRID_NGRID_MAX
REGRID_fbname_in(i)(1:MAX_LEN_FNAM) = blank(1:MAX_LEN_FNAM)
REGRID_fbname_out(i)(1:MAX_LEN_FNAM) = blank(1:MAX_LEN_FNAM)
regrid_nout(i) = 0
ENDDO
WRITE(msgBuf,'(A)') 'REGRID_READPARMS: opening data.regrid'
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
& SQUEEZE_RIGHT , 1)
CALL OPEN_COPY_DATA_FILE(
I 'data.regrid', 'REGRID_READPARMS',
O iUnit,
I myThid )
C Read parameters from open data file
READ(UNIT=iUnit,NML=REGRID_PARM01)
WRITE(msgBuf,'(A)')
& 'REGRID_READPARMS: finished reading data.regrid'
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
& SQUEEZE_RIGHT , 1)
C Close the open data file
CLOSE(iUnit)
C Make sure that we locally honor the global MNC on/off flag
REGRID_MNC = REGRID_MNC .AND. useMNC
#ifndef ALLOW_MNC
C Fix to avoid running without getting any output:
REGRID_MNC = .FALSE.
#endif
REGRID_MDSIO = (.NOT. REGRID_MNC) .OR. outputTypesInclusive
_END_MASTER(myThid)
C-- Everyone else must wait for the parameters to be loaded
_BARRIER
#endif /* ALLOW_REGRID */
RETURN
END