/[MITgcm]/MITgcm/pkg/salt_plume/salt_plume_forcing_surf.F
ViewVC logotype

Contents of /MITgcm/pkg/salt_plume/salt_plume_forcing_surf.F

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


Revision 1.3 - (show annotations) (download)
Mon Jun 15 23:42:46 2009 UTC (14 years, 11 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint62, checkpoint62c, checkpoint62b, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62h, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61q, checkpoint61z, checkpoint61x, checkpoint61y
Changes since 1.2: +17 -7 lines
o pkg/salt_plume: add SaltPlumeSouthernOcean to allow disabling
  of salt_plume package in Southern Ocean

1 C $Header: /u/gcmpack/MITgcm/pkg/salt_plume/salt_plume_forcing_surf.F,v 1.2 2007/11/28 17:55:36 dimitri Exp $
2 C $Name: $
3
4 #include "SALT_PLUME_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: SALT_PLUME_FORCING_SURF
8 C !INTERFACE:
9 SUBROUTINE SALT_PLUME_FORCING_SURF(
10 I bi, bj, iMin, iMax, jMin, jMax,
11 I myTime,myIter,myThid )
12
13 C !DESCRIPTION: \bv
14 C *==========================================================*
15 C | S/R SALT_PLUME_FORCING_SURF
16 C | o saltPlume is the amount of salt rejected by ice while freezing;
17 C | it is here subtracted from surfaceForcingS and will be redistributed
18 C | to multiple vertical levels later on as per Duffy et al. (GRL 1999)
19 C *==========================================================*
20 C \ev
21
22 C !USES:
23 IMPLICIT NONE
24 C == Global variables ==
25 #include "SIZE.h"
26 #include "EEPARAMS.h"
27 #include "PARAMS.h"
28 #include "GRID.h"
29 #include "FFIELDS.h"
30 #include "DYNVARS.h"
31 #include "SALT_PLUME.h"
32
33 C !INPUT PARAMETERS:
34 C bi,bj :: tile indices
35 C myTime :: model time
36 C myIter :: time-step number
37 C myThid :: thread number
38 INTEGER bi, bj, iMin, iMax, jMin, jMax
39 _RL myTime
40 INTEGER myIter
41 INTEGER myThid
42 CEOP
43
44 #ifdef ALLOW_SALT_PLUME
45
46 C !LOCAL VARIABLES:
47 C i,j :: loop indices
48 C ks :: surface level index
49 INTEGER i, j, ks
50
51 IF ( usingPCoords ) THEN
52 ks = Nr
53 ELSE
54 ks = 1
55 ENDIF
56
57 DO j = jMin, jMax
58 DO i = iMin, iMax
59 surfaceForcingS(i,j,bi,bj) = surfaceForcingS(i,j,bi,bj)
60 & - saltPlumeFlux(i,j,bi,bj) * mass2rUnit
61 ENDDO
62 ENDDO
63
64 IF ( .NOT. SaltPlumeSouthernOcean ) THEN
65 DO j = jMin, jMax
66 DO i = iMin, iMax
67 IF ( YC(I,J,bi,bj) .LT. 0.0 _d 0 )
68 & saltPlumeFlux(i,j,bi,bj) = 0.0 _d 0
69 ENDDO
70 ENDDO
71 ENDIF
72
73 #endif /* ALLOW_SALT_PLUME */
74
75 RETURN
76 END

  ViewVC Help
Powered by ViewVC 1.1.22