- Timestamp:
- 2019-10-28T17:10:34+01:00 (5 years ago)
- Location:
- NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/src/OCE/SBC
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/src/OCE/SBC/sbcblk_algo_coare3p0.F90
r11785 r11816 70 70 IF ( l_use_wl ) THEN 71 71 ierr = 0 72 ALLOCATE ( Tau_ac(jpi,jpj) , Qnt_ac(jpi,jpj), Hz_wl(jpi,jpj), dT_wl(jpi,jpj), STAT=ierr )73 !IF( ierr > 0 ) STOP ' COARE3P0_INIT => allocation of Tau_ac, Qnt_ac, dT_wl & Hz_wl failed!'72 ALLOCATE ( Tau_ac(jpi,jpj) , Qnt_ac(jpi,jpj), dT_wl(jpi,jpj), Hz_wl(jpi,jpj), STAT=ierr ) 73 IF( ierr > 0 ) CALL ctl_stop( ' COARE3P0_INIT => allocation of Tau_ac, Qnt_ac, dT_wl & Hz_wl failed!' ) 74 74 Tau_ac(:,:) = 0._wp 75 75 Qnt_ac(:,:) = 0._wp … … 77 77 Hz_wl(:,:) = Hwl_max 78 78 END IF 79 !!80 79 IF ( l_use_cs ) THEN 81 80 ierr = 0 82 81 ALLOCATE ( dT_cs(jpi,jpj), STAT=ierr ) 83 !IF( ierr > 0 ) STOP ' COARE3P0_INIT => allocation of dT_cs failed!'82 IF( ierr > 0 ) CALL ctl_stop( ' COARE3P0_INIT => allocation of dT_cs failed!' ) 84 83 dT_cs(:,:) = -0.25_wp ! First guess of skin correction 85 84 END IF … … 202 201 203 202 !! Initializations for cool skin and warm layer: 204 IF ( l_use_cs ) THEN 205 IF( .NOT.(PRESENT(Qsw) .AND. PRESENT(rad_lw) .AND. PRESENT(slp)) ) THEN 206 PRINT *, ' * PROBLEM ('//TRIM(crtnm)//'): you need to provide Qsw, rad_lw & slp to use cool-skin param!'; STOP 207 END IF 208 END IF 209 210 IF ( l_use_wl ) THEN 211 IF( .NOT.(PRESENT(Qsw) .AND. PRESENT(rad_lw) .AND. PRESENT(slp)) ) THEN 212 PRINT *, ' * PROBLEM ('//TRIM(crtnm)//'): you need to provide Qsw, rad_lw & slp to use warm-layer param!'; STOP 213 END IF 214 END IF 215 203 IF ( l_use_cs .AND. (.NOT.(PRESENT(Qsw) .AND. PRESENT(rad_lw) .AND. PRESENT(slp))) ) & 204 & CALL ctl_stop( '['//TRIM(crtnm)//'] => ' , 'you need to provide Qsw, rad_lw & slp to use cool-skin param!' ) 205 206 IF ( l_use_wl .AND. (.NOT.(PRESENT(Qsw) .AND. PRESENT(rad_lw) .AND. PRESENT(slp) & 207 & .AND. PRESENT(isecday_utc) .AND. PRESENT(plong)) ) ) & 208 & CALL ctl_stop( '['//TRIM(crtnm)//'] => ' , 'you need to provide Qsw, rad_lw, slp, isecday_utc', & 209 & ' & plong to use warm-layer param!' ) 210 216 211 IF ( l_use_cs .OR. l_use_wl ) THEN 217 212 ALLOCATE ( zsst(jpi,jpj) ) -
NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/src/OCE/SBC/sbcblk_algo_coare3p6.F90
r11785 r11816 70 70 IF ( l_use_wl ) THEN 71 71 ierr = 0 72 ALLOCATE ( Tau_ac(jpi,jpj) , Qnt_ac(jpi,jpj), Hz_wl(jpi,jpj), dT_wl(jpi,jpj), STAT=ierr )73 !IF( ierr > 0 ) STOP ' COARE3P6_INIT => allocation of Tau_ac, Qnt_ac, dT_wl & Hz_wl failed!'72 ALLOCATE ( Tau_ac(jpi,jpj) , Qnt_ac(jpi,jpj), dT_wl(jpi,jpj), Hz_wl(jpi,jpj), STAT=ierr ) 73 IF( ierr > 0 ) CALL ctl_stop( ' COARE3P6_INIT => allocation of Tau_ac, Qnt_ac, dT_wl & Hz_wl failed!' ) 74 74 Tau_ac(:,:) = 0._wp 75 75 Qnt_ac(:,:) = 0._wp … … 77 77 Hz_wl(:,:) = Hwl_max 78 78 END IF 79 !!80 79 IF ( l_use_cs ) THEN 81 80 ierr = 0 82 81 ALLOCATE ( dT_cs(jpi,jpj), STAT=ierr ) 83 !IF( ierr > 0 ) STOP ' COARE3P6_INIT => allocation of dT_cs failed!'82 IF( ierr > 0 ) CALL ctl_stop( ' COARE3P6_INIT => allocation of dT_cs failed!' ) 84 83 dT_cs(:,:) = -0.25_wp ! First guess of skin correction 85 84 END IF … … 202 201 203 202 !! Initializations for cool skin and warm layer: 204 IF ( l_use_cs ) THEN 205 IF( .NOT.(PRESENT(Qsw) .AND. PRESENT(rad_lw) .AND. PRESENT(slp)) ) THEN 206 PRINT *, ' * PROBLEM ('//TRIM(crtnm)//'): you need to provide Qsw, rad_lw & slp to use cool-skin param!'; STOP 207 END IF 208 END IF 209 210 IF ( l_use_wl ) THEN 211 IF( .NOT.(PRESENT(Qsw) .AND. PRESENT(rad_lw) .AND. PRESENT(slp)) ) THEN 212 PRINT *, ' * PROBLEM ('//TRIM(crtnm)//'): you need to provide Qsw, rad_lw & slp to use warm-layer param!'; STOP 213 END IF 214 END IF 203 IF ( l_use_cs .AND. (.NOT.(PRESENT(Qsw) .AND. PRESENT(rad_lw) .AND. PRESENT(slp))) ) & 204 & CALL ctl_stop( '['//TRIM(crtnm)//'] => ' , 'you need to provide Qsw, rad_lw & slp to use cool-skin param!' ) 205 206 IF ( l_use_wl .AND. (.NOT.(PRESENT(Qsw) .AND. PRESENT(rad_lw) .AND. PRESENT(slp) & 207 & .AND. PRESENT(isecday_utc) .AND. PRESENT(plong)) ) ) & 208 & CALL ctl_stop( '['//TRIM(crtnm)//'] => ' , 'you need to provide Qsw, rad_lw, slp, isecday_utc', & 209 & ' & plong to use warm-layer param!' ) 215 210 216 211 IF ( l_use_cs .OR. l_use_wl ) THEN -
NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/src/OCE/SBC/sbcblk_algo_ecmwf.F90
r11785 r11816 77 77 ierr = 0 78 78 ALLOCATE ( dT_wl(jpi,jpj), Hz_wl(jpi,jpj), STAT=ierr ) 79 !IF( ierr > 0 ) STOP ' ECMWF_INIT => allocation of dT_wl & Hz_wl failed!'79 IF( ierr > 0 ) CALL ctl_stop( ' ECMWF_INIT => allocation of dT_wl & Hz_wl failed!' ) 80 80 dT_wl(:,:) = 0._wp 81 81 Hz_wl(:,:) = rd0 ! (rd0, constant, = 3m is default for Zeng & Beljaars) 82 82 END IF 83 !!84 83 IF ( l_use_cs ) THEN 85 84 ierr = 0 86 85 ALLOCATE ( dT_cs(jpi,jpj), STAT=ierr ) 87 !IF( ierr > 0 ) STOP ' ECMWF_INIT => allocation of dT_cs failed!'86 IF( ierr > 0 ) CALL ctl_stop( ' ECMWF_INIT => allocation of dT_cs failed!' ) 88 87 dT_cs(:,:) = -0.25_wp ! First guess of skin correction 89 88 END IF … … 96 95 & Cdn, Chn, Cen, & 97 96 & Qsw, rad_lw, slp, pdT_cs, & ! optionals for cool-skin (and warm-layer) 98 & pdT_wl, pHz_wl ) 97 & pdT_wl, pHz_wl ) ! optionals for warm-layer only 99 98 !!---------------------------------------------------------------------- 100 99 !! *** ROUTINE turb_ecmwf *** … … 206 205 207 206 !! Initializations for cool skin and warm layer: 208 IF ( l_use_cs ) THEN 209 IF( .NOT.(PRESENT(Qsw) .AND. PRESENT(rad_lw) .AND. PRESENT(slp)) ) THEN 210 PRINT *, ' * PROBLEM ('//TRIM(crtnm)//'): you need to provide Qsw, rad_lw & slp to use cool-skin param!'; STOP 211 END IF 212 END IF 213 214 IF ( l_use_wl ) THEN 215 IF( .NOT.(PRESENT(Qsw) .AND. PRESENT(rad_lw) .AND. PRESENT(slp)) ) THEN 216 PRINT *, ' * PROBLEM ('//TRIM(crtnm)//'): you need to provide Qsw, rad_lw & slp to use warm-layer param!'; STOP 217 END IF 218 END IF 207 IF ( l_use_cs .AND. (.NOT.(PRESENT(Qsw) .AND. PRESENT(rad_lw) .AND. PRESENT(slp))) ) & 208 & CALL ctl_stop( '['//TRIM(crtnm)//'] => ' , 'you need to provide Qsw, rad_lw & slp to use cool-skin param!' ) 209 210 IF ( l_use_wl .AND. (.NOT.(PRESENT(Qsw) .AND. PRESENT(rad_lw) .AND. PRESENT(slp))) ) & 211 & CALL ctl_stop( '['//TRIM(crtnm)//'] => ' , 'you need to provide Qsw, rad_lw & slp to use warm-layer param!' ) 219 212 220 213 IF ( l_use_cs .OR. l_use_wl ) THEN
Note: See TracChangeset
for help on using the changeset viewer.