/[MITgcm]/MITgcm/model/src/ini_forcing.F
ViewVC logotype

Diff of /MITgcm/model/src/ini_forcing.F

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

revision 1.41 by heimbach, Mon Jan 2 21:17:02 2006 UTC revision 1.42 by jmc, Thu Oct 26 00:32:07 2006 UTC
# Line 11  C     !INTERFACE: Line 11  C     !INTERFACE:
11    
12  C     !DESCRIPTION: \bv  C     !DESCRIPTION: \bv
13  C     *==========================================================*  C     *==========================================================*
14  C     | SUBROUTINE INI_FORCING                                      C     | SUBROUTINE INI_FORCING
15  C     | o Set model initial forcing fields.                        C     | o Set model initial forcing fields.
16  C     *==========================================================*  C     *==========================================================*
17  C     \ev  C     \ev
18    
# Line 33  C     myThid -  Number of this instance Line 33  C     myThid -  Number of this instance
33  C     !LOCAL VARIABLES:  C     !LOCAL VARIABLES:
34  C     == Local variables ==  C     == Local variables ==
35  C     bi,bj  - Loop counters  C     bi,bj  - Loop counters
36  C     I,J  C     i, j
37        INTEGER bi, bj        INTEGER bi, bj
38        INTEGER  I, J, K        INTEGER  i, j
39  CEOP  CEOP
40    
41        _BARRIER  C-    Initialise all arrays in common blocks
   
