/[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.7 by utke, Sat Feb 23 04:18:51 2013 UTC
# Line 1  Line 1 
1  cccC ###########################################################  #include "CPP_EEOPTIONS.h"
 ccc      subroutine active_read_xy_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      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  
2  C ###########################################################  C ###########################################################
3        SUBROUTINE EXCH_UV_XY_RS(        SUBROUTINE EXCH1_RL(
4       U                       Uphi, Vphi,       U                 array,
5       I                       withSigns, myThid )       I                 myOLw, myOLe, myOLs, myOLn, myNz,
6        IMPLICIT NONE       I                 exchWidthX, exchWidthY,
7  #include "SIZE.h"       I                 cornerMode, myThid )
 #include "EEPARAMS.h"  
 #include "EESUPPORT.h"  
 #include "EXCH.h"  
8    
       _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 )  
9        IMPLICIT NONE        IMPLICIT NONE
10  #include "SIZE.h"  #include "SIZE.h"
11  #include "EEPARAMS.h"  #include "EEPARAMS.h"
 #include "EESUPPORT.h"  
12  #include "EXCH.h"  #include "EXCH.h"
13        _RL Uphi(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)        INTEGER myOLw, myOLe, myOLs, myOLn, myNz
14        _RL Vphi(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)        _RL     array( 1-myOLw:sNx+myOLe,
15        _RL temp       &               1-myOLs:sNy+myOLn,
16        LOGICAL withSigns       &               myNz, nSx, nSy )
17        INTEGER myThid        INTEGER exchWidthX
18        temp=Uphi(1,1,1,1,1)        INTEGER exchWidthY
19        Uphi(1,1,1,1,1)=Vphi(1,1,1,1,1)        INTEGER cornerMode
20        Vphi(1,1,1,1,1)=temp        INTEGER myThid
21        end subroutine  C dummy self dependence (nontrivial so mfef90 doesn't kill it)
22          array(1,1,1,1,1)=2*array(1,1,1,1,1)
23          end subroutine
24    C ###########################################################
25    C      SUBROUTINE EXCH1_RS(
26    C     U                 array,
27    C     I                 myOLw, myOLe, myOLs, myOLn, myNz,
28    C     I                 exchWidthX, exchWidthY,
29    C     I                 cornerMode, myThid )
30    C
31    C      IMPLICIT NONE
32    C#include "SIZE.h"
33    C#include "EEPARAMS.h"
34    C#include "EXCH.h"
35    C      INTEGER myOLw, myOLe, myOLs, myOLn, myNz
36    C      _RS     array( 1-myOLw:sNx+myOLe,
37    C     &               1-myOLs:sNy+myOLn,
38    C     &               myNz, nSx, nSy )
39    C      INTEGER exchWidthX
40    C      INTEGER exchWidthY
41    C      INTEGER cornerMode
42    C      INTEGER myThid
43    C      end subroutine
44    C ###########################################################
45    C      SUBROUTINE GLOBAL_MAX_R8(
46    C     U                       maxphi,
47    C     I                       myThid )
48    C      IMPLICIT NONE
49    C#include "SIZE.h"
50    C#include "EEPARAMS.h"
51    C#include "EESUPPORT.h"
52    C#include "EXCH.h"
53    C      Real*8 maxPhi
54    C      INTEGER myThid
55    C      maxPhi=2*maxPhi
56    C      end subroutine
57  C ###########################################################  C ###########################################################
58        SUBROUTINE EXCH_UV_XYZ_RS(        SUBROUTINE GLOBAL_SUM_R8(
59       U                       Uphi, Vphi,       U                       sumphi,
      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  
 C ###########################################################  
       SUBROUTINE EXCH_XYZ_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,Nr,nSx,nSy)  
       INTEGER myThid  
       phi(1,1,1,1,1)=2*phi(1,1,1,1,1)  
       end subroutine  
 C ###########################################################  
       SUBROUTINE GLOBAL_MAX_R8(  
      U                       maxphi,  
60       I                       myThid )       I                       myThid )
61        IMPLICIT NONE        IMPLICIT NONE
62  #include "SIZE.h"  #include "SIZE.h"
63  #include "EEPARAMS.h"  #include "EEPARAMS.h"
64  #include "EESUPPORT.h"  #include "EESUPPORT.h"
65  #include "EXCH.h"  #include "EXCH.h"
66        Real*8 maxPhi        Real*8 sumPhi
67        INTEGER myThid        INTEGER myThid
68        maxPhi=2*maxPhi  C dummy self dependence (nontrivial so mfef90 doesn't kill it)
69          sumPhi=2*sumPhi
70        end subroutine        end subroutine
71  C ###########################################################  C ###########################################################
72        SUBROUTINE GLOBAL_SUM_R8(        SUBROUTINE CG2D(
73       U                       sumphi,       I                cg2d_b,
74       I                       myThid )       U                cg2d_x,
75         O                firstResidual,
76         O                minResidualSq,
77         O                lastResidual,
78         U                numIters,
79         O                nIterMin,
80         I                myThid )
81        IMPLICIT NONE        IMPLICIT NONE
82  #include "SIZE.h"  #include "SIZE.h"
83  #include "EEPARAMS.h"  #include "EEPARAMS.h"
84  #include "EESUPPORT.h"  #include "PARAMS.h"
85  #include "EXCH.h"  #include "CG2D.h"
86        Real*8 sumPhi        Real*8  cg2d_b(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
87          Real*8  cg2d_x(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
88          Real*8  firstResidual
89          Real*8  minResidualSq
90          Real*8  lastResidual
91          INTEGER numIters
92          INTEGER nIterMin
93        INTEGER myThid        INTEGER myThid
94        sumPhi=2*sumPhi  C dummy self dependence (nontrivial so mfef90 doesn't kill it)
95          cg2d_x(1,1,1,1)=2*cg2d_b(1,1,1,1)
96        end subroutine        end subroutine
 C ###########################################################  

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

  ViewVC Help
Powered by ViewVC 1.1.22