diff --git a/src/OCE/ICB/icbutl.F90 b/src/OCE/ICB/icbutl.F90 index 11634f30299559500dc4bc2b70108683ff625427..780d05df039e847e4e8623833ecd591d85580a04 100644 --- a/src/OCE/ICB/icbutl.F90 +++ b/src/OCE/ICB/icbutl.F90 @@ -26,8 +26,8 @@ MODULE icbutl USE icb_oce ! define iceberg arrays USE sbc_oce ! ocean surface boundary conditions #if defined key_si3 - USE ice, ONLY: u_ice, v_ice, hm_i ! SI3 variables - USE icevar ! ice_var_sshdyn + USE ice, ONLY: u_ice, v_ice, at_i, vt_i ! SI3 variables + USE icevar ! ice_var_sshdyn USE sbc_ice, ONLY: snwice_mass, snwice_mass_b #endif @@ -102,7 +102,11 @@ CONTAINS CALL lbc_lnk_icb( 'icbutl', ua_e , 'U', -1._wp, 1, 1 ) CALL lbc_lnk_icb( 'icbutl', va_e , 'V', -1._wp, 1, 1 ) #if defined key_si3 - hi_e(A2D(0)) = hm_i (:,:) ! clem: something is wrong here (hm_i defined in the interior only) but I do not what to do + WHERE( at_i(:,:) /= 0._wp ) + hi_e(1:jpi,1:jpj) = vt_i(:,:) / at_i(:,:) + ELSEWHERE + hi_e(1:jpi,1:jpj) = 0._wp + ENDWHERE ui_e(1:jpi, 1:jpj) = u_ice(:,:) vi_e(1:jpi, 1:jpj) = v_ice(:,:) !