/[MITgcm]/MITgcm/pkg/seaice/groatb.F
ViewVC logotype

Diff of /MITgcm/pkg/seaice/groatb.F

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

revision 1.2 by heimbach, Tue Nov 12 20:47:27 2002 UTC revision 1.4.4.4 by dimitri, Fri Feb 28 09:47:31 2003 UTC
# Line 18  C     === Global variables === Line 18  C     === Global variables ===
18  #include "DYNVARS.h"  #include "DYNVARS.h"
19  #include "FFIELDS.h"  #include "FFIELDS.h"
20  #include "SEAICE.h"  #include "SEAICE.h"
21    #include "SEAICE_PARAMS.h"
22  #include "SEAICE_FFIELDS.h"  #include "SEAICE_FFIELDS.h"
23    
24  C     === Routine arguments ===  C     === Routine arguments ===
# Line 29  CEndOfInterface Line 30  CEndOfInterface
30  #ifdef ALLOW_SEAICE  #ifdef ALLOW_SEAICE
31    
32  C     === Local variables ===  C     === Local variables ===
33  C     i,j,k,bi,bj - Loop counters  C     i,j,bi,bj - Loop counters
34    
35        INTEGER i, j, k, bi, bj        INTEGER i, j, bi, bj
36        INTEGER KOPEN        INTEGER KOPEN
37        _RL U1, V1        _RL U1, V1, SPEED_SQ
38    
39        _RL HICE (1-OLx:sNx+OLx, 1-OLy:sNy+OLy)        _RL HICE (1-OLx:sNx+OLx, 1-OLy:sNy+OLy)
       _RL AR   (1-OLx:sNx+OLx, 1-OLy:sNy+OLy)  
40        _RL UG   (1-OLx:sNx+OLx, 1-OLy:sNy+OLy)        _RL UG   (1-OLx:sNx+OLx, 1-OLy:sNy+OLy)
41    
42  C if this is not done before then do it here  C if this is not done before then do it here
43        _EXCH_XY_R8(GAIRX, myThid)        _EXCH_XY_R8(UWIND, myThid)
44        _EXCH_XY_R8(GAIRY, myThid)        _EXCH_XY_R8(VWIND, myThid)
45    
46    c$taf loop = parallel
47        DO bj=myByLo(myThid),myByHi(myThid)        DO bj=myByLo(myThid),myByHi(myThid)
48    c$taf loop = parallel
49         DO bi=myBxLo(myThid),myBxHi(myThid)         DO bi=myBxLo(myThid),myBxHi(myThid)
50    
51  C DETERMINE AMOUNT OF OPEN WATER AND ICE THICKNESS  C DETERMINE AMOUNT OF OPEN WATER AND ICE THICKNESS
52          DO J=1,sNy          DO J=1,sNy
53           DO I=1,sNx           DO I=1,sNx
54            AREA(I,J,2,bi,bj)=MAX(A22,AREA(I,J,2,bi,bj))            AREA(I,J,2,bi,bj)=MAX(A22,AREA(I,J,2,bi,bj))
55            FHEFF(I,J,bi,bj)=0.0            FHEFF(I,J,bi,bj)=0.0 _d 0
56            HICE(I,J)=HEFF(I,J,2,bi,bj)/AREA(I,J,2,bi,bj)            HICE(I,J)=HEFF(I,J,2,bi,bj)/AREA(I,J,2,bi,bj)
57           ENDDO           ENDDO
58          ENDDO          ENDDO
# Line 58  C DETERMINE AMOUNT OF OPEN WATER AND ICE Line 60  C DETERMINE AMOUNT OF OPEN WATER AND ICE
60  C NOW DETERMINE MIXED LAYER TEMPERATURE  C NOW DETERMINE MIXED LAYER TEMPERATURE
61          DO J=1,sNy          DO J=1,sNy
62           DO I=1,sNx           DO I=1,sNx
63            TMIX(I,J,bi,bj)=theta(I,J,1,bi,bj)+273.16E+00            TMIX(I,J,bi,bj)=theta(I,J,1,bi,bj)+273.16 _d +00
64  #ifdef SEAICE_DEBUG  #ifdef SEAICE_DEBUG
65            TMIX(I,J,bi,bj)=MAX(TMIX(I,J,bi,bj),271.2E+00)            TMIX(I,J,bi,bj)=MAX(TMIX(I,J,bi,bj),271.2 _d +00)
66  #endif SEAICE_DEBUG  #endif
67           ENDDO           ENDDO
68          ENDDO          ENDDO
69    
70          DO J=1,sNy          DO J=1,sNy
71           DO I=1,sNx           DO I=1,sNx
72            U1=0.25*(GAIRX(I-1,J-1,bi,bj)+GAIRX(I-1,J,bi,bj)            U1=0.25 _d 0*(UWIND(I-1,J-1,bi,bj)+UWIND(I-1,J,bi,bj)
73       1      +GAIRX(I,J-1,bi,bj)+GAIRX(I,J,bi,bj))       1      +UWIND(I,J-1,bi,bj)+UWIND(I,J,bi,bj))
74            V1=0.25*(GAIRY(I-1,J-1,bi,bj)+GAIRY(I-1,J,bi,bj)            V1=0.25 _d 0*(VWIND(I-1,J-1,bi,bj)+VWIND(I-1,J,bi,bj)
75       1      +GAIRY(I,J-1,bi,bj)+GAIRY(I,J,bi,bj))       1      +VWIND(I,J-1,bi,bj)+VWIND(I,J,bi,bj))
76            UG(I,J)=SQRT(U1**2+V1**2)            SPEED_SQ = U1**2 + V1**2
77              IF ( SPEED_SQ .LT. SEAICE_EPS_SQ ) THEN
78                 UG(I,J)=SEAICE_EPS
79              ELSE
80                 UG(I,J)=SQRT(SPEED_SQ)
81              ENDIF
82           ENDDO           ENDDO
83          ENDDO          ENDDO
84    
# Line 86  C NOW DO ICE Line 93  C NOW DO ICE
93         ENDDO         ENDDO
94        ENDDO        ENDDO
95    
96  #endif ALLOW_SEAICE  #endif /* ALLOW_SEAICE */
97    
98        RETURN        RETURN
99        END        END

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.4.4.4

  ViewVC Help
Powered by ViewVC 1.1.22