Changeset 5742 for branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM
- Timestamp:
- 2015-09-14T15:08:42+02:00 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/MEDUSA/trcsed_medusa.F90
r5740 r5742 262 262 263 263 !!--------------------------------------------------------------------- 264 265 !! Initialization 266 !! -------------- 267 !! 268 i15 = nday / 16 269 iman = INT( raamo ) 270 imois = nmonth + i15 - 1 271 IF( imois == 0 ) imois = iman 272 imois2 = nmonth 273 274 !! 1. first call kt=nittrc000 275 !! ----------------------- 276 !! 277 IF( kt == nittrc000 ) THEN 278 ! initializations 279 nflx1 = 0 280 nflx11 = 0 281 ! open the file 282 IF(lwp) THEN 283 WRITE(numout,*) ' ' 284 WRITE(numout,*) ' **** Routine trc_sed_medusa_sbc' 264 IF (bdustfer) THEN 265 !! Initialization 266 !! -------------- 267 !! 268 i15 = nday / 16 269 iman = INT( raamo ) 270 imois = nmonth + i15 - 1 271 IF( imois == 0 ) imois = iman 272 imois2 = nmonth 273 274 !! 1. first call kt=nittrc000 275 !! ----------------------- 276 !! 277 IF (kt == nittrc000) THEN 278 ! initializations 279 nflx1 = 0 280 nflx11 = 0 281 ! open the file 282 IF(lwp) THEN 283 WRITE(numout,*) ' ' 284 WRITE(numout,*) ' **** Routine trc_sed_medusa_sbc' 285 ENDIF 286 CALL iom_open ( 'dust.orca.nc', numdust ) 287 IF(lwp) WRITE(numout,*) 'trc_sed_medusa_sbc: dust.orca.nc opened' 285 288 ENDIF 286 CALL iom_open ( 'dust.orca.nc', numdust ) 287 IF(lwp) WRITE(numout,*) 'trc_sed_medusa_sbc: dust.orca.nc opened' 289 290 !! Read monthly file 291 !! ---------------- 292 !! 293 IF( kt == nittrc000 .OR. imois /= nflx1 ) THEN 294 295 !! Calendar computation 296 !! 297 !! nflx1 number of the first file record used in the simulation 298 !! nflx2 number of the last file record 299 !! 300 nflx1 = imois 301 nflx2 = nflx1+1 302 nflx1 = MOD( nflx1, iman ) 303 nflx2 = MOD( nflx2, iman ) 304 IF( nflx1 == 0 ) nflx1 = iman 305 IF( nflx2 == 0 ) nflx2 = iman 306 IF(lwp) WRITE(numout,*) 'trc_sed_medusa_sbc: first record file used nflx1 ',nflx1 307 IF(lwp) WRITE(numout,*) 'trc_sed_medusa_sbc: last record file used nflx2 ',nflx2 308 309 !! Read monthly fluxes data 310 !! 311 !! humidity 312 !! 313 CALL iom_get ( numdust, jpdom_data, 'dust', dustmo(:,:,1), nflx1 ) 314 CALL iom_get ( numdust, jpdom_data, 'dust', dustmo(:,:,2), nflx2 ) 315 316 IF(lwp .AND. nitend-nit000 <= 100 ) THEN 317 WRITE(numout,*) 318 WRITE(numout,*) ' read clio flx ok' 319 WRITE(numout,*) 320 WRITE(numout,*) 321 WRITE(numout,*) 'Clio month: ',nflx1,' field: dust' 322 CALL prihre( dustmo(:,:,1),jpi,jpj,1,jpi,20,1,jpj,10,1e9,numout ) 323 ENDIF 324 325 ENDIF 326 327 !! 3. at every time step interpolation of fluxes 328 !! --------------------------------------------- 329 !! 330 zxy = FLOAT( nday + 15 - 30 * i15 ) / 30 331 dust(:,:) = ( (1.-zxy) * dustmo(:,:,1) + zxy * dustmo(:,:,2) ) 332 333 IF( kt == nitend ) THEN 334 CALL iom_close (numdust) 335 IF(lwp) WRITE(numout,*) 'trc_sed_medusa_sbc: dust.orca.nc closed' 336 ENDIF 337 ELSE 338 dust(:,:) = 0.0 288 339 ENDIF 289 290 !! Read monthly file291 !! ----------------292 !!293 IF( kt == nittrc000 .OR. imois /= nflx1 ) THEN294 295 !! Calendar computation296 !!297 !! nflx1 number of the first file record used in the simulation298 !! nflx2 number of the last file record299 !!300 nflx1 = imois301 nflx2 = nflx1+1302 nflx1 = MOD( nflx1, iman )303 nflx2 = MOD( nflx2, iman )304 IF( nflx1 == 0 ) nflx1 = iman305 IF( nflx2 == 0 ) nflx2 = iman306 IF(lwp) WRITE(numout,*) 'trc_sed_medusa_sbc: first record file used nflx1 ',nflx1307 IF(lwp) WRITE(numout,*) 'trc_sed_medusa_sbc: last record file used nflx2 ',nflx2308 309 !! Read monthly fluxes data310 !!311 !! humidity312 !!313 CALL iom_get ( numdust, jpdom_data, 'dust', dustmo(:,:,1), nflx1 )314 CALL iom_get ( numdust, jpdom_data, 'dust', dustmo(:,:,2), nflx2 )315 316 IF(lwp .AND. nitend-nit000 <= 100 ) THEN317 WRITE(numout,*)318 WRITE(numout,*) ' read clio flx ok'319 WRITE(numout,*)320 WRITE(numout,*)321 WRITE(numout,*) 'Clio month: ',nflx1,' field: dust'322 CALL prihre( dustmo(:,:,1),jpi,jpj,1,jpi,20,1,jpj,10,1e9,numout )323 ENDIF324 325 ENDIF326 327 !! 3. at every time step interpolation of fluxes328 !! ---------------------------------------------329 !!330 zxy = FLOAT( nday + 15 - 30 * i15 ) / 30331 dust(:,:) = ( (1.-zxy) * dustmo(:,:,1) + zxy * dustmo(:,:,2) )332 333 IF( kt == nitend ) THEN334 CALL iom_close (numdust)335 IF(lwp) WRITE(numout,*) 'trc_sed_medusa_sbc: dust.orca.nc closed'336 ENDIF337 338 340 END SUBROUTINE trc_sed_medusa_sbc 339 341
Note: See TracChangeset
for help on using the changeset viewer.