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

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

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

revision 1.47 by jmc, Thu Aug 23 19:12:10 2007 UTC revision 1.51 by dimitri, Wed Nov 28 09:26:16 2007 UTC
# Line 397  C     == Global data == Line 397  C     == Global data ==
397  #include "DYNVARS.h"  #include "DYNVARS.h"
398  #include "FFIELDS.h"  #include "FFIELDS.h"
399  #include "SURFACE.h"  #include "SURFACE.h"
 #ifdef ALLOW_SALT_PLUME  
 #ifdef ALLOW_SEAICE  
 #include "SEAICE_PARAMS.h"  
 #endif /* ALLOW_SEAICE */  
 #endif /* ALLOW_SALT_PLUME */  
400    
401  C     !INPUT/OUTPUT PARAMETERS:  C     !INPUT/OUTPUT PARAMETERS:
402  C     == Routine arguments ==  C     == Routine arguments ==
# Line 422  C     kSurface  :: index of surface laye Line 417  C     kSurface  :: index of surface laye
417        INTEGER i, j        INTEGER i, j
418        INTEGER kSurface        INTEGER kSurface
419  CEOP  CEOP
 #ifdef ALLOW_SALT_PLUME  
       _RL saltPlume  
 #endif /* ALLOW_SALT_PLUME */  
420    
421        IF ( fluidIsAir ) THEN        IF ( fluidIsAir ) THEN
422         kSurface = 0         kSurface = 0
# Line 486  cph#endif /* ndfef ALLOW_AUTODIFF_TAMC * Line 478  cph#endif /* ndfef ALLOW_AUTODIFF_TAMC *
478  #endif /* ALLOW_SHELFICE */  #endif /* ALLOW_SHELFICE */
479    
480  #ifdef ALLOW_SALT_PLUME  #ifdef ALLOW_SALT_PLUME
481  C saltPlume is the amount of salt rejected by ice while freezing;        IF ( useSALT_PLUME )
482  C it is here redistributed to multiple vertical levels as per       &     CALL SALT_PLUME_TENDENCY_APPLY_S(
483  C Duffy et al. (GRL 1999)       I     iMin,iMax, jMin,jMax, bi,bj, kLev,
484         DO j=1,sNy       I     myTime, myThid )
         DO i=1,sNx  
           saltPlume = 0.  
 #ifdef ALLOW_SEAICE  
           IF ( saltFlux(i,j,bi,bj) .GT. 0. .AND.  
      &         salt(i,j,kSurface,bi,bj)  .GT. SEAICE_salinity ) THEN  
            saltPlume = (salt(i,j,kSurface,bi,bj)-SEAICE_salinity) *  
      &          saltFlux(i,j,bi,bj) / salt(i,j,kSurface,bi,bj)  
           ENDIF  
 #endif /* ALLOW_SEAICE */  
           IF ( SaltPlumeDepth(i,j,bi,bj) .GT. -rF(kLev) ) THEN  
            gS(i,j,kLev,bi,bj)=gS(i,j,kLev,bi,bj)  
      &          +saltPlume*mass2rUnit  
      &          *recip_drF(kLev)*_recip_hFacC(i,j,kLev,bi,bj)  
      &          *min(drF(kLev),SaltPlumeDepth(i,j,bi,bj)+rF(kLev))  
      &          /SaltPlumeDepth(i,j,bi,bj)  
           ENDIF  
         ENDDO  
        ENDDO  
485  #endif /* ALLOW_SALT_PLUME */  #endif /* ALLOW_SALT_PLUME */
486    
487  #ifdef ALLOW_RBCS  #ifdef ALLOW_RBCS

Legend:
Removed from v.1.47  
changed lines
  Added in v.1.51

  ViewVC Help
Powered by ViewVC 1.1.22