Changeset 4708 for branches/UKMO
- Timestamp:
- 2014-07-10T17:17:46+02:00 (10 years ago)
- Location:
- branches/UKMO/2014_Surge_Modelling/NEMOGCM/NEMO/OPA_SRC
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/2014_Surge_Modelling/NEMOGCM/NEMO/OPA_SRC/DIA/diawri.F90
r4570 r4708 147 147 148 148 IF( lk_vvl ) THEN 149 z3d(:,:,:) = tsn(:,:,:,jp_tem) * fse3t_n(:,:,:)149 z3d(:,:,:) = tsn(:,:,:,jp_tem) !* fse3t_n(:,:,:) 150 150 CALL iom_put( "toce" , z3d ) ! heat content 151 151 CALL iom_put( "sst" , z3d(:,:,1) ) ! sea surface heat content 152 152 z3d(:,:,1) = tsn(:,:,1,jp_tem) * z3d(:,:,1) 153 153 CALL iom_put( "sst2" , z3d(:,:,1) ) ! sea surface content of squared temperature 154 z3d(:,:,:) = tsn(:,:,:,jp_sal) * fse3t_n(:,:,:)154 z3d(:,:,:) = tsn(:,:,:,jp_sal) !* fse3t_n(:,:,:) 155 155 CALL iom_put( "soce" , z3d ) ! salinity content 156 156 CALL iom_put( "sss" , z3d(:,:,1) ) ! sea surface salinity content … … 166 166 END IF 167 167 IF( lk_vvl .AND. (.NOT. ln_dynadv_vec) ) THEN 168 CALL iom_put( "uoce" , un(:,:,:) * fse3u_n(:,:,:) ) ! i-transport169 CALL iom_put( "voce" , vn(:,:,:) * fse3v_n(:,:,:) ) ! j-transport168 CALL iom_put( "uoce" , un(:,:,:) )!* fse3u_n(:,:,:) ) ! i-transport 169 CALL iom_put( "voce" , vn(:,:,:) )!* fse3v_n(:,:,:) ) ! j-transport 170 170 ELSE 171 171 CALL iom_put( "uoce" , un ) ! i-current -
branches/UKMO/2014_Surge_Modelling/NEMOGCM/NEMO/OPA_SRC/DOM/istate.F90
r4370 r4708 203 203 INTEGER :: ji, jj, jk 204 204 REAL(wp) :: zsal = 35.50 205 #if defined key_surge 206 REAL(wp) :: ztem = 10.0 207 #endif 205 208 !!---------------------------------------------------------------------- 206 209 ! … … 209 212 IF(lwp) WRITE(numout,*) '~~~~~~~~~~ and constant salinity (',zsal,' psu)' 210 213 ! 214 #if defined key_surge 215 tsn(:,:,:,jp_tem) = ztem * tmask(:,:,:) 216 tsb(:,:,:,jp_tem) = tsn(:,:,:,jp_tem) 217 #else 211 218 DO jk = 1, jpk 212 219 tsn(:,:,jk,jp_tem) = ( ( ( 7.5 - 0. * ABS( gphit(:,:) )/30. ) * ( 1.-TANH((fsdept(:,:,jk)-80.)/30.) ) & … … 214 221 tsb(:,:,jk,jp_tem) = tsn(:,:,jk,jp_tem) 215 222 END DO 223 #endif 216 224 tsn(:,:,:,jp_sal) = zsal * tmask(:,:,:) 217 225 tsb(:,:,:,jp_sal) = tsn(:,:,:,jp_sal) -
branches/UKMO/2014_Surge_Modelling/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_core.F90
r4624 r4708 303 303 ! ocean albedo assumed to be constant + modify now Qsr to include the diurnal cycle ! Short Wave 304 304 zztmp = 1. - albo 305 #if defined key_surge 306 qsr(:,:)=0._wp 307 zqlw(:,:) = 0._wp 308 #else 305 309 IF( ln_dm2dc ) THEN ; qsr(:,:) = zztmp * sbc_dcy( sf(jp_qsr)%fnow(:,:,1) ) * tmask(:,:,1) 306 310 ELSE ; qsr(:,:) = zztmp * sf(jp_qsr)%fnow(:,:,1) * tmask(:,:,1) … … 308 312 !CDIR COLLAPSE 309 313 zqlw(:,:) = ( sf(jp_qlw)%fnow(:,:,1) - Stef * zst(:,:)*zst(:,:)*zst(:,:)*zst(:,:) ) * tmask(:,:,1) ! Long Wave 314 #endif 310 315 ! ----------------------------------------------------------------------------- ! 311 316 ! II Turbulent FLUXES ! … … 382 387 ! Turbulent fluxes over ocean 383 388 ! ----------------------------- 389 #if ! defined key_surge 384 390 IF( ln_2m .OR. ( ln_bulk2z .AND. rn_zqt /= rn_zu ) ) THEN 385 391 ! Values of temp. and hum. adjusted to height of wind must be used … … 394 400 !CDIR COLLAPSE 395 401 zqla (:,:) = Lv * zevap(:,:) ! Latent Heat 402 #endif 396 403 397 404 IF(ln_ctl) THEN … … 410 417 ! ----------------------------------------------------------------------------- ! 411 418 419 #if defined key_surge 420 emp (:,:) = 0._wp 421 qns(:,:) = 0._wp 422 #else 412 423 !CDIR COLLAPSE 413 424 emp (:,:) = ( zevap(:,:) & ! mass flux (evap. - precip.) … … 421 432 & + sf(jp_snow)%fnow(:,:,1) * rn_pfac & ! add solid precip heat content at min(Tair,Tsnow) 422 433 & * ( MIN( sf(jp_tair)%fnow(:,:,1), rt0_snow ) - rt0 ) * cpic 434 #endif 423 435 ! 424 436 CALL iom_put( "qlw_oce", zqlw ) ! output downward longwave heat over the ocean -
branches/UKMO/2014_Surge_Modelling/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90
r4624 r4708 252 252 nstop = nstop + 1 253 253 ENDIF 254 IF ( lk_surge .and. .not. ( ln_blk_core .or. ln_ana ) ) & 255 & CALL ctl_stop( ' surge model only compatible with analytical fluxes or core formulae' ) 254 256 IF(lwp) THEN 255 257 WRITE(numout,*) -
branches/UKMO/2014_Surge_Modelling/NEMOGCM/NEMO/OPA_SRC/nemogcm.F90
r4645 r4708 419 419 & CALL zdf_ddm_init ! double diffusive mixing 420 420 ! ! Lateral physics 421 #if ! defined key_surge 421 422 CALL ldf_tra_init ! Lateral ocean tracer physics 423 #endif 422 424 CALL ldf_dyn_init ! Lateral ocean momentum physics 423 425 IF( lk_ldfslp ) CALL ldf_slp_init ! slope of lateral mixing 424 426 427 #if ! defined key_surge 425 428 ! ! Active tracers 426 429 CALL tra_qsr_init ! penetrative solar radiation qsr … … 431 434 CALL tra_ldf_init ! lateral mixing 432 435 CALL tra_zdf_init ! vertical mixing and after tracer fields 436 #endif 433 437 434 438 ! ! Dynamics -
branches/UKMO/2014_Surge_Modelling/NEMOGCM/NEMO/OPA_SRC/par_oce.F90
r4205 r4708 99 99 LOGICAL, PUBLIC, PARAMETER :: lk_vopt_loop = .FALSE. !: vector optimization flag 100 100 #endif 101 #if defined key_surge 102 LOGICAL, PUBLIC, PARAMETER :: lk_surge = .TRUE. ! flag for 2d baratropic modelling 103 #else 104 LOGICAL, PUBLIC, PARAMETER :: lk_surge = .FALSE. ! flag for 2d baratropic modelling 105 #endif 101 106 102 107 !!---------------------------------------------------------------------- -
branches/UKMO/2014_Surge_Modelling/NEMOGCM/NEMO/OPA_SRC/step.F90
r4624 r4708 223 223 ! Active tracers (ua, va used as workspace) 224 224 !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 225 #if ! defined key_surge 225 226 tsa(:,:,:,:) = 0.e0 ! set tracer trends to zero 226 227 … … 257 258 CALL tra_nxt( kstp ) ! tracer fields at next time step 258 259 ENDIF 259 260 #endif 260 261 !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 261 262 ! Dynamics (tsa used as workspace)
Note: See TracChangeset
for help on using the changeset viewer.