Changeset 14644 for NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/SBC/sbcmod.F90
- Timestamp:
- 2021-03-26T15:33:49+01:00 (3 years ago)
- Location:
- NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final
- Property svn:externals
-
old new 9 9 10 10 # SETTE 11 ^/utils/CI/sette _wave@13990sette11 ^/utils/CI/sette@14244 sette
-
- Property svn:externals
-
NEMO/branches/2020/dev_r14116_HPC-04_mcastril_Mixed_Precision_implementation_final/src/OCE/SBC/sbcmod.F90
r14219 r14644 121 121 IF(lwm) WRITE( numond, namsbc ) 122 122 ! 123 #if defined key_mpp_mpi123 #if ! defined key_mpi_off 124 124 ncom_fsbc = nn_fsbc ! make nn_fsbc available for lib_mpp 125 125 #endif … … 164 164 ! !** check option consistency 165 165 ! 166 IF(lwp) WRITE(numout,*) !* Single / Multi - executable (NEMO / O PA+SAS)166 IF(lwp) WRITE(numout,*) !* Single / Multi - executable (NEMO / OCE+SAS) 167 167 SELECT CASE( nn_components ) 168 168 CASE( jp_iam_nemo ) 169 IF(lwp) WRITE(numout,*) ' ==>>> NEMO configured as a single executable (i.e. including both O PAand Surface module)'170 CASE( jp_iam_o pa)171 IF(lwp) WRITE(numout,*) ' ==>>> Multi executable configuration. Here, O PAcomponent'172 IF( .NOT.lk_oasis ) CALL ctl_stop( 'sbc_init : O PA-SAS coupled via OASIS, but key_oasis3 disabled' )173 IF( ln_cpl ) CALL ctl_stop( 'sbc_init : O PA-SAS coupled via OASIS, but ln_cpl = T in OPA' )174 IF( ln_mixcpl ) CALL ctl_stop( 'sbc_init : O PA-SAS coupled via OASIS, but ln_mixcpl = T in OPA' )169 IF(lwp) WRITE(numout,*) ' ==>>> NEMO configured as a single executable (i.e. including both OCE and Surface module)' 170 CASE( jp_iam_oce ) 171 IF(lwp) WRITE(numout,*) ' ==>>> Multi executable configuration. Here, OCE component' 172 IF( .NOT.lk_oasis ) CALL ctl_stop( 'sbc_init : OCE-SAS coupled via OASIS, but key_oasis3 disabled' ) 173 IF( ln_cpl ) CALL ctl_stop( 'sbc_init : OCE-SAS coupled via OASIS, but ln_cpl = T in OCE' ) 174 IF( ln_mixcpl ) CALL ctl_stop( 'sbc_init : OCE-SAS coupled via OASIS, but ln_mixcpl = T in OCE' ) 175 175 CASE( jp_iam_sas ) 176 176 IF(lwp) WRITE(numout,*) ' ==>>> Multi executable configuration. Here, SAS component' 177 IF( .NOT.lk_oasis ) CALL ctl_stop( 'sbc_init : O PA-SAS coupled via OASIS, but key_oasis3 disabled' )178 IF( ln_mixcpl ) CALL ctl_stop( 'sbc_init : O PA-SAS coupled via OASIS, but ln_mixcpl = T in OPA' )177 IF( .NOT.lk_oasis ) CALL ctl_stop( 'sbc_init : OCE-SAS coupled via OASIS, but key_oasis3 disabled' ) 178 IF( ln_mixcpl ) CALL ctl_stop( 'sbc_init : OCE-SAS coupled via OASIS, but ln_mixcpl = T in OCE' ) 179 179 CASE DEFAULT 180 180 CALL ctl_stop( 'sbc_init : unsupported value for nn_components' ) … … 225 225 ! 226 226 IF( nn_ice == 0 ) THEN !* No sea-ice in the domain : ice fraction is always zero 227 IF( nn_components /= jp_iam_o pa ) fr_i(:,:) = 0._wp ! except for OPA in SAS-OPAcoupled case227 IF( nn_components /= jp_iam_oce ) fr_i(:,:) = 0._wp ! except for OCE in SAS-OCE coupled case 228 228 ENDIF 229 229 ! … … 238 238 IF( ln_dm2dc ) THEN !* daily mean to diurnal cycle 239 239 !LB:nday_qsr = -1 ! allow initialization at the 1st call 240 IF( .NOT.( ln_flx .OR. ln_blk .OR. ln_abl ) .AND. nn_components /= jp_iam_o pa) &240 IF( .NOT.( ln_flx .OR. ln_blk .OR. ln_abl ) .AND. nn_components /= jp_iam_oce ) & 241 241 & CALL ctl_stop( 'qsr diurnal cycle from daily values requires flux, bulk or abl formulation' ) 242 242 ENDIF … … 245 245 ! 246 246 ll_purecpl = ln_cpl .AND. .NOT.ln_mixcpl 247 ll_opa = nn_components == jp_iam_o pa247 ll_opa = nn_components == jp_iam_oce 248 248 ll_not_nemo = nn_components /= jp_iam_nemo 249 249 icpt = 0 … … 267 267 CASE( jp_purecpl ) ; WRITE(numout,*) ' ==>>> pure coupled formulation' 268 268 !!gm abusive use of jp_none ?? ===>>> need to be check and changed by adding a jp_sas parameter 269 CASE( jp_none ) ; WRITE(numout,*) ' ==>>> O PAcoupled to SAS via oasis'269 CASE( jp_none ) ; WRITE(numout,*) ' ==>>> OCE coupled to SAS via oasis' 270 270 IF( ln_mixcpl ) WRITE(numout,*) ' + forced-coupled mixed formulation' 271 271 END SELECT … … 277 277 IF( lk_oasis ) CALL sbc_cpl_init( nn_ice ) ! Must be done before: (1) first time step 278 278 ! ! (2) the use of nn_fsbc 279 ! nn_fsbc initialization if O PA-SAS coupling via OASIS279 ! nn_fsbc initialization if OCE-SAS coupling via OASIS 280 280 ! SAS time-step has to be declared in OASIS (mandatory) -> nn_fsbc has to be modified accordingly 281 281 IF( nn_components /= jp_iam_nemo ) THEN 282 IF( nn_components == jp_iam_o pa) nn_fsbc = cpl_freq('O_SFLX') / NINT(rn_Dt)282 IF( nn_components == jp_iam_oce ) nn_fsbc = cpl_freq('O_SFLX') / NINT(rn_Dt) 283 283 IF( nn_components == jp_iam_sas ) nn_fsbc = cpl_freq('I_SFLX') / NINT(rn_Dt) 284 284 ! 285 285 IF(lwp)THEN 286 286 WRITE(numout,*) 287 WRITE(numout,*)" O PA-SAS coupled via OASIS : nn_fsbc re-defined from OASIS namcouple ", nn_fsbc287 WRITE(numout,*)" OCE-SAS coupled via OASIS : nn_fsbc re-defined from OASIS namcouple ", nn_fsbc 288 288 WRITE(numout,*) 289 289 ENDIF … … 405 405 ! 406 406 ll_sas = nn_components == jp_iam_sas ! component flags 407 ll_opa = nn_components == jp_iam_o pa407 ll_opa = nn_components == jp_iam_oce 408 408 ! 409 409 IF( .NOT.ll_sas ) CALL sbc_ssm ( kt, Kbb, Kmm ) ! mean ocean sea surface variables (sst_m, sss_m, ssu_m, ssv_m) … … 417 417 CASE( jp_flx ) ; CALL sbc_flx ( kt ) ! flux formulation 418 418 CASE( jp_blk ) 419 IF( ll_sas ) CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice, Kbb, Kmm ) ! O PA-SAS coupling: SAS receiving fields from OPA419 IF( ll_sas ) CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice, Kbb, Kmm ) ! OCE-SAS coupling: SAS receiving fields from OCE 420 420 !!!!!!!!!!! ATTENTION:ln_wave is not only used for oasis coupling !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 421 421 IF( ln_wave ) THEN 422 IF ( lk_oasis ) CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice, Kbb, Kmm ) ! O PA-wave coupling422 IF ( lk_oasis ) CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice, Kbb, Kmm ) ! OCE-wave coupling 423 423 CALL sbc_wave ( kt, Kmm ) 424 424 ENDIF … … 426 426 ! 427 427 CASE( jp_abl ) 428 IF( ll_sas ) CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice, Kbb, Kmm ) ! O PA-SAS coupling: SAS receiving fields from OPA428 IF( ll_sas ) CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice, Kbb, Kmm ) ! OCE-SAS coupling: SAS receiving fields from OCE 429 429 CALL sbc_abl ( kt ) ! ABL formulation for the ocean 430 430 ! 431 431 CASE( jp_purecpl ) ; CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice, Kbb, Kmm ) ! pure coupled formulation 432 432 CASE( jp_none ) 433 IF( ll_opa ) CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice, Kbb, Kmm ) ! O PA-SAS coupling: OPAreceiving fields from SAS433 IF( ll_opa ) CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice, Kbb, Kmm ) ! OCE-SAS coupling: OCE receiving fields from SAS 434 434 END SELECT 435 435 !
Note: See TracChangeset
for help on using the changeset viewer.