/[MITgcm]/MITgcm/pkg/mom_vecinv/mom_calc_strain.F
ViewVC logotype

Contents of /MITgcm/pkg/mom_vecinv/mom_calc_strain.F

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


Revision 1.1 - (show annotations) (download)
Thu Sep 6 14:23:58 2001 UTC (22 years, 10 months ago) by adcroft
Branch: MAIN
CVS Tags: checkpoint40pre9, checkpoint41, ecco-branch-mod1, release1_b1, checkpoint42, checkpoint43, release1_beta1, checkpoint40
Branch point for: ecco-branch, release1, release1_coupled
Added tension/strain form of dissipation.
 * NOT working on cubed sphere.

1 C $Header: $
2 C $Name: $
3
4 #include "CPP_OPTIONS.h"
5
6 SUBROUTINE MOM_CALC_STRAIN(
7 I bi,bj,k,
8 I uFld, vFld, hFacZ,
9 O strain,
10 I myThid)
11 IMPLICIT NONE
12 C /==========================================================\
13 C | S/R MOM_CALC_STRAIN |
14 C |==========================================================|
15 C \==========================================================/
16
17 C == Global variables ==
18 #include "SIZE.h"
19 #include "EEPARAMS.h"
20 #include "PARAMS.h"
21 #include "GRID.h"
22 C == Routine arguments ==
23 C myThid - Instance number for this innvocation of CALC_MOM_RHS
24 INTEGER bi,bj,k
25 _RL uFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
26 _RL vFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
27 _RS hFacZ(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
28 _RL strain(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
29 INTEGER myThid
30
31 C == Local variables ==
32 INTEGER i,j
33
34 DO J=2-Oly,sNy+Oly
35 DO I=2-Olx,sNx+Olx
36
37 C Horizontal curl of flow field - ignoring lopping factors
38 strain(I,J)=
39 & dyu(I,J,bi,bj)*recip_dxv(I,J,bi,bj)*(
40 & vFld( I , J )*recip_dyc( I , J ,bi,bj)
41 & -vFld(I-1, J )*recip_dyc(I-1, J ,bi,bj) )
42 & +dxv(I,J,bi,bj)*recip_dyu(I,J,bi,bj)*(
43 & +uFld( I , J )*recip_dxc( I , J ,bi,bj)
44 & -uFld( I ,J-1)*recip_dxc( I ,J-1,bi,bj) )
45
46 C Horizontal curl of flow field - including lopping factors
47 IF (hFacZ(i,j).EQ.0.) THEN
48 strain(I,J)=0.
49 ENDIF
50
51 ENDDO
52 ENDDO
53
54 C Special stuff for Cubed Sphere
55 IF (useCubedSphereExchange) THEN
56 I=1
57 J=1
58 strain(I,J)=0.
59 I=sNx+1
60 J=1
61 strain(I,J)=0.
62 I=1
63 J=sNy+1
64 strain(I,J)=0.
65 I=sNx+1
66 J=sNy+1
67 strain(I,J)=0.
68 ENDIF
69
70 RETURN
71 END

  ViewVC Help
Powered by ViewVC 1.1.22