Changeset 8895 for branches/UKMO/dev_r7750_GO6_package_oasis_timers/NEMOGCM/NEMO/OPA_SRC/CRS/crsdomwri.F90
- Timestamp:
- 2017-12-05T09:31:13+01:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/dev_r7750_GO6_package_oasis_timers/NEMOGCM/NEMO/OPA_SRC/CRS/crsdomwri.F90
r6486 r8895 122 122 !======================================================== 123 123 ! ! masks (inum2) 124 IF(nn_timing == 2) CALL timing_start('rst_put') 124 125 CALL iom_rstput( 0, 0, inum2, 'tmask', tmask_crs, ktype = jp_i1 ) ! ! land-sea mask 125 126 CALL iom_rstput( 0, 0, inum2, 'umask', umask_crs, ktype = jp_i1 ) 126 127 CALL iom_rstput( 0, 0, inum2, 'vmask', vmask_crs, ktype = jp_i1 ) 127 128 CALL iom_rstput( 0, 0, inum2, 'fmask', fmask_crs, ktype = jp_i1 ) 129 IF(nn_timing == 2) CALL timing_stop('rst_put') 128 130 129 131 … … 156 158 fpol_crs(jpiglo_crs/2+1:jpiglo_crs,:)=0._wp 157 159 ENDIF 158 160 IF(nn_timing == 2) CALL timing_start('rst_put') 159 161 CALL iom_rstput( 0, 0, inum2, 'tmaskutil', tmask_i_crs, ktype = jp_i1 ) 160 ! ! unique point mask162 IF(nn_timing == 2) CALL timing_stop('rst_put') 161 163 CALL dom_uniq_crs( zprw, 'U' ) 162 164 zprt = umask_crs(:,:,1) * zprw 165 IF(nn_timing == 2) CALL timing_start('rst_put') 163 166 CALL iom_rstput( 0, 0, inum2, 'umaskutil', zprt, ktype = jp_i1 ) 167 IF(nn_timing == 2) CALL timing_stop('rst_put') 164 168 CALL dom_uniq_crs( zprw, 'V' ) 165 169 zprt = vmask_crs(:,:,1) * zprw 170 IF(nn_timing == 2) CALL timing_start('rst_put') 166 171 CALL iom_rstput( 0, 0, inum2, 'vmaskutil', zprt, ktype = jp_i1 ) 172 IF(nn_timing == 2) CALL timing_stop('rst_put') 167 173 CALL dom_uniq_crs( zprw, 'F' ) 168 174 zprt = fmask_crs(:,:,1) * zprw 175 IF(nn_timing == 2) CALL timing_start('rst_put') 169 176 CALL iom_rstput( 0, 0, inum2, 'fmaskutil', zprt, ktype = jp_i1 ) 170 177 !======================================================== … … 191 198 192 199 CALL iom_rstput( 0, 0, inum3, 'ff', ff_crs, ktype = jp_r8 ) ! ! coriolis factor 193 200 IF(nn_timing == 2) CALL timing_stop('rst_put') 194 201 !======================================================== 195 202 ! ! vertical mesh (inum4) 196 203 ! ! note that mbkt is set to 1 over land ==> use surface tmask_crs 197 204 zprt(:,:) = tmask_crs(:,:,1) * REAL( mbkt_crs(:,:) , wp ) 205 IF(nn_timing == 2) CALL timing_start('rst_put') 198 206 CALL iom_rstput( 0, 0, inum4, 'mbathy', zprt, ktype = jp_i2 ) ! ! nb of ocean T-points 207 IF(nn_timing == 2) CALL timing_stop('rst_put') 199 208 200 209 IF( ln_zps ) THEN ! z-coordinate - partial steps … … 202 211 203 212 IF ( nn_msh_crs <= 6 ) THEN 213 IF(nn_timing == 2) CALL timing_start('rst_put') 204 214 CALL iom_rstput( 0, 0, inum4, 'e3t', e3t_crs ) 205 215 CALL iom_rstput( 0, 0, inum4, 'e3w', e3w_crs ) 206 216 CALL iom_rstput( 0, 0, inum4, 'e3u', e3u_crs ) 207 217 CALL iom_rstput( 0, 0, inum4, 'e3v', e3v_crs ) 218 IF(nn_timing == 2) CALL timing_stop('rst_put') 208 219 ELSE 209 220 DO jj = 1,jpj_crs … … 216 227 CALL crs_lbc_lnk( ze3tp,'T', 1.0 ) 217 228 CALL crs_lbc_lnk( ze3wp,'W', 1.0 ) 218 229 IF(nn_timing == 2) CALL timing_start('rst_put') 219 230 CALL iom_rstput( 0, 0, inum4, 'e3t_ps', ze3tp ) 220 231 CALL iom_rstput( 0, 0, inum4, 'e3w_ps', ze3wp ) 232 IF(nn_timing == 2) CALL timing_stop('rst_put') 221 233 ENDIF 222 234 … … 233 245 234 246 CALL crs_lbc_lnk( zdepu,'U', 1. ) ; CALL crs_lbc_lnk( zdepv,'V', 1. ) 247 IF(nn_timing == 2) CALL timing_start('rst_put') 235 248 CALL iom_rstput( 0, 0, inum4, 'gdepu', zdepu, ktype = jp_r4 ) 236 249 CALL iom_rstput( 0, 0, inum4, 'gdepv', zdepv, ktype = jp_r4 ) 237 250 CALL iom_rstput( 0, 0, inum4, 'gdepw', gdepw_crs, ktype = jp_r4 ) 251 IF(nn_timing == 2) CALL timing_stop('rst_put') 238 252 ELSE 239 253 DO jj = 1,jpj_crs … … 243 257 END DO 244 258 END DO 259 IF(nn_timing == 2) CALL timing_start('rst_put') 245 260 CALL iom_rstput( 0, 0, inum4, 'hdept', zprt, ktype = jp_r4 ) 246 261 CALL iom_rstput( 0, 0, inum4, 'hdepw', zprw, ktype = jp_r4 ) 262 IF(nn_timing == 2) CALL timing_stop('rst_put') 247 263 ENDIF 248 264 IF(nn_timing == 2) CALL timing_start('rst_put') 249 265 CALL iom_rstput( 0, 0, inum4, 'gdept_1d', gdept_1d ) ! ! reference z-coord. 250 266 CALL iom_rstput( 0, 0, inum4, 'gdepw_1d', gdepw_1d ) … … 269 285 CALL iom_rstput( 0, 0, inum4, 'crs_surfv_wgt', crs_surfv_wgt ) 270 286 CALL iom_rstput( 0, 0, inum4, 'crs_volt_wgt' , crs_volt_wgt ) 271 287 IF(nn_timing == 2) CALL timing_stop('rst_put') 272 288 ENDIF 273 289 274 290 IF( ln_zco ) THEN 275 291 ! ! z-coordinate - full steps 292 IF(nn_timing == 2) CALL timing_start('rst_put') 276 293 CALL iom_rstput( 0, 0, inum4, 'gdept_1d', gdept_1d ) ! ! depth 277 294 CALL iom_rstput( 0, 0, inum4, 'gdepw_1d', gdepw_1d ) 278 295 CALL iom_rstput( 0, 0, inum4, 'e3t_1d' , e3t_1d ) ! ! scale factors 279 296 CALL iom_rstput( 0, 0, inum4, 'e3w_1d' , e3w_1d ) 297 IF(nn_timing == 2) CALL timing_stop('rst_put') 280 298 ENDIF 281 299 ! ! ============================
Note: See TracChangeset
for help on using the changeset viewer.