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

Contents of /MITgcm/model/src/calc_gtr1.F

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


Revision 1.6 - (show annotations) (download)
Wed Sep 26 18:09:14 2001 UTC (22 years, 8 months ago) by cnh
Branch: MAIN
CVS Tags: checkpoint44b_post, checkpoint43a-release1mods, checkpoint44h_pre, ecco_c44_e19, ecco_c44_e17, ecco_c44_e16, ecco_c44_e21, ecco_c44_e26, ecco_c44_e27, ecco_c44_e24, ecco_c44_e25, icebear5, icebear4, checkpoint44f_pre, icebear3, icebear2, checkpoint41, release1-branch_tutorials, checkpoint44g_post, checkpoint44h_post, checkpoint44e_post, ecco-branch-mod4, ecco-branch-mod5, checkpoint45b_post, chkpt44a_pre, release1-branch-end, release1_final_v1, ecco_c44_e20, checkpoint44, ecco_c44_e18, checkpoint44f_post, release1_b1, chkpt44d_post, checkpoint42, release1_p2, release1_p3, release1_p4, chkpt44a_post, checkpoint44b_pre, release1_p1, ecco-branch-mod1, checkpoint45c_post, release1_p5, checkpoint44e_pre, ecco_ice2, ecco_ice1, ecco-branch-mod2, checkpoint45a_post, ecco-branch-mod3, checkpoint43, release1-branch_branchpoint, ecco_c44_e22, release1_beta1, ecco_c44_e23, checkpoint45, release1_chkpt44d_post, chkpt44c_pre, chkpt44c_post
Branch point for: c24_e25_ice, ecco-branch, release1, release1_coupled, icebear, release1_final, release1-branch
Changes since 1.5: +21 -16 lines
Bringing comments up to data and formatting for document extraction.

1 C $Header: /u/gcmpack/models/MITgcmUV/model/src/calc_gtr1.F,v 1.5 2001/09/20 18:00:15 adcroft Exp $
2 C $Name: $
3
4 #include "CPP_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: CALC_GTR1
8 C !INTERFACE:
9 SUBROUTINE CALC_GTR1(
10 I bi,bj,iMin,iMax,jMin,jMax,k,kM1,kUp,kDown,
11 I xA,yA,uTrans,vTrans,rTrans,maskUp,
12 I KappaRT,
13 U fVerT,
14 I myTime,myIter,myThid )
15 C !DESCRIPTION: \bv
16 C *==========================================================*
17 C | SUBROUTINE CALC_GTR1
18 C | o Calculate the passive tracer tendency terms.
19 C *==========================================================*
20
21 C !USES:
22 IMPLICIT NONE
23 C == GLobal variables ==
24 #include "SIZE.h"
25 #include "DYNVARS.h"
26 #include "EEPARAMS.h"
27 #include "PARAMS.h"
28 #include "GAD.h"
29 #include "TR1.h"
30
31 C !INPUT/OUTPUT PARAMETERS:
32 C == Routine arguments ==
33 C fVerT :: Flux of temperature (T) in the vertical
34 C direction at the upper(U) and lower(D) faces of a cell.
35 C maskUp :: Land mask used to denote base of the domain.
36 C xA :: Tracer cell face area normal to X
37 C yA :: Tracer cell face area normal to X
38 C uTrans :: Zonal volume transport through cell face
39 C vTrans :: Meridional volume transport through cell face
40 C rTrans :: Vertical volume transport through cell face
41 C bi, bj, iMin, iMax, jMin, jMax :: Range of points for which calculation
42 C results will be set.
43 C myThid - Instance number for this innvocation of CALC_GT
44 _RL fVerT (1-OLx:sNx+OLx,1-OLy:sNy+OLy,2)
45 _RS xA (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
46 _RS yA (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
47 _RL uTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
48 _RL vTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
49 _RL rTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
50 _RS maskUp(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
51 _RL KappaRT(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
52 INTEGER k,kUp,kDown,kM1
53 INTEGER bi,bj,iMin,iMax,jMin,jMax
54 _RL myTime
55 INTEGER myIter
56 INTEGER myThid
57
58 CEOP
59
60 #ifdef ALLOW_AUTODIFF_TAMC
61 C-- only the kUp part of fverT is set in this subroutine
62 C-- the kDown is still required
63 fVerT(1,1,kDown) = fVerT(1,1,kDown)
64 #endif
65
66 CALL GAD_CALC_RHS(
67 I bi,bj,iMin,iMax,jMin,jMax,k,kM1,kUp,kDown,
68 I xA,yA,uTrans,vTrans,rTrans,maskUp,
69 I diffKhT, diffK4T, KappaRT, tr1,
70 I GAD_TR1, tracerAdvScheme,
71 U fVerT, gTr1,
72 I myThid )
73
74 #ifdef INCLUDE_TR_FORCING_CODE
75 C-- External thermal forcing term(s)
76 CALL EXTERNAL_FORCING_TR(
77 I iMin,iMax,jMin,jMax,bi,bj,k,
78 I myTime,myThid)
79 #endif /* INCLUDE_TR_FORCING_CODE */
80
81 IF ( tracerAdvScheme.EQ.ENUM_CENTERED_2ND
82 & .OR.tracerAdvScheme.EQ.ENUM_UPWIND_3RD
83 & .OR.tracerAdvScheme.EQ.ENUM_CENTERED_4TH ) THEN
84 CALL ADAMS_BASHFORTH2(
85 I bi, bj, K,
86 U gTr1, gTr1nm1,
87 I myIter, myThid )
88 ENDIF
89
90 #ifdef NONLIN_FRSURF
91 IF (nonlinFreeSurf.GT.0) THEN
92 CALL FREESURF_RESCALE_G(
93 I bi, bj, K,
94 U gTr1,
95 I myThid )
96 ENDIF
97 #endif /* NONLIN_FRSURF */
98
99 RETURN
100 END

  ViewVC Help
Powered by ViewVC 1.1.22