/[MITgcm]/MITgcm/verification/aim.5l_cs/code/shap_filt_apply.F
ViewVC logotype

Contents of /MITgcm/verification/aim.5l_cs/code/shap_filt_apply.F

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


Revision 1.2 - (show annotations) (download)
Sat Oct 27 02:33:55 2001 UTC (22 years, 6 months ago) by jmc
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +1 -1 lines
FILE REMOVED
update the specific version of shap_filt_apply for aim test-exp.

1 C $Header: /u/gcmpack/models/MITgcmUV/verification/aim.5l_cs/code/shap_filt_apply.F,v 1.1 2001/09/27 15:49:45 jmc Exp $
2 C $Name: $
3
4 #include "SHAP_FILT_OPTIONS.h"
5
6 SUBROUTINE SHAP_FILT_APPLY(
7 U uFld, vFld, tFld, sFld,
8 I myTime, myIter, myThid )
9 C /==========================================================\
10 C | S/R SHAP_FILT_APPLY |
11 C | Shapiro filters the argments uFld, vFld, tFld & sFld |
12 C \==========================================================/
13 IMPLICIT NONE
14
15 C == Global variables ===
16 #include "SIZE.h"
17 #include "EEPARAMS.h"
18 #include "PARAMS.h"
19 #include "DYNVARS.h"
20 #include "GRID.h"
21 #ifdef ALLOW_SHAP_FILT
22 #include "SHAP_FILT.h"
23 #endif
24
25 C == Routine arguments ==
26 _RL uFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
27 _RL vFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
28 _RL tFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
29 _RL sFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
30 INTEGER myThid
31 _RL myTime
32 INTEGER myIter
33
34 #ifdef ALLOW_SHAP_FILT
35 C == Local variables ==
36 C bi, bj, k
37 #ifdef USE_OLD_SHAPIRO_FILTERS
38 INTEGER bi, bj, k
39 #endif /* USE_OLD_SHAPIRO_FILTERS */
40
41 IF (nShapT.GT.0.OR.nShapUV.GT.0) THEN
42
43 #ifdef USE_OLD_SHAPIRO_FILTERS
44 _EXCH_XYZ_R8( uFld,myThid )
45 _EXCH_XYZ_R8( vFld,myThid )
46 IF ( tempStepping ) _EXCH_XYZ_R8( tFld,myThid )
47 IF ( saltStepping ) _EXCH_XYZ_R8( sFld,myThid )
48
49 DO bj=myByLo(myThid),myByHi(myThid)
50 DO bi=myBxLo(myThid),myBxHi(myThid)
51 DO k=1, Nr
52 C-- Update fields in top level according to tendency terms
53 CALL SHAP_FILT_U( uFld,bi,bj,k,myTime,myThid )
54 CALL SHAP_FILT_V( vFld,bi,bj,k,myTime,myThid )
55 IF ( tempStepping )
56 & CALL SHAP_FILT_TRACEROLD( tFld,bi,bj,k,myTime,myThid )
57 IF ( saltStepping )
58 & CALL SHAP_FILT_TRACEROLD( sFld,bi,bj,k,myTime,myThid )
59 ENDDO
60 ENDDO
61 ENDDO
62
63 _EXCH_XYZ_R8( uFld,myThid )
64 _EXCH_XYZ_R8( vFld,myThid )
65 IF ( tempStepping ) _EXCH_XYZ_R8( tFld,myThid )
66 IF ( saltStepping ) _EXCH_XYZ_R8( sFld,myThid )
67 #else
68 IF ( momStepping .AND. nShapUV.GT.0) THEN
69 IF (Shap_funct.EQ.1) THEN
70 CALL SHAP_FILT_UV_S1(
71 U uFld, vFld,
72 I myTime, myThid )
73 ELSEIF (Shap_funct.EQ.2) THEN
74 CALL SHAP_FILT_UV_S2(
75 U uFld, vFld,
76 I myTime, myThid )
77 ELSEIF (Shap_funct.EQ.4) THEN
78 CALL SHAP_FILT_UV_S4(
79 U uFld, vFld,
80 I myTime, myThid )
81 ELSEIF (Shap_funct.EQ.20) THEN
82 CALL SHAP_FILT_UV_S2G(
83 U uFld, vFld,
84 I myTime, myThid )
85 ELSE
86 STOP 'SHAP_FILT_APPLY: Ooops! Bad Shap_funct in UV block'
87 ENDIF
88 ENDIF
89
90 IF ( tempStepping .AND. nShapT.GT.0) THEN
91 IF (Shap_funct.EQ.1) THEN
92 CALL SHAP_FILT_TRACER_S1(
93 U tFld,
94 I myTime, myThid )
95 ELSEIF (Shap_funct.EQ.2) THEN
96 CALL SHAP_FILT_TRACER_S2(
97 U tFld,
98 I myTime, myThid )
99 ELSEIF (Shap_funct.EQ.4) THEN
100 CALL SHAP_FILT_TRACER_S4(
101 U tFld,
102 I myTime, myThid )
103 ELSEIF (Shap_funct.EQ.20) THEN
104 CALL SHAP_FILT_TRACER_S2G(
105 U tFld,
106 I myTime, myThid )
107 ELSE
108 STOP 'SHAP_FILT_APPLY: Ooops! Bad Shap_funct in T block'
109 ENDIF
110 ENDIF
111 c IF ( saltStepping .AND. nShapT.GT.0) THEN
112 IF ( saltStepping .AND. nShapT.LT.-9999) THEN
113 IF (Shap_funct.EQ.1) THEN
114 CALL SHAP_FILT_TRACER_S1(
115 U sFld,
116 I myTime, myThid )
117 ELSEIF (Shap_funct.EQ.2) THEN
118 CALL SHAP_FILT_TRACER_S2(
119 U sFld,
120 I myTime, myThid )
121 ELSEIF (Shap_funct.EQ.4) THEN
122 CALL SHAP_FILT_TRACER_S4(
123 U sFld,
124 I myTime, myThid )
125 ELSEIF (Shap_funct.EQ.20) THEN
126 CALL SHAP_FILT_TRACER_S2G(
127 U sFld,
128 I myTime, myThid )
129 ELSE
130 STOP 'SHAP_FILT_APPLY: Ooops! Bad Shap_funct in S block'
131 ENDIF
132 ENDIF
133 #endif /* USE_OLD_SHAPIRO_FILTERS */
134
135 ENDIF
136 #endif /* ALLOW_SHAP_FILT */
137
138 RETURN
139 END

  ViewVC Help
Powered by ViewVC 1.1.22