/[MITgcm]/MITgcm_contrib/dgoldberg/streamice_oad_files/externalDummies.F
ViewVC logotype

Annotation of /MITgcm_contrib/dgoldberg/streamice_oad_files/externalDummies.F

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


Revision 1.1 - (hide annotations) (download)
Tue Oct 14 15:41:10 2014 UTC (10 years, 9 months ago) by dgoldberg
Branch: MAIN
CVS Tags: HEAD
source files for streamice verification -- oad fixed point

1 dgoldberg 1.1 C $Header: /u/gcmpack/MITgcm/verification/halfpipe_streamice/code_oad/externalDummies.F,v 1.2 2014/09/05 21:09:25 dgoldberg Exp $
2     C $Name: $
3     C ###########################################################
4     SUBROUTINE EXCH1_RL(
5     U array,
6     I myOLw, myOLe, myOLs, myOLn, myNz,
7     I exchWidthX, exchWidthY,
8     I cornerMode, myThid )
9    
10     IMPLICIT NONE
11     #include "SIZE.h"
12     #include "EEPARAMS.h"
13     #include "EXCH.h"
14     INTEGER myOLw, myOLe, myOLs, myOLn, myNz
15     _RL array( 1-myOLw:sNx+myOLe,
16     & 1-myOLs:sNy+myOLn,
17     & myNz, nSx, nSy )
18     INTEGER exchWidthX
19     INTEGER exchWidthY
20     INTEGER cornerMode
21     INTEGER myThid
22     C dummy self dependence (nontrivial so mfef90 doesn't kill it)
23     array(1,1,1,1,1)=2*array(1,1,1,1,1)
24     end subroutine
25     C ###########################################################
26     C SUBROUTINE EXCH1_RS(
27     C U array,
28     C I myOLw, myOLe, myOLs, myOLn, myNz,
29     C I exchWidthX, exchWidthY,
30     C I cornerMode, myThid )
31     C
32     C IMPLICIT NONE
33     C#include "SIZE.h"
34     C#include "EEPARAMS.h"
35     C#include "EXCH.h"
36     C INTEGER myOLw, myOLe, myOLs, myOLn, myNz
37     C _RS array( 1-myOLw:sNx+myOLe,
38     C & 1-myOLs:sNy+myOLn,
39     C & myNz, nSx, nSy )
40     C INTEGER exchWidthX
41     C INTEGER exchWidthY
42     C INTEGER cornerMode
43     C INTEGER myThid
44     C end subroutine
45     C ###########################################################
46     C SUBROUTINE GLOBAL_MAX_R8(
47     C U maxphi,
48     C I myThid )
49     C IMPLICIT NONE
50     C#include "SIZE.h"
51     C#include "EEPARAMS.h"
52     C#include "EESUPPORT.h"
53     C#include "EXCH.h"
54     C Real*8 maxPhi
55     C INTEGER myThid
56     C maxPhi=2*maxPhi
57     C end subroutine
58     C ###########################################################
59     C SUBROUTINE GLOBAL_SUM_R8(
60     C U sumphi,
61     C I myThid )
62     C IMPLICIT NONE
63     C#include "SIZE.h"
64     C#include "EEPARAMS.h"
65     C#include "EESUPPORT.h"
66     C#include "EXCH.h"
67     C Real*8 sumPhi
68     C INTEGER myThid
69     CC dummy self dependence (nontrivial so mfef90 doesn't kill it)
70     C sumPhi=2*sumPhi
71     C end subroutine
72     C ###########################################################
73     SUBROUTINE GLOBAL_SUM_TILE_RL(
74     U phiTile,
75     U sumphi,
76     I myThid )
77     IMPLICIT NONE
78     #include "SIZE.h"
79     #include "EEPARAMS.h"
80     #include "EESUPPORT.h"
81     #include "EXCH.h"
82     _RL phiTile(nSx,nSy)
83     _RL sumPhi
84     INTEGER myThid
85     C dummy self dependence (nontrivial so mfef90 doesn't kill it)
86     sumPhi=2*phiTile(1,1)
87     end subroutine
88     C ###########################################################
89     SUBROUTINE STREAMICE_CG_SOLVE(
90     U cg_Uin, ! x-velocities
91     U cg_Vin, ! y-velocities
92     I cg_Bu, ! force in x dir
93     I cg_Bv, ! force in y dir
94     I A_uu, ! section of matrix that multiplies u and projects on u
95     I A_uv, ! section of matrix that multiplies v and projects on u
96     I A_vu, ! section of matrix that multiplies u and projects on v
97     I A_vv, ! section of matrix that multiplies v and projects on v
98     I tolerance,
99     O iters,
100     I maxiter,
101     I myThid )
102     IMPLICIT NONE
103    
104     #include "SIZE.h"
105     #include "EEPARAMS.h"
106     #include "PARAMS.h"
107     #include "STREAMICE.h"
108     #include "STREAMICE_CG.h"
109     INTEGER myThid
110     INTEGER iters
111     INTEGER maxiter
112     _RL tolerance
113     _RL cg_Uin (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
114     _RL cg_Vin (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
115     _RL cg_Bu (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
116     _RL cg_Bv (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
117     _RL
118     & A_uu (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy,-1:1,-1:1),
119     & A_vu (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy,-1:1,-1:1),
120     & A_uv (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy,-1:1,-1:1),
121     & A_vv (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy,-1:1,-1:1)
122    
123     cg_Uin(1,1,1,1) = A_uu(1,1,1,1,1,1) + A_uv(1,1,1,1,1,1) +
124     & A_vu(1,1,1,1,1,1) + A_vv(1,1,1,1,1,1) + cg_Bu(1,1,1,1)
125    
126     cg_Vin(1,1,1,1) = A_uu(1,1,1,1,1,1) + A_uv(1,1,1,1,1,1) +
127     & A_vu(1,1,1,1,1,1) + A_vv(1,1,1,1,1,1) + cg_Bv(1,1,1,1)
128    
129     end subroutine
130     C ###########################################################

  ViewVC Help
Powered by ViewVC 1.1.22