File indexing completed on 2018-03-02 18:43:11 UTC
view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
b5aa60a554 Dimi*0001 #include "SALT_PLUME_OPTIONS.h"
0002
0003
762bde3a3e Dimi*0004
0005
b5aa60a554 Dimi*0006 SUBROUTINE SALT_PLUME_READPARMS( myThid )
0007
0008
0009
0010
0011
0012 IMPLICIT NONE
0013 #include "SIZE.h"
0014 #include "EEPARAMS.h"
0015 #include "PARAMS.h"
0016 #include "GRID.h"
0017 #include "SALT_PLUME.h"
0018
0019
0020 INTEGER myThid
0021
0022
762bde3a3e Dimi*0023 #ifdef ALLOW_SALT_PLUME
ae4c29e0db Jean*0024
0025
0026
0027 CHARACTER*(MAX_LEN_MBUF) msgBuf
0028 INTEGER iUnit
762bde3a3e Dimi*0029
824966555a Dimi*0030 NAMELIST /SALT_PLUME_PARM01/
1aca59cbdd Dimi*0031 & SaltPlumeSouthernOcean,
824966555a Dimi*0032 & CriterionType, PlumeMethod, Npower,
815b600e86 Gael*0033 & SaltPlumeCriterion, SPovershoot, SPsalFRAC
4b0b6a4929 An T*0034 #ifdef SALT_PLUME_IN_LEADS
0035 & , SPinflectionPoint
0036 #endif
1f89baba18 Patr*0037 #ifdef SALT_PLUME_SPLIT_BASIN
0038 & , SaltPlumeSplitBasin
0039 #endif
0040 #ifdef SALT_PLUME_VOLUME
0041 & , SPbrineSconst, SPbrineSaltmax
0042 #endif
b5aa60a554 Dimi*0043
ae4c29e0db Jean*0044
0045
0046 IF ( .NOT.useSALT_PLUME ) THEN
0047
0048 _BEGIN_MASTER(myThid)
0049
0050
0051 CALL PACKAGES_UNUSED_MSG( 'useSALT_PLUME', ' ', ' ' )
0052 _END_MASTER(myThid)
0053 RETURN
0054 ENDIF
b5aa60a554 Dimi*0055
0056 _BEGIN_MASTER(myThid)
0057
0058
1aca59cbdd Dimi*0059 SaltPlumeSouthernOcean = .TRUE.
824966555a Dimi*0060 CriterionType = 1
0061 PlumeMethod = 1
0062 SaltPlumeCriterion = UNSET_RL
0063 SPovershoot = 1.0 _d 0
1f89baba18 Patr*0064 #ifdef SALT_PLUME_SPLIT_BASIN
0065 SaltPlumeSplitBasin = .FALSE.
0066 Npower(1) = 0
0067 Npower(2) = 0
0068 SPsalFRAC(1) = 1.0 _d 0
0069 SPsalFRAC(2) = 1.0 _d 0
0070 #else
0071 Npower = 0
815b600e86 Gael*0072 SPsalFRAC = 1.0 _d 0
1f89baba18 Patr*0073 #endif
4b0b6a4929 An T*0074 #ifdef SALT_PLUME_IN_LEADS
0075 SPinflectionPoint = 0.8 _d 0
0076 #endif
1f89baba18 Patr*0077 #ifdef SALT_PLUME_VOLUME
0078 SPbrineSconst = 45. _d 0
0079 SPbrineSaltmax = 100. _d 0
0080 #endif
824966555a Dimi*0081
b5aa60a554 Dimi*0082 WRITE(msgBuf,'(A)')'SALT_PLUME_READPARMS: opening data.salt_plume'
0083 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
0084 & SQUEEZE_RIGHT , 1)
0085 CALL OPEN_COPY_DATA_FILE(
0086 I 'data.salt_plume', 'SALT_PLUME_READPARMS',
0087 O iUnit,
0088 I myThid )
0089
0090
0091 READ(UNIT=iUnit,NML=SALT_PLUME_PARM01)
ae4c29e0db Jean*0092 WRITE(msgBuf,'(A)')
b5aa60a554 Dimi*0093 & 'SALT_PLUME_READPARMS: finished reading data.salt_plume'
0094 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
0095 & SQUEEZE_RIGHT , 1)
0096
7a77863887 Mart*0097 #ifdef SINGLE_DISK_IO
b5aa60a554 Dimi*0098 CLOSE(iUnit)
7a77863887 Mart*0099 #else
0100 CLOSE(iUnit,STATUS='DELETE')
0101 #endif /* SINGLE_DISK_IO */
0102
0103 IF ( SaltPlumeCriterion .EQ. UNSET_RL ) THEN
0104 IF ( CriterionType .EQ. 1 ) THEN
0105 SaltPlumeCriterion = 0.4 _d 0
0106 ELSEIF ( CriterionType .EQ. 2 ) THEN
0107 SaltPlumeCriterion = 0.005 _d 0
0108 ELSE
0109 WRITE(msgBuf,'(A)') 'S/R SALT_PLUME_READPARMS'
0110 CALL PRINT_ERROR( msgBuf, myThid )
0111 WRITE(msgBuf,'(A)') 'Invalid CriterionType'
0112 CALL PRINT_ERROR( msgBuf, myThid )
0113 STOP 'ABNORMAL END: S/R SALT_PLUME_READPARMS'
824966555a Dimi*0114 ENDIF
7a77863887 Mart*0115 ENDIF
824966555a Dimi*0116
b5aa60a554 Dimi*0117 _END_MASTER(myThid)
0118
0119
0120 _BARRIER
0121
762bde3a3e Dimi*0122 #endif /* ALLOW_SALT_PLUME */
0123
b5aa60a554 Dimi*0124 RETURN
0125 END