/[MITgcm]/MITgcm_contrib/atnguyen/code_21Dec2012_saltplume/salt_plume_readparms.F
ViewVC logotype

Contents of /MITgcm_contrib/atnguyen/code_21Dec2012_saltplume/salt_plume_readparms.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.3 - (show annotations) (download)
Tue Apr 29 06:49:40 2014 UTC (11 years, 3 months ago) by atn
Branch: MAIN
CVS Tags: HEAD
Changes since 1.2: +3 -3 lines
in progress:
1. add SALT_PLUME_OPTIONS.h to several files;
2. replace SPalpha (vol) with SPbrineSconst (salinity);
3. move diagnostics outside bi,bj loop.

1 C $Header: /u/gcmpack/MITgcm_contrib/atnguyen/code_21Dec2012_saltplume/salt_plume_readparms.F,v 1.2 2014/04/22 10:32:25 atn Exp $
2 C $Name: $
3
4 #include "SALT_PLUME_OPTIONS.h"
5
6 CBOP 0
7 C !ROUTINE: SALT_PLUME_READPARMS
8 C !INTERFACE:
9 SUBROUTINE SALT_PLUME_READPARMS( myThid )
10
11 C !DESCRIPTION:
12 C Initialize SALT_PLUME variables and constants.
13
14 C !USES:
15 IMPLICIT NONE
16 #include "SIZE.h"
17 #include "EEPARAMS.h"
18 #include "PARAMS.h"
19 #include "GRID.h"
20 #include "SALT_PLUME.h"
21
22 C !INPUT PARAMETERS:
23 INTEGER myThid
24 CEOP
25
26 #ifdef ALLOW_SALT_PLUME
27
28 NAMELIST /SALT_PLUME_PARM01/
29 & SaltPlumeSouthernOcean,
30 & CriterionType, PlumeMethod, Npower,
31 & SaltPlumeCriterion, SPovershoot, SPsalFRAC
32 #ifdef SALT_PLUME_IN_LEADS
33 & , SPinflectionPoint
34 #endif
35 #ifdef SALT_PLUME_VOLUME
36 & , SPbrineSconst, SPbrineSaltmax
37 #endif
38
39 C !LOCAL VARIABLES:
40 C msgBuf - Informational/error meesage buffer
41 C iUnit - Work variable for IO unit number
42 CHARACTER*(MAX_LEN_MBUF) msgBuf
43 INTEGER iUnit
44
45 _BEGIN_MASTER(myThid)
46
47 C-- Default values for SALT_PLUME
48 SaltPlumeSouthernOcean = .TRUE.
49 CriterionType = 1
50 PlumeMethod = 1
51 Npower = 0
52 SaltPlumeCriterion = UNSET_RL
53 SPovershoot = 1.0 _d 0
54 SPsalFRAC = 1.0 _d 0
55 #ifdef SALT_PLUME_IN_LEADS
56 SPinflectionPoint = 0.8 _d 0
57 #endif
58 #ifdef SALT_PLUME_VOLUME
59 SPbrineSconst = 36. _d 0
60 SPbrineSaltmax = 50. _d 0
61 #endif
62
63 WRITE(msgBuf,'(A)')'SALT_PLUME_READPARMS: opening data.salt_plume'
64 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
65 & SQUEEZE_RIGHT , 1)
66 CALL OPEN_COPY_DATA_FILE(
67 I 'data.salt_plume', 'SALT_PLUME_READPARMS',
68 O iUnit,
69 I myThid )
70
71 C Read parameters from open data file
72 READ(UNIT=iUnit,NML=SALT_PLUME_PARM01)
73 WRITE(msgBuf,'(A)')
74 & 'SALT_PLUME_READPARMS: finished reading data.salt_plume'
75 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
76 & SQUEEZE_RIGHT , 1)
77 C Close the open data file
78 CLOSE(iUnit)
79
80 IF ( SaltPlumeCriterion .EQ. UNSET_RL ) THEN
81 IF ( CriterionType .EQ. 1 ) THEN
82 SaltPlumeCriterion = 0.4 _d 0
83 ELSEIF ( CriterionType .EQ. 2 ) THEN
84 SaltPlumeCriterion = 0.005 _d 0
85 ELSE
86 WRITE(msgBuf,'(A)') 'S/R SALT_PLUME_READPARMS'
87 CALL PRINT_ERROR( msgBuf, myThid )
88 WRITE(msgBuf,'(A)') 'Invalid CriterionType'
89 CALL PRINT_ERROR( msgBuf, myThid )
90 STOP 'ABNORMAL END: S/R SALT_PLUME_READPARMS'
91 ENDIF
92 ENDIF
93
94 _END_MASTER(myThid)
95
96 C-- Everyone else must wait for the parameters to be loaded
97 _BARRIER
98
99 #endif /* ALLOW_SALT_PLUME */
100
101 RETURN
102 END

  ViewVC Help
Powered by ViewVC 1.1.22