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

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

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


Revision 1.6 - (show annotations) (download)
Fri Aug 6 18:41:03 2010 UTC (13 years, 9 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint63p, checkpoint63q, checkpoint63l, checkpoint63m, checkpoint63n, checkpoint63o, checkpoint63h, checkpoint63i, checkpoint63j, checkpoint63k, checkpoint63d, checkpoint63e, checkpoint63f, checkpoint63g, checkpoint63a, checkpoint63b, checkpoint63c, checkpoint63, checkpoint62k, checkpoint62j, checkpoint62o, checkpoint62n, checkpoint62m, checkpoint62l, checkpoint62s, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint62w, checkpoint62v, checkpoint62u, checkpoint62t, checkpoint62z, checkpoint62y, checkpoint62x
Changes since 1.5: +33 -1 lines
Adding scalar version.

1 C $Header: /u/gcmpack/MITgcm/pkg/autodiff/adzero_adj.F,v 1.5 2010/02/15 20:03:56 gforget Exp $
2 C $Name: $
3
4 #include "CPP_OPTIONS.h"
5
6 C !ROUTINE: ADZERO_ADJ_1D
7 C !INTERFACE:
8 SUBROUTINE ADZERO_ADJ_1D(
9 I NrIn, adFieldFwd, myThid)
10 C !DESCRIPTION: \bv
11 C *==========================================================*
12 C | o zero out a 1D adjoint field
13 C | author: Gael Forget
14 C *==========================================================*
15
16 IMPLICIT NONE
17
18 C == Global arguments ==
19 #include "SIZE.h"
20 #include "EEPARAMS.h"
21 #include "PARAMS.h"
22
23 C == Routine arguments ==
24 C myThid - Thread number for this instance of the routine.
25 integer NrIn,myThid
26 _RL adFieldFwd(NrIn)
27
28 C == Local arguments ==
29 integer bi,bj,i,j,k
30
31 DO k=1,NrIn
32 adFieldFwd(k) = 0. _d 0
33 ENDDO
34
35 end
36
37
38 C !ROUTINE: ADZERO_ADJ_LOC
39 C !INTERFACE:
40 SUBROUTINE ADZERO_ADJ_LOC(
41 I NrIn, adFieldFwd, myThid)
42 C !DESCRIPTION: \bv
43 C *==========================================================*
44 C | o zero out a local (no nsx,nsy dims.) adjoint field
45 C | author: Gael Forget
46 C *==========================================================*
47
48 IMPLICIT NONE
49
50 C == Global arguments ==
51 #include "SIZE.h"
52 #include "EEPARAMS.h"
53 #include "PARAMS.h"
54
55 C == Routine arguments ==
56 C myThid - Thread number for this instance of the routine.
57 integer NrIn,myThid
58 _RL adFieldFwd(1-Olx:sNx+Olx,1-Oly:sNy+Oly,NrIn)
59
60 C == Local arguments ==
61 integer bi,bj,i,j,k
62
63 DO k=1,NrIn
64 DO j=1-Oly,sNy+Oly
65 DO i=1-Olx,sNx+Olx
66 adFieldFwd(i,j,k) = 0. _d 0
67 ENDDO
68 ENDDO
69 ENDDO
70
71 end
72
73
74 C !ROUTINE: ADZERO_ADJ
75 C !INTERFACE:
76 SUBROUTINE ADZERO_ADJ(
77 I NrIn, adFieldFwd, myThid)
78 C !DESCRIPTION: \bv
79 C *==========================================================*
80 C | o zero out a full (incl. nsx,nsy dims.) adjoint field
81 C | author: Gael Forget
82 C *==========================================================*
83
84 IMPLICIT NONE
85
86 C == Global arguments ==
87 #include "SIZE.h"
88 #include "EEPARAMS.h"
89 #include "PARAMS.h"
90
91 C == Routine arguments ==
92 C myThid - Thread number for this instance of the routine.
93 integer NrIn,myThid
94 _RL adFieldFwd(1-Olx:sNx+Olx,1-Oly:sNy+Oly,NrIn,nSx,nSy)
95
96 C == Local arguments ==
97 integer bi,bj,i,j,k
98
99 DO bj=myByLo(myThid),myByHi(myThid)
100 DO bi=myBxLo(myThid),myBxHi(myThid)
101 DO k=1,NrIn
102 DO j=1-Oly,sNy+Oly
103 DO i=1-Olx,sNx+Olx
104 adFieldFwd(i,j,k,bi,bj) = 0. _d 0
105 ENDDO
106 ENDDO
107 ENDDO
108 ENDDO
109 ENDDO
110
111 end
112

  ViewVC Help
Powered by ViewVC 1.1.22