Changeset 10241
- Timestamp:
- 2018-10-26T18:02:18+02:00 (6 years ago)
- Location:
- branches/UKMO/AMM15_v3_6_STABLE_package_bgc_updates/NEMOGCM/NEMO
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/AMM15_v3_6_STABLE_package_bgc_updates/NEMOGCM/NEMO/OPA_SRC/DIA/dia25h.F90
r10205 r10241 22 22 USE diatmb 23 23 #if defined key_fabm 24 USE trc, ONLY: trn 24 USE trc, ONLY: trn, visib 25 25 USE par_fabm 26 26 USE st2d_fabm, ONLY: fabm_st2dn … … 53 53 REAL(wp),SAVE, ALLOCATABLE, DIMENSION(:,:,:) :: fabm_bottom_25h 54 54 REAL(wp),SAVE, ALLOCATABLE, DIMENSION(:,:,:) :: fabm_2d_25h 55 REAL(wp),SAVE, ALLOCATABLE, DIMENSION(:,:,:) :: fabm_visib_25h 55 56 #endif 56 57 INTEGER, SAVE :: cnt_25h ! Counter for 25 hour means … … 181 182 CALL ctl_stop( 'dia_25h: unable to allocate fabm_2d_25h' ) ; RETURN 182 183 ENDIF 184 ALLOCATE( fabm_visib_25h(jpi,jpj,jpk), STAT=ierror ) 185 IF( ierror > 0 ) THEN 186 CALL ctl_stop( 'dia_25h: unable to allocate fabm_visib_25h' ) ; RETURN 187 ENDIF 183 188 #endif 184 189 ! ------------------------- ! … … 222 227 fabm_2d_25h(:,:,jn) = fabm_get_horizontal_diagnostic_data(model,jn) 223 228 END DO 229 fabm_visib_25h(:,:,:) = visib(:,:,:) 224 230 #endif 225 231 #if defined key_lim3 || defined key_lim2 … … 338 344 fabm_2d_25h(:,:,jn) = fabm_2d_25h(:,:,jn) + fabm_get_horizontal_diagnostic_data(model,jn) 339 345 END DO 346 fabm_visib_25h(:,:,:) = fabm_visib_25h(:,:,:) + visib(:,:,:) 340 347 #endif 341 348 cnt_25h = cnt_25h + 1 … … 378 385 fabm_bottom_25h(:,:,:) = fabm_bottom_25h(:,:,:) / 25.0_wp 379 386 fabm_2d_25h(:,:,:) = fabm_2d_25h(:,:,:) / 25.0_wp 387 fabm_visib_25h(:,:,:) = fabm_visib_25h(:,:,:) / 25.0_wp 380 388 #endif 381 389 … … 419 427 CALL iom_put( TRIM(model%horizontal_diagnostic_variables(jn)%name)//"25h", zw2d ) 420 428 END DO 429 zw3d(:,:,:) = fabm_visib_25h(:,:,:)*tmask(:,:,:) + zmdi*(1.0-tmask(:,:,:)) 430 CALL iom_put( "visib25h", zw3d ) 421 431 #endif 422 432 … … 479 489 fabm_2d_25h(:,:,jn) = fabm_get_horizontal_diagnostic_data(model,jn) 480 490 END DO 491 fabm_visib_25h(:,:,:) = visib(:,:,:) 481 492 #endif 482 493 cnt_25h = 1 -
branches/UKMO/AMM15_v3_6_STABLE_package_bgc_updates/NEMOGCM/NEMO/OPA_SRC/DIA/diaopfoam.F90
r8561 r10241 109 109 CALL iom_put( "voce_op" , vn ) ! j-current 110 110 !CALL iom_put( "woce_op" , wn ) ! k-current 111 #if defined key_spm112 cltra = TRIM(ctrc3d(5))//"_op"113 zw3d(:,:,:) = trc3d(:,:,:,5)*tmask(:,:,:) + zmdi*(1.0-tmask(:,:,:)) ! Visibility114 CALL iom_put( cltra, zw3d )115 #endif111 !#if defined key_spm 112 ! cltra = TRIM(ctrc3d(5))//"_op" 113 ! zw3d(:,:,:) = trc3d(:,:,:,5)*tmask(:,:,:) + zmdi*(1.0-tmask(:,:,:)) ! Visibility 114 ! CALL iom_put( cltra, zw3d ) 115 !#endif 116 116 CALL calc_max_cur(zwu,zwv,zwz,zmdi) 117 117 CALL iom_put( "maxu" , zwu ) ! max u current -
branches/UKMO/AMM15_v3_6_STABLE_package_bgc_updates/NEMOGCM/NEMO/OPA_SRC/DIA/diatmb.F90
r10205 r10241 12 12 USE wrk_nemo ! working arrays 13 13 #if defined key_fabm 14 USE trc, ONLY: trn 14 USE trc, ONLY: trn, visib 15 15 USE par_fabm 16 16 USE fabm, ONLY: fabm_get_bulk_diagnostic_data … … 182 182 CALL iom_put( "bot_"//TRIM(model%diagnostic_variables(jn)%name) , zwtmb(:,:,3) ) 183 183 END DO 184 CALL dia_calctmb( visib(:,:,:), zwtmb ) 185 CALL iom_put( "top_visib" , zwtmb(:,:,1) ) 186 CALL iom_put( "mid_visib" , zwtmb(:,:,2) ) 187 CALL iom_put( "bot_visib" , zwtmb(:,:,3) ) 184 188 #endif 185 189 ELSE -
branches/UKMO/AMM15_v3_6_STABLE_package_bgc_updates/NEMOGCM/NEMO/TOP_SRC/FABM/par_fabm.F90
r10205 r10241 28 28 jp_fabm_o2o, jp_fabm_o3c, & 29 29 jp_fabm_o3a, jp_fabm_o3ph, & 30 jp_fabm_o3pc 30 jp_fabm_o3pc, jp_fabm_xeps 31 31 32 32 #if defined key_fabm -
branches/UKMO/AMM15_v3_6_STABLE_package_bgc_updates/NEMOGCM/NEMO/TOP_SRC/FABM/trcini_fabm.F90
r10205 r10241 18 18 USE trcsms_fabm 19 19 USE fabm_config,ONLY: fabm_create_model_from_yaml_file 20 USE fabm,ONLY: type_external_variable, fabm_initialize_library 20 USE fabm,ONLY: type_external_variable, fabm_initialize_library, & 21 fabm_get_bulk_diagnostic_data 21 22 USE inputs_fabm,ONLY: initialize_inputs,link_inputs, & 22 23 type_input_variable,type_input_data,type_river_data, & … … 108 109 109 110 ! Get indexes for select diagnostic variables 110 jp_fabm_o3ph = fabm_diag_index( 'O3_pH' ) 111 jp_fabm_o3pc = fabm_diag_index( 'O3_pCO2') 111 jp_fabm_o3ph = fabm_diag_index( 'O3_pH' ) 112 jp_fabm_o3pc = fabm_diag_index( 'O3_pCO2' ) 113 jp_fabm_xeps = fabm_diag_index( 'light_xEPS') 112 114 113 115 IF (lwp) THEN … … 149 151 CALL write_25hourm_xml(xml_unit,model%horizontal_diagnostic_variables(jn)) 150 152 END DO 153 WRITE (xml_unit,'(A)') ' <field id="visib" long_name="visibility" unit="m" default_value="-.200E+21" grid_ref="grid_T_3D" />' 154 WRITE (xml_unit,'(A)') ' <field id="visib25h" long_name="visibility 25-hour mean" unit="m" default_value="-.200E+21" grid_ref="grid_T_3D" />' 155 WRITE (xml_unit,'(A)') ' <field id="top_visib" long_name="Top-level visibility" unit="m" default_value="-.200E+21" grid_ref="grid_T_2D" />' 156 WRITE (xml_unit,'(A)') ' <field id="mid_visib" long_name="Middle-level visibility" unit="m" default_value="-.200E+21" grid_ref="grid_T_2D" />' 157 WRITE (xml_unit,'(A)') ' <field id="bot_visib" long_name="Bottom-level visibility" unit="m" default_value="-.200E+21" grid_ref="grid_T_2D" />' 151 158 WRITE (xml_unit,1000) ' </field_group>' 152 159 … … 396 403 #endif 397 404 405 ! Initialise visibility 406 visib(:,:,:) = 1.7 / fabm_get_bulk_diagnostic_data(model, jp_fabm_xeps) 407 398 408 ! Log mapping of FABM states: 399 409 IF (lwp) THEN -
branches/UKMO/AMM15_v3_6_STABLE_package_bgc_updates/NEMOGCM/NEMO/TOP_SRC/FABM/trcsms_fabm.F90
r10156 r10241 37 37 38 38 USE fabm 39 USE par_fabm 39 40 40 41 IMPLICIT NONE … … 118 119 CALL trc_bc_read ( kt ) ! tracers: surface and lateral Boundary Conditions 119 120 CALL trc_rnf_fabm ( kt ) ! River forcings 121 122 visib(:,:,:) = 1.7 / fabm_get_bulk_diagnostic_data(model, jp_fabm_xeps) 120 123 121 124 IF( l_trdtrc ) THEN ! Save the trends in the mixed layer -
branches/UKMO/AMM15_v3_6_STABLE_package_bgc_updates/NEMOGCM/NEMO/TOP_SRC/FABM/trcwri_fabm.F90
r10156 r10241 105 105 CALL iom_put( model%diagnostic_variables(jn)%name, fabm_get_bulk_diagnostic_data(model,jn)) 106 106 END DO 107 CALL iom_put( 'visib', visib(:,:,:) ) 107 108 108 109 ! write 2D diagnostics in the file -
branches/UKMO/AMM15_v3_6_STABLE_package_bgc_updates/NEMOGCM/NEMO/TOP_SRC/trc.F90
r10162 r10241 149 149 LOGICAL , PUBLIC :: ln_diatrc !: boolean term for additional diagnostic 150 150 INTEGER , PUBLIC :: nn_writedia !: frequency of additional outputs 151 #if defined key_fabm 152 REAL(wp) , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) :: visib !: visibility 153 #endif 151 154 152 155 !! Biological trends … … 253 256 ! FABM <<<+++ 254 257 & ln_trc_sbc(jptra) , ln_trc_cbc(jptra) , ln_trc_obc(jptra) , & 258 & visib(jpi,jpj,jpk) , & 255 259 #endif 256 260 #if defined key_bdy
Note: See TracChangeset
for help on using the changeset viewer.