/[MITgcm]/MITgcm/pkg/autodiff/adzero_adj.F
ViewVC logotype

Diff of /MITgcm/pkg/autodiff/adzero_adj.F

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

revision 1.6 by gforget, Fri Aug 6 18:41:03 2010 UTC revision 1.7 by jmc, Sun Aug 12 18:46:20 2012 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2  C $Name$  C $Name$
3    
4  #include "CPP_OPTIONS.h"  #include "CPP_EEOPTIONS.h"
5    
6    C--  File zero_adj.F:
7    C--   Contents
8    C--   o ADZERO_ADJ_1D
9    C--   o ADZERO_ADJ_LOC
10    C--   o ADZERO_ADJ
11    
12    C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
13    CBOP
14  C     !ROUTINE: ADZERO_ADJ_1D  C     !ROUTINE: ADZERO_ADJ_1D
15  C     !INTERFACE:  C     !INTERFACE:
16        SUBROUTINE ADZERO_ADJ_1D(        SUBROUTINE ADZERO_ADJ_1D(
17       I             NrIn, adFieldFwd, myThid)       I                  NrIn, adFieldFwd, myThid )
18  C     !DESCRIPTION: \bv  C     !DESCRIPTION: \bv
19  C     *==========================================================*  C     *==========================================================*
20  C     | o zero out a 1D adjoint field  C     | o zero out a 1D adjoint field
21  C     | author: Gael Forget  C     | author: Gael Forget
22  C     *==========================================================*  C     *==========================================================*
23    C     \ev
24    
25    C     !USES:
26        IMPLICIT NONE        IMPLICIT NONE
27    C     === Global variables ===
 C     == Global arguments ==  
28  #include "SIZE.h"  #include "SIZE.h"
29  #include "EEPARAMS.h"  #include "EEPARAMS.h"
 #include "PARAMS.h"  
30    
31  C     == Routine arguments ==  C     !INPUT/OUTPUT PARAMETERS:
32  C     myThid - Thread number for this instance of the routine.  C     myThid :: my Thread Id number
33        integer NrIn,myThid        INTEGER NrIn, myThid
34        _RL adFieldFwd(NrIn)        _RL adFieldFwd(NrIn)
35    
36  C     == Local arguments ==  C     !LOCAL VARIABLES:
37        integer bi,bj,i,j,k        INTEGER k
38    CEOP
39    
40        DO k=1,NrIn        DO k=1,NrIn
41           adFieldFwd(k) = 0. _d 0           adFieldFwd(k) = 0. _d 0
42        ENDDO        ENDDO
43    
44        end        RETURN
45          END
46    
47    C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
48    CBOP
49  C     !ROUTINE: ADZERO_ADJ_LOC  C     !ROUTINE: ADZERO_ADJ_LOC
50  C     !INTERFACE:  C     !INTERFACE:
51        SUBROUTINE ADZERO_ADJ_LOC(        SUBROUTINE ADZERO_ADJ_LOC(
52       I             NrIn, adFieldFwd, myThid)       I                  NrIn, adFieldFwd, myThid )
53  C     !DESCRIPTION: \bv  C     !DESCRIPTION: \bv
54  C     *==========================================================*  C     *==========================================================*
55  C     | o zero out a local (no nsx,nsy dims.) adjoint field  C     | o zero out a local (no nsx,nsy dims.) adjoint field
56  C     | author: Gael Forget  C     | author: Gael Forget
57  C     *==========================================================*  C     *==========================================================*
58    C     \ev
59    
60    C     !USES:
61        IMPLICIT NONE        IMPLICIT NONE
62    C     === Global variables ===
 C     == Global arguments ==  
63  #include "SIZE.h"  #include "SIZE.h"
64  #include "EEPARAMS.h"  #include "EEPARAMS.h"
 #include "PARAMS.h"  
   
 C     == Routine arguments ==  
 C     myThid - Thread number for this instance of the routine.  
       integer NrIn,myThid  
       _RL adFieldFwd(1-Olx:sNx+Olx,1-Oly:sNy+Oly,NrIn)  
