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 74 – NEMO

Changeset 74


Ignore:
Timestamp:
2004-04-22T14:38:42+02:00 (20 years ago)
Author:
opalod
Message:

CT : BUGFIX048 : Bug correction of Poleward Transport diagnostics

Location:
trunk/NEMO/OPA_SRC/TRA
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/OPA_SRC/TRA/traadv_cen2.F90

    r32 r74  
    1313   USE oce             ! ocean dynamics and active tracers 
    1414   USE dom_oce         ! ocean space and time domain 
    15    USE trdtra_oce     ! ocean active tracer trends 
     15   USE trdtra_oce      ! ocean active tracer trends 
    1616   USE flxrnf          ! 
    1717   USE trabbl          ! advective term in the BBL 
    18    USE ocfzpt           ! 
     18   USE ocfzpt          ! 
    1919   USE lib_mpp 
    20    USE lbclnk 
     20   USE lbclnk          ! ocean lateral boundary condition (or mpp link) 
    2121   USE in_out_manager  ! I/O manager 
     22   USE ptr             ! poleward transport diagnostics 
    2223 
    2324   IMPLICIT NONE 
     
    299300      !                                                ! =============== 
    300301 
    301       IF( l_ctl .AND. lwp ) THEN 
     302      IF(l_ctl) THEN 
    302303         zta = SUM( ta(2:jpim1,2:jpjm1,1:jpkm1) * tmask(2:jpim1,2:jpjm1,1:jpkm1) ) 
    303304         zsa = SUM( sa(2:jpim1,2:jpjm1,1:jpkm1) * tmask(2:jpim1,2:jpjm1,1:jpkm1) ) 
     
    310311      IF( MOD( kt, nf_ptr ) == 0 ) THEN 
    311312# if defined key_s_coord || defined key_partial_steps 
    312          pht_adv(:,:) = prt_vj( zwy(:,:,:) ) 
    313          pst_adv(:,:) = prt_vj( zwz(:,:,:) ) 
     313         pht_adv(:) = prt_vj( zwy(:,:,:) ) 
     314         pst_adv(:) = prt_vj( zwz(:,:,:) ) 
    314315# else 
    315316         DO jk = 1, jpkm1 
     
    321322            END DO 
    322323         END DO 
    323          pht_adv(:,:) = prt_vj( zwy(:,:,:) ) 
    324          pst_adv(:,:) = prt_vj( zwz(:,:,:) ) 
     324         pht_adv(:) = prt_vj( zwy(:,:,:) ) 
     325         pst_adv(:) = prt_vj( zwz(:,:,:) ) 
    325326# endif 
    326327      ENDIF 
     
    394395      END DO 
    395396 
    396       IF( l_ctl .AND. lwp ) THEN 
     397      IF(l_ctl) THEN 
    397398         zta = SUM( ta(2:jpim1,2:jpjm1,1:jpkm1) * tmask(2:jpim1,2:jpjm1,1:jpkm1) ) 
    398399         zsa = SUM( sa(2:jpim1,2:jpjm1,1:jpkm1) * tmask(2:jpim1,2:jpjm1,1:jpkm1) ) 
  • trunk/NEMO/OPA_SRC/TRA/traadv_cen2_atsk.h90

    r32 r74  
    260260      IF( MOD( kt, nf_ptr ) == 0 ) THEN 
    261261# if defined key_s_coord || defined key_partial_steps 
    262          pht_adv(:,:) = prt_vj( zwy(:,:,:) ) 
    263          pst_adv(:,:) = prt_vj( zwz(:,:,:) ) 
     262         pht_adv(:) = prt_vj( zwy(:,:,:) ) 
     263         pst_adv(:) = prt_vj( zwz(:,:,:) ) 
    264264# else 
    265265         DO jk = 1, jpkm1 
     
    271271            END DO 
    272272         END DO 
    273          pht_adv(:,:) = prt_vj( zwy(:,:,:) ) 
    274          pst_adv(:,:) = prt_vj( zwz(:,:,:) ) 
     273         pht_adv(:) = prt_vj( zwy(:,:,:) ) 
     274         pst_adv(:) = prt_vj( zwz(:,:,:) ) 
    275275# endif 
    276276      ENDIF 
  • trunk/NEMO/OPA_SRC/TRA/traadv_tvd.F90

    r3 r74  
    2020   USE trabbl          ! Advective term of BBL 
    2121   USE lib_mpp 
    22    USE lbclnk 
     22   USE lbclnk          ! ocean lateral boundary condition (or mpp link)  
     23   USE ptr             ! poleward transport diagnostics 
     24 
    2325 
    2426   IMPLICIT NONE 
     
    268270      IF( MOD( kt, nf_ptr ) == 0 ) THEN 
    269271         ! "zonal" mean advective heat and salt transport 
    270          pht_adv(:,:) = prt_vj( ztv(:,:,:) ) 
    271          pst_adv(:,:) = prt_vj( zsv(:,:,:) ) 
     272         pht_adv(:) = prt_vj( ztv(:,:,:) ) 
     273         pst_adv(:) = prt_vj( zsv(:,:,:) ) 
    272274      ENDIF 
    273275#endif 
  • trunk/NEMO/OPA_SRC/TRA/traldf_bilap.F90

    r3 r74  
    1212   USE oce             ! ocean dynamics and active tracers 
    1313   USE dom_oce         ! ocean space and time domain 
    14    USE ldftra_oce     ! ocean tracer   lateral physics 
    15    USE trdtra_oce     ! ocean active tracer trend  
     14   USE ldftra_oce      ! ocean tracer   lateral physics 
     15   USE trdtra_oce      ! ocean active tracer trend  
    1616   USE in_out_manager  ! I/O manager 
    1717   USE ldfslp          ! iso-neutral slopes  
    1818   USE lbclnk          ! ocean lateral boundary conditions (or mpp link) 
     19   USE ptr             ! poleward transport diagnostics 
    1920 
    2021   IMPLICIT NONE 
     
    214215      IF( MOD( kt, nf_ptr ) == 0 ) THEN 
    215216# if defined key_s_coord || defined key_partial_steps 
    216          pht_ldf(:,:) = prt_vj( ztv(:,:,:) ) 
    217          pst_ldf(:,:) = prt_vj( zsv(:,:,:) ) 
     217         pht_ldf(:) = prt_vj( ztv(:,:) ) 
     218         pst_ldf(:) = prt_vj( zsv(:,:) ) 
    218219# else 
    219          DO jk = 1, jpkm1 
    220             DO jj = 2, jpjm1 
    221                DO ji = fs_2, fs_jpim1   ! vector opt. 
    222                  ztv(ji,jj,jk) = ztv(ji,jj,jk) * fse3v(ji,jj,jk) 
    223                  zsv(ji,jj,jk) = zsv(ji,jj,jk) * fse3v(ji,jj,jk) 
    224                END DO 
    225             END DO 
    226          END DO 
    227          pht_ldf(:,:) = prt_vj( ztv(:,:,:) ) 
    228          pst_ldf(:,:) = prt_vj( zsv(:,:,:) ) 
     220         DO jj = 2, jpjm1 
     221            DO ji = fs_2, fs_jpim1   ! vector opt. 
     222              ztv(ji,jj) = ztv(ji,jj) * fse3v(ji,jj,jk) 
     223              zsv(ji,jj) = zsv(ji,jj) * fse3v(ji,jj,jk) 
     224            END DO 
     225         END DO 
     226         pht_ldf(:) = prt_vj( ztv(:,:) ) 
     227         pst_ldf(:) = prt_vj( zsv(:,:) ) 
    229228# endif 
    230229      ENDIF 
  • trunk/NEMO/OPA_SRC/TRA/traldf_bilapg.F90

    r32 r74  
    1515   USE oce             ! ocean dynamics and tracers variables 
    1616   USE dom_oce         ! ocean space and time domain variables 
    17    USE ldftra_oce     ! ocean active tracers: lateral physics 
    18    USE trdtra_oce     ! ocean active tracers: trend variables 
     17   USE ldftra_oce      ! ocean active tracers: lateral physics 
     18   USE trdtra_oce      ! ocean active tracers: trend variables 
    1919   USE in_out_manager  ! I/O manager 
    2020   USE ldfslp          ! iso-neutral slopes available 
    2121   USE lbclnk          ! ocean lateral boundary condition (or mpp link) 
     22   USE ptr             ! poleward transport diagnostics  
    2223 
    2324   IMPLICIT NONE 
     
    8788      ! and multiply by aht (output in (wk1,wk2) ) 
    8889 
    89       CALL ldfght ( tb, sb, wk1, wk2, 1 ) 
     90      CALL ldfght ( kt, tb, sb, wk1, wk2, 1 ) 
    9091 
    9192 
     
    9899      ! (output in (wk3,wk4) ) 
    99100 
    100       CALL ldfght ( wk1, wk2, wk3, wk4, 2 ) 
     101      CALL ldfght ( kt, wk1, wk2, wk3, wk4, 2 ) 
    101102 
    102103 
     
    124125 
    125126 
    126    SUBROUTINE ldfght ( pt, ps, plt, pls, kaht ) 
     127   SUBROUTINE ldfght ( kt, pt, ps, plt, pls, kaht ) 
    127128      !!---------------------------------------------------------------------- 
    128129      !!                  ***  ROUTINE ldfght  *** 
     
    169170      !!---------------------------------------------------------------------- 
    170171      !! * Arguments 
     172      INTEGER, INTENT( in ) ::   kt           ! ocean time-step index 
    171173      REAL(wp), DIMENSION(jpi,jpj,jpk), INTENT( in  ) ::   & 
    172174         pt, ps           ! tracer fields (before t and s for 1st call 
     
    271273      !                                                ! =============== 
    272274 
     275      IF( kaht == 2 .AND. MOD( kt, nf_ptr ) == 0 ) THEN 
    273276#if defined key_diaptr 
    274       IF( kaht == 2 .AND. MOD( kt, nf_ptr ) == 0 ) THEN 
    275277         ! "zonal" mean diffusive heat and salt transport 
    276          pht_ldf(:,:) = prt_vj( zftv(:,:,:) ) 
    277          pst_ldf(:,:) = prt_vj( zfsv(:,:,:) ) 
     278!         pht_ldf(:) = prt_vj( zftv(:,:) ) 
     279!         pst_ldf(:) = prt_vj( zfsv(:,:) ) 
     280        write(numout,cform_err) 
     281        nstop = nstop + 1 
     282#endif 
    278283      ENDIF 
    279 #endif 
    280284 
    281285 
  • trunk/NEMO/OPA_SRC/TRA/traldf_iso.F90

    r34 r74  
    1515   USE oce             ! ocean dynamics and tracers variables 
    1616   USE dom_oce         ! ocean space and time domain variables 
    17    USE ldftra_oce     ! ocean active tracers: lateral physics 
    18    USE trdtra_oce     ! ocean active tracers: trend variables 
     17   USE ldftra_oce      ! ocean active tracers: lateral physics 
     18   USE trdtra_oce      ! ocean active tracers: trend variables 
    1919   USE in_out_manager  ! I/O manager 
    2020   USE ldfslp          ! iso-neutral slopes 
    21    USE lbclnk 
     21   USE ptr             ! poleward transport diagnostics 
    2222 
    2323   IMPLICIT NONE 
     
    232232      !                                             ! =============== 
    233233 
    234       IF( l_ctl .AND. lwp ) THEN         ! print mean trends (used for debugging) 
     234      IF( l_ctl ) THEN         ! print mean trends (used for debugging) 
    235235         zta = SUM( ta(2:jpim1,2:jpjm1,1:jpkm1) * tmask(2:jpim1,2:jpjm1,1:jpkm1) ) 
    236236         zsa = SUM( sa(2:jpim1,2:jpjm1,1:jpkm1) * tmask(2:jpim1,2:jpjm1,1:jpkm1) ) 
     
    243243      IF( MOD( kt, nf_ptr ) == 0 ) THEN 
    244244      ! "zonal" mean lateral diffusive heat and salt transports 
    245          pht_ldf(:,:) = prt_vj( zftv(:,:,:) ) 
    246          pst_ldf(:,:) = prt_vj( zfsv(:,:,:) ) 
     245         pht_ldf(:) = prt_vj( zftv(:,:,:) ) 
     246         pst_ldf(:) = prt_vj( zfsv(:,:,:) ) 
    247247         ! "zonal" mean lateral eddy induced velocity heat and salt transports 
    248          pht_eiv(:,:) = prt_vj( zftv(:,:,:) ) 
    249          pst_eiv(:,:) = prt_vj( zfsv(:,:,:) ) 
     248         pht_eiv(:) = prt_vj( zftv(:,:,:) ) 
     249         pst_eiv(:) = prt_vj( zfsv(:,:,:) ) 
    250250      ENDIF 
    251251#endif 
  • trunk/NEMO/OPA_SRC/TRA/traldf_lap.F90

    r3 r74  
    1212   USE oce             ! ocean dynamics and active tracers 
    1313   USE dom_oce         ! ocean space and time domain 
    14    USE ldftra_oce     ! ocean active tracers: lateral physics 
    15    USE trdtra_oce     ! ocean active tracer trends 
     14   USE ldftra_oce      ! ocean active tracers: lateral physics 
     15   USE trdtra_oce      ! ocean active tracer trends 
    1616   USE in_out_manager  ! I/O manager 
    17    USE lbclnk 
     17   USE ptr             ! poleward transport diagnostics 
     18 
    1819 
    1920   IMPLICIT NONE 
     
    141142      !                                                  ! ============= 
    142143 
     144      IF( l_ctl ) THEN         ! print mean trends (used for debugging) 
     145         zta = SUM( ta(2:jpim1,2:jpjm1,1:jpkm1) * tmask(2:jpim1,2:jpjm1,1:jpkm1) ) 
     146         zsa = SUM( sa(2:jpim1,2:jpjm1,1:jpkm1) * tmask(2:jpim1,2:jpjm1,1:jpkm1) ) 
     147         WRITE(numout,*) ' ldf  - Ta: ', zta-t_ctl, ' Sa: ', zsa-s_ctl 
     148         t_ctl = zta   ;   s_ctl = zsa 
     149      ENDIF 
     150 
    143151#if defined key_diaptr 
    144152      ! "zonal" mean lateral diffusive heat and salt transport  
    145153      IF( MOD( kt, nf_ptr ) == 0 ) THEN 
    146154# if defined key_s_coord || defined key_partial_steps 
    147          pht_ldf(:,:) = prt_vj( ztv(:,:,:) ) 
    148          pst_ldf(:,:) = prt_vj( zsv(:,:,:) ) 
     155         pht_ldf(:) = prt_vj( ztv(:,:,:) ) 
     156         pst_ldf(:) = prt_vj( zsv(:,:,:) ) 
    149157# else 
    150158         DO jk = 1, jpkm1 
     
    156164            END DO 
    157165         END DO 
    158          pht_ldf(:,:) = prt_vj( ztv(:,:,:) ) 
    159          pst_ldf(:,:) = prt_vj( zsv(:,:,:) ) 
     166         pht_ldf(:) = prt_vj( ztv(:,:,:) ) 
     167         pst_ldf(:) = prt_vj( zsv(:,:,:) ) 
    160168# endif 
    161169      ENDIF 
Note: See TracChangeset for help on using the changeset viewer.