/[MITgcm]/MITgcm_contrib/heimbach/OpenAD/code_regress/externalDummies.F
ViewVC logotype

Diff of /MITgcm_contrib/heimbach/OpenAD/code_regress/externalDummies.F

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

revision 1.1 by utke, Tue Nov 20 15:20:57 2007 UTC revision 1.8 by utke, Fri Nov 8 17:55:05 2013 UTC
# Line 1  Line 1 
1  cccC ###########################################################  C $Header$
2  ccc      subroutine active_read_xy_loc(  C $Name$
 ccc     I                           active_var_file,  
 ccc     O                           active_var,  
 ccc     I                           irec,  
 ccc     I                           doglobalread,  
 ccc     I                           lAdInit,  
 ccc     I                           myOptimIter,  
 ccc     I                           mythid  
 ccc     I                         , dummy  
 ccc     &                         )  
 ccc      implicit none  
 ccc#include "EEPARAMS.h"  
 ccc#include "SIZE.h"  
 ccc      character*(*) active_var_file  
 ccc      _RL     active_var(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)  
 ccc      integer irec  
 ccc      integer myOptimIter  
 ccc      integer mythid  
 ccc      logical doglobalread  
 ccc      logical lAdInit  
 ccc      _RL     dummy (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)  
 ccc      dummy(1,1,1,1)=active_var(1,1,1,1)  
 ccc      end subroutine  
 cccC ###########################################################  
 ccc      subroutine active_read_xyz_loc(  
 ccc     I                            active_var_file,  
 ccc     O                            active_var,  
 ccc     I                            irec,  
 ccc     I                            doglobalread,  
 ccc     I                            lAdInit,  
 ccc     I                            myOptimIter,  
 ccc     I                            mythid  
 ccc     I                         , dummy  
 ccc     &                           )  
 ccc#include "EEPARAMS.h"  
 ccc#include "SIZE.h"  
 ccc      character*(*) active_var_file  
 ccc      _RL active_var(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)  
 ccc      integer irec  
 ccc      integer myOptimIter  
 ccc      integer mythid  
 ccc      logical doglobalread  
 ccc      logical lAdInit  
 ccc      _RL     dummy(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)  
 ccc      dummy(1,1,1,1,1)=active_var(1,1,1,1,1)  
 ccc      end subroutine  
 cccC ###########################################################  
 ccc      subroutine active_read_xyz(  
 ccc     I                            active_var_file,  
 ccc     O                            active_var,  
 ccc     I                            irec,  
 ccc     I                            doglobalread,  
 ccc     I                            lAdInit,  
 ccc     I                            myOptimIter,  
 ccc     I                            mythid  
 ccc     I                         , dummy  
 ccc     &                           )  
 ccc      implicit none  
 ccc#include "EEPARAMS.h"  
 ccc#include "SIZE.h"  
 ccc      character*(*) active_var_file  
 ccc      _RL active_var(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)  
 ccc      integer irec  
 ccc      integer myOptimIter  
 ccc      integer mythid  
 ccc      logical doglobalread  
 ccc      logical lAdInit  
 ccc      _RL     dummy(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)  
 ccc      dummy(1,1,1,1,1)=active_var(1,1,1,1,1)  
 ccc      end subroutine  
 cccC ###########################################################  
 ccc      SUBROUTINE EXCH_UV_AGRID_XY_RS( component1,  
 ccc     +                                component2,  
 ccc     +                                withSigns,  
 ccc     +                                myThid )  
 ccc      implicit none  
 ccc#include "SIZE.h"  
 ccc#include "EEPARAMS.h"  
 ccc#include "EESUPPORT.h"  
 ccc#include "EXCH.h"  
 ccc      _RS component1(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)  
 ccc      _RS component2(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)  
 ccc      LOGICAL withSigns  
 ccc      INTEGER myThid  
 ccc      component1(1,1,1,1)=component2(1,1,1,1)  
 ccc      component2(1,1,1,1)=component1(1,1,1,1)  
 ccc      end subroutine  
 C ###########################################################  
       SUBROUTINE EXCH_UV_XY_RS(  
      U                       Uphi, Vphi,  
      I                       withSigns, myThid )  
       IMPLICIT NONE  
 #include "SIZE.h"  
 #include "EEPARAMS.h"  
 #include "EESUPPORT.h"  
 #include "EXCH.h"  
   
       _RS Uphi(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)  
       _RS Vphi(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)  
       _RS temp  
       LOGICAL withSigns  
       INTEGER myThid  
       temp=Uphi(1,1,1,1)  
       Uphi(1,1,1,1)=Vphi(1,1,1,1)  
       Vphi(1,1,1,1)=temp  
       end subroutine  
 C ###########################################################  
       SUBROUTINE EXCH_UV_XYZ_RL(  
      U                       Uphi, Vphi,  
      I                       withSigns, myThid )  
       IMPLICIT NONE  
 #include "SIZE.h"  
 #include "EEPARAMS.h"  
 #include "EESUPPORT.h"  
 #include "EXCH.h"  
       _RL Uphi(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)  
       _RL Vphi(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)  
       _RL temp  
       LOGICAL withSigns  
       INTEGER myThid  
       temp=Uphi(1,1,1,1,1)  
       Uphi(1,1,1,1,1)=Vphi(1,1,1,1,1)  
       Vphi(1,1,1,1,1)=temp  
       end subroutine  
 C ###########################################################  
       SUBROUTINE EXCH_UV_XYZ_RS(  
      U                       Uphi, Vphi,  
      I                       withSigns, myThid )  
       IMPLICIT NONE  
 #include "SIZE.h"  
 #include "EEPARAMS.h"  
 #include "EESUPPORT.h"  
 #include "EXCH.h"  
       _RS Uphi(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)  
       _RS Vphi(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)  
       _RL temp  
       LOGICAL withSigns  
       INTEGER myThid  
       temp=Uphi(1,1,1,1,1)  
       Uphi(1,1,1,1,1)=Vphi(1,1,1,1,1)  
       Vphi(1,1,1,1,1)=temp  
       end subroutine  
 C ###########################################################  
       SUBROUTINE EXCH_XY_RL(  
      U                       phi,  
      I                       myThid )  
       IMPLICIT NONE  
 #include "SIZE.h"  
 #include "EEPARAMS.h"  
 #include "EESUPPORT.h"  
 #include "EXCH.h"  
       _RL phi(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)  
       INTEGER myThid  
       phi(1,1,1,1)=2*phi(1,1,1,1)  
       end subroutine  