65    
66  C     == Local arguments ==  C     !INPUT/OUTPUT PARAMETERS:
67        integer bi,bj,i,j,k  C     myThid :: my Thread Id number
68          INTEGER NrIn, myThid
69          _RL adFieldFwd(1-OLx:sNx+OLx,1-OLy:sNy+OLy,NrIn)
70    
71    C     !LOCAL VARIABLES:
72          INTEGER i,j,k
73    CEOP
74    
75        DO k=1,NrIn        DO k=1,NrIn
76         DO j=1-Oly,sNy+Oly         DO j=1-OLy,sNy+OLy
77          DO i=1-Olx,sNx+Olx          DO i=1-OLx,sNx+OLx
78           adFieldFwd(i,j,k) = 0. _d 0           adFieldFwd(i,j,k) = 0. _d 0
79          ENDDO          ENDDO
80         ENDDO         ENDDO
81        ENDDO        ENDDO
82    
83        end        RETURN
84          END
85    
86    C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
87    CBOP
88  C     !ROUTINE: ADZERO_ADJ  C     !ROUTINE: ADZERO_ADJ
89  C     !INTERFACE:  C     !INTERFACE:
90        SUBROUTINE ADZERO_ADJ(        SUBROUTINE ADZERO_ADJ(
91       I             NrIn, adFieldFwd, myThid)       I                  NrIn, adFieldFwd, myThid )
92  C     !DESCRIPTION: \bv  C     !DESCRIPTION: \bv
93  C     *==========================================================*  C     *==========================================================*
94  C     | o zero out a full (incl. nsx,nsy dims.) adjoint field  C     | o zero out a full (incl. nsx,nsy dims.) adjoint field
95  C     | author: Gael Forget  C     | author: Gael Forget
96  C     *==========================================================*  C     *==========================================================*
97    C     \ev
98    
99    C     !USES:
100        IMPLICIT NONE        IMPLICIT NONE
101    C     === Global variables ===
 C     == Global arguments ==  
102  #include "SIZE.h"  #include "SIZE.h"
103  #include "EEPARAMS.h"  #include "EEPARAMS.h"
 #include "PARAMS.h"  
104    
105  C     == Routine arguments ==  C     !INPUT/OUTPUT PARAMETERS:
106  C     myThid - Thread number for this instance of the routine.  C     myThid :: my Thread Id number
107        integer NrIn,myThid        INTEGER NrIn, myThid
108        _RL adFieldFwd(1-Olx:sNx+Olx,1-Oly:sNy+Oly,NrIn,nSx,nSy)        _RL adFieldFwd(1-OLx:sNx+OLx,1-OLy:sNy+OLy,NrIn,nSx,nSy)
109    
110  C     == Local arguments ==  C     !LOCAL VARIABLES:
111        integer bi,bj,i,j,k        INTEGER bi,bj
112          INTEGER i,j,k
113    CEOP
114    
115        DO bj=myByLo(myThid),myByHi(myThid)        DO bj=myByLo(myThid),myByHi(myThid)
116         DO bi=myBxLo(myThid),myBxHi(myThid)         DO bi=myBxLo(myThid),myBxHi(myThid)
117          DO k=1,NrIn          DO k=1,NrIn
118           DO j=1-Oly,sNy+Oly           DO j=1-OLy,sNy+OLy
119            DO i=1-Olx,sNx+Olx            DO i=1-OLx,sNx+OLx
120             adFieldFwd(i,j,k,bi,bj) = 0. _d 0             adFieldFwd(i,j,k,bi,bj) = 0. _d 0
121            ENDDO            ENDDO
122           ENDDO           ENDDO
# Line 108  C     == Local arguments == Line 124  C     == Local arguments ==
124         ENDDO         ENDDO
125        ENDDO        ENDDO
126    
127        end        RETURN
128          END

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

  ViewVC Help
Powered by ViewVC 1.1.22