/[MITgcm]/MITgcm/model/src/do_oceanic_phys.F
ViewVC logotype

Diff of /MITgcm/model/src/do_oceanic_phys.F

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

revision 1.9 by mlosch, Thu Sep 16 09:35:11 2004 UTC revision 1.10 by heimbach, Fri Sep 17 23:02:00 2004 UTC
# Line 36  C     == Global variables === Line 36  C     == Global variables ===
36  #include "DYNVARS.h"  #include "DYNVARS.h"
37  #include "GRID.h"  #include "GRID.h"
38  c #include "GAD.h"  c #include "GAD.h"
 c #ifdef ALLOW_PASSIVE_TRACER  
 c #include "TR1.h"  
 c #endif  
39  c #ifdef ALLOW_PTRACERS  c #ifdef ALLOW_PTRACERS
40  c #include "PTRACERS_SIZE.h"  c #include "PTRACERS_SIZE.h"
41  c #include "PTRACERS.h"  c #include "PTRACERS.h"
# Line 61  c #endif Line 58  c #endif
58  # ifdef ALLOW_EBM  # ifdef ALLOW_EBM
59  #  include "EBM.h"  #  include "EBM.h"
60  # endif  # endif
61    # ifdef EXACT_CONSERV
62    #  include "SURFACE.h"
63    # endif
64  #endif /* ALLOW_AUTODIFF_TAMC */  #endif /* ALLOW_AUTODIFF_TAMC */
65    
66  C     !INPUT/OUTPUT PARAMETERS:  C     !INPUT/OUTPUT PARAMETERS:
# Line 230  CADJ STORE theta(:,:,:,bi,bj) = comlev1_ Line 230  CADJ STORE theta(:,:,:,bi,bj) = comlev1_
230  CADJ STORE salt (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte  CADJ STORE salt (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte
231  CADJ STORE totphihyd  CADJ STORE totphihyd
232  CADJ &     = comlev1_bibj, key=itdkey, byte=isbyte  CADJ &     = comlev1_bibj, key=itdkey, byte=isbyte
233  #ifdef ALLOW_KPP  # ifdef ALLOW_KPP
234  CADJ STORE uvel (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte  CADJ STORE uvel (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte
235  CADJ STORE vvel (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte  CADJ STORE vvel (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte
236  #endif  # endif
237    # ifdef EXACT_CONSERV
238    CADJ STORE pmepr(:,:,bi,bj)   = comlev1_bibj, key=itdkey, byte=isbyte
239    # endif
240  #endif /* ALLOW_AUTODIFF_TAMC */  #endif /* ALLOW_AUTODIFF_TAMC */
241    
242  #ifdef ALLOW_DEBUG  #ifdef ALLOW_DEBUG
# Line 293  CADJ STORE salt (:,:,k-1,bi,bj) = comlev Line 296  CADJ STORE salt (:,:,k-1,bi,bj) = comlev
296            ENDIF            ENDIF
297    
298  #ifdef ALLOW_AUTODIFF_TAMC  #ifdef ALLOW_AUTODIFF_TAMC
299    # ifndef GM_EXCLUDE_CLIPPING
300  CADJ STORE rhok   (:,:) = comlev1_bibj_k ,       key=kkey, byte=isbyte  CADJ STORE rhok   (:,:) = comlev1_bibj_k ,       key=kkey, byte=isbyte
301    # endif
302  CADJ STORE rhokm1 (:,:) = comlev1_bibj_k ,       key=kkey, byte=isbyte  CADJ STORE rhokm1 (:,:) = comlev1_bibj_k ,       key=kkey, byte=isbyte
303  #endif /* ALLOW_AUTODIFF_TAMC */  #endif /* ALLOW_AUTODIFF_TAMC */
304  C--       Implicit Vertical Diffusion for Convection  C--       Implicit Vertical Diffusion for Convection
# Line 320  C--     end of diagnostic k loop (Nr:1) Line 325  C--     end of diagnostic k loop (Nr:1)
325          ENDIF          ENDIF
326  #endif  #endif
327    
 #ifdef ALLOW_AUTODIFF_TAMC  
 cph avoids recomputation of integrate_for_w  
 CADJ STORE wvel (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte  
 #endif /* ALLOW_AUTODIFF_TAMC */  
   
328  #ifdef  ALLOW_OBCS  #ifdef  ALLOW_OBCS
329  C--     Calculate future values on open boundaries  C--     Calculate future values on open boundaries
330          IF (useOBCS) THEN          IF (useOBCS) THEN
# Line 373  CADJ &     = comlev1_bibj, key=itdkey, b Line 373  CADJ &     = comlev1_bibj, key=itdkey, b
373  #ifdef  ALLOW_GMREDI  #ifdef  ALLOW_GMREDI
374    
375  #ifdef ALLOW_AUTODIFF_TAMC  #ifdef ALLOW_AUTODIFF_TAMC
376    # ifndef GM_EXCLUDE_CLIPPING
377  cph storing here is needed only for one GMREDI_OPTIONS:  cph storing here is needed only for one GMREDI_OPTIONS:
378  cph define GM_BOLUS_ADVEC  cph define GM_BOLUS_ADVEC
379    cph keep it although TAF says you dont need to.
380  cph but I've avoided the #ifdef for now, in case more things change  cph but I've avoided the #ifdef for now, in case more things change
381  CADJ STORE sigmaX(:,:,:)        = comlev1_bibj, key=itdkey, byte=isbyte  CADJ STORE sigmaX(:,:,:)        = comlev1_bibj, key=itdkey, byte=isbyte
382  CADJ STORE sigmaY(:,:,:)        = comlev1_bibj, key=itdkey, byte=isbyte  CADJ STORE sigmaY(:,:,:)        = comlev1_bibj, key=itdkey, byte=isbyte
383  CADJ STORE sigmaR(:,:,:)        = comlev1_bibj, key=itdkey, byte=isbyte  cnewCADJ STORE sigmaR(:,:,:)        = comlev1_bibj, key=itdkey, byte=isbyte
384    # endif
385  #endif /* ALLOW_AUTODIFF_TAMC */  #endif /* ALLOW_AUTODIFF_TAMC */
386    
387  C--     Calculate iso-neutral slopes for the GM/Redi parameterisation  C--     Calculate iso-neutral slopes for the GM/Redi parameterisation
# Line 400  C--     Calculate iso-neutral slopes for Line 403  C--     Calculate iso-neutral slopes for
403  #endif /* ALLOW_AUTODIFF_TAMC */  #endif /* ALLOW_AUTODIFF_TAMC */
404          ENDIF          ENDIF
405    
 #ifdef ALLOW_AUTODIFF_TAMC  
 CADJ STORE Kwx(:,:,:,bi,bj)   = comlev1_bibj, key=itdkey, byte=isbyte  
 CADJ STORE Kwy(:,:,:,bi,bj)   = comlev1_bibj, key=itdkey, byte=isbyte  
 CADJ STORE Kwz(:,:,:,bi,bj)   = comlev1_bibj, key=itdkey, byte=isbyte  
 #endif /* ALLOW_AUTODIFF_TAMC */  
   
406  #endif  /* ALLOW_GMREDI */  #endif  /* ALLOW_GMREDI */
407    
408  #ifdef  ALLOW_KPP  #ifdef  ALLOW_KPP
# Line 424  C--     Compute KPP mixing coefficients Line 421  C--     Compute KPP mixing coefficients
421  #endif /* ALLOW_AUTODIFF_TAMC */  #endif /* ALLOW_AUTODIFF_TAMC */
422          ENDIF          ENDIF
423    
 #ifdef ALLOW_AUTODIFF_TAMC  
 CADJ STORE KPPghat   (:,:,:,bi,bj)  
 CADJ &   , KPPfrac   (:,:  ,bi,bj)  
 CADJ &                 = comlev1_bibj, key=itdkey, byte=isbyte  
 #endif /* ALLOW_AUTODIFF_TAMC */  
   
424  #endif  /* ALLOW_KPP */  #endif  /* ALLOW_KPP */
425    
426  #ifdef  ALLOW_PP81  #ifdef  ALLOW_PP81
# Line 468  C--     Compute GGL90 mixing coefficient Line 459  C--     Compute GGL90 mixing coefficient
459          ENDIF          ENDIF
460  #endif /* ALLOW_GGL90 */  #endif /* ALLOW_GGL90 */
461    
 #ifdef ALLOW_AUTODIFF_TAMC  
 CADJ STORE theta(:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte  
 CADJ STORE salt (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte  
 CADJ STORE uvel (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte  
 CADJ STORE vvel (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte  
 #ifdef ALLOW_PASSIVE_TRACER  
 CADJ STORE tr1  (:,:,:,bi,bj) = comlev1_bibj, key=itdkey, byte=isbyte  
 #endif  
 #ifdef ALLOW_PTRACERS  
 cph-- moved to forward_step to avoid key computation  
 cphCADJ STORE ptracer(:,:,:,bi,bj,itracer) = comlev1_bibj,  
 cphCADJ &                              key=itdkey, byte=isbyte  
 #endif  
 #endif /* ALLOW_AUTODIFF_TAMC */  
   
462  C--   end bi,bj loops.  C--   end bi,bj loops.
463         ENDDO         ENDDO
464        ENDDO        ENDDO

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

  ViewVC Help
Powered by ViewVC 1.1.22