3  C ###########################################################  C ###########################################################
4        SUBROUTINE EXCH_XYZ_RL(        SUBROUTINE EXCH1_RL(
5       U                       phi,       U                 array,
6       I                       myThid )       I                 myOLw, myOLe, myOLs, myOLn, myNz,
7         I                 exchWidthX, exchWidthY,
8         I                 cornerMode, myThid )
9    
10        IMPLICIT NONE        IMPLICIT NONE
11  #include "SIZE.h"  #include "SIZE.h"
12  #include "EEPARAMS.h"  #include "EEPARAMS.h"
 #include "EESUPPORT.h"  
13  #include "EXCH.h"  #include "EXCH.h"
14        _RL phi(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)        INTEGER myOLw, myOLe, myOLs, myOLn, myNz
15        INTEGER myThid        _RL     array( 1-myOLw:sNx+myOLe,
16        phi(1,1,1,1,1)=2*phi(1,1,1,1,1)       &               1-myOLs:sNy+myOLn,
17        end subroutine       &               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 ###########################################################  C ###########################################################
73        SUBROUTINE GLOBAL_MAX_R8(        SUBROUTINE GLOBAL_SUM_TILE_RL(
74       U                       maxphi,       U                       phiTile,
75         U                       sumphi,
76       I                       myThid )       I                       myThid )
77        IMPLICIT NONE        IMPLICIT NONE
78  #include "SIZE.h"  #include "SIZE.h"
79  #include "EEPARAMS.h"  #include "EEPARAMS.h"
80  #include "EESUPPORT.h"  #include "EESUPPORT.h"
81  #include "EXCH.h"  #include "EXCH.h"
82        Real*8 maxPhi        _RL phiTile(nSx,nSy)
83          _RL sumPhi
84        INTEGER myThid        INTEGER myThid
85        maxPhi=2*maxPhi  C dummy self dependence (nontrivial so mfef90 doesn't kill it)
86          sumPhi=2*phiTile(1,1)
87        end subroutine        end subroutine
88  C ###########################################################  C ###########################################################
89        SUBROUTINE GLOBAL_SUM_R8(        SUBROUTINE CG2D(
90       U                       sumphi,       I                cg2d_b,
91       I                       myThid )       U                cg2d_x,
92         O                firstResidual,
93         O                minResidualSq,
94         O                lastResidual,
95         U                numIters,
96         O                nIterMin,
97         I                myThid )
98        IMPLICIT NONE        IMPLICIT NONE
99  #include "SIZE.h"  #include "SIZE.h"
100  #include "EEPARAMS.h"  #include "EEPARAMS.h"
101  #include "EESUPPORT.h"  #include "PARAMS.h"
102  #include "EXCH.h"  #include "CG2D.h"
103        Real*8 sumPhi        Real*8  cg2d_b(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
104          Real*8  cg2d_x(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
105          Real*8  firstResidual
106          Real*8  minResidualSq
107          Real*8  lastResidual
108          INTEGER numIters
109          INTEGER nIterMin
110        INTEGER myThid        INTEGER myThid
111        sumPhi=2*sumPhi  C dummy self dependence (nontrivial so mfef90 doesn't kill it)
112          cg2d_x(1,1,1,1)=2*cg2d_b(1,1,1,1)
113        end subroutine        end subroutine
 C ###########################################################  

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.8

  ViewVC Help
Powered by ViewVC 1.1.22