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

Annotation 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 - (hide 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 atn 1.3 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 atn 1.1 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 atn 1.3 & , SPbrineSconst, SPbrineSaltmax
37 atn 1.1 #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 atn 1.3 SPbrineSconst = 36. _d 0
60 atn 1.2 SPbrineSaltmax = 50. _d 0
61 atn 1.1 #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