/[MITgcm]/MITgcm/pkg/kpp/kpp_transport_s.F
ViewVC logotype

Annotation of /MITgcm/pkg/kpp/kpp_transport_s.F

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


Revision 1.7.4.1 - (hide annotations) (download)
Mon Apr 8 20:27:13 2002 UTC (22 years, 1 month ago) by heimbach
Branch: release1
CVS Tags: release1_p13_pre, release1_p13, release1_p8, release1_p9, release1_p1, release1_p2, release1_p3, release1_p4, release1_p5, release1_p6, release1_p7, release1_p12, release1_p10, release1_p11, release1_p16, release1_p17, release1_p14, release1_p15, release1_p12_pre
Branch point for: release1_50yr
Changes since 1.7: +3 -3 lines
These changes constitute a patch to release1.
They were made on a development branch called "release1_final"
and are on the main trunk between chkpt44d_post and
checkpoint44h_post along with other changes.

This code is equivalent to chkpt44d_post with the following patches:
  - AD-related changes for GMRedi
  - fixes i KPP (delZ -> drF)
  - hook to OBCS songe layer code in external_forcing
  - errorMessageUnit non-zero in eeboot.F
  - modified test cost function and carbon verif.

1 heimbach 1.7.4.1 C $Header$
2     C $Name$
3 adcroft 1.1
4     #include "KPP_OPTIONS.h"
5    
6     subroutine KPP_TRANSPORT_S (
7     I iMin,iMax,jMin,jMax,bi,bj,k,km1,
8 adcroft 1.7 I KappaRS,
9 adcroft 1.1 U df )
10     C /==========================================================\
11     C | o SUBROUTINE KPP_TRANSPORT_S |
12     C | Add non local KPP transport term (ghat) to diffusive |
13     C | salinity flux. |
14     C |==========================================================|
15     C | The nonlocal transport term is nonzero only for scalars |
16     C | in unstable (convective) forcing conditions. |
17     C | Note: KappaRS(i,j,k) is defined at the top of grid cell |
18     C | k while KPPghat(i,j,k,bi,bj) is defined at the |
19     C | bottom of grid cell k. |
20     C | For K=1, KappaRS(i,j,k) = 0 which insures no flux |
21     C | through the surface. |
22     C \==========================================================/
23     IMPLICIT NONE
24    
25     C == GLobal variables ==
26     #include "SIZE.h"
27     #include "DYNVARS.h"
28     #include "EEPARAMS.h"
29     #include "PARAMS.h"
30     #include "GRID.h"
31     #include "FFIELDS.h"
32     #include "KPP.h"
33     #include "KPP_PARAMS.h"
34    
35     C == Routine arguments ==
36     C iMin,iMax,jMin, - Range of points for which calculation
37     C jMax,bi,bj,k,km1 results will be set.
38     C KappaRS - Total diffusion in vertical for S.
39     C df - Diffusive flux component work array.
40     INTEGER iMin,iMax,jMin,jMax,bi,bj,k,km1
41     _RL KappaRS(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
42     _RL df (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
43    
44 heimbach 1.2 #if defined(ALLOW_KPP) && defined(KPP_GHAT)
45 adcroft 1.1
46     C == Local variables ==
47     C I, J - Loop counters
48     INTEGER I, J
49    
50 heimbach 1.2 DO j=jMin,jMax
51     DO i=iMin,iMax
52 adcroft 1.7 df(i,j) = df(i,j) - _rA(i,j,bi,bj) *
53 heimbach 1.7.4.1 & KappaRS(i,j,k) * KPPghat(i,j,km1,bi,bj) * drF(1) *
54 heimbach 1.2 & SurfaceTendencyS(i,j,bi,bj)
55 adcroft 1.1 ENDDO
56 heimbach 1.2 ENDDO
57 adcroft 1.1
58 heimbach 1.2 #endif /* ALLOW_KPP and KPP_GHAT */
59 adcroft 1.1
60     RETURN
61     END

  ViewVC Help
Powered by ViewVC 1.1.22