/[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.28 by gforget, Sat Feb 2 02:34:49 2008 UTC revision 1.31 by utke, Tue Nov 18 16:47:15 2008 UTC
# Line 233  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 246  c--   diffkr. Line 247  c--   diffkr.
247            do k = 1,nr            do k = 1,nr
248              do j = jmin,jmax              do j = jmin,jmax
249                do i = imin,imax                do i = imin,imax
250    #ifdef ALLOW_AUTODIFF_OPENAD
251                    diffkr(i,j,k,bi,bj) = diffkr(i,j,k,bi,bj) +
252         &                                xx_diffkr(i,j,k,bi,bj) +
253         &                                tmpfld3d(i,j,k,bi,bj)
254    #else
255                  diffkr(i,j,k,bi,bj) = diffkr(i,j,k,bi,bj) +                  diffkr(i,j,k,bi,bj) = diffkr(i,j,k,bi,bj) +
256       &                                tmpfld3d(i,j,k,bi,bj)       &                                tmpfld3d(i,j,k,bi,bj)
257    #endif
258                enddo                enddo
259              enddo              enddo
260            enddo            enddo
261         enddo         enddo
262        enddo        enddo
263  #endif  #endif
264    #endif
265    
266    #ifdef ALLOW_AUTODIFF
267  #ifdef ALLOW_KAPGM_CONTROL  #ifdef ALLOW_KAPGM_CONTROL
268  c--   kapgm.  c--   kapgm.
269        il=ilnblnk( xx_kapgm_file )        il=ilnblnk( xx_kapgm_file )
# Line 268  c--   kapgm. Line 277  c--   kapgm.
277            do k = 1,nr            do k = 1,nr
278              do j = jmin,jmax              do j = jmin,jmax
279                do i = imin,imax                do i = imin,imax
280    #ifdef ALLOW_AUTODIFF_OPENAD
281                  kapgm(i,j,k,bi,bj) = kapgm(i,j,k,bi,bj) +                  kapgm(i,j,k,bi,bj) = kapgm(i,j,k,bi,bj) +
282         &                               xx_kapgm(i,j,k,bi,bj) +
283       &                               tmpfld3d(i,j,k,bi,bj)       &                               tmpfld3d(i,j,k,bi,bj)
284    #else
285                    kapgm(i,j,k,bi,bj) = kapgm(i,j,k,bi,bj) +
286         &                               tmpfld3d(i,j,k,bi,bj)
287    #endif
288                enddo                enddo
289              enddo              enddo
290            enddo            enddo
291         enddo         enddo
292        enddo        enddo
293  #endif  #endif
294    #endif
295    
296    #ifdef ALLOW_AUTODIFF
297  #ifdef ALLOW_KAPREDI_CONTROL  #ifdef ALLOW_KAPREDI_CONTROL
298  c--   kapredi.  c--   kapredi.
299        il=ilnblnk( xx_kapredi_file )        il=ilnblnk( xx_kapredi_file )
# Line 298  c--   kapredi. Line 315  c--   kapredi.
315         enddo         enddo
316        enddo        enddo
317  #endif  #endif
318    #endif
319    
320  #ifdef ALLOW_EFLUXY0_CONTROL  #ifdef ALLOW_EFLUXY0_CONTROL
321  c--   y-component EP-flux field.  c--   y-component EP-flux field.
# Line 375  c--   bottom drag Line 393  c--   bottom drag
393        enddo        enddo
394  #endif  #endif
395    
396  #ifdef ALLOW_EDTAUX_CONTROL  #ifdef ALLOW_EDDYPSI_CONTROL
397  c-- zonal eddy stress : edtaux  c-- zonal eddy streamfunction : eddyPsiX
398        il=ilnblnk( xx_edtaux_file )        il=ilnblnk( xx_edtaux_file )
399        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
400       &     xx_edtaux_file(1:il),'.',optimcycle       &     xx_edtaux_file(1:il),'.',optimcycle
# Line 388  c-- zonal eddy stress : edtaux Line 406  c-- zonal eddy stress : edtaux
406            do k = 1,nr            do k = 1,nr
407              do j = jmin,jmax              do j = jmin,jmax
408                do i = imin,imax                do i = imin,imax
409                  eddyTauX(i,j,k,bi,bj) = eddyTauX(i,j,k,bi,bj) +                  eddyPsiX(i,j,k,bi,bj) = eddyPsiX(i,j,k,bi,bj) +
410       &            fCori(i,j,bi,bj)*tmpfld3d(i,j,k,bi,bj)       &            tmpfld3d(i,j,k,bi,bj)
411                enddo                enddo
412              enddo              enddo
413            enddo            enddo
414         enddo         enddo
415        enddo        enddo
416  #endif  c-- meridional eddy streamfunction : eddyPsiY
   
 #ifdef ALLOW_EDTAUY_CONTROL  
 c-- meridional eddy stress : edtauy  
417        il=ilnblnk( xx_edtauy_file )        il=ilnblnk( xx_edtauy_file )
418        write(fnamegeneric(1:80),'(2a,i10.10)')        write(fnamegeneric(1:80),'(2a,i10.10)')
419       &     xx_edtauy_file(1:il),'.',optimcycle       &     xx_edtauy_file(1:il),'.',optimcycle
# Line 410  c-- meridional eddy stress : edtauy Line 425  c-- meridional eddy stress : edtauy
425            do k = 1,nr            do k = 1,nr
426              do j = jmin,jmax              do j = jmin,jmax
427                do i = imin,imax                do i = imin,imax
428                  eddyTauY(i,j,k,bi,bj) = eddyTauY(i,j,k,bi,bj) +                  eddyPsiY(i,j,k,bi,bj) = eddyPsiY(i,j,k,bi,bj) +
429       &            fCoriG(i,j,bi,bj)*tmpfld3d(i,j,k,bi,bj)       &            tmpfld3d(i,j,k,bi,bj)
430                enddo                enddo
431              enddo              enddo
432            enddo            enddo
# Line 557  c--   Update the tile edges. Line 572  c--   Update the tile edges.
572        _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)
573  #endif  #endif
574  #endif  #endif
575  #ifdef ALLOW_DIFFKR_CONTROL  
576    #ifdef ALLOW_AUTODIFF
577    # ifdef ALLOW_DIFFKR_CONTROL
578        _EXCH_XYZ_R8( diffkr, mythid)        _EXCH_XYZ_R8( diffkr, mythid)
579  #endif  # endif
580  #ifdef ALLOW_KAPGM_CONTROL  # ifdef ALLOW_KAPGM_CONTROL
581        _EXCH_XYZ_R8( kapgm, mythid)        _EXCH_XYZ_R8( kapgm, mythid)
582  #endif  # endif
583  #ifdef ALLOW_KAPREDI_CONTROL  # ifdef ALLOW_KAPREDI_CONTROL
584        _EXCH_XYZ_R8( kapredi, mythid)        _EXCH_XYZ_R8( kapredi, mythid)
585    # endif
586  #endif  #endif
587    
588  #ifdef ALLOW_EFLUXY0_CONTROL  #ifdef ALLOW_EFLUXY0_CONTROL
589        _EXCH_XYZ_R8( EfluxY, mythid )        _EXCH_XYZ_R8( EfluxY, mythid )
590  #endif  #endif
# Line 576  c--   Update the tile edges. Line 595  c--   Update the tile edges.
595        _EXCH_XY_R8( bottomdragfld, mythid )        _EXCH_XY_R8( bottomdragfld, mythid )
596  #endif  #endif
597    
598  #if (defined (ALLOW_EDTAUX_CONTROL) && defined (ALLOW_EDTAUY_CONTROL))  #ifdef ALLOW_EDDYPSI_CONTROL
599         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'  
600  #endif  #endif
601    
602  #ifdef ALLOW_UVEL0_CONTROL  #ifdef ALLOW_UVEL0_CONTROL

Legend:
Removed from v.1.28  
changed lines
  Added in v.1.31

  ViewVC Help
Powered by ViewVC 1.1.22