Changeset 10141 for branches/UKMO/dev_r5518_GO6_package_asm_3d_bgc_v3/NEMOGCM/NEMO/TOP_SRC/trcrst.F90
- Timestamp:
- 2018-09-19T17:14:46+02:00 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/dev_r5518_GO6_package_asm_3d_bgc_v3/NEMOGCM/NEMO/TOP_SRC/trcrst.F90
r10055 r10141 45 45 USE oce, ONLY: CO2Flux_out_cpl, DMS_out_cpl, chloro_out_cpl !! Coupling variable 46 46 USE trcstat 47 #if defined key_foam_medusa48 47 USE obs_const, ONLY: obfillflt ! Observation operator fill value 49 #endif50 48 51 49 IMPLICIT NONE … … 342 340 ENDIF 343 341 ! 344 # if defined key_foam_medusa 345 !! 2D fields of pCO2 and fCO2 for observation operator on first timestep346 IF( iom_varid( numrtr, 'PCO2W', ldstop = .FALSE. ) > 0 ) THEN347 IF(lwp) WRITE(numout,*) ' MEDUSA pCO2 present - reading in ...'348 CALL iom_get( numrtr, jpdom_autoglo, 'PCO2W', f2_pco2w(:,:) )349 CALL iom_get( numrtr, jpdom_autoglo, 'FCO2W', f2_fco2w(:,:) )350 ELSE351 IF(lwp) WRITE(numout,*) ' MEDUSA pCO2 absent - setting to fill ...'352 f2_pco2w(:,:) = obfillflt * tmask(:,:,1)353 f2_fco2w(:,:) = obfillflt * tmask(:,:,1)354 ENDIF355 # endif 342 IF ( ln_foam_medusa ) THEN 343 !! 2D fields of pCO2 and fCO2 for observation operator on first timestep 344 IF( iom_varid( numrtr, 'PCO2W', ldstop = .FALSE. ) > 0 ) THEN 345 IF(lwp) WRITE(numout,*) ' MEDUSA pCO2 present - reading in ...' 346 CALL iom_get( numrtr, jpdom_autoglo, 'PCO2W', f2_pco2w(:,:) ) 347 CALL iom_get( numrtr, jpdom_autoglo, 'FCO2W', f2_fco2w(:,:) ) 348 ELSE 349 IF(lwp) WRITE(numout,*) ' MEDUSA pCO2 absent - setting to fill ...' 350 f2_pco2w(:,:) = obfillflt * tmask(:,:,1) 351 f2_fco2w(:,:) = obfillflt * tmask(:,:,1) 352 ENDIF 353 ENDIF 356 354 # endif 357 # if defined key_foam_medusa 358 !! Fields for ocean colour assimilation on first timestep359 IF( iom_varid( numrtr, 'pgrow_avg', ldstop = .FALSE. ) > 0 ) THEN360 IF(lwp) WRITE(numout,*) ' MEDUSA pgrow_avg present - reading in ...'361 CALL iom_get( numrtr, jpdom_autoglo, 'pgrow_avg', pgrow_avg(:,:) )362 CALL iom_get( numrtr, jpdom_autoglo, 'ploss_avg', ploss_avg(:,:) )363 CALL iom_get( numrtr, jpdom_autoglo, 'phyt_avg', phyt_avg(:,:) )364 CALL iom_get( numrtr, jpdom_autoglo, 'mld_max', mld_max(:,:) )365 ELSE366 IF(lwp) WRITE(numout,*) ' MEDUSA pgrow_avg absent - setting to zero ...'367 pgrow_avg(:,:) = 0.0368 ploss_avg(:,:) = 0.0369 phyt_avg(:,:) = 0.0370 mld_max(:,:) = 0.0371 ENDIF372 # endif 355 IF ( ln_foam_medusa ) THEN 356 !! Fields for ocean colour assimilation on first timestep 357 IF( iom_varid( numrtr, 'pgrow_avg', ldstop = .FALSE. ) > 0 ) THEN 358 IF(lwp) WRITE(numout,*) ' MEDUSA pgrow_avg present - reading in ...' 359 CALL iom_get( numrtr, jpdom_autoglo, 'pgrow_avg', pgrow_avg(:,:) ) 360 CALL iom_get( numrtr, jpdom_autoglo, 'ploss_avg', ploss_avg(:,:) ) 361 CALL iom_get( numrtr, jpdom_autoglo, 'phyt_avg', phyt_avg(:,:) ) 362 CALL iom_get( numrtr, jpdom_autoglo, 'mld_max', mld_max(:,:) ) 363 ELSE 364 IF(lwp) WRITE(numout,*) ' MEDUSA pgrow_avg absent - setting to zero ...' 365 pgrow_avg(:,:) = 0.0 366 ploss_avg(:,:) = 0.0 367 phyt_avg(:,:) = 0.0 368 mld_max(:,:) = 0.0 369 ENDIF 370 ENDIF 373 371 374 372 #endif … … 541 539 call trc_rst_dia_stat( f2_ccd_arg(:,:),'CCD_ARG') 542 540 !! 543 # if defined key_foam_medusa 544 !! Fields for observation operator on first timestep545 IF(lwp) WRITE(numout,*) ' MEDUSA OBS fields - writing out ...'546 CALL iom_rstput( kt, nitrst, numrtw, 'PCO2W', f2_pco2w(:,:) )547 CALL iom_rstput( kt, nitrst, numrtw, 'FCO2W', f2_fco2w(:,:) )548 # endif 541 IF ( ln_foam_medusa ) THEN 542 !! Fields for observation operator on first timestep 543 IF(lwp) WRITE(numout,*) ' MEDUSA OBS fields - writing out ...' 544 CALL iom_rstput( kt, nitrst, numrtw, 'PCO2W', f2_pco2w(:,:) ) 545 CALL iom_rstput( kt, nitrst, numrtw, 'FCO2W', f2_fco2w(:,:) ) 546 ENDIF 549 547 # endif 550 # if defined key_foam_medusa 551 !! Fields for assimilation on first timestep552 IF(lwp) WRITE(numout,*) ' MEDUSA ASM fields - writing out ...'553 CALL iom_rstput( kt, nitrst, numrtw, 'pgrow_avg', pgrow_avg(:,:) )554 CALL iom_rstput( kt, nitrst, numrtw, 'ploss_avg', ploss_avg(:,:) )555 CALL iom_rstput( kt, nitrst, numrtw, 'phyt_avg', phyt_avg(:,:) )556 CALL iom_rstput( kt, nitrst, numrtw, 'mld_max', mld_max(:,:) )557 # endif 548 IF ( ln_foam_medusa ) THEN 549 !! Fields for assimilation on first timestep 550 IF(lwp) WRITE(numout,*) ' MEDUSA ASM fields - writing out ...' 551 CALL iom_rstput( kt, nitrst, numrtw, 'pgrow_avg', pgrow_avg(:,:) ) 552 CALL iom_rstput( kt, nitrst, numrtw, 'ploss_avg', ploss_avg(:,:) ) 553 CALL iom_rstput( kt, nitrst, numrtw, 'phyt_avg', phyt_avg(:,:) ) 554 CALL iom_rstput( kt, nitrst, numrtw, 'mld_max', mld_max(:,:) ) 555 ENDIF 558 556 !! 559 557 #endif
Note: See TracChangeset
for help on using the changeset viewer.