Parent Directory | Revision Log | Revision Graph
o first check-in for the "branch-genmake2" merge o verification suite as run on shelley (gcc 3.2.2): Wed Oct 8 23:42:29 EDT 2003 T S U V G D M c m s m s m s m s E p a R g m m e . m m e . m m e . m m e . N n k u 2 i a a d i a a d i a a d i a a d 2 d e n d n x n . n x n . n x n . n x n . OPTFILE=NONE Y Y Y Y 13 16 16 16 0 16 16 16 16 16 16 16 16 13 12 0 0 pass adjustment.128x64x1 Y Y Y Y 16 16 16 16 0 16 16 16 16 16 16 0 0 16 16 0 0 pass adjustment.cs-32x32x1 Y Y Y Y 16 16 16 16 0 16 16 16 16 16 16 22 0 16 16 22 0 pass adjust_nlfs.cs-32x32x1 Y Y Y Y -- 13 13 16 16 13 13 13 13 16 16 16 16 16 16 16 16 N/O advect_cs Y Y Y Y -- 22 16 16 16 16 16 16 13 16 16 16 16 16 16 16 16 N/O advect_xy Y Y Y Y -- 13 16 13 16 16 16 16 16 16 16 22 16 16 16 16 16 N/O advect_xz Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 pass aim.5l_cs Y Y Y Y 14 16 16 16 16 16 16 16 16 13 16 16 16 16 16 13 16 pass aim.5l_Equatorial_Channel Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 13 16 16 13 13 16 pass aim.5l_LatLon Y Y Y Y 13 16 16 16 16 16 16 16 16 16 13 12 13 13 16 13 16 pass exp0 Y Y Y Y 14 16 16 16 16 16 16 16 22 16 16 16 13 16 16 22 16 pass exp1 Y Y Y Y 13 13 16 13 16 16 16 16 16 13 13 16 16 13 13 13 13 pass exp2 Y Y Y Y 16 16 16 16 16 16 16 16 22 16 16 16 16 16 16 16 16 pass exp4 Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 22 16 16 16 22 16 pass exp5 Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 pass front_relax Y Y Y Y 14 16 16 13 13 16 16 13 13 16 13 13 16 12 13 13 16 pass global_ocean.90x40x15 Y Y Y Y 10 16 16 13 13 16 13 16 16 13 13 13 13 16 16 13 16 FAIL global_ocean.cs32x15 Y Y Y Y 6 11 12 13 13 12 13 16 13 9 9 9 9 10 9 9 11 FAIL global_ocean_pressure Y Y Y Y 14 16 16 13 16 16 16 13 13 13 13 13 16 12 16 13 16 pass global_with_exf Y Y Y Y 14 16 16 16 16 16 16 16 16 11 13 22 13 16 16 9 16 pass hs94.128x64x5 Y Y Y Y 13 16 16 16 16 16 16 16 16 11 16 16 16 13 16 22 13 pass hs94.1x64x5 Y Y Y Y 14 16 16 16 16 16 16 16 16 13 16 13 13 16 16 22 13 pass hs94.cs-32x32x5 Y Y Y Y 10 10 16 13 13 16 16 16 22 16 13 13 13 13 13 22 13 FAIL ideal_2D_oce Y Y Y Y 8 16 16 16 16 16 16 16 16 13 13 8 16 16 16 16 16 FAIL internal_wave Y Y Y Y 14 16 16 16 16 16 16 16 16 13 13 22 13 13 13 22 16 pass inverted_barometer Y Y Y Y 12 16 16 16 16 16 16 16 16 16 13 12 13 13 13 13 13 FAIL lab_sea Y Y Y Y 11 16 16 16 16 16 16 16 13 13 13 12 13 16 13 12 13 FAIL natl_box Y Y Y Y 16 16 16 16 16 16 16 16 22 16 16 16 16 16 16 16 16 pass plume_on_slope Y Y Y Y 13 16 16 16 16 13 16 16 16 16 16 16 16 13 16 16 16 pass solid-body.cs-32x32x1
1 | edhill | 1.7 | C $Header: /u/u3/gcmpack/MITgcm/pkg/mom_fluxform/mom_u_coriolis.F,v 1.6.8.1 2003/10/02 18:30:08 adcroft Exp $ |
2 | adcroft | 1.3 | C $Name: $ |
3 | adcroft | 1.2 | |
4 | edhill | 1.7 | #include "MOM_FLUXFORM_OPTIONS.h" |
5 | adcroft | 1.2 | |
6 | adcroft | 1.3 | CBOP |
7 | C !ROUTINE: MOM_U_CORIOLIS | ||
8 | |||
9 | C !INTERFACE: ========================================================== | ||
10 | adcroft | 1.2 | SUBROUTINE MOM_U_CORIOLIS( |
11 | I bi,bj,k,vFld, | ||
12 | U uCoriolisTerm, | ||
13 | I myThid) | ||
14 | |||
15 | adcroft | 1.3 | C !DESCRIPTION: |
16 | C Calculates the horizontal Coriolis term in the zonal equation: | ||
17 | C \begin{equation*} | ||
18 | C \overline{f}^i \overline{v}^{ij} | ||
19 | C \end{equation*} | ||
20 | adcroft | 1.2 | |
21 | adcroft | 1.3 | C !USES: =============================================================== |
22 | IMPLICIT NONE | ||
23 | adcroft | 1.2 | #include "SIZE.h" |
24 | #include "DYNVARS.h" | ||
25 | #include "EEPARAMS.h" | ||
26 | #include "PARAMS.h" | ||
27 | #include "GRID.h" | ||
28 | #include "SURFACE.h" | ||
29 | |||
30 | adcroft | 1.3 | C !INPUT PARAMETERS: =================================================== |
31 | C bi,bj :: tile indices | ||
32 | C k :: vertical level | ||
33 | C vFld :: meridional flow | ||
34 | C myThid :: thread number | ||
35 | adcroft | 1.2 | INTEGER bi,bj,K |
36 | _RL vFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy) | ||
37 | adcroft | 1.3 | INTEGER myThid |
38 | |||
39 | C !OUTPUT PARAMETERS: ================================================== | ||
40 | C uCoriolisTerm :: Coriolis term | ||
41 | adcroft | 1.2 | _RL uCoriolisTerm(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
42 | |||
43 | adcroft | 1.3 | C !LOCAL VARIABLES: ==================================================== |
44 | C i,j :: loop indices | ||
45 | INTEGER I,J | ||
46 | adcroft | 1.6 | _RL one |
47 | PARAMETER(one=1.d0) | ||
48 | adcroft | 1.3 | CEOP |
49 | adcroft | 1.2 | |
50 | adcroft | 1.4 | IF (useEnergyConservingCoriolis) THEN |
51 | C Energy conserving discretization | ||
52 | DO j=1-Oly,sNy+Oly-1 | ||
53 | DO i=1-Olx+1,sNx+Olx | ||
54 | uCoriolisTerm(i,j) = | ||
55 | & 0.5*( _fCori( i ,j,bi,bj) | ||
56 | & *0.5*( vFld( i ,j)+vFld( i ,j+1) ) | ||
57 | & + _fCori(i-1,j,bi,bj) | ||
58 | & *0.5*( vFld(i-1,j)+vFld(i-1,j+1) ) ) | ||
59 | ENDDO | ||
60 | ENDDO | ||
61 | ELSE | ||
62 | C Original discretization | ||
63 | DO j=1-Oly,sNy+Oly-1 | ||
64 | DO i=1-Olx+1,sNx+Olx | ||
65 | uCoriolisTerm(i,j) = | ||
66 | adcroft | 1.2 | & 0.5*( _fCori( i ,j,bi,bj) + |
67 | & _fCori(i-1,j,bi,bj) ) | ||
68 | & *0.25*( | ||
69 | & vFld( i ,j)+vFld( i ,j+1) | ||
70 | & +vFld(i-1,j)+vFld(i-1,j+1) | ||
71 | & ) | ||
72 | adcroft | 1.5 | ENDDO |
73 | ENDDO | ||
74 | ENDIF | ||
75 | |||
76 | IF (useJamartWetPoints) THEN | ||
77 | C Scale term so that only "wet" points are used | ||
78 | C Due to: Jamart and Ozer, 1986, JGR 91 (C9), 10,621-10,631 | ||
79 | C "Numerical Boundary Layers and Spurious Residual Flows" | ||
80 | DO j=1-Oly,sNy+Oly-1 | ||
81 | DO i=1-Olx+1,sNx+Olx | ||
82 | uCoriolisTerm(i,j) = uCoriolisTerm(i,j) | ||
83 | & *4.d0/max(one, maskS( i , j ,k,bi,bj)+maskS( i ,j+1,k,bi,bj) | ||
84 | & +maskS(i-1, j ,k,bi,bj)+maskS(i-1,j+1,k,bi,bj) ) | ||
85 | adcroft | 1.4 | ENDDO |
86 | adcroft | 1.2 | ENDDO |
87 | adcroft | 1.4 | ENDIF |
88 | adcroft | 1.2 | |
89 | RETURN | ||
90 | END |
ViewVC Help | |
Powered by ViewVC 1.1.22 |