- Timestamp:
- 2019-07-17T15:05:13+02:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/SBC/sbcmod.F90
r10499 r11275 15 15 !! 3.6 ! 2014-11 (P. Mathiot, C. Harris) add ice shelves melting 16 16 !! 4.0 ! 2016-06 (L. Brodeau) new general bulk formulation 17 !! 4.0 ! 2019-03 (F. Lemarié & G. Samson) add ABL compatibility (ln_abl=TRUE) 17 18 !!---------------------------------------------------------------------- 18 19 … … 32 33 USE sbcflx ! surface boundary condition: flux formulation 33 34 USE sbcblk ! surface boundary condition: bulk formulation 35 USE sbcabl ! atmospheric boundary layer 34 36 USE sbcice_if ! surface boundary condition: ice-if sea-ice model 35 37 #if defined key_si3 … … 92 94 !! 93 95 NAMELIST/namsbc/ nn_fsbc , & 94 & ln_usr , ln_flx , ln_blk ,&96 & ln_usr , ln_flx , ln_blk , ln_abl, & 95 97 & ln_cpl , ln_mixcpl, nn_components, & 96 98 & nn_ice , ln_ice_embd, & 97 99 & ln_traqsr, ln_dm2dc , & 98 100 & ln_rnf , nn_fwb , ln_ssr , ln_isf , ln_apr_dyn , & 99 & ln_wave , ln_cdgw , ln_sdw , ln_tauwoc , ln_stcor 101 & ln_wave , ln_cdgw , ln_sdw , ln_tauwoc , ln_stcor , & 100 102 & ln_tauw , nn_lsm, nn_sdrift 101 103 !!---------------------------------------------------------------------- … … 137 139 WRITE(numout,*) ' flux formulation ln_flx = ', ln_flx 138 140 WRITE(numout,*) ' bulk formulation ln_blk = ', ln_blk 141 WRITE(numout,*) ' ABL formulation ln_abl = ', ln_abl 139 142 WRITE(numout,*) ' Type of coupling (Ocean/Ice/Atmosphere) : ' 140 143 WRITE(numout,*) ' ocean-atmosphere coupled formulation ln_cpl = ', ln_cpl … … 225 228 CASE( 1 ) !- Ice-cover climatology ("Ice-if" model) 226 229 CASE( 2 ) !- SI3 ice model 230 IF( .NOT.( ln_blk .OR. ln_cpl .OR. ln_abl ) ) & 231 & CALL ctl_stop( 'sbc_init : SI3 sea-ice model requires ln_blk or ln_cpl or ln_abl = T' ) 227 232 CASE( 3 ) !- CICE ice model 228 IF( .NOT.( ln_blk .OR. ln_cpl ) ) CALL ctl_stop( 'sbc_init : CICE sea-ice model requires ln_blk or ln_cpl = T' ) 229 IF( lk_agrif ) CALL ctl_stop( 'sbc_init : CICE sea-ice model not currently available with AGRIF' ) 233 IF( .NOT.( ln_blk .OR. ln_cpl .OR. ln_abl ) ) & 234 & CALL ctl_stop( 'sbc_init : CICE sea-ice model requires ln_blk or ln_cpl or ln_abl = T' ) 235 IF( lk_agrif ) & 236 & CALL ctl_stop( 'sbc_init : CICE sea-ice model not currently available with AGRIF' ) 230 237 CASE DEFAULT !- not supported 231 238 END SELECT … … 270 277 IF( ln_flx ) THEN ; nsbc = jp_flx ; icpt = icpt + 1 ; ENDIF ! flux formulation 271 278 IF( ln_blk ) THEN ; nsbc = jp_blk ; icpt = icpt + 1 ; ENDIF ! bulk formulation 279 IF( ln_abl ) THEN ; nsbc = jp_abl ; icpt = icpt + 1 ; ENDIF ! ABL formulation 272 280 IF( ll_purecpl ) THEN ; nsbc = jp_purecpl ; icpt = icpt + 1 ; ENDIF ! Pure Coupled formulation 273 281 IF( ll_opa ) THEN ; nsbc = jp_none ; icpt = icpt + 1 ; ENDIF ! opa coupling via SAS module … … 281 289 CASE( jp_flx ) ; WRITE(numout,*) ' ==>>> flux formulation' 282 290 CASE( jp_blk ) ; WRITE(numout,*) ' ==>>> bulk formulation' 291 CASE( jp_abl ) ; WRITE(numout,*) ' ==>>> ABL formulation' 283 292 CASE( jp_purecpl ) ; WRITE(numout,*) ' ==>>> pure coupled formulation' 284 293 !!gm abusive use of jp_none ?? ===>>> need to be check and changed by adding a jp_sas parameter … … 327 336 IF( ln_blk ) CALL sbc_blk_init ! bulk formulae initialization 328 337 338 IF( ln_abl ) CALL sbc_abl_init ! Atmospheric Boundary Layer (ABL) 339 329 340 IF( ln_ssr ) CALL sbc_ssr_init ! Sea-Surface Restoring initialization 330 341 ! … … 355 366 CALL iom_set_rstw_var_active('sfx_b') 356 367 ENDIF 357 368 ! 358 369 END SUBROUTINE sbc_init 359 370 … … 424 435 IF( ll_sas ) CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice ) ! OPA-SAS coupling: SAS receiving fields from OPA 425 436 CALL sbc_blk ( kt ) ! bulk formulation for the ocean 437 ! 438 CASE( jp_abl ) 439 IF( ll_sas ) CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice ) ! OPA-SAS coupling: SAS receiving fields from OPA 440 CALL sbc_abl ( kt ) ! ABL formulation for the ocean 426 441 ! 427 442 CASE( jp_purecpl ) ; CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice ) ! pure coupled formulation … … 498 513 CALL iom_get( numror, jpdom_autoglo, 'utau_b', utau_b, ldxios = lrxios ) ! before i-stress (U-point) 499 514 CALL iom_get( numror, jpdom_autoglo, 'vtau_b', vtau_b, ldxios = lrxios ) ! before j-stress (V-point) 500 CALL iom_get( numror, jpdom_autoglo, 'qns_b' , qns_b, ldxios = lrxios) ! before non solar heat flux (T-point)515 CALL iom_get( numror, jpdom_autoglo, 'qns_b', qns_b, ldxios = lrxios ) ! before non solar heat flux (T-point) 501 516 ! The 3D heat content due to qsr forcing is treated in traqsr 502 517 ! CALL iom_get( numror, jpdom_autoglo, 'qsr_b' , qsr_b, ldxios = lrxios ) ! before solar heat flux (T-point)
Note: See TracChangeset
for help on using the changeset viewer.