Changeset 11992
- Timestamp:
- 2019-11-27T18:40:38+01:00 (4 years ago)
- Location:
- NEMO/branches/2019/ENHANCE-03_closea/src/OCE
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/ENHANCE-03_closea/src/OCE/DOM/closea.F90
r11656 r11992 66 66 !! ** Purpose : Closed sea domain initialization 67 67 !! 68 !! ** Method : if a closed sea is located only in a model grid point69 !! just the thermodynamic processes are applied.70 !!71 68 !! ** Action : Read mask_cs* fields (if needed) from domain_cfg file and infer 72 69 !! number of closed seas for each case (glo, rnf, emp) from mask_cs* field. … … 106 103 ! ------------------------------------------------------------------------------ 107 104 ! 108 ! load mask of open sea and undefined closed seas105 ! load mask of open sea 109 106 CALL alloc_csmask( mask_opnsea ) 110 107 CALL read_csmask( cn_domcfg, 'mask_opensea' , mask_opnsea ) … … 154 151 ! 155 152 ! allocate closed sea group masks 156 !(used to defined the target area in case multiple lakes have the same river mouth (great lakes for example) 153 !(used to defined the target area in case multiple lakes have the same river mouth (great lakes for example)) 157 154 CALL alloc_csmask( mask_csgrpglo ) 158 155 CALL alloc_csmask( mask_csgrprnf ) -
NEMO/branches/2019/ENHANCE-03_closea/src/OCE/SBC/sbcclo.F90
r11656 r11992 185 185 ! 186 186 !! 0. find group number for cs number jcs 187 imskgrp = kmaskcsgrp188 imsksrc = kmaskcs187 imskgrp(:,:) = kmaskcsgrp(:,:) 188 imsksrc(:,:) = kmaskcs(:,:) 189 189 ! 190 190 ! set cs value where cs is defined 191 191 ! imsk = HUGE outside the cs id jcs 192 imsk = HUGE(1)193 WHERE ( imsksrc == jcs ) imsk= jcs192 imsk(:,:) = HUGE(1) 193 WHERE ( imsksrc(:,:) == jcs ) imsk(:,:) = jcs 194 194 ! 195 195 ! jtmp = jcs - group id for this lake 196 imsk = imsk - imskgrp197 jtmp = MINVAL(imsk ) ; CALL mpp_min('closea',jtmp)196 imsk(:,:) = imsk(:,:) - imskgrp(:,:) 197 jtmp = MINVAL(imsk(:,:)) ; CALL mpp_min('closea',jtmp) 198 198 ! kcsgrp = group id corresponding to the cs id jcs 199 199 ! kcsgrp(jcs)=(jcs - (jcs - group id))=group id … … 201 201 ! 202 202 !! 1. build the target river mouth mask for this lake 203 WHERE ( imskgrp * mask_opnsea== kcsgrp(jcs) )204 imsktrg = 1203 WHERE ( imskgrp(:,:) * mask_opnsea(:,:) == kcsgrp(jcs) ) 204 imsktrg(:,:) = 1 205 205 ELSE WHERE 206 imsktrg = 0206 imsktrg(:,:) = 0 207 207 END WHERE 208 208 ! … … 308 308 !! 4. Add residuals to target points 309 309 !! Do not use pqcs(:,:) = pqcs(:,:) - rcp * zcsfw * sst_m(:,:) / zsurftrg 310 !! as there is no reason for heat conservationwith this formulation310 !! as there is no reason heat will be conserved with this formulation 311 311 zcsh = glob_sum( 'closea', e1e2t(:,:) * rcp * zcsfwf * sst_m(:,:) * imsk_src(:,:) ) 312 312 WHERE( imsk_trg(:,:) == kcsgrp(jcs) )
Note: See TracChangeset
for help on using the changeset viewer.