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

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

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


Revision 1.8 - (show annotations) (download)
Thu Aug 14 16:49:19 2014 UTC (9 years, 8 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint65z, checkpoint65x, checkpoint65y, checkpoint65r, checkpoint65s, checkpoint65p, checkpoint65q, checkpoint65v, checkpoint65w, checkpoint65t, checkpoint65u, checkpoint65j, checkpoint65k, checkpoint65h, checkpoint65i, checkpoint65n, checkpoint65l, checkpoint65m, checkpoint65c, checkpoint65f, checkpoint65g, checkpoint65d, checkpoint65e, checkpoint66g, checkpoint66f, checkpoint66e, checkpoint66d, checkpoint66c, checkpoint66b, checkpoint66a, checkpoint66o, checkpoint66n, checkpoint66m, checkpoint66l, checkpoint66k, checkpoint66j, checkpoint66i, checkpoint66h, checkpoint65o, HEAD
Changes since 1.7: +14 -14 lines
change gTracer (and/or tracer) argument (drop bi,bj indices) in S/R
  ADAMS_BASHFORTH(2&3), CYCLE_TRACER, CYCLE_AB_TRACER, FREESURF_RESCALE_G,
  IMPLDIFF, SOLVE_TRIDIAGONAL & SOLVE_PENTADIAGONAL

1 C $Header: /u/gcmpack/MITgcm/model/src/freesurf_rescale_g.F,v 1.7 2010/09/11 21:27:13 jmc Exp $
2 C $Name: $
3
4 #include "CPP_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: FREESURF_RESCALE_G
8 C !INTERFACE:
9 SUBROUTINE FREESURF_RESCALE_G(
10 I bi, bj, k,
11 U gTracer,
12 I myThid )
13 C !DESCRIPTION: \bv
14 C *==========================================================*
15 C | S/R FREESURF_RESCALE_G
16 C | o Re-scale Gs to account for change in free-surface
17 C | hieght. Only meaningful with non-linear free-surface.
18 C *==========================================================*
19 C \ev
20
21 C !USES:
22 IMPLICIT NONE
23 C == Global variables ===
24 #include "SIZE.h"
25 #include "EEPARAMS.h"
26 #include "PARAMS.h"
27 #include "GRID.h"
28 #include "SURFACE.h"
29
30 C !INPUT/OUTPUT PARAMETERS:
31 C == Routine Arguments ==
32 INTEGER bi,bj,k
33 _RL gTracer(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
34 INTEGER myThid
35 #ifdef NONLIN_FRSURF
36 C == Local variables ==
37 INTEGER i,j
38 CEOP
39
40 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
41
42 IF ( nonlinFreeSurf.GT.0 ) THEN
43 IF ( select_rStar.GT.0 ) THEN
44 # ifndef DISABLE_RSTAR_CODE
45 DO j=1-OLy,sNy+OLy
46 DO i=1-OLx,sNx+OLx
47 gTracer(i,j,k) = gTracer(i,j,k)
48 & / rStarExpC(i,j,bi,bj)
49 ENDDO
50 ENDDO
51 # endif /* DISABLE_RSTAR_CODE */
52 ELSEIF ( selectSigmaCoord.NE.0 ) THEN
53 # ifndef DISABLE_SIGMA_CODE
54 DO j=1-OLy,sNy+OLy
55 DO i=1-OLx,sNx+OLx
56 gTracer(i,j,k) = gTracer(i,j,k)
57 & /( 1. _d 0 + dEtaHdt(i,j,bi,bj)*deltaTFreeSurf
58 & *dBHybSigF(k)*recip_drF(k)
59 & *recip_hFacC(i,j,k,bi,bj)
60 & )
61 ENDDO
62 ENDDO
63 # endif /* DISABLE_SIGMA_CODE */
64 ELSE
65 DO j=1-OLy,sNy+OLy
66 DO i=1-OLx,sNx+OLx
67 IF (k.EQ.kSurfC(i,j,bi,bj)) THEN
68 gTracer(i,j,k) = gTracer(i,j,k)
69 & *_hFacC(i,j,k,bi,bj)/hFac_surfC(i,j,bi,bj)
70 ENDIF
71 ENDDO
72 ENDDO
73 ENDIF
74 ENDIF
75
76 #endif /* NONLIN_FRSURF */
77
78 RETURN
79 END

  ViewVC Help
Powered by ViewVC 1.1.22