/[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.61 by dimitri, Wed Nov 28 09:26:16 2007 UTC revision 1.65 by heimbach, Sat May 3 00:07:08 2008 UTC
# Line 132  C--   dummy statement to end declaration Line 132  C--   dummy statement to end declaration
132  #endif /* ALLOW_DIAGNOSTICS */  #endif /* ALLOW_DIAGNOSTICS */
133    
134  #ifdef ALLOW_SEAICE  #ifdef ALLOW_SEAICE
 C--   Call sea ice model to compute forcing/external data fields.  In  
 C     addition to computing prognostic sea-ice variables and diagnosing the  
 C     forcing/external data fields that drive the ocean model, SEAICE_MODEL  
 C     also sets theta to the freezing point under sea-ice.  The implied  
 C     surface heat flux is then stored in variable surfaceTendencyTice,  
 C     which is needed by KPP package (kpp_calc.F and kpp_transport_t.F)  
 C     to diagnose surface buoyancy fluxes and for the non-local transport  
 C     term.  Because this call precedes model thermodynamics, temperature  
 C     under sea-ice may not be "exactly" at the freezing point by the time  
 C     theta is dumped or time-averaged.  
135        IF ( useSEAICE ) THEN        IF ( useSEAICE ) THEN
136  #ifdef ALLOW_AUTODIFF_TAMC  # ifdef ALLOW_AUTODIFF_TAMC
137    cph-adj-test(
138    CADJ STORE area,empmr,qsw,theta   = comlev1, key = ikey_dynamics
139    cph-adj-test)
140  CADJ STORE atemp,aqh,precip    = comlev1, key = ikey_dynamics  CADJ STORE atemp,aqh,precip    = comlev1, key = ikey_dynamics
141  CADJ STORE swdown,lwdown       = comlev1, key = ikey_dynamics  CADJ STORE swdown,lwdown       = comlev1, key = ikey_dynamics
142  cph# ifdef EXF_READ_EVAP  cph# ifdef EXF_READ_EVAP
143  CADJ STORE evap                = comlev1, key = ikey_dynamics  CADJ STORE evap                = comlev1, key = ikey_dynamics
144  cph# endif  cph# endif
145  CADJ STORE uvel,vvel           = comlev1, key = ikey_dynamics  CADJ STORE uvel,vvel           = comlev1, key = ikey_dynamics
146  # ifdef SEAICE_ALLOW_EVP  #  ifdef SEAICE_ALLOW_DYNAMICS
147    CADJ STORE uice                = comlev1, key = ikey_dynamics
148    CADJ STORE vice                = comlev1, key = ikey_dynamics
149    #   ifdef SEAICE_ALLOW_EVP
150  CADJ STORE seaice_sigma1       = comlev1, key = ikey_dynamics  CADJ STORE seaice_sigma1       = comlev1, key = ikey_dynamics
151  CADJ STORE seaice_sigma2       = comlev1, key = ikey_dynamics  CADJ STORE seaice_sigma2       = comlev1, key = ikey_dynamics
152  CADJ STORE seaice_sigma12      = comlev1, key = ikey_dynamics  CADJ STORE seaice_sigma12      = comlev1, key = ikey_dynamics
153  # endif  #   endif
154  # ifdef SEAICE_SALINITY  #  endif
155    #  ifdef SEAICE_SALINITY
156  CADJ STORE salt                = comlev1, key = ikey_dynamics  CADJ STORE salt                = comlev1, key = ikey_dynamics
157  # endif  #  endif
158  # ifdef ATMOSPHERIC_LOADING  #  ifdef ATMOSPHERIC_LOADING
159    CADJ STORE pload               = comlev1, key = ikey_dynamics
160  CADJ STORE siceload            = comlev1, key = ikey_dynamics  CADJ STORE siceload            = comlev1, key = ikey_dynamics
161  # endif  #  endif
162  # ifdef NONLIN_FRSURF  #  ifdef NONLIN_FRSURF
163  CADJ STORE recip_hfacc         = comlev1, key = ikey_dynamics  CADJ STORE recip_hfacc         = comlev1, key = ikey_dynamics
164    #  endif
165  # endif  # endif
166  #endif  # ifdef ALLOW_DEBUG
 #ifdef ALLOW_DEBUG  
167          IF ( debugLevel .GE. debLevB )          IF ( debugLevel .GE. debLevB )
168       &    CALL DEBUG_CALL('SEAICE_MODEL',myThid)       &    CALL DEBUG_CALL('SEAICE_MODEL',myThid)
169  #endif  # endif
170          CALL TIMER_START('SEAICE_MODEL    [DO_OCEANIC_PHYS]', myThid)          CALL TIMER_START('SEAICE_MODEL    [DO_OCEANIC_PHYS]', myThid)
171          CALL SEAICE_MODEL( myTime, myIter, myThid )          CALL SEAICE_MODEL( myTime, myIter, myThid )
172          CALL TIMER_STOP ('SEAICE_MODEL    [DO_OCEANIC_PHYS]', myThid)          CALL TIMER_STOP ('SEAICE_MODEL    [DO_OCEANIC_PHYS]', myThid)
173  #ifdef ALLOW_COST  # ifdef ALLOW_COST
174          CALL SEAICE_COST_SENSI ( myTime, myIter, myThid )          CALL SEAICE_COST_SENSI ( myTime, myIter, myThid )
175  #endif  # endif
176        ENDIF        ENDIF
177  #endif /* ALLOW_SEAICE */  #endif /* ALLOW_SEAICE */
178    
179    #ifdef ALLOW_AUTODIFF_TAMC
180    CADJ STORE sst, sss           = comlev1, key = ikey_dynamics
181    CADJ STORE qsw                = comlev1, key = ikey_dynamics
182    # ifdef ALLOW_SEAICE
183    CADJ STORE area               = comlev1, key = ikey_dynamics
184    # endif
185    #endif
186    
187  #if (defined ALLOW_THSICE) && !(defined ALLOW_ATM2D)  #if (defined ALLOW_THSICE) && !(defined ALLOW_ATM2D)
188        IF ( useThSIce .AND. fluidIsWater ) THEN        IF ( useThSIce .AND. fluidIsWater ) THEN
189  #ifdef ALLOW_DEBUG  #ifdef ALLOW_DEBUG

Legend:
Removed from v.1.61  
changed lines
  Added in v.1.65

  ViewVC Help
Powered by ViewVC 1.1.22