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 | C $Header: /u/u3/gcmpack/MITgcm/model/src/do_fields_blocking_exchanges.F,v 1.10.2.3 2003/10/02 18:34:58 edhill Exp $ |
2 | C $Name: $ |
3 | |
4 | #include "PACKAGES_CONFIG.h" |
5 | #include "CPP_OPTIONS.h" |
6 | |
7 | CBOP |
8 | C !ROUTINE: DO_FIELDS_BLOCKING_EXCHANGES |
9 | C !INTERFACE: |
10 | SUBROUTINE DO_FIELDS_BLOCKING_EXCHANGES(myThid) |
11 | C !DESCRIPTION: \bv |
12 | C /==========================================================\ |
13 | C | SUBROUTINE DO_FIELDS_BLOCKING_EXCHANGES | |
14 | C | o Controlling routine for exchanging edge info. | |
15 | C |==========================================================| |
16 | C | One key trick used in UV us that we over-compute and | |
17 | C | arrange our time-stepping loop so that we only need one | |
18 | C | edge exchange for the explicit code per timestep. | |
19 | C \==========================================================/ |
20 | C \ev |
21 | C !USES: |
22 | IMPLICIT NONE |
23 | C == Global variables === |
24 | #include "SIZE.h" |
25 | #include "EEPARAMS.h" |
26 | #include "PARAMS.h" |
27 | #include "DYNVARS.h" |
28 | #ifdef ALLOW_PASSIVE_TRACER |
29 | #include "TR1.h" |
30 | #endif |
31 | |
32 | C !INPUT/OUTPUT PARAMETERS: |
33 | C == Routine arguments == |
34 | C myThid - Thread number for this instance of the routine. |
35 | INTEGER myThid |
36 | CEOP |
37 | |
38 | c _EXCH_XYZ_R8( Gu , myThid ) |
39 | c _EXCH_XYZ_R8( Gv , myThid ) |
40 | c _EXCH_XYZ_R8( Gt , myThid ) |
41 | c _EXCH_XYZ_R8( Gs , myThid ) |
42 | c _EXCH_XYZ_R8( gUNm1 , myThid ) |
43 | c _EXCH_XYZ_R8( gVNm1 , myThid ) |
44 | c _EXCH_XYZ_R8( gTNm1 , myThid ) |
45 | c _EXCH_XYZ_R8( gSNm1 , myThid ) |
46 | c _EXCH_XYZ_R8( uVel , myThid ) |
47 | c _EXCH_XYZ_R8( vVel , myThid ) |
48 | CALL EXCH_UV_XYZ_RL(uVel,vVel,.TRUE.,myThid) |
49 | _EXCH_XYZ_R8( wVel , myThid ) |
50 | IF ( exactConserv .AND. implicDiv2Dflow .NE. 0. _d 0) |
51 | & _EXCH_XY_R8( etaN , myThid ) |
52 | IF ( .NOT.staggerTimeStep .OR. cAdjFreq .NE. 0. _d 0) THEN |
53 | _EXCH_XYZ_R8( theta , myThid ) |
54 | _EXCH_XYZ_R8( salt , myThid ) |
55 | ENDIF |
56 | #ifdef ALLOW_PASSIVE_TRACER |
57 | ceh3 needs an IF ( usePASSIVE_TRACER ) THEN |
58 | _EXCH_XYZ_R8( Tr1 , myThid ) |
59 | #endif |
60 | |
61 | #ifdef INCLUDE_CD_CODE |
62 | c _EXCH_XYZ_R8( guCD , myThid ) |
63 | c _EXCH_XYZ_R8( gvCD , myThid ) |
64 | _EXCH_XYZ_R8( uVelD , myThid ) |
65 | _EXCH_XYZ_R8( vVelD , myThid ) |
66 | #endif |
67 | IF ( useDynP_inEos_Zc ) |
68 | & _EXCH_XYZ_RL( totPhiHyd , myThid ) |
69 | |
70 | #ifdef ALLOW_PTRACERS |
71 | ceh3 needs an IF ( usePTRACER ) THEN |
72 | CALL PTRACERS_FIELDS_BLOCKING_EXCHANGES(myThid) |
73 | #endif /* ALLOW PTRACERS */ |
74 | |
75 | RETURN |
76 | END |
ViewVC Help | |
Powered by ViewVC 1.1.22 |