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.8 | C $Header: /u/u3/gcmpack/MITgcm/pkg/mom_fluxform/mom_v_coriolis.F,v 1.7.8.1 2003/10/02 18:30:08 adcroft Exp $ |
2 | adcroft | 1.3 | C $Name: $ |
3 | adcroft | 1.2 | |
4 | edhill | 1.8 | #include "MOM_FLUXFORM_OPTIONS.h" |
5 | adcroft | 1.2 | |
6 | adcroft | 1.3 | CBOP |
7 | C !ROUTINE: MOM_V_CORIOLIS | ||
8 | |||
9 | C !INTERFACE: ========================================================== | ||
10 | adcroft | 1.2 | SUBROUTINE MOM_V_CORIOLIS( |
11 | I bi,bj,k,uFld, | ||
12 | U vCoriolisTerm, | ||
13 | I myThid) | ||
14 | |||
15 | adcroft | 1.3 | C !DESCRIPTION: |
16 | C Calculates the horizontal Coriolis term in the meridional equation: | ||
17 | C \begin{equation*} | ||
18 | C -\overline{f}^j \overline{u}^{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 uFld :: zonal flow | ||
34 | C myThid :: thread number | ||
35 | adcroft | 1.2 | INTEGER bi,bj,K |
36 | _RL uFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy) | ||
37 | adcroft | 1.3 | INTEGER myThid |
38 | |||
39 | C !OUTPUT PARAMETERS: ================================================== | ||
40 | C vCoriolisTerm :: Coriolis term | ||
41 | adcroft | 1.2 | _RL vCoriolisTerm(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.7 | _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+1,sNy+Oly | ||
53 | DO i=1-Olx,sNx+Olx-1 | ||
54 | vCoriolisTerm(i,j) = | ||
55 | adcroft | 1.5 | & -0.5*( _fCori(i, j ,bi,bj) |
56 | adcroft | 1.4 | & *0.5*( uFld( i , j )+uFld(i+1, j ) ) |
57 | & + _fCori(i,j-1,bi,bj) | ||
58 | & *0.5*( uFld( i ,j-1)+uFld(i+1,j-1) ) ) | ||
59 | ENDDO | ||
60 | ENDDO | ||
61 | ELSE | ||
62 | C Original discretization | ||
63 | DO j=1-Oly+1,sNy+Oly | ||
64 | DO i=1-Olx,sNx+Olx-1 | ||
65 | adcroft | 1.2 | vCoriolisTerm(i,j) = |
66 | & -0.5*(_fCori(i, j ,bi,bj)+_fCori(i,j-1,bi,bj)) | ||
67 | & *0.25*( uFld(i, j )+uFld(i+1, j ) | ||
68 | & +uFld(i,j-1)+uFld(i+1,j-1) | ||
69 | & ) | ||
70 | adcroft | 1.6 | ENDDO |
71 | ENDDO | ||
72 | ENDIF | ||
73 | |||
74 | IF (useJamartWetPoints) THEN | ||
75 | C Scale term so that only "wet" points are used | ||
76 | C Due to: Jamart and Ozer, 1986, JGR 91 (C9), 10,621-10,631 | ||
77 | C "Numerical Boundary Layers and Spurious Residual Flows" | ||
78 | DO j=1-Oly+1,sNy+Oly | ||
79 | DO i=1-Olx,sNx+Olx-1 | ||
80 | vCoriolisTerm(i,j) = vCoriolisTerm(i,j) | ||
81 | & *4.d0/max(one, maskW( i , j ,k,bi,bj)+maskW(i+1, j ,k,bi,bj) | ||
82 | & +maskW( i ,j-1,k,bi,bj)+maskW(i+1,j-1,k,bi,bj) ) | ||
83 | adcroft | 1.4 | ENDDO |
84 | adcroft | 1.2 | ENDDO |
85 | adcroft | 1.4 | ENDIF |
86 | adcroft | 1.2 | |
87 | RETURN | ||
88 | END |
ViewVC Help | |
Powered by ViewVC 1.1.22 |