New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 10366 – NEMO

Changeset 10366


Ignore:
Timestamp:
2018-12-03T12:26:33+01:00 (6 years ago)
Author:
dford
Message:

Remove visibility, as now available through FABM, and switch from deprecated get_bulk to get_interior.

Location:
branches/UKMO/AMM15_v3_6_STABLE_package_collate_bgc_diagnostics/NEMOGCM/NEMO
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_bgc_diagnostics/NEMOGCM/NEMO/OPA_SRC/DIA/dia25h.F90

    r10308 r10366  
    2222   USE diatmb 
    2323#if defined key_fabm 
    24    USE trc, ONLY: trn, visib 
     24   USE trc, ONLY: trn 
    2525   USE par_fabm 
    2626   USE st2d_fabm, ONLY: fabm_st2dn 
    27    USE fabm, ONLY: fabm_get_bulk_diagnostic_data, & 
     27   USE fabm, ONLY: fabm_get_interior_diagnostic_data, & 
    2828      &            fabm_get_horizontal_diagnostic_data 
    2929#endif 
     
    5353   REAL(wp),SAVE, ALLOCATABLE,   DIMENSION(:,:,:)   :: fabm_bottom_25h 
    5454   REAL(wp),SAVE, ALLOCATABLE,   DIMENSION(:,:,:)   :: fabm_2d_25h 
    55    REAL(wp),SAVE, ALLOCATABLE,   DIMENSION(:,:,:)   :: fabm_visib_25h 
    5655#endif 
    5756   INTEGER, SAVE :: cnt_25h     ! Counter for 25 hour means 
     
    182181         CALL ctl_stop( 'dia_25h: unable to allocate fabm_2d_25h' )   ;   RETURN 
    183182      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 
    188183#endif  
    189184      ! ------------------------- ! 
     
    216211      END DO 
    217212      DO jn = 1, jp_fabm_3d 
    218          fabm_3d_25h(:,:,:,jn) = fabm_get_bulk_diagnostic_data(model, jn) 
     213         fabm_3d_25h(:,:,:,jn) = fabm_get_interior_diagnostic_data(model, jn) 
    219214      END DO 
    220215      DO jn = 1, jp_fabm_surface 
     
    227222         fabm_2d_25h(:,:,jn) = fabm_get_horizontal_diagnostic_data(model,jn) 
    228223      END DO 
    229       fabm_visib_25h(:,:,:) = visib(:,:,:) 
    230224#endif 
    231225#if defined key_lim3 || defined key_lim2 
     
    333327      END DO 
    334328      DO jn = 1, jp_fabm_3d 
    335          fabm_3d_25h(:,:,:,jn) = fabm_3d_25h(:,:,:,jn) + fabm_get_bulk_diagnostic_data(model, jn) 
     329         fabm_3d_25h(:,:,:,jn) = fabm_3d_25h(:,:,:,jn) + fabm_get_interior_diagnostic_data(model, jn) 
    336330      END DO 
    337331      DO jn = 1, jp_fabm_surface 
     
    344338         fabm_2d_25h(:,:,jn) = fabm_2d_25h(:,:,jn) + fabm_get_horizontal_diagnostic_data(model,jn) 
    345339      END DO 
    346       fabm_visib_25h(:,:,:) = fabm_visib_25h(:,:,:) + visib(:,:,:) 
    347340#endif 
    348341         cnt_25h = cnt_25h + 1 
     
    385378            fabm_bottom_25h(:,:,:)  = fabm_bottom_25h(:,:,:)  / 25.0_wp 
    386379            fabm_2d_25h(:,:,:)      = fabm_2d_25h(:,:,:)      / 25.0_wp 
    387             fabm_visib_25h(:,:,:)   = fabm_visib_25h(:,:,:)   / 25.0_wp 
    388380#endif 
    389381 
     
    427419               CALL iom_put( TRIM(model%horizontal_diagnostic_variables(jn)%name)//"25h", zw2d  ) 
    428420            END DO 
    429             zw3d(:,:,:) = fabm_visib_25h(:,:,:)*tmask(:,:,:) + zmdi*(1.0-tmask(:,:,:)) 
    430             CALL iom_put( "visib25h", zw3d  ) 
    431421#endif 
    432422 
     
    478468      END DO 
    479469      DO jn = 1, jp_fabm_3d 
    480          fabm_3d_25h(:,:,:,jn) = fabm_get_bulk_diagnostic_data(model, jn) 
     470         fabm_3d_25h(:,:,:,jn) = fabm_get_interior_diagnostic_data(model, jn) 
    481471      END DO 
    482472      DO jn = 1, jp_fabm_surface 
     
    489479         fabm_2d_25h(:,:,jn) = fabm_get_horizontal_diagnostic_data(model,jn) 
    490480      END DO 
    491       fabm_visib_25h(:,:,:) = visib(:,:,:) 
    492481#endif 
    493482            cnt_25h = 1 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_bgc_diagnostics/NEMOGCM/NEMO/OPA_SRC/DIA/diatmb.F90

    r10308 r10366  
    1212   USE wrk_nemo        ! working arrays 
    1313#if defined key_fabm 
    14    USE trc, ONLY: trn, visib 
     14   USE trc, ONLY: trn 
    1515   USE par_fabm 
    16    USE fabm, ONLY: fabm_get_bulk_diagnostic_data 
     16   USE fabm, ONLY: fabm_get_interior_diagnostic_data 
    1717#endif 
    1818 
     
    177177         END DO 
    178178         DO jn = 1, jp_fabm_3d 
    179             CALL dia_calctmb( fabm_get_bulk_diagnostic_data(model, jn), zwtmb ) 
     179            CALL dia_calctmb( fabm_get_interior_diagnostic_data(model, jn), zwtmb ) 
    180180            CALL iom_put( "top_"//TRIM(model%diagnostic_variables(jn)%name) , zwtmb(:,:,1) ) 
    181181            CALL iom_put( "mid_"//TRIM(model%diagnostic_variables(jn)%name) , zwtmb(:,:,2) ) 
    182182            CALL iom_put( "bot_"//TRIM(model%diagnostic_variables(jn)%name) , zwtmb(:,:,3) ) 
    183183         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) ) 
    188184#endif 
    189185      ELSE 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_bgc_diagnostics/NEMOGCM/NEMO/TOP_SRC/FABM/par_fabm.F90

    r10308 r10366  
    2828                      jp_fabm_o2o,  jp_fabm_o3c,  & 
    2929                      jp_fabm_o3a,  jp_fabm_o3ph, & 
    30                       jp_fabm_o3pc, jp_fabm_xeps 
     30                      jp_fabm_o3pc 
    3131 
    3232#if defined key_fabm 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_bgc_diagnostics/NEMOGCM/NEMO/TOP_SRC/FABM/trcini_fabm.F90

    r10308 r10366  
    1818   USE trcsms_fabm 
    1919   USE fabm_config,ONLY: fabm_create_model_from_yaml_file 
    20    USE fabm,ONLY: type_external_variable, fabm_initialize_library, & 
    21                   fabm_get_bulk_diagnostic_data 
     20   USE fabm,ONLY: type_external_variable, fabm_initialize_library 
    2221   USE inputs_fabm,ONLY: initialize_inputs,link_inputs, & 
    2322     type_input_variable,type_input_data,type_river_data, & 
     
    111110      jp_fabm_o3ph = fabm_diag_index( 'O3_pH' ) 
    112111      jp_fabm_o3pc = fabm_diag_index( 'O3_pCO2' ) 
    113       jp_fabm_xeps = fabm_diag_index( 'light_xEPS') 
    114112 
    115113      IF (lwp) THEN 
     
    151149            CALL write_25hourm_xml(xml_unit,model%horizontal_diagnostic_variables(jn)) 
    152150         END DO 
    153          WRITE (xml_unit,'(A)') '  <field id="visib" long_name="visibility" unit="m" default_value="1.e+20" grid_ref="grid_T_3D" />' 
    154          WRITE (xml_unit,'(A)') '  <field id="visib25h" long_name="visibility 25-hour mean" unit="m" default_value="1.e+20" grid_ref="grid_T_3D" />' 
    155          WRITE (xml_unit,'(A)') '  <field id="top_visib" long_name="Top-level visibility" unit="m" default_value="1.e+20" grid_ref="grid_T_2D" />' 
    156          WRITE (xml_unit,'(A)') '  <field id="mid_visib" long_name="Middle-level visibility" unit="m" default_value="1.e+20" grid_ref="grid_T_2D" />' 
    157          WRITE (xml_unit,'(A)') '  <field id="bot_visib" long_name="Bottom-level visibility" unit="m" default_value="1.e+20" grid_ref="grid_T_2D" />' 
    158151         WRITE (xml_unit,1000) ' </field_group>' 
    159152 
     
    403396#endif 
    404397 
    405       ! Initialise visibility 
    406       visib(:,:,:) = 1.7 / fabm_get_bulk_diagnostic_data(model, jp_fabm_xeps) 
    407  
    408398      ! Log mapping of FABM states: 
    409399      IF (lwp) THEN 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_bgc_diagnostics/NEMOGCM/NEMO/TOP_SRC/FABM/trcsms_fabm.F90

    r10308 r10366  
    3737 
    3838   USE fabm 
    39    USE par_fabm 
    4039 
    4140   IMPLICIT NONE 
     
    119118      CALL trc_bc_read  ( kt )       ! tracers: surface and lateral Boundary Conditions 
    120119      CALL trc_rnf_fabm ( kt ) ! River forcings 
    121        
    122       visib(:,:,:) = 1.7 / fabm_get_bulk_diagnostic_data(model, jp_fabm_xeps) 
    123120 
    124121      IF( l_trdtrc ) THEN      ! Save the trends in the mixed layer 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_bgc_diagnostics/NEMOGCM/NEMO/TOP_SRC/FABM/trcwri_fabm.F90

    r10308 r10366  
    8181      INTEGER, INTENT( in )               :: kt 
    8282      INTEGER              :: jn 
    83        
    84       REAL(wp), DIMENSION(jpi,jpj,jpk)    :: zw3d 
    8583 
    8684#if defined key_tracer_budget 
     
    107105             CALL iom_put( model%diagnostic_variables(jn)%name, fabm_get_bulk_diagnostic_data(model,jn)) 
    108106      END DO 
    109       zw3d(:,:,:) = visib(:,:,:)*tmask(:,:,:) + 1.e+20*(1.0-tmask(:,:,:)) 
    110       CALL iom_put( 'visib', zw3d ) 
    111107 
    112108      ! write 2D diagnostics in the file 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_bgc_diagnostics/NEMOGCM/NEMO/TOP_SRC/trc.F90

    r10308 r10366  
    149149   LOGICAL            , PUBLIC                                        ::  ln_diatrc      !: boolean term for additional diagnostic 
    150150   INTEGER            , PUBLIC                                        ::  nn_writedia    !: frequency of additional outputs 
    151 #if defined key_fabm 
    152    REAL(wp)           , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)   ::  visib          !: visibility 
    153 #endif 
    154151 
    155152   !! Biological trends 
     
    256253! FABM <<<+++ 
    257254         &      ln_trc_sbc(jptra)     , ln_trc_cbc(jptra)     , ln_trc_obc(jptra)     ,       & 
    258          &      visib(jpi,jpj,jpk)    ,                                                       & 
    259255#endif 
    260256#if defined key_bdy 
Note: See TracChangeset for help on using the changeset viewer.