42        DO bj = myByLo(myThid), myByHi(myThid)        DO bj = myByLo(myThid), myByHi(myThid)
43         DO bi = myBxLo(myThid), myBxHi(myThid)         DO bi = myBxLo(myThid), myBxHi(myThid)
44          DO j=1-OLy,sNy+OLy          DO j=1-OLy,sNy+OLy
# Line 76  CEOP Line 75  CEOP
75            SST1            (i,j,bi,bj) = 0. _d 0            SST1            (i,j,bi,bj) = 0. _d 0
76            SSS0            (i,j,bi,bj) = 0. _d 0            SSS0            (i,j,bi,bj) = 0. _d 0
77            SSS1            (i,j,bi,bj) = 0. _d 0            SSS1            (i,j,bi,bj) = 0. _d 0
78  #ifdef SHORTWAVE_HEATING            #ifdef SHORTWAVE_HEATING
79            Qsw0            (i,j,bi,bj) = 0. _d 0            Qsw0            (i,j,bi,bj) = 0. _d 0
80            Qsw1            (i,j,bi,bj) = 0. _d 0            Qsw1            (i,j,bi,bj) = 0. _d 0
81  #endif  #endif
# Line 89  CEOP Line 88  CEOP
88          ENDDO          ENDDO
89         ENDDO         ENDDO
90        ENDDO        ENDDO
91  C  
92        DO bj = myByLo(myThid), myByHi(myThid)        DO bj = myByLo(myThid), myByHi(myThid)
93         DO bi = myBxLo(myThid), myBxHi(myThid)         DO bi = myBxLo(myThid), myBxHi(myThid)
94          DO J=1-Oly,sNy+Oly          DO j=1-Oly,sNy+Oly
95           DO I=1-Olx,sNx+Olx           DO i=1-Olx,sNx+Olx
96            IF ( doThetaClimRelax .AND.            IF ( doThetaClimRelax .AND.
97       &         abs(yC(i,j,bi,bj)).LE.latBandClimRelax ) THEN       &         ABS(yC(i,j,bi,bj)).LE.latBandClimRelax ) THEN
98             lambdaThetaClimRelax(I,J,bi,bj) = 1./tauThetaClimRelax             lambdaThetaClimRelax(i,j,bi,bj) = 1. _d 0/tauThetaClimRelax
99            ELSE            ELSE
100             lambdaThetaClimRelax(I,J,bi,bj) = 0.D0             lambdaThetaClimRelax(i,j,bi,bj) = 0. _d 0
101            ENDIF            ENDIF
102            IF ( doSaltClimRelax .AND.            IF ( doSaltClimRelax .AND.
103       &         abs(yC(i,j,bi,bj)).LE.latBandClimRelax ) THEN       &         ABS(yC(i,j,bi,bj)).LE.latBandClimRelax ) THEN
104             lambdaSaltClimRelax(I,J,bi,bj) = 1./tauSaltClimRelax             lambdaSaltClimRelax(i,j,bi,bj) = 1. _d 0/tauSaltClimRelax
105            ELSE            ELSE
106             lambdaSaltClimRelax(I,J,bi,bj) = 0.D0             lambdaSaltClimRelax(i,j,bi,bj) = 0. _d 0
107            ENDIF            ENDIF
108           ENDDO           ENDDO
109          ENDDO          ENDDO
110         ENDDO         ENDDO
111        ENDDO        ENDDO
112  C  
113    C-    every-one waits before master thread loads from file
114        _BARRIER        _BARRIER
115        _BEGIN_MASTER(myThid)  
116        IF ( zonalWindFile .NE. ' '  ) THEN        IF ( zonalWindFile .NE. ' '  ) THEN
117         CALL READ_FLD_XY_RS( zonalWindFile, ' ', fu, 0, myThid )         CALL READ_FLD_XY_RS( zonalWindFile, ' ', fu, 0, myThid )
118        ENDIF        ENDIF
# Line 137  C Line 137  C
137         CALL READ_FLD_XY_RS( saltClimFile, ' ', SSS, 0, myThid )         CALL READ_FLD_XY_RS( saltClimFile, ' ', SSS, 0, myThid )
138        ENDIF        ENDIF
139        IF ( lambdaThetaFile .NE. ' '  ) THEN        IF ( lambdaThetaFile .NE. ' '  ) THEN
140         CALL READ_FLD_XY_RS( lambdaThetaFile, ' ',         CALL READ_FLD_XY_RS( lambdaThetaFile, ' ',
141       &  lambdaThetaClimRelax, 0, myThid )       &  lambdaThetaClimRelax, 0, myThid )
142        ENDIF        ENDIF
143        IF ( lambdaSaltFile .NE. ' '  ) THEN        IF ( lambdaSaltFile .NE. ' '  ) THEN
144         CALL READ_FLD_XY_RS( lambdaSaltFile, ' ',         CALL READ_FLD_XY_RS( lambdaSaltFile, ' ',
145       &  lambdaSaltClimRelax, 0, myThid )       &  lambdaSaltClimRelax, 0, myThid )
146        ENDIF        ENDIF
147  #ifdef SHORTWAVE_HEATING  #ifdef SHORTWAVE_HEATING
# Line 149  C Line 149  C
149         CALL READ_FLD_XY_RS( surfQswFile, ' ', Qsw, 0, myThid )         CALL READ_FLD_XY_RS( surfQswFile, ' ', Qsw, 0, myThid )
150         IF ( surfQFile .NE. ' '  ) THEN         IF ( surfQFile .NE. ' '  ) THEN
151  C-     Qnet is now (after c54) the net Heat Flux (including SW)  C-     Qnet is now (after c54) the net Heat Flux (including SW)
152          DO bj = 1,nSy          _BARRIER
153           DO bi = 1,nSx          DO bj = myByLo(myThid), myByHi(myThid)
154             DO bi = myBxLo(myThid), myBxHi(myThid)
155            DO j=1-OLy,sNy+OLy            DO j=1-OLy,sNy+OLy
156             DO i=1-OLx,sNx+OLx             DO i=1-OLx,sNx+OLx
157              Qnet(i,j,bi,bj) = Qnet(i,j,bi,bj) + Qsw(i,j,bi,bj)              Qnet(i,j,bi,bj) = Qnet(i,j,bi,bj) + Qsw(i,j,bi,bj)
# Line 167  C-     Qnet is now (after c54) the net H Line 168  C-     Qnet is now (after c54) the net H
168        ENDIF        ENDIF
169  #endif  #endif
170    
       _END_MASTER(myThid)  
 C  
171        _EXCH_XY_R4(fu   , myThid )        _EXCH_XY_R4(fu   , myThid )
172        _EXCH_XY_R4(fv   , myThid )        _EXCH_XY_R4(fv   , myThid )
173        _EXCH_XY_R4(Qnet , myThid )        _EXCH_XY_R4(Qnet , myThid )

Legend:
Removed from v.1.41  
changed lines
  Added in v.1.42

  ViewVC Help
Powered by ViewVC 1.1.22