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 10241 for branches/UKMO/AMM15_v3_6_STABLE_package_bgc_updates/NEMOGCM/NEMO/OPA_SRC/DIA/dia25h.F90 – NEMO

Ignore:
Timestamp:
2018-10-26T18:02:18+02:00 (6 years ago)
Author:
dford
Message:

Add visibility diagnostic (can't currently be done via fabm.yaml without changing the FABM code).

File:
1 edited

Legend:

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

    r10205 r10241  
    2222   USE diatmb 
    2323#if defined key_fabm 
    24    USE trc, ONLY: trn 
     24   USE trc, ONLY: trn, visib 
    2525   USE par_fabm 
    2626   USE st2d_fabm, ONLY: fabm_st2dn 
     
    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 
    5556#endif 
    5657   INTEGER, SAVE :: cnt_25h     ! Counter for 25 hour means 
     
    181182         CALL ctl_stop( 'dia_25h: unable to allocate fabm_2d_25h' )   ;   RETURN 
    182183      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 
    183188#endif  
    184189      ! ------------------------- ! 
     
    222227         fabm_2d_25h(:,:,jn) = fabm_get_horizontal_diagnostic_data(model,jn) 
    223228      END DO 
     229      fabm_visib_25h(:,:,:) = visib(:,:,:) 
    224230#endif 
    225231#if defined key_lim3 || defined key_lim2 
     
    338344         fabm_2d_25h(:,:,jn) = fabm_2d_25h(:,:,jn) + fabm_get_horizontal_diagnostic_data(model,jn) 
    339345      END DO 
     346      fabm_visib_25h(:,:,:) = fabm_visib_25h(:,:,:) + visib(:,:,:) 
    340347#endif 
    341348         cnt_25h = cnt_25h + 1 
     
    378385            fabm_bottom_25h(:,:,:)  = fabm_bottom_25h(:,:,:)  / 25.0_wp 
    379386            fabm_2d_25h(:,:,:)      = fabm_2d_25h(:,:,:)      / 25.0_wp 
     387            fabm_visib_25h(:,:,:)   = fabm_visib_25h(:,:,:)   / 25.0_wp 
    380388#endif 
    381389 
     
    419427               CALL iom_put( TRIM(model%horizontal_diagnostic_variables(jn)%name)//"25h", zw2d  ) 
    420428            END DO 
     429            zw3d(:,:,:) = fabm_visib_25h(:,:,:)*tmask(:,:,:) + zmdi*(1.0-tmask(:,:,:)) 
     430            CALL iom_put( "visib25h", zw3d  ) 
    421431#endif 
    422432 
     
    479489         fabm_2d_25h(:,:,jn) = fabm_get_horizontal_diagnostic_data(model,jn) 
    480490      END DO 
     491      fabm_visib_25h(:,:,:) = visib(:,:,:) 
    481492#endif 
    482493            cnt_25h = 1 
Note: See TracChangeset for help on using the changeset viewer.