File indexing completed on 2018-03-02 18:39:17 UTC
view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
d8206d87ee Patr*0001 #include "EBM_OPTIONS.h"
0002
3b760ca956 Jean*0003
0004
0005
0006
d8206d87ee Patr*0007 SUBROUTINE EBM_READPARMS( myThid )
0008
3b760ca956 Jean*0009
0010
0011
0012
0013
0014
0015
0016 IMPLICIT NONE
d8206d87ee Patr*0017
0018 #include "SIZE.h"
0019 #include "EEPARAMS.h"
0020 #include "PARAMS.h"
0021 #include "GRID.h"
0022 #ifdef ALLOW_EBM
0023 #include "EBM.h"
0024 #endif
0025
3b760ca956 Jean*0026
0027
d8206d87ee Patr*0028 INTEGER myThid
3b760ca956 Jean*0029
d8206d87ee Patr*0030
0031 #ifdef ALLOW_EBM
3b760ca956 Jean*0032
0033
0034
0035
d8206d87ee Patr*0036 CHARACTER*(MAX_LEN_MBUF) msgBuf
0037 INTEGER errIO, iUnit
0038
0039
0040 NAMELIST /EBM_PARM01/
2c03616886 Jean*0041 & tauThetaZonRelax,
d8206d87ee Patr*0042 & scale_runoff,
0043 & RunoffFile
0044
920a6107ff Jean*0045
0046
0047 IF ( .NOT.useEBM ) THEN
0048
0049 _BEGIN_MASTER(myThid)
0050
0051
0052 CALL PACKAGES_UNUSED_MSG( 'useEBM', ' ', ' ' )
0053 _END_MASTER(myThid)
0054 RETURN
0055 ENDIF
0056
d8206d87ee Patr*0057 _BEGIN_MASTER(myThid)
0058
3b760ca956 Jean*0059 WRITE(msgBuf,'(A)') ' EBM_READPARMS: opening data.ebm'
d8206d87ee Patr*0060 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
3b760ca956 Jean*0061 & SQUEEZE_RIGHT, myThid )
1d82a71159 Jean*0062 errIO = 0
d8206d87ee Patr*0063 CALL OPEN_COPY_DATA_FILE(
3b760ca956 Jean*0064 I 'data.ebm', 'EBM_READPARMS',
0065 O iUnit,
0066 I myThid )
d8206d87ee Patr*0067
3b760ca956 Jean*0068
d8206d87ee Patr*0069 tauThetaZonRelax = 0.
0070 scale_runoff = 1.
0071 RunoffFile = ' '
0072
0073
0074
0075
1d82a71159 Jean*0076 READ( UNIT=iUnit, NML=EBM_PARM01 )
0077
d8206d87ee Patr*0078 IF ( errIO .LT. 0 ) THEN
3b760ca956 Jean*0079 WRITE(msgBuf,'(A)') 'S/R EBM_READPARMS'
0080 CALL PRINT_ERROR( msgBuf, myThid )
0081 WRITE(msgBuf,'(A)') 'Error reading numerical model '
0082 CALL PRINT_ERROR( msgBuf, myThid )
0083 WRITE(msgBuf,'(A)') 'parameter file "data.ebm"'
0084 CALL PRINT_ERROR( msgBuf, myThid )
0085 WRITE(msgBuf,'(A)') 'Problem in namelist EBM_PARM01'
0086 CALL PRINT_ERROR( msgBuf, myThid )
0087 STOP 'ABNORMAL END: S/R EBM_READPARMS'
d8206d87ee Patr*0088 ENDIF
3b760ca956 Jean*0089
7a77863887 Mart*0090 #ifdef SINGLE_DISK_IO
d8206d87ee Patr*0091 CLOSE(iUnit)
7a77863887 Mart*0092 #else
0093 CLOSE(iUnit,STATUS='DELETE')
0094 #endif /* SINGLE_DISK_IO */
d8206d87ee Patr*0095
3b760ca956 Jean*0096 WRITE(msgBuf,'(A)') ' EBM_READPARMS: finished reading data.ebm'
d8206d87ee Patr*0097 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
3b760ca956 Jean*0098 & SQUEEZE_RIGHT, myThid )
d8206d87ee Patr*0099
2c03616886 Jean*0100
d8206d87ee Patr*0101 IF ( tauThetaZonRelax .NE. 0. _d 0 ) THEN
3b760ca956 Jean*0102 IF ( tauThetaClimRelax.NE.0. _d 0 ) THEN
0103 WRITE(msgBuf,'(2A)') 'EBM_READPARMS: ',
0104 & 'tauThetaClimRelax > 0 AND tauThetaZonRelax > 0'
0105 CALL PRINT_ERROR( msgBuf, myThid )
0106 WRITE(msgBuf,'(2A)') 'EBM_READPARMS: ',
0107 & 'cannot relax Temp. to 2-d map AND ZonAver SST'
0108 CALL PRINT_ERROR( msgBuf, myThid )
0109 STOP 'ABNORMAL END: S/R EBM_READPARMS'
0110 ELSE
0111 WRITE(msgBuf,'(2A)') ' EBM_READPARMS: ',
0112 & 'set tauThetaClimRelax to tauThetaZonRelax value'
0113 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
0114 & SQUEEZE_RIGHT, myThid )
0115 tauThetaClimRelax = tauThetaZonRelax
0116 ENDIF
d8206d87ee Patr*0117 ENDIF
2c03616886 Jean*0118
0119 latBnd(1) = 0. _d 0
0120 latBnd(2) = 35. _d 0
0121 latBnd(3) = 85. _d 0
d8206d87ee Patr*0122
0123 _END_MASTER(myThid)
0124
0125
0126 _BARRIER
0127
0128 #endif /* ALLOW_EBM */
0129
3b760ca956 Jean*0130 RETURN
0131 END