Changeset 3294 for trunk/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_lim_2.F90
- Timestamp:
- 2012-01-28T17:44:18+01:00 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_lim_2.F90
r2715 r3294 44 44 USE lbclnk ! lateral boundary condition - MPP link 45 45 USE lib_mpp ! MPP library 46 USE wrk_nemo ! work arrays 46 47 USE iom ! I/O manager library 47 48 USE in_out_manager ! I/O manager … … 83 84 !! utau, vtau, taum, wndm, qns , qsr, emp , emps 84 85 !!--------------------------------------------------------------------- 85 USE wrk_nemo, ONLY: wrk_in_use, wrk_not_released86 USE wrk_nemo, ONLY: wrk_3d_1 , wrk_3d_2 , wrk_3d_3 ! 3D workspace87 !!88 86 INTEGER, INTENT(in) :: kt ! ocean time step 89 87 INTEGER, INTENT(in) :: ksbc ! type of sbc ( =3 CLIO bulk ; =4 CORE bulk ; =5 coupled ) 90 88 !! 91 89 INTEGER :: ji, jj ! dummy loop indices 92 ! Pointers into workspaces contained in the wrk_nemo module93 90 REAL(wp), DIMENSION(:,:,:), POINTER :: zalb_ice_os ! albedo of the ice under overcast sky 94 91 REAL(wp), DIMENSION(:,:,:), POINTER :: zalb_ice_cs ! albedo of ice under clear sky … … 96 93 !!---------------------------------------------------------------------- 97 94 98 IF( wrk_in_use(3, 1,2,3) ) THEN 99 CALL ctl_stop('sbc_ice_lim_2: requested workspace arrays are unavailable') ; RETURN 100 ENDIF 101 ! Use pointers to access only sub-arrays of workspaces 102 zalb_ice_os => wrk_3d_1(:,:,1:1) 103 zalb_ice_cs => wrk_3d_2(:,:,1:1) 104 zsist => wrk_3d_3(:,:,1:1) 95 CALL wrk_alloc( jpi,jpj,1, zalb_ice_os, zalb_ice_cs, zsist ) 105 96 106 97 IF( kt == nit000 ) THEN … … 202 193 #if defined key_coupled 203 194 ! ! Ice surface fluxes in coupled mode 204 IF( ksbc == 5 ) CALL sbc_cpl_ice_flx( reshape( frld, (/jpi,jpj,1/) ), &205 & qns_tot, qns_ice, qsr_tot , qsr_ice, &206 & emp_tot, emp_ice, dqns_ice, sprecip,&195 IF( ksbc == 5 ) THEN 196 a_i(:,:,1)=fr_i 197 CALL sbc_cpl_ice_flx( frld, & 207 198 ! optional arguments, used only in 'mixed oce-ice' case 208 199 & palbi = zalb_ice_cs, psst = sst_m, pist = zsist ) 200 sprecip(:,:) = - emp_ice(:,:) ! Ugly patch, WARNING, in coupled mode, sublimation included in snow (parsub = 0.) 201 ENDIF 209 202 #endif 210 203 CALL lim_thd_2 ( kt ) ! Ice thermodynamics … … 228 221 IF( ln_limdyn ) CALL lim_sbc_tau_2( kt, ub(:,:,1), vb(:,:,1) ) ! using before instantaneous surf. currents 229 222 ! 230 IF( wrk_not_released(3, 1,2,3) ) CALL ctl_stop('sbc_ice_lim_2: failed to release workspace arrays')223 CALL wrk_dealloc( jpi,jpj,1, zalb_ice_os, zalb_ice_cs, zsist ) 231 224 ! 232 225 END SUBROUTINE sbc_ice_lim_2
Note: See TracChangeset
for help on using the changeset viewer.