- Timestamp:
- 2019-09-03T12:46:35+02:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/ENHANCE-02_ISF_nemo/src/OCE/ISF/isfpar.F90
r11423 r11494 43 43 SUBROUTINE isf_par( kt, ptsc, pqfwf ) 44 44 !!--------------------------------------------------------------------- 45 !! *** ROUTINE sbc_isf_cav ***45 !! *** ROUTINE isf_par *** 46 46 !! 47 47 !! ** Purpose : … … 79 79 zqh(:,:) = ( zqhc (:,:) + zqoce(:,:) ) 80 80 ! 81 ! lbclnk on melt 81 ! lbclnk on melt and heat fluxes 82 82 CALL lbc_lnk_multi( 'isfmlt', zqh, 'T', 1., pqfwf, 'T', 1.) 83 83 ! … … 120 120 ! 121 121 ! if param used under an ice shelf overwrite ztblmax by the ice shelf draft 122 WHERE ( risfdep > 0._wp )122 WHERE ( risfdep > 0._wp .AND. ztblmin > 0._wp ) 123 123 ztblmin(:,:) = risfdep(:,:) 124 124 END WHERE … … 130 130 rhisf0_tbl_par(:,:) = ztblmax(:,:) - ztblmin(:,:) 131 131 ! 132 ! compute misfkb_par, rhisf_tbl133 rhisf_tbl_par(:,:) = rhisf0_tbl_par(:,:)134 CALL isf_tbl_lvl( ht_n, e3t_n, misfkt_par, misfkb_par, rhisf_tbl_par, rfrac_tbl_par )135 !136 132 ! define iceshelf parametrisation mask 137 133 mskisf_par = 0 … … 140 136 END WHERE 141 137 ! 138 ! compute misfkb_par, rhisf_tbl 139 rhisf_tbl_par(:,:) = rhisf0_tbl_par(:,:) 140 CALL isf_tbl_lvl( ht_n * mskisf_par, e3t_n, misfkt_par, misfkb_par, rhisf_tbl_par, rfrac_tbl_par ) 141 ! 142 142 SELECT CASE ( TRIM(cn_isfpar_mlt) ) 143 143 ! 144 144 CASE ( 'spe' ) 145 145 ! 146 146 ALLOCATE( sf_isfpar_fwf(1), STAT=ierr ) 147 147 ALLOCATE( sf_isfpar_fwf(1)%fnow(jpi,jpj,1), sf_isfpar_fwf(1)%fdta(jpi,jpj,1,2) ) 148 148 CALL fld_fill( sf_isfpar_fwf, (/ sn_isfpar_fwf /), cn_isfdir, 'isf_par_init', 'read fresh water flux isf data', 'namisf' ) 149 149 ! 150 150 IF(lwp) WRITE(numout,*) 151 151 IF(lwp) WRITE(numout,*) ' ==>>> ice melt read from forcing field (cn_isfmlt_par = spe)' 152 152 ! 153 153 CASE ( 'bg03' ) 154 154 ! … … 161 161 ! 162 162 CASE ( 'oasis' ) 163 163 ! 164 164 IF(lwp) WRITE(numout,*) 165 165 IF(lwp) WRITE(numout,*) ' ==>>> isf melt provided by OASIS (cn_isfmlt_par = oasis)' 166 166 ! 167 167 CASE DEFAULT 168 168 CALL ctl_stop( 'sbc_isf_init: wrong value of nn_isf' ) … … 171 171 END SUBROUTINE isf_par_init 172 172 173 173 END MODULE isfpar
Note: See TracChangeset
for help on using the changeset viewer.