/[MITgcm]/MITgcm/pkg/ctrl/ctrl_map_ini.F
ViewVC logotype

Diff of /MITgcm/pkg/ctrl/ctrl_map_ini.F

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

revision 1.26 by heimbach, Tue Oct 30 20:19:13 2007 UTC revision 1.30 by gforget, Fri May 30 02:48:28 2008 UTC
# Line 32  c     == global variables == Line 32  c     == global variables ==
32  #include "optim.h"  #include "optim.h"
33  #ifdef ALLOW_PTRACERS  #ifdef ALLOW_PTRACERS
34  # include "PTRACERS_SIZE.h"  # include "PTRACERS_SIZE.h"
35  # include "PTRACERS.h"  c#include "PTRACERS_PARAMS.h"
36    # include "PTRACERS_FIELDS.h"
37  #endif  #endif
38  #ifdef ALLOW_ECCO  #ifdef ALLOW_ECCO
39  # include "ecco_cost.h"  # include "ecco_cost.h"
# Line 232  cph              sss(i,j,bi,bj) = sss(i, Line 233  cph              sss(i,j,bi,bj) = sss(i,
233        enddo        enddo
234  #endif  #endif
235    
236    #ifdef ALLOW_AUTODIFF
237  #ifdef ALLOW_DIFFKR_CONTROL  #ifdef ALLOW_DIFFKR_CONTROL
238  c--   diffkr.  c--   diffkr.
239        il=ilnblnk( xx_diffkr_file )        il=ilnblnk( xx_diffkr_file )
# Line 253  c--   diffkr. Line 255  c--   diffkr.
255         enddo         enddo
256        enddo        enddo
257  #endif  #endif
258    #endif
259    
260    #ifdef ALLOW_AUTODIFF
261  #ifdef ALLOW_KAPGM_CONTROL  #ifdef ALLOW_KAPGM_CONTROL
262  c--   kapgm.  c--   kapgm.
263        il=ilnblnk( xx_kapgm_file )        il=ilnblnk( xx_kapgm_file )
# Line 275  c--   kapgm. Line 279  c--   kapgm.
279         enddo         enddo
280        enddo        enddo
281  #endif  #endif
282    #endif
283    
284    #ifdef ALLOW_AUTODIFF
285    #ifdef ALLOW_KAPREDI_CONTROL
286    c--   kapredi.
287          il=ilnblnk( xx_kapredi_file )
288          write(fnamegeneric(1:80),'(2a,i10.10)')
289         &     xx_kapredi_file(1:il),'.',optimcycle
290          call active_read_xyz( fnamegeneric, tmpfld3d, 1,
291         &                      doglobalread, ladinit, optimcycle,
292         &                      mythid, xx_kapredi_dummy )
293          do bj = jtlo,jthi
294            do bi = itlo,ithi
295              do k = 1,nr
296                do j = jmin,jmax
297                  do i = imin,imax
298                    kapredi(i,j,k,bi,bj) = kapredi(i,j,k,bi,bj) +
299         &                               tmpfld3d(i,j,k,bi,bj)
300                  enddo
301                enddo
302              enddo
303           enddo
304          enddo
305    #endif
306    #endif
307    
308  #ifdef ALLOW_EFLUXY0_CONTROL  #ifdef ALLOW_EFLUXY0_CONTROL
309  c--   y-component EP-flux field.  c--   y-component EP-flux field.
# Line 352  c--   bottom drag Line 381  c--   bottom drag
381        enddo        enddo
382  #endif  #endif
383    
384  #ifdef ALLOW_EDTAUX_CONTROL  #ifdef ALLOW_EDDYPSI_CONTROL
385  c-- zonal eddy stress : edtaux  c-- zonal eddy streamfunction : eddyPsiX
386        il=ilnblnk( xx_edtaux_file )        il=ilnblnk( xx_edtaux_file )
387        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
388       &     xx_edtaux_file(1:il),'.',optimcycle       &     xx_edtaux_file(1:il),'.',optimcycle
# Line 365  c-- zonal eddy stress : edtaux Line 394  c-- zonal eddy stress : edtaux
394            do k = 1,nr            do k = 1,nr
395              do j = jmin,jmax              do j = jmin,jmax
396                do i = imin,imax                do i = imin,imax
397                  eddyTauX(i,j,k,bi,bj) = eddyTauX(i,j,k,bi,bj) +                  eddyPsiX(i,j,k,bi,bj) = eddyPsiX(i,j,k,bi,bj) +
398       &            fCori(i,j,bi,bj)*tmpfld3d(i,j,k,bi,bj)       &            tmpfld3d(i,j,k,bi,bj)
399                enddo                enddo
400              enddo              enddo
401            enddo            enddo
402         enddo         enddo
403        enddo        enddo
404  #endif  c-- meridional eddy streamfunction : eddyPsiY
   
 #ifdef ALLOW_EDTAUY_CONTROL  
 c-- meridional eddy stress : edtauy  
