Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:37:28 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
09a6f3668a Jeff*0001 #include "ctrparam.h"
                0002 #include "ATM2D_OPTIONS.h"
                0003 
                0004 C
                0005       SUBROUTINE ATM2D_READPARMS( myThid )
                0006 C     /==========================================================\
                0007 C     | SUBROUTINE ATM2D_READPARMS                               |
                0008 C     |==========================================================|
                0009 C     | Initialize ATM2D parameters, read in data.atm2d          |
                0010 C     \==========================================================/
                0011       IMPLICIT NONE
                0012 
                0013 #include "ATMSIZE.h"
                0014 #include "SIZE.h"
                0015 #include "EEPARAMS.h"
                0016 #include "ATM2D_VARS.h"
                0017 
                0018 C     === Routine arguments ===
                0019       INTEGER myThid
                0020 
9274434acc Jean*0021       NAMELIST /PARM01_ATM2D/
09a6f3668a Jeff*0022      &        atmosTauuFile, atmosTauvFile,atmosWindFile
9274434acc Jean*0023 
09a6f3668a Jeff*0024       NAMELIST /PARM02_ATM2D/
                0025      &        tauuFile, tauvFile, windFile,
                0026      &        qnetFile, evapFile, precipFile
                0027 
                0028       NAMELIST /PARM03_ATM2D/
                0029      &        thetaRelaxFile, saltRelaxFile,
                0030      &        tauThetaRelax, tauSaltRelax,
                0031      &        nttyperelax, nstyperelax
                0032 
                0033       NAMELIST /PARM04_ATM2D/
                0034      &        runoffFile, runoffMapFile,
                0035      &        numbands, rband
                0036 
                0037       NAMELIST /PARM05_ATM2D/
                0038      &        useObsEmP,useObsRunoff,useAltDeriv
9274434acc Jean*0039 
09a6f3668a Jeff*0040 
                0041 C     === Local variables ===
                0042 C     msgBuf      - Informational/error meesage buffer
                0043 C     iUnit       - Work variable for IO unit number
                0044       CHARACTER*(MAX_LEN_MBUF) msgBuf
                0045       INTEGER iUnit
                0046       INTEGER j     ! loop counter
                0047 
                0048 
                0049       WRITE(msgBuf,'(A)') ' ATM2D_READPARMS: opening data.atm2d'
                0050       CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
                0051      &                    SQUEEZE_RIGHT , 1)
                0052 
                0053       CALL OPEN_COPY_DATA_FILE(
                0054      I                          'data.atm2d', 'ATM2D_READPARMS',
                0055      O                          iUnit,
                0056      I                          myThid )
                0057 
                0058 C--   Default values
                0059       atmosTauuFile=' '
                0060       atmosTauvFile=' '
                0061       atmosWindFile=' '
                0062       tauuFile=' '
                0063       tauvFile=' '
                0064       windFile=' '
                0065       qnetFile=' '
                0066       evapFile=' '
                0067       precipFile=' '
                0068       runoffFile=' '
                0069       thetaRelaxFile=' '
                0070       saltRelaxFile=' '
                0071       runoffFile=' '
                0072       runoffMapFile=' '
                0073 C
                0074       useObsEmP=.FALSE.
9274434acc Jean*0075       useObsRunoff=.FALSE.
                0076       useAltDeriv=.FALSE.
09a6f3668a Jeff*0077 C
                0078       r_tauThetaRelax=0. _d 0
                0079       r_tauSaltRelax=0. _d 0
                0080       ntTypeRelax=0
                0081       nsTypeRelax=0
                0082 
                0083       numBands=1
                0084       do j=1,sNy
                0085         rband(j)=0
                0086       enddo
                0087 
                0088 c--   Read parameters from open data file
                0089       READ(UNIT=iUnit,NML=PARM01_ATM2D)
                0090 c
                0091       READ(UNIT=iUnit,NML=PARM02_ATM2D)
                0092 c
                0093       READ(UNIT=iUnit,NML=PARM03_ATM2D)
                0094 c
                0095       READ(UNIT=iUnit,NML=PARM04_ATM2D)
                0096 c
                0097       READ(UNIT=iUnit,NML=PARM05_ATM2D)
                0098 c
                0099       WRITE(msgBuf,'(A)') ' ATM2D_READPARMS: read PARM01_ATM2D'
                0100       CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
                0101      &                    SQUEEZE_RIGHT , 1)
                0102 
                0103 C--   Close the open data file
7a77863887 Mart*0104 #ifdef SINGLE_DISK_IO
09a6f3668a Jeff*0105       CLOSE(iUnit)
7a77863887 Mart*0106 #else
                0107       CLOSE(iUnit,STATUS='DELETE')
                0108 #endif /* SINGLE_DISK_IO */
09a6f3668a Jeff*0109 
9274434acc Jean*0110       IF (tauThetaRelax .NE. 0. _d 0)
09a6f3668a Jeff*0111      &                  r_tauThetaRelax= 1. _d 0/tauThetaRelax
9274434acc Jean*0112       IF (tauSaltRelax .NE. 0. _d 0)
09a6f3668a Jeff*0113      &                  r_tauSaltRelax= 1. _d 0/tauSaltRelax
                0114 
                0115       RETURN
                0116       END
                0117