Ignore:
Timestamp:
2012-02-25T16:50:01+01:00 (9 years ago)
Author:
gm
Message:

Ediag branche: #927 split TRA/DYN trd computation

File:
1 moved

Legend:

Unmodified
Added
Removed
  • branches/2012/dev_r3309_LOCEAN12_Ediag/NEMOGCM/NEMO/OPA_SRC/TRD/trdglo.F90

    r3317 r3318  
    1 MODULE trdicp 
     1MODULE trdglo 
    22   !!====================================================================== 
    3    !!                       ***  MODULE  trdicp  *** 
    4    !! Ocean diagnostics:  ocean tracers and dynamic trends 
     3   !!                       ***  MODULE  trdglo  *** 
     4   !! Ocean diagnostics:  global domain averaged tracer and momentum trends 
    55   !!===================================================================== 
    66   !! History :  1.0  !  2004-08 (C. Talandier) New trends organization 
     
    99 
    1010   !!---------------------------------------------------------------------- 
    11    !!   trd_budget     : domain averaged budget of trends (including kinetic energy and T^2 trends) 
    12    !!   trd_icp        : compute the basin averaged properties for tra/dyn  
    13    !!   trd_dwr        : print dynmaic trends in ocean.output file 
    14    !!   trd_twr        : print tracers trends in ocean.output file 
    15    !!   trd_icp_init   : initialization step 
     11   !!   trd_glo      : domain averaged budget of trends (including kinetic energy and T^2 trends) 
     12   !!   glo_dyn_wri  : print dynamic trends in ocean.output file 
     13   !!   glo_tra_wri  : print global T & T^2 trends in ocean.output file 
     14   !!   trd_glo_init : initialization step 
    1615   !!---------------------------------------------------------------------- 
    1716   USE oce             ! ocean dynamics and tracers variables 
    1817   USE dom_oce         ! ocean space and time domain variables 
    1918   USE sbc_oce         ! surface boundary condition: ocean 
     19   USE trd_oce         ! trends: ocean variables 
    2020   USE phycst          ! physical constants 
    21    USE trdmod_oce      ! ocean variables trends 
    2221   USE ldftra_oce      ! ocean active tracers: lateral physics 
    2322   USE ldfdyn_oce      ! ocean dynamics: lateral physics 
     
    3534   PRIVATE 
    3635 
    37    PUBLIC   trd_budget    ! called by trdmod.F90 
    38    PUBLIC   trd_dwr       ! called by step.F90 
    39    PUBLIC   trd_twr       ! called by step.F90 
    40    PUBLIC   trd_icp_init  ! called by opa.F90 
     36   PUBLIC   trd_glo       ! called by trdtra and trddyn modules 
     37   PUBLIC   trd_glo_init  ! called by trdini module 
    4138 
    4239   !                     !!! Variables used for diagnostics 
     
    6461CONTAINS 
    6562 
    66    SUBROUTINE trd_budget( ptrdx, ptrdy, ktrd, ctype, kt ) 
     63   SUBROUTINE trd_glo( ptrdx, ptrdy, ktrd, ctype, kt ) 
    6764      !!--------------------------------------------------------------------- 
    68       !!                  ***  ROUTINE trd_budget  *** 
     65      !!                  ***  ROUTINE trd_glo  *** 
    6966      !!  
    70       !! ** Purpose : integral constraint diagnostics for momentum and/or tracer trends 
    71       !!               
     67      !! ** Purpose :   compute and print global domain averaged trends for  
     68      !!              T, T^2, momentum, KE, and KE<->PE 
     69      !! 
    7270      !!---------------------------------------------------------------------- 
    7371      REAL(wp), DIMENSION(:,:,:), INTENT(inout) ::   ptrdx   ! Temperature or U trend  
    7472      REAL(wp), DIMENSION(:,:,:), INTENT(inout) ::   ptrdy   ! Salinity    or V trend 
    7573      INTEGER                   , INTENT(in   ) ::   ktrd    ! tracer trend index 
    76       CHARACTER(len=3)          , INTENT(in   ) ::   ctype   ! momentum or tracers trends type 'DYN'/'TRA' 
     74      CHARACTER(len=3)          , INTENT(in   ) ::   ctype   ! momentum or tracers trends type (='DYN'/'TRA') 
    7775      INTEGER                   , INTENT(in   ) ::   kt      ! time step 
    7876      !! 
     
    104102            END DO 
    105103            !                       ! linear free surface: diagnose advective flux trough the fixed k=1 w-surface 
    106             IF( .NOT.lk_vvl .AND. ktrd == jptra_trd_zad ) THEN   
    107                tmo(jptra_trd_sad) = SUM( wn(:,:,1) * tsn(:,:,1,jp_tem) * e1e2t(:,:) ) 
    108                smo(jptra_trd_sad) = SUM( wn(:,:,1) * tsn(:,:,1,jp_sal) * e1e2t(:,:)  ) 
    109                t2 (jptra_trd_sad) = SUM( wn(:,:,1) * tsn(:,:,1,jp_tem) * tsn(:,:,1,jp_tem) * e1e2t(:,:)  ) 
    110                s2 (jptra_trd_sad) = SUM( wn(:,:,1) * tsn(:,:,1,jp_sal) * tsn(:,:,1,jp_sal) * e1e2t(:,:)  ) 
     104            IF( .NOT.lk_vvl .AND. ktrd == jptra_zad ) THEN   
     105               tmo(jptra_sad) = SUM( wn(:,:,1) * tsn(:,:,1,jp_tem) * e1e2t(:,:) ) 
     106               smo(jptra_sad) = SUM( wn(:,:,1) * tsn(:,:,1,jp_sal) * e1e2t(:,:)  ) 
     107               t2 (jptra_sad) = SUM( wn(:,:,1) * tsn(:,:,1,jp_tem) * tsn(:,:,1,jp_tem) * e1e2t(:,:)  ) 
     108               s2 (jptra_sad) = SUM( wn(:,:,1) * tsn(:,:,1,jp_sal) * tsn(:,:,1,jp_sal) * e1e2t(:,:)  ) 
    111109            ENDIF 
    112110            ! 
    113             IF( ktrd == jptra_trd_atf ) THEN     ! last trend (asselin time filter) 
     111            IF( ktrd == jptra_atf ) THEN     ! last trend (asselin time filter) 
    114112               !  
    115                CALL trd_twr( kt )   ! print the results in ocean.output 
     113               CALL glo_tra_wri( kt )             ! print the results in ocean.output 
    116114               !                 
    117                tmo(:) = 0._wp       ! prepare the next time step (domain averaged array reset to zero) 
     115               tmo(:) = 0._wp                     ! prepare the next time step (domain averaged array reset to zero) 
    118116               smo(:) = 0._wp 
    119117               t2 (:) = 0._wp 
     
    137135            END DO 
    138136            !                  
    139             IF( ktrd == jpdyn_trd_zdf ) THEN      ! zdf trend: compute separately the surface forcing trend 
     137            IF( ktrd == jpdyn_zdf ) THEN      ! zdf trend: compute separately the surface forcing trend 
    140138               z1_2rau0 = 0.5_wp / rau0 
    141139               DO jj = 1, jpjm1 
     
    145143                     zvs = ( vtau_b(ji,jj) + vtau(ji,jj) ) * tmask_i(ji  ,jj+1) * tmask_i(ji,jj) * vmask(ji,jj,jk)   & 
    146144                        &                       * z1_2rau0 * e1v    (ji  ,jj  ) * e2v    (ji,jj) * fse3u(ji,jj,jk) 
    147                      umo(jpdyn_trd_tau) = umo(jpdyn_trd_tau) + zvt 
    148                      vmo(jpdyn_trd_tau) = vmo(jpdyn_trd_tau) + zvs 
    149                      hke(jpdyn_trd_tau) = hke(jpdyn_trd_tau) + un(ji,jj,1) * zvt + vn(ji,jj,1) * zvs 
     145                     umo(jpdyn_tau) = umo(jpdyn_tau) + zvt 
     146                     vmo(jpdyn_tau) = vmo(jpdyn_tau) + zvs 
     147                     hke(jpdyn_tau) = hke(jpdyn_tau) + un(ji,jj,1) * zvt + vn(ji,jj,1) * zvs 
    150148                  END DO 
    151149               END DO 
    152150            ENDIF 
    153151            !                        
    154             IF( ktrd == jpdyn_trd_atf ) THEN     ! last trend (asselin time filter) 
     152            IF( ktrd == jpdyn_atf ) THEN     ! last trend (asselin time filter) 
    155153               ! 
    156154               IF( ln_bfrimp ) THEN                   ! implicit bfr case: compute separately the bottom friction  
     
    162160                        zvt = bfrua(ji,jj) * un(ji,jj,ikbu) * e1u(ji,jj) * e2v(ji,jj) 
    163161                        zvs = bfrva(ji,jj) * vn(ji,jj,ikbv) * e1v(ji,jj) * e2v(ji,jj) 
    164                         umo(jpdyn_trd_bfr) = umo(jpdyn_trd_bfr) + zvt 
    165                         vmo(jpdyn_trd_bfr) = vmo(jpdyn_trd_bfr) + zvs 
    166                         hke(jpdyn_trd_bfr) = hke(jpdyn_trd_bfr) + un(ji,jj,ikbu) * zvt + vn(ji,jj,ikbv) * zvs 
     162                        umo(jpdyn_bfr) = umo(jpdyn_bfr) + zvt 
     163                        vmo(jpdyn_bfr) = vmo(jpdyn_bfr) + zvs 
     164                        hke(jpdyn_bfr) = hke(jpdyn_bfr) + un(ji,jj,ikbu) * zvt + vn(ji,jj,ikbv) * zvs 
    167165                     END DO 
    168166                  END DO 
    169167               ENDIF 
    170168               !  
    171                CALL trd_dwr( kt )                     ! print the results in ocean.output 
     169               CALL glo_dyn_wri( kt )                 ! print the results in ocean.output 
    172170               !                 
    173171               umo(:) = 0._wp                         ! reset for the next time step 
     
    183181      CALL wrk_dealloc( jpi, jpj, ztswu, ztswv, z2dx, z2dy ) 
    184182      ! 
    185    END SUBROUTINE trd_budget 
    186  
    187  
    188    SUBROUTINE trd_icp_init 
     183   END SUBROUTINE trd_glo 
     184 
     185 
     186   SUBROUTINE trd_glo_init 
    189187      !!--------------------------------------------------------------------- 
    190       !!                  ***  ROUTINE trd_icp_init  *** 
     188      !!                  ***  ROUTINE trd_glo_init  *** 
    191189      !!  
    192190      !! ** Purpose :   Read the namtrd namelist 
     
    197195      IF(lwp) THEN 
    198196         WRITE(numout,*) 
    199          WRITE(numout,*) 'trd_icp_init : integral constraints properties trends' 
     197         WRITE(numout,*) 'trd_glo_init : integral constraints properties trends' 
    200198         WRITE(numout,*) '~~~~~~~~~~~~~' 
    201199      ENDIF 
     
    210208      IF(lwp) WRITE(numout,*) '                total ocean volume at T-point   tvolt = ',tvolt 
    211209 
    212 #if  defined key_trddyn 
    213210      ! Initialization of potential to kinetic energy conversion 
    214211      rpktrd = 0._wp 
     
    233230         WRITE(numout,*) '                total ocean volume at V-point   tvolv = ',tvolv 
    234231      ENDIF 
    235 #endif 
    236       ! 
    237    END SUBROUTINE trd_icp_init 
    238  
    239  
    240    SUBROUTINE trd_dwr( kt ) 
     232      ! 
     233   END SUBROUTINE trd_glo_init 
     234 
     235 
     236   SUBROUTINE glo_dyn_wri( kt ) 
    241237      !!--------------------------------------------------------------------- 
    242       !!                  ***  ROUTINE trd_dwr  *** 
     238      !!                  ***  ROUTINE glo_dyn_wri  *** 
    243239      !!  
    244       !! ** Purpose :  write dynamic trends in ocean.output  
     240      !! ** Purpose :  write global averaged U, KE, PE<->KE trends in ocean.output  
    245241      !!---------------------------------------------------------------------- 
    246242      INTEGER, INTENT(in) ::   kt   ! ocean time-step index 
     
    319315            WRITE (numout,*) 
    320316            WRITE (numout,9500) kt 
    321             WRITE (numout,9501) umo(jpdyn_trd_hpg) / tvolu, vmo(jpdyn_trd_hpg) / tvolv 
    322             WRITE (numout,9509) umo(jpdyn_trd_spg) / tvolu, vmo(jpdyn_trd_spg) / tvolv 
    323             WRITE (numout,9502) umo(jpdyn_trd_keg) / tvolu, vmo(jpdyn_trd_keg) / tvolv 
    324             WRITE (numout,9503) umo(jpdyn_trd_rvo) / tvolu, vmo(jpdyn_trd_rvo) / tvolv 
    325             WRITE (numout,9504) umo(jpdyn_trd_pvo) / tvolu, vmo(jpdyn_trd_pvo) / tvolv 
    326             WRITE (numout,9507) umo(jpdyn_trd_zad) / tvolu, vmo(jpdyn_trd_zad) / tvolv 
    327             WRITE (numout,9505) umo(jpdyn_trd_ldf) / tvolu, vmo(jpdyn_trd_ldf) / tvolv 
    328             WRITE (numout,9508) umo(jpdyn_trd_zdf) / tvolu, vmo(jpdyn_trd_zdf) / tvolv 
    329             WRITE (numout,9510) umo(jpdyn_trd_tau) / tvolu, vmo(jpdyn_trd_tau) / tvolv 
    330             WRITE (numout,9511) umo(jpdyn_trd_bfr) / tvolu, vmo(jpdyn_trd_bfr) / tvolv 
    331             WRITE (numout,9512) umo(jpdyn_trd_atf) / tvolu, vmo(jpdyn_trd_atf) / tvolv 
     317            WRITE (numout,9501) umo(jpdyn_hpg) / tvolu, vmo(jpdyn_hpg) / tvolv 
     318            WRITE (numout,9509) umo(jpdyn_spg) / tvolu, vmo(jpdyn_spg) / tvolv 
     319            WRITE (numout,9502) umo(jpdyn_keg) / tvolu, vmo(jpdyn_keg) / tvolv 
     320            WRITE (numout,9503) umo(jpdyn_rvo) / tvolu, vmo(jpdyn_rvo) / tvolv 
     321            WRITE (numout,9504) umo(jpdyn_pvo) / tvolu, vmo(jpdyn_pvo) / tvolv 
     322            WRITE (numout,9507) umo(jpdyn_zad) / tvolu, vmo(jpdyn_zad) / tvolv 
     323            WRITE (numout,9505) umo(jpdyn_ldf) / tvolu, vmo(jpdyn_ldf) / tvolv 
     324            WRITE (numout,9508) umo(jpdyn_zdf) / tvolu, vmo(jpdyn_zdf) / tvolv 
     325            WRITE (numout,9510) umo(jpdyn_tau) / tvolu, vmo(jpdyn_tau) / tvolv 
     326            WRITE (numout,9511) umo(jpdyn_bfr) / tvolu, vmo(jpdyn_bfr) / tvolv 
     327            WRITE (numout,9512) umo(jpdyn_atf) / tvolu, vmo(jpdyn_atf) / tvolv 
    332328            WRITE (numout,9513) 
    333329            WRITE (numout,9514)                                                 & 
    334             &     (  umo(jpdyn_trd_hpg) + umo(jpdyn_trd_spg) + umo(jpdyn_trd_keg) + umo(jpdyn_trd_rvo)   & 
    335             &      + umo(jpdyn_trd_pvo) + umo(jpdyn_trd_zad) + umo(jpdyn_trd_ldf) + umo(jpdyn_trd_zdf)   & 
    336             &      + umo(jpdyn_trd_tau) + umo(jpdyn_trd_bfr) + umo(jpdyn_trd_atf) ) / tvolu,   & 
    337             &     (  vmo(jpdyn_trd_hpg) + vmo(jpdyn_trd_spg) + vmo(jpdyn_trd_keg) + vmo(jpdyn_trd_rvo)   & 
    338             &      + vmo(jpdyn_trd_pvo) + vmo(jpdyn_trd_zad) + vmo(jpdyn_trd_ldf) + vmo(jpdyn_trd_zdf)   & 
    339             &      + vmo(jpdyn_trd_tau) + vmo(jpdyn_trd_bfr) + vmo(jpdyn_trd_atf) ) / tvolv 
     330            &     (  umo(jpdyn_hpg) + umo(jpdyn_spg) + umo(jpdyn_keg) + umo(jpdyn_rvo)   & 
     331            &      + umo(jpdyn_pvo) + umo(jpdyn_zad) + umo(jpdyn_ldf) + umo(jpdyn_zdf)   & 
     332            &      + umo(jpdyn_tau) + umo(jpdyn_bfr) + umo(jpdyn_atf) ) / tvolu,   & 
     333            &     (  vmo(jpdyn_hpg) + vmo(jpdyn_spg) + vmo(jpdyn_keg) + vmo(jpdyn_rvo)   & 
     334            &      + vmo(jpdyn_pvo) + vmo(jpdyn_zad) + vmo(jpdyn_ldf) + vmo(jpdyn_zdf)   & 
     335            &      + vmo(jpdyn_tau) + vmo(jpdyn_bfr) + vmo(jpdyn_atf) ) / tvolv 
    340336         ENDIF 
    341337 
     
    359355            WRITE (numout,*) 
    360356            WRITE (numout,9520) kt 
    361             WRITE (numout,9521) hke(jpdyn_trd_hpg) / tvolt 
    362             WRITE (numout,9529) hke(jpdyn_trd_spg) / tvolt 
    363             WRITE (numout,9522) hke(jpdyn_trd_keg) / tvolt 
    364             WRITE (numout,9523) hke(jpdyn_trd_rvo) / tvolt 
    365             WRITE (numout,9524) hke(jpdyn_trd_pvo) / tvolt 
    366             WRITE (numout,9527) hke(jpdyn_trd_zad) / tvolt 
    367             WRITE (numout,9525) hke(jpdyn_trd_ldf) / tvolt 
    368             WRITE (numout,9528) hke(jpdyn_trd_zdf) / tvolt 
    369             WRITE (numout,9530) hke(jpdyn_trd_tau) / tvolt 
    370             WRITE (numout,9531) hke(jpdyn_trd_bfr) / tvolt 
    371             WRITE (numout,9532) hke(jpdyn_trd_atf) / tvolt 
     357            WRITE (numout,9521) hke(jpdyn_hpg) / tvolt 
     358            WRITE (numout,9529) hke(jpdyn_spg) / tvolt 
     359            WRITE (numout,9522) hke(jpdyn_keg) / tvolt 
     360            WRITE (numout,9523) hke(jpdyn_rvo) / tvolt 
     361            WRITE (numout,9524) hke(jpdyn_pvo) / tvolt 
     362            WRITE (numout,9527) hke(jpdyn_zad) / tvolt 
     363            WRITE (numout,9525) hke(jpdyn_ldf) / tvolt 
     364            WRITE (numout,9528) hke(jpdyn_zdf) / tvolt 
     365            WRITE (numout,9530) hke(jpdyn_tau) / tvolt 
     366            WRITE (numout,9531) hke(jpdyn_bfr) / tvolt 
     367            WRITE (numout,9532) hke(jpdyn_atf) / tvolt 
    372368            WRITE (numout,9533) 
    373369            WRITE (numout,9534)   & 
    374             &     (  hke(jpdyn_trd_hpg) + hke(jpdyn_trd_spg) + hke(jpdyn_trd_keg) + hke(jpdyn_trd_rvo)   & 
    375             &      + hke(jpdyn_trd_pvo) + hke(jpdyn_trd_zad) + hke(jpdyn_trd_ldf) + hke(jpdyn_trd_zdf)   & 
    376             &      + hke(jpdyn_trd_tau) + hke(jpdyn_trd_bfr) + hke(jpdyn_trd_atf)  ) / tvolt 
     370            &     (  hke(jpdyn_hpg) + hke(jpdyn_spg) + hke(jpdyn_keg) + hke(jpdyn_rvo)   & 
     371            &      + hke(jpdyn_pvo) + hke(jpdyn_zad) + hke(jpdyn_ldf) + hke(jpdyn_zdf)   & 
     372            &      + hke(jpdyn_tau) + hke(jpdyn_bfr) + hke(jpdyn_atf)  ) / tvolt 
    377373         ENDIF 
    378374 
     
    396392            WRITE (numout,*) 
    397393            WRITE (numout,9540) kt 
    398             WRITE (numout,9541) ( hke(jpdyn_trd_keg) + hke(jpdyn_trd_rvo) + hke(jpdyn_trd_zad) ) / tvolt 
    399             WRITE (numout,9542) ( hke(jpdyn_trd_keg) + hke(jpdyn_trd_zad) ) / tvolt 
    400             WRITE (numout,9543) ( hke(jpdyn_trd_pvo) ) / tvolt 
    401             WRITE (numout,9544) ( hke(jpdyn_trd_rvo) ) / tvolt 
    402             WRITE (numout,9545) ( hke(jpdyn_trd_spg) ) / tvolt 
    403             WRITE (numout,9546) ( hke(jpdyn_trd_ldf) ) / tvolt 
    404             WRITE (numout,9547) ( hke(jpdyn_trd_zdf) ) / tvolt 
    405             WRITE (numout,9548) ( hke(jpdyn_trd_hpg) ) / tvolt, rpktrd / tvolt 
     394            WRITE (numout,9541) ( hke(jpdyn_keg) + hke(jpdyn_rvo) + hke(jpdyn_zad) ) / tvolt 
     395            WRITE (numout,9542) ( hke(jpdyn_keg) + hke(jpdyn_zad) ) / tvolt 
     396            WRITE (numout,9543) ( hke(jpdyn_pvo) ) / tvolt 
     397            WRITE (numout,9544) ( hke(jpdyn_rvo) ) / tvolt 
     398            WRITE (numout,9545) ( hke(jpdyn_spg) ) / tvolt 
     399            WRITE (numout,9546) ( hke(jpdyn_ldf) ) / tvolt 
     400            WRITE (numout,9547) ( hke(jpdyn_zdf) ) / tvolt 
     401            WRITE (numout,9548) ( hke(jpdyn_hpg) ) / tvolt, rpktrd / tvolt 
    406402            WRITE (numout,*) 
    407403            WRITE (numout,*) 
     
    425421      CALL wrk_dealloc( jpi, jpj, jpk, zkx, zky, zkz, zkepe ) 
    426422      ! 
    427    END SUBROUTINE trd_dwr 
    428  
    429  
    430    SUBROUTINE trd_twr( kt ) 
     423   END SUBROUTINE glo_dyn_wri 
     424 
     425 
     426   SUBROUTINE glo_tra_wri( kt ) 
    431427      !!--------------------------------------------------------------------- 
    432       !!                  ***  ROUTINE trd_twr  *** 
     428      !!                  ***  ROUTINE glo_tra_wri  *** 
    433429      !!  
    434       !! ** Purpose :  write active tracers trends in ocean.output  
     430      !! ** Purpose :  write global domain averaged of T and T^2 trends in ocean.output  
    435431      !!---------------------------------------------------------------------- 
    436432      INTEGER, INTENT(in) ::   kt   ! ocean time-step index 
     
    460456            WRITE (numout,*) 
    461457            WRITE (numout,9400) kt 
    462             WRITE (numout,9401)  tmo(jptra_trd_xad) / tvolt, smo(jptra_trd_xad) / tvolt 
    463             WRITE (numout,9411)  tmo(jptra_trd_yad) / tvolt, smo(jptra_trd_yad) / tvolt 
    464             WRITE (numout,9402)  tmo(jptra_trd_zad) / tvolt, smo(jptra_trd_zad) / tvolt 
    465             WRITE (numout,9403)  tmo(jptra_trd_ldf) / tvolt, smo(jptra_trd_ldf) / tvolt 
    466             WRITE (numout,9404)  tmo(jptra_trd_zdf) / tvolt, smo(jptra_trd_zdf) / tvolt 
    467             WRITE (numout,9405)  tmo(jptra_trd_npc) / tvolt, smo(jptra_trd_npc) / tvolt 
    468             WRITE (numout,9406)  tmo(jptra_trd_dmp) / tvolt, smo(jptra_trd_dmp) / tvolt 
    469             WRITE (numout,9407)  tmo(jptra_trd_qsr) / tvolt 
    470             WRITE (numout,9408)  tmo(jptra_trd_nsr) / tvolt, smo(jptra_trd_nsr) / tvolt 
     458            WRITE (numout,9401)  tmo(jptra_xad) / tvolt, smo(jptra_xad) / tvolt 
     459            WRITE (numout,9411)  tmo(jptra_yad) / tvolt, smo(jptra_yad) / tvolt 
     460            WRITE (numout,9402)  tmo(jptra_zad) / tvolt, smo(jptra_zad) / tvolt 
     461            WRITE (numout,9403)  tmo(jptra_ldf) / tvolt, smo(jptra_ldf) / tvolt 
     462            WRITE (numout,9404)  tmo(jptra_zdf) / tvolt, smo(jptra_zdf) / tvolt 
     463            WRITE (numout,9405)  tmo(jptra_npc) / tvolt, smo(jptra_npc) / tvolt 
     464            WRITE (numout,9406)  tmo(jptra_dmp) / tvolt, smo(jptra_dmp) / tvolt 
     465            WRITE (numout,9407)  tmo(jptra_qsr) / tvolt 
     466            WRITE (numout,9408)  tmo(jptra_nsr) / tvolt, smo(jptra_nsr) / tvolt 
    471467            WRITE (numout,9409)  
    472             WRITE (numout,9410) (  tmo(jptra_trd_xad) + tmo(jptra_trd_yad) + tmo(jptra_trd_zad) + tmo(jptra_trd_ldf) + tmo(jptra_trd_zdf)   & 
    473             &                    + tmo(jptra_trd_npc) + tmo(jptra_trd_dmp) + tmo(jptra_trd_qsr) + tmo(jptra_trd_nsr) ) / tvolt,   & 
    474             &                   (  smo(jptra_trd_xad) + smo(jptra_trd_yad) + smo(jptra_trd_zad) + smo(jptra_trd_ldf) + smo(jptra_trd_zdf)   & 
    475             &                    + smo(jptra_trd_npc) + smo(jptra_trd_dmp)                   + smo(jptra_trd_nsr) ) / tvolt 
     468            WRITE (numout,9410) (  tmo(jptra_xad) + tmo(jptra_yad) + tmo(jptra_zad) + tmo(jptra_ldf) + tmo(jptra_zdf)   & 
     469            &                    + tmo(jptra_npc) + tmo(jptra_dmp) + tmo(jptra_qsr) + tmo(jptra_nsr) ) / tvolt,   & 
     470            &                   (  smo(jptra_xad) + smo(jptra_yad) + smo(jptra_zad) + smo(jptra_ldf) + smo(jptra_zdf)   & 
     471            &                    + smo(jptra_npc) + smo(jptra_dmp)                   + smo(jptra_nsr) ) / tvolt 
    476472         ENDIF 
    477473 
     
    495491            WRITE (numout,*) 
    496492            WRITE (numout,9420) kt 
    497             WRITE (numout,9421)   t2(jptra_trd_xad) / tvolt, s2(jptra_trd_xad) / tvolt 
    498             WRITE (numout,9431)   t2(jptra_trd_yad) / tvolt, s2(jptra_trd_yad) / tvolt 
    499             WRITE (numout,9422)   t2(jptra_trd_zad) / tvolt, s2(jptra_trd_zad) / tvolt 
    500             WRITE (numout,9423)   t2(jptra_trd_ldf) / tvolt, s2(jptra_trd_ldf) / tvolt 
    501             WRITE (numout,9424)   t2(jptra_trd_zdf) / tvolt, s2(jptra_trd_zdf) / tvolt 
    502             WRITE (numout,9425)   t2(jptra_trd_npc) / tvolt, s2(jptra_trd_npc) / tvolt 
    503             WRITE (numout,9426)   t2(jptra_trd_dmp) / tvolt, s2(jptra_trd_dmp) / tvolt 
    504             WRITE (numout,9427)   t2(jptra_trd_qsr) / tvolt 
    505             WRITE (numout,9428)   t2(jptra_trd_nsr) / tvolt, s2(jptra_trd_nsr) / tvolt 
     493            WRITE (numout,9421)   t2(jptra_xad) / tvolt, s2(jptra_xad) / tvolt 
     494            WRITE (numout,9431)   t2(jptra_yad) / tvolt, s2(jptra_yad) / tvolt 
     495            WRITE (numout,9422)   t2(jptra_zad) / tvolt, s2(jptra_zad) / tvolt 
     496            WRITE (numout,9423)   t2(jptra_ldf) / tvolt, s2(jptra_ldf) / tvolt 
     497            WRITE (numout,9424)   t2(jptra_zdf) / tvolt, s2(jptra_zdf) / tvolt 
     498            WRITE (numout,9425)   t2(jptra_npc) / tvolt, s2(jptra_npc) / tvolt 
     499            WRITE (numout,9426)   t2(jptra_dmp) / tvolt, s2(jptra_dmp) / tvolt 
     500            WRITE (numout,9427)   t2(jptra_qsr) / tvolt 
     501            WRITE (numout,9428)   t2(jptra_nsr) / tvolt, s2(jptra_nsr) / tvolt 
    506502            WRITE (numout,9429) 
    507             WRITE (numout,9430) (  t2(jptra_trd_xad) + t2(jptra_trd_yad) + t2(jptra_trd_zad) + t2(jptra_trd_ldf) + t2(jptra_trd_zdf)   & 
    508             &                    + t2(jptra_trd_npc) + t2(jptra_trd_dmp) + t2(jptra_trd_qsr) + t2(jptra_trd_nsr) ) / tvolt,   & 
    509             &                   (  s2(jptra_trd_xad) + s2(jptra_trd_yad) + s2(jptra_trd_zad) + s2(jptra_trd_ldf) + s2(jptra_trd_zdf)   & 
    510             &                    + s2(jptra_trd_npc) + s2(jptra_trd_dmp)                  + s2(jptra_trd_nsr) ) / tvolt 
     503            WRITE (numout,9430) (  t2(jptra_xad) + t2(jptra_yad) + t2(jptra_zad) + t2(jptra_ldf) + t2(jptra_zdf)   & 
     504            &                    + t2(jptra_npc) + t2(jptra_dmp) + t2(jptra_qsr) + t2(jptra_nsr) ) / tvolt,   & 
     505            &                   (  s2(jptra_xad) + s2(jptra_yad) + s2(jptra_zad) + s2(jptra_ldf) + s2(jptra_zdf)   & 
     506            &                    + s2(jptra_npc) + s2(jptra_dmp)                  + s2(jptra_nsr) ) / tvolt 
    511507         ENDIF 
    512508 
     
    530526            WRITE (numout,*) 
    531527            WRITE (numout,9440) kt 
    532             WRITE (numout,9441) ( tmo(jptra_trd_xad)+tmo(jptra_trd_yad)+tmo(jptra_trd_zad) )/tvolt,   & 
    533             &                   ( smo(jptra_trd_xad)+smo(jptra_trd_yad)+smo(jptra_trd_zad) )/tvolt 
    534             WRITE (numout,9442)   tmo(jptra_trd_sad)/tvolt,  smo(jptra_trd_sad)/tvolt 
    535             WRITE (numout,9443)   tmo(jptra_trd_ldf)/tvolt,  smo(jptra_trd_ldf)/tvolt 
    536             WRITE (numout,9444)   tmo(jptra_trd_zdf)/tvolt,  smo(jptra_trd_zdf)/tvolt 
    537             WRITE (numout,9445)   tmo(jptra_trd_npc)/tvolt,  smo(jptra_trd_npc)/tvolt 
    538             WRITE (numout,9446) ( t2(jptra_trd_xad)+t2(jptra_trd_yad)+t2(jptra_trd_zad) )/tvolt,    & 
    539             &                   ( s2(jptra_trd_xad)+s2(jptra_trd_yad)+s2(jptra_trd_zad) )/tvolt 
    540             WRITE (numout,9447)   t2(jptra_trd_ldf)/tvolt,   s2(jptra_trd_ldf)/tvolt 
    541             WRITE (numout,9448)   t2(jptra_trd_zdf)/tvolt,   s2(jptra_trd_zdf)/tvolt 
    542             WRITE (numout,9449)   t2(jptra_trd_npc)/tvolt,   s2(jptra_trd_npc)/tvolt 
     528            WRITE (numout,9441) ( tmo(jptra_xad)+tmo(jptra_yad)+tmo(jptra_zad) )/tvolt,   & 
     529            &                   ( smo(jptra_xad)+smo(jptra_yad)+smo(jptra_zad) )/tvolt 
     530            WRITE (numout,9442)   tmo(jptra_sad)/tvolt,  smo(jptra_sad)/tvolt 
     531            WRITE (numout,9443)   tmo(jptra_ldf)/tvolt,  smo(jptra_ldf)/tvolt 
     532            WRITE (numout,9444)   tmo(jptra_zdf)/tvolt,  smo(jptra_zdf)/tvolt 
     533            WRITE (numout,9445)   tmo(jptra_npc)/tvolt,  smo(jptra_npc)/tvolt 
     534            WRITE (numout,9446) ( t2(jptra_xad)+t2(jptra_yad)+t2(jptra_zad) )/tvolt,    & 
     535            &                   ( s2(jptra_xad)+s2(jptra_yad)+s2(jptra_zad) )/tvolt 
     536            WRITE (numout,9447)   t2(jptra_ldf)/tvolt,   s2(jptra_ldf)/tvolt 
     537            WRITE (numout,9448)   t2(jptra_zdf)/tvolt,   s2(jptra_zdf)/tvolt 
     538            WRITE (numout,9449)   t2(jptra_npc)/tvolt,   s2(jptra_npc)/tvolt 
    543539         ENDIF 
    544540 
     
    558554      ENDIF 
    559555      ! 
    560    END SUBROUTINE trd_twr 
     556   END SUBROUTINE glo_tra_wri 
    561557 
    562558   !!====================================================================== 
    563 END MODULE trdicp 
     559END MODULE trdglo 
Note: See TracChangeset for help on using the changeset viewer.