405        il=ilnblnk( xx_edtauy_file )        il=ilnblnk( xx_edtauy_file )
406        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
407       &     xx_edtauy_file(1:il),'.',optimcycle       &     xx_edtauy_file(1:il),'.',optimcycle
# Line 387  c-- meridional eddy stress : edtauy Line 413  c-- meridional eddy stress : edtauy
413            do k = 1,nr            do k = 1,nr
414              do j = jmin,jmax              do j = jmin,jmax
415                do i = imin,imax                do i = imin,imax
416                  eddyTauY(i,j,k,bi,bj) = eddyTauY(i,j,k,bi,bj) +                  eddyPsiY(i,j,k,bi,bj) = eddyPsiY(i,j,k,bi,bj) +
417       &            fCoriG(i,j,bi,bj)*tmpfld3d(i,j,k,bi,bj)       &            tmpfld3d(i,j,k,bi,bj)
418                enddo                enddo
419              enddo              enddo
420            enddo            enddo
# Line 534  c--   Update the tile edges. Line 560  c--   Update the tile edges.
560        _EXCH_XYZ_R8(pTracer(1-Olx,1-Oly,1,1,1,1),myThid)        _EXCH_XYZ_R8(pTracer(1-Olx,1-Oly,1,1,1,1),myThid)
561  #endif  #endif
562  #endif  #endif
563  #ifdef ALLOW_DIFFKR_CONTROL  
564    #ifdef ALLOW_AUTODIFF
565    # ifdef ALLOW_DIFFKR_CONTROL
566        _EXCH_XYZ_R8( diffkr, mythid)        _EXCH_XYZ_R8( diffkr, mythid)
567  #endif  # endif
568  #ifdef ALLOW_KAPGM_CONTROL  # ifdef ALLOW_KAPGM_CONTROL
569        _EXCH_XYZ_R8( kapgm, mythid)        _EXCH_XYZ_R8( kapgm, mythid)
570    # endif
571    # ifdef ALLOW_KAPREDI_CONTROL
572          _EXCH_XYZ_R8( kapredi, mythid)
573    # endif
574  #endif  #endif
575    
576  #ifdef ALLOW_EFLUXY0_CONTROL  #ifdef ALLOW_EFLUXY0_CONTROL
577        _EXCH_XYZ_R8( EfluxY, mythid )        _EXCH_XYZ_R8( EfluxY, mythid )
578  #endif  #endif
# Line 550  c--   Update the tile edges. Line 583  c--   Update the tile edges.
583        _EXCH_XY_R8( bottomdragfld, mythid )        _EXCH_XY_R8( bottomdragfld, mythid )
584  #endif  #endif
585    
586  #if (defined (ALLOW_EDTAUX_CONTROL) && defined (ALLOW_EDTAUY_CONTROL))  #ifdef ALLOW_EDDYPSI_CONTROL
587         CALL EXCH_UV_XYZ_RS(eddyTauX,eddyTauY,.TRUE.,myThid)         CALL EXCH_UV_XYZ_RS(eddyPsiX,eddyPsiY,.TRUE.,myThid)
 #elif (defined (ALLOW_EDTAUX_CONTROL) || defined (ALLOW_EDTAUY_CONTROL))  
        STOP 'ctrl_map_forcing: need BOTH ALLOW_EDTAU[X,Y]_CONTROL'  
588  #endif  #endif
589    
590  #ifdef ALLOW_UVEL0_CONTROL  #ifdef ALLOW_UVEL0_CONTROL

Legend:
Removed from v.1.26  
changed lines
  Added in v.1.30

  ViewVC Help
Powered by ViewVC 1.1.22