- Timestamp:
- 2012-10-04T18:31:06+02:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2012/dev_r3385_NOCS04_HAMF/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90
r3402 r3488 12 12 !! - ! 2010-10 (J. Chanut, C. Bricaud, G. Madec) add the surface pressure forcing 13 13 !! 3.4 ! 2011-11 (C. Harris) CICE added as an option 14 !! 3.5 ! 2012-11 (A. Coward, G. Madec) Rethink of heat, mass and salt surface fluxes 14 15 !!---------------------------------------------------------------------- 15 16 … … 162 163 IF( nn_ice == 4 .AND. ( .NOT. ( cp_cfg == 'orca' ) .OR. lk_agrif ) ) & 163 164 & CALL ctl_stop( 'CICE sea-ice model currently only available in a global ORCA configuration without AGRIF' ) 165 IF( nn_ice == 3 .AND. nn_ice_embd == 0 ) & 166 & CALL ctl_stop( 'LIM3 sea-ice model requires nn_ice_embd = 2 or 3' ) 164 167 165 168 IF( ln_dm2dc ) nday_qsr = -1 ! initialisation flag … … 222 225 !! ** Action : - set the ocean surface boundary condition at before and now 223 226 !! time step, i.e. 224 !! utau_b, vtau_b, qns_b, qsr_b, emp_n, emps_b, qrp_b, erp_b225 !! utau , vtau , qns , qsr , emp , sfx 227 !! utau_b, vtau_b, qns_b, qsr_b, emp_n, sfx_b, qrp_b, erp_b 228 !! utau , vtau , qns , qsr , emp , sfx , qrp , erp 226 229 !! - updte the ice fraction : fr_i 227 230 !!---------------------------------------------------------------------- … … 239 242 ! The 3D heat content due to qsr forcing is treated in traqsr 240 243 ! qsr_b (:,:) = qsr (:,:) 241 emp_b (:,:) = emp(:,:)242 emps_b(:,:) = sfx(:,:)244 emp_b(:,:) = emp(:,:) 245 sfx_b(:,:) = sfx(:,:) 243 246 ENDIF 244 247 ! ! ---------------------------------------- ! … … 308 311 CALL iom_get( numror, jpdom_autoglo, 'qns_b' , qns_b ) ! before non solar heat flux (T-point) 309 312 ! The 3D heat content due to qsr forcing is treated in traqsr 310 ! CALL iom_get( numror, jpdom_autoglo, 'qsr_b' , qsr_b ) ! before solar heat flux (T-point) 311 CALL iom_get( numror, jpdom_autoglo, 'emp_b' , emp_b ) ! before freshwater flux (T-point) 312 CALL iom_get( numror, jpdom_autoglo, 'emps_b', emps_b ) ! before C/D freshwater flux (T-point) 313 ! CALL iom_get( numror, jpdom_autoglo, 'qsr_b' , qsr_b ) ! before solar heat flux (T-point) 314 CALL iom_get( numror, jpdom_autoglo, 'emp_b', emp_b ) ! before freshwater flux (T-point) 315 ! To ensure restart capability with 3.3x/3.4 restart files !! to be removed in v3.6 316 IF( iom_varid( numror, 'sfx_b', ldstop = .FALSE. ) > 0 ) THEN 317 CALL iom_get( numror, jpdom_autoglo, 'sfx_b', sfx_b ) ! before salt flux (T-point) 318 ELSE 319 sfx_b (:,:) = sfx(:,:) 320 ENDIF 313 321 ELSE !* no restart: set from nit000 values 314 322 IF(lwp) WRITE(numout,*) ' nit000-1 surface forcing fields set to nit000' … … 316 324 vtau_b(:,:) = vtau(:,:) 317 325 qns_b (:,:) = qns (:,:) 318 ! qsr_b (:,:) = qsr (:,:) 319 emp_b (:,:) = emp (:,:) 320 emps_b(:,:) = sfx(:,:) 326 emp_b (:,:) = emp(:,:) 327 sfx_b (:,:) = sfx(:,:) 321 328 ENDIF 322 329 ENDIF … … 334 341 ! CALL iom_rstput( kt, nitrst, numrow, 'qsr_b' , qsr ) 335 342 CALL iom_rstput( kt, nitrst, numrow, 'emp_b' , emp ) 336 CALL iom_rstput( kt, nitrst, numrow, ' emps_b' , sfx )343 CALL iom_rstput( kt, nitrst, numrow, 'sfx_b' , sfx ) 337 344 ENDIF 338 345 … … 342 349 IF( MOD( kt-1, nn_fsbc ) == 0 ) THEN 343 350 CALL iom_put( "empmr" , emp - rnf ) ! upward water flux 344 CALL iom_put( "empsmr", sfx - rnf ) ! c/d water flux 351 CALL iom_put( "saltflx", sfx ) ! downward salt flux 352 ! (includes virtual salt flux beneath ice 353 ! in linear free surface case) 345 354 CALL iom_put( "qt" , qns + qsr ) ! total heat flux 346 355 CALL iom_put( "qns" , qns ) ! solar heat flux
Note: See TracChangeset
for help on using the changeset viewer.