/[MITgcm]/MITgcm/pkg/obcs/obcs_apply_r_star.F
ViewVC logotype

Contents of /MITgcm/pkg/obcs/obcs_apply_r_star.F

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


Revision 1.3 - (show annotations) (download)
Tue Aug 12 22:42:27 2008 UTC (15 years, 9 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint62c, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62k, checkpoint62j, checkpoint62i, checkpoint62h, checkpoint62o, checkpoint62n, checkpoint62m, checkpoint62l, checkpoint62s, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint62w, checkpoint62v, checkpoint62u, checkpoint62t, checkpoint62, checkpoint62b, checkpoint61f, checkpoint61n, checkpoint61q, checkpoint61z, checkpoint61e, checkpoint61g, checkpoint61d, checkpoint61c, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61x, checkpoint61y
Changes since 1.2: +2 -5 lines
move kSurfC,W,S from SURFACE.h to GRID.h : simplify arg. list

1 C $Header: /u/gcmpack/MITgcm/pkg/obcs/obcs_apply_r_star.F,v 1.2 2007/01/30 03:18:51 heimbach Exp $
2 C $Name: $
3
4 #include "OBCS_OPTIONS.h"
5
6 SUBROUTINE OBCS_APPLY_R_STAR(
7 I bi, bj,
8 U rStarFldC, rStarFldW, rStarFldS,
9 I myTime, myIter, myThid )
10 C *==========================================================*
11 C | S/R OBCS_APPLY_R_STAR
12 C *==========================================================*
13 IMPLICIT NONE
14 C == Global variables ==
15 #include "SIZE.h"
16 #include "EEPARAMS.h"
17 #include "PARAMS.h"
18 #include "GRID.h"
19 #include "OBCS.h"
20
21 C == Routine Arguments ==
22 INTEGER bi,bj
23 _RL rStarFldC(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
24 _RL rStarFldW(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
25 _RL rStarFldS(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
26 _RL myTime
27 INTEGER myIter, myThid
28
29 #ifdef ALLOW_OBCS
30 #ifdef NONLIN_FRSURF
31 #ifndef DISABLE_RSTAR_CODE
32
33 C == Local variables ==
34 INTEGER i,j
35
36 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
37
38 C- Set model rStar_Factor to OB values on North/South Boundaries
39 DO i=1-Olx,sNx+Olx
40 C Northern boundary
41 j = OB_Jn(i,bi,bj)
42 IF (j.NE.0) THEN
43 rStarFldS(i,j,bi,bj) = 1. _d 0
44 IF (ksurfS(i,j,bi,bj).LE.Nr) THEN
45 rStarFldS(i,j,bi,bj) = 1. _d 0
46 & + OBNeta(i,bi,bj)
47 & *MAX(recip_Rcol(i,j-1,bi,bj),recip_Rcol(i,j,bi,bj))
48 ENDIF
49 ENDIF
50 C Southern boundary
51 j = OB_Js(i,bi,bj)
52 IF (j.NE.0) THEN
53 rStarFldS(i,j+1,bi,bj) = 1. _d 0
54 IF (ksurfS(i,j+1,bi,bj).LE.Nr) THEN
55 rStarFldS(i,j+1,bi,bj) = 1. _d 0
56 & + OBSeta(i,bi,bj)
57 & *MAX(recip_Rcol(i,j+1,bi,bj),recip_Rcol(i,j,bi,bj))
58 ENDIF
59 ENDIF
60 ENDDO
61
62 C- Set model rStar_Factor to OB values on East/West Boundaries
63 DO j=1-Oly,sNy+Oly
64 C Eastern boundary
65 i = OB_Ie(J,bi,bj)
66 IF (i.NE.0) THEN
67 rStarFldW(i,j,bi,bj) = 1. _d 0
68 IF (ksurfW(i,j,bi,bj).LE.Nr) THEN
69 rStarFldW(i,j,bi,bj) = 1. _d 0
70 & + OBEeta(i,bi,bj)
71 & *MAX(recip_Rcol(i-1,j,bi,bj),recip_Rcol(i,j,bi,bj))
72 ENDIF
73 ENDIF
74 C Western boundary
75 i = OB_Iw(j,bi,bj)
76 IF (i.NE.0) THEN
77 rStarFldW(i+1,j,bi,bj) = 1. _d 0
78 IF (ksurfW(i+1,j,bi,bj).LE.Nr) THEN
79 rStarFldW(i+1,j,bi,bj) = 1. _d 0
80 & + OBWeta(i,bi,bj)
81 & *MAX(recip_Rcol(i+1,j,bi,bj),recip_Rcol(i,j,bi,bj))
82 ENDIF
83 ENDIF
84 ENDDO
85
86 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
87
88 #endif /* DISABLE_RSTAR_CODE */
89 #endif /* NONLIN_FRSURF */
90 #endif /* ALLOW_OBCS */
91 RETURN
92 END

  ViewVC Help
Powered by ViewVC 1.1.22