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

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

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

revision 1.2 by heimbach, Tue Feb 21 17:20:12 2006 UTC revision 1.3 by jmc, Mon Jun 19 15:48:35 2006 UTC
# Line 113  C [N,S,E,W]_edge :: true if N,S,E,W edge Line 113  C [N,S,E,W]_edge :: true if N,S,E,W edge
113        INTEGER i,j,k        INTEGER i,j,k
114        _RS xA      (1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RS xA      (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
115        _RS yA      (1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RS yA      (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
116          _RL uFld    (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
117          _RL vFld    (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
118        _RL uTrans  (1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL uTrans  (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
119        _RL vTrans  (1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL vTrans  (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
120        _RL af      (1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL af      (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
# Line 239  C--   Calculate velocity field "volume t Line 241  C--   Calculate velocity field "volume t
241  C--   tracer cell faces.  C--   tracer cell faces.
242        DO j=jMin,jMax        DO j=jMin,jMax
243         DO i=iMin,iMax         DO i=iMin,iMax
244            uFld(i,j) = uVel(i,j,bi,bj)
245            vFld(i,j) = vVel(i,j,bi,bj)
246          uTrans(i,j) = uVel(i,j,bi,bj)*xA(i,j)          uTrans(i,j) = uVel(i,j,bi,bj)*xA(i,j)
247          vTrans(i,j) = vVel(i,j,bi,bj)*yA(i,j)          vTrans(i,j) = vVel(i,j,bi,bj)*yA(i,j)
248         ENDDO         ENDDO
# Line 343  CADJ &     comlev1_bibj_k_gad_pass, key= Line 347  CADJ &     comlev1_bibj_k_gad_pass, key=
347           IF ( advectionScheme.EQ.ENUM_UPWIND_1RST           IF ( advectionScheme.EQ.ENUM_UPWIND_1RST
348       &        .OR. advectionScheme.EQ.ENUM_DST2 ) THEN       &        .OR. advectionScheme.EQ.ENUM_DST2 ) THEN
349            CALL GAD_DST2U1_ADV_X( bi,bj,k, advectionScheme,            CALL GAD_DST2U1_ADV_X( bi,bj,k, advectionScheme,
350       I         SEAICE_deltaTtherm,uTrans,uVel,localTij,       I         SEAICE_deltaTtherm,uTrans,uFld,localTij,
351       O         af, myThid )       O         af, myThid )
352           ELSEIF (advectionScheme.EQ.ENUM_FLUX_LIMIT) THEN           ELSEIF (advectionScheme.EQ.ENUM_FLUX_LIMIT) THEN
353            CALL GAD_FLUXLIMIT_ADV_X( bi,bj,k, SEAICE_deltaTtherm,            CALL GAD_FLUXLIMIT_ADV_X( bi,bj,k, SEAICE_deltaTtherm,
354       I         uTrans, uVel, maskLocW, localTij,       I         uTrans, uFld, maskLocW, localTij,
355       O         af, myThid )       O         af, myThid )
356           ELSEIF (advectionScheme.EQ.ENUM_DST3 ) THEN           ELSEIF (advectionScheme.EQ.ENUM_DST3 ) THEN
357            CALL GAD_DST3_ADV_X(      bi,bj,k, SEAICE_deltaTtherm,            CALL GAD_DST3_ADV_X(      bi,bj,k, SEAICE_deltaTtherm,
358       I         uTrans, uVel, maskLocW, localTij,       I         uTrans, uFld, maskLocW, localTij,
359       O         af, myThid )       O         af, myThid )
360           ELSEIF (advectionScheme.EQ.ENUM_DST3_FLUX_LIMIT ) THEN           ELSEIF (advectionScheme.EQ.ENUM_DST3_FLUX_LIMIT ) THEN
361            CALL GAD_DST3FL_ADV_X(    bi,bj,k, SEAICE_deltaTtherm,            CALL GAD_DST3FL_ADV_X(    bi,bj,k, SEAICE_deltaTtherm,
362       I         uTrans, uVel, maskLocW, localTij,       I         uTrans, uFld, maskLocW, localTij,
363       O         af, myThid )       O         af, myThid )
364           ELSE           ELSE
365            STOP            STOP
# Line 501  CADJ &     comlev1_bibj_k_gad_pass, key= Line 505  CADJ &     comlev1_bibj_k_gad_pass, key=
505           IF ( advectionScheme.EQ.ENUM_UPWIND_1RST           IF ( advectionScheme.EQ.ENUM_UPWIND_1RST
506       &        .OR. advectionScheme.EQ.ENUM_DST2 ) THEN       &        .OR. advectionScheme.EQ.ENUM_DST2 ) THEN
507            CALL GAD_DST2U1_ADV_Y( bi,bj,k, advectionScheme,            CALL GAD_DST2U1_ADV_Y( bi,bj,k, advectionScheme,
508       I         SEAICE_deltaTtherm,vTrans,vVel,localTij,       I         SEAICE_deltaTtherm,vTrans,vFld,localTij,
509       O         af, myThid )       O         af, myThid )
510           ELSEIF (advectionScheme.EQ.ENUM_FLUX_LIMIT) THEN           ELSEIF (advectionScheme.EQ.ENUM_FLUX_LIMIT) THEN
511            CALL GAD_FLUXLIMIT_ADV_Y( bi,bj,k, SEAICE_deltaTtherm,            CALL GAD_FLUXLIMIT_ADV_Y( bi,bj,k, SEAICE_deltaTtherm,
512       I         vTrans, vVel, maskLocS, localTij,       I         vTrans, vFld, maskLocS, localTij,
513       O         af, myThid )       O         af, myThid )
514           ELSEIF (advectionScheme.EQ.ENUM_DST3 ) THEN           ELSEIF (advectionScheme.EQ.ENUM_DST3 ) THEN
515            CALL GAD_DST3_ADV_Y(      bi,bj,k, SEAICE_deltaTtherm,            CALL GAD_DST3_ADV_Y(      bi,bj,k, SEAICE_deltaTtherm,
516       I         vTrans, vVel, maskLocS, localTij,       I         vTrans, vFld, maskLocS, localTij,
517       O         af, myThid )       O         af, myThid )
518           ELSEIF (advectionScheme.EQ.ENUM_DST3_FLUX_LIMIT ) THEN           ELSEIF (advectionScheme.EQ.ENUM_DST3_FLUX_LIMIT ) THEN
519            CALL GAD_DST3FL_ADV_Y(    bi,bj,k, SEAICE_deltaTtherm,            CALL GAD_DST3FL_ADV_Y(    bi,bj,k, SEAICE_deltaTtherm,
520       I         vTrans, vVel, maskLocS, localTij,       I         vTrans, vFld, maskLocS, localTij,
521       O         af, myThid )       O         af, myThid )
522           ELSE           ELSE
523            STOP            STOP

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

  ViewVC Help
Powered by ViewVC 1.1.22