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

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

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

revision 1.8 by heimbach, Tue Jul 26 13:10:45 2005 UTC revision 1.9 by jmc, Mon Oct 8 23:50:52 2007 UTC
# Line 1  Line 1 
1    C $Header$
2    C $Name$
3    
4  #include "AUTODIFF_OPTIONS.h"  #include "AUTODIFF_OPTIONS.h"
5    
# Line 129  c     >>>>>>>>>>>>>>>>>>>             << Line 131  c     >>>>>>>>>>>>>>>>>>>             <<
131    
132  c       Read the active variable from file.  c       Read the active variable from file.
133    
134          call mdsreadfield(          call mdsreadfield(
135       &                     active_var_file,       &                     active_var_file,
136       &                     prec,       &                     prec,
137       &                     'RL',       &                     'RL',
138       &                     mynr,             &                     mynr,
139       &                     active_var,       &                     active_var,
140       &                     irec,       &                     irec,
141       &                     mythid )       &                     mythid )
142    
143          if (lAdInit) then          if (lAdInit) then
# Line 155  c         adjoint variable's file. These Line 157  c         adjoint variable's file. These
157               enddo               enddo
158            enddo            enddo
159    
160            call mdswritefield(            call mdswritefield(
161       &                           adfname,       &                           adfname,
162       &                           prec,       &                           prec,
163       &                           globalfile,       &                           globalfile,
164       &                           'RL',       &                           'RL',
165       &                           mynr,       &                           mynr,
166       &                           active_data_t,       &                           active_data_t,
167       &                           irec,       &                           irec,
168       &                           myOptimIter,       &                           myOptimIter,
# Line 180  c     >>>>>>>>>>>>>>>>>>>             << Line 182  c     >>>>>>>>>>>>>>>>>>>             <<
182          _BEGIN_MASTER( mythid )          _BEGIN_MASTER( mythid )
183    
184          writeglobalfile = .false.          writeglobalfile = .false.
185             call mdsreadfield(             call mdsreadfield(
186       &                        active_var_file,       &                        active_var_file,
187       &                        prec,       &                        prec,
188       &                        'RL',       &                        'RL',
189       &                        mynr,       &                        mynr,
190       &                        active_data_t,       &                        active_data_t,
191       &                        irec,       &                        irec,
192       &                        mythid )       &                        mythid )
193    
194  c             Add active_var from appropriate location to data.  c             Add active_var from appropriate location to data.
# Line 195  c             Add active_var from approp Line 197  c             Add active_var from approp
197                   do k = 1,mynr                   do k = 1,mynr
198                      do j=1,sny                      do j=1,sny
199                         do i=1,snx                         do i=1,snx
200                            active_data_t(i,j,k,bi,bj) =                            active_data_t(i,j,k,bi,bj) =
201       &                         active_data_t(i,j,k,bi,bj) +       &                         active_data_t(i,j,k,bi,bj) +
202       &                         active_var(i,j,k,bi,bj)       &                         active_var(i,j,k,bi,bj)
203                         enddo                         enddo
# Line 203  c             Add active_var from approp Line 205  c             Add active_var from approp
205                   enddo                   enddo
206                enddo                enddo
207             enddo             enddo
208                  
209  c             Store the result on disk.  c             Store the result on disk.
210             call mdswritefield(             call mdswritefield(
211       &                         active_var_file,       &                         active_var_file,
212       &                         prec,       &                         prec,
213       &                         writeglobalfile,       &                         writeglobalfile,
214       &                         'RL',       &                         'RL',
215       &                         mynr,       &                         mynr,
216       &                         active_data_t,       &                         active_data_t,
217       &                         irec,       &                         irec,
218       &                         myOptimIter,       &                         myOptimIter,
219       &                         mythid )       &                         mythid )
220    
# Line 242  c     >>>>>>>>>>>>>>>>>>>             << Line 244  c     >>>>>>>>>>>>>>>>>>>             <<
244    
245  c       Read the active variable from file.  c       Read the active variable from file.
246    
247          call mdsreadfield(          call mdsreadfield(
248       &                     active_var_file,       &                     active_var_file,
249       &                     prec,       &                     prec,
250       &                     'RL',       &                     'RL',
251       &                     mynr,             &                     mynr,
252       &                     active_var,       &                     active_var,
253       &                     irec,       &                     irec,
254       &                     mythid )       &                     mythid )
255    
256          _END_MASTER( mythid )          _END_MASTER( mythid )
# Line 343  c     >>>>>>>>>>>>>>>>>>>             << Line 345  c     >>>>>>>>>>>>>>>>>>>             <<
345    
346          _BEGIN_MASTER( mythid )          _BEGIN_MASTER( mythid )
347    
348            call mdswritefield(            call mdswritefield(
349       &                        active_var_file,       &                        active_var_file,
350       &                        prec,       &                        prec,
351       &                        globalfile,       &                        globalfile,
352       &                        'RL',       &                        'RL',
353       &                        mynr,       &                        mynr,
354       &                        active_var,       &                        active_var,
355       &                        irec,       &                        irec,
356       &                        myOptimIter,       &                        myOptimIter,
357       &                        mythid )       &                        mythid )
358    
# Line 366  c     >>>>>>>>>>>>>>>>>>>             << Line 368  c     >>>>>>>>>>>>>>>>>>>             <<
368    
369          _BEGIN_MASTER( mythid )          _BEGIN_MASTER( mythid )
370    
371          call mdsreadfield(          call mdsreadfield(
372       &                           active_var_file,       &                           active_var_file,
373       &                           prec,       &                           prec,
374       &                           'RL',       &                           'RL',
375       &                            mynr,       &                            mynr,
376       &                            active_data_t,       &                            active_data_t,
377       &                            irec,       &                            irec,
378       &                            mythid )       &                            mythid )
379    
380  c             Add active_var from appropriate location to data.  c             Add active_var from appropriate location to data.
# Line 381  c             Add active_var from approp Line 383  c             Add active_var from approp
383                do k = 1, mynr                do k = 1, mynr
384                   do j=1,sny                   do j=1,sny
385                      do i=1,snx                      do i=1,snx
386                         active_var(i,j,k,bi,bj) =                         active_var(i,j,k,bi,bj) =
387       &                      active_var(i,j,k,bi,bj) +       &                      active_var(i,j,k,bi,bj) +
388       &                      active_data_t(i,j,k,bi,bj)       &                      active_data_t(i,j,k,bi,bj)
389                         active_data_t(i,j,k,bi,bj) = 0. _d 0                         active_data_t(i,j,k,bi,bj) = 0. _d 0
# Line 390  c             Add active_var from approp Line 392  c             Add active_var from approp
392                enddo                enddo
393             enddo             enddo
394          enddo          enddo
395          call mdswritefield(          call mdswritefield(
396       &                            active_var_file,       &                            active_var_file,
397       &                            prec,       &                            prec,
398       &                            globalfile,       &                            globalfile,
399       &                            'RL',       &                            'RL',
400       &                            mynr,       &                            mynr,
401       &                            active_data_t,       &                            active_data_t,
402       &                            irec,       &                            irec,
403       &                            myOptimIter,       &                            myOptimIter,
404       &                            mythid )       &                            mythid )
405    
# Line 413  c     >>>>>>>>>>>>>>>>>>>             << Line 415  c     >>>>>>>>>>>>>>>>>>>             <<
415    
416          _BEGIN_MASTER( mythid )          _BEGIN_MASTER( mythid )
417    
418            call mdswritefield(            call mdswritefield(
419       &                        active_var_file,       &                        active_var_file,
420       &                        prec,       &                        prec,
421       &                        globalfile,       &                        globalfile,
422       &                        'RL',       &                        'RL',
423       &                        mynr,       &                        mynr,
424       &                        active_var,       &                        active_var,
425       &                        irec,       &                        irec,
426       &                        myOptimIter,       &                        myOptimIter,
427       &                        mythid )       &                        mythid )
428    
# Line 603  c         adjoint variable's file. Line 605  c         adjoint variable's file.
605            bi = itile            bi = itile
606            do k = 1,mynr            do k = 1,mynr
607              call mdswritevector( adfname, prec, writeglobalfile,              call mdswritevector( adfname, prec, writeglobalfile,
608       &                           'RL', (snx+2*olx)*(sny+2*oly),       &                           'RL', (snx+2*olx)*(sny+2*oly),
609       &                           active_data_t, bi, bj,       &                           active_data_t, bi, bj,
610       &                           (irec-1)*mynr+k, myOptimIter,       &                           (irec-1)*mynr+k, myOptimIter,
611       &                           mythid )       &                           mythid )

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

  ViewVC Help
Powered by ViewVC 1.1.22