* PACKAGE  ATFIL !" 共通 時間フィルター  
*
*"  [HIS] 90/09/08(takepiro) 
*
*
***********************************************************************
      SUBROUTINE TFILT      !"  タイムフィルター 
     M         ( GBU   , GBV   , GBW   , GBT   , 
     M           GBTOR , GBPOR ,
     I           GAU   , GAV   , GAW   , GAT   , 
     I           GATOR , GAPOR ,
     C           TFIL                        )
*
#ifdef SYS_IBMS
      INCLUDE   (ZCDIM)                      !" 格子点数，波数
#else
#include        "zcdim.F"                    !" 格子点数，波数
#endif
*
*    [MODIFY]
      REAL       GBU   ( IDIM*JDIM*KMAX )    !" 西風   ｕ(t-Δt)
      REAL       GBV   ( IDIM*JDIM*KMAX )    !" 南風   ｖ(t-Δt)
      REAL       GBW   ( IDIM*JDIM*KMAX )    !" 鉛直風 ｗ(t-Δt)
      REAL       GBT   ( IDIM*JDIM*KMAX )    !" 温度   Ｔ(t-Δt)
      REAL       GBTOR ( IDIM*JDIM*KMAX )    !" トロイダル Ψ(t-Δt)
      REAL       GBPOR ( IDIM*JDIM*KMAX )    !" ポロイダル Φ(t-Δt)
*
*    [INPUT]
      REAL       GAU   ( IDIM*JDIM*KMAX )    !" 西風   ｕ(t)
      REAL       GAV   ( IDIM*JDIM*KMAX )    !" 南風   ｖ(t)
      REAL       GAW   ( IDIM*JDIM*KMAX )    !" 鉛直風 ｗ(t)
      REAL       GAT   ( IDIM*JDIM*KMAX )    !" 温度   Ｔ(t)
      REAL       GATOR ( IDIM*JDIM*KMAX )    !" トロイダル Ψ(t)
      REAL       GAPOR ( IDIM*JDIM*KMAX )    !" ポロイダル Φ(t)
      REAL       TFIL                        !" 時間フィルター係数
*
*    [INTERNAL WORK]
      COMMON    /COMWRK/
     &           GBBU  , GBBV  , GBBT  ,
     &           GBBTOR, GBBPOR
      REAL       GBBU  ( IDIM*JDIM*KMAX )    !" 西風   ｕ セーブ値
      REAL       GBBV  ( IDIM*JDIM*KMAX )    !" 南風   ｖ セーブ値
      REAL       GBBW  ( IDIM*JDIM*KMAX )    !" 鉛直風 ｗ セーブ値
      REAL       GBBT  ( IDIM*JDIM*KMAX )    !" 温度   Ｔ セーブ値
      REAL       GBBTOR( IDIM*JDIM*KMAX )    !" トロイダル Ψ セーブ値
      REAL       GBBPOR( IDIM*JDIM*KMAX )    !" ポロイダル Φ セーブ値
*
      REAL       TFIL1
      INTEGER    IJK
*
*"         < 1.  (t-Δt)のデータをロード >
*
      CALL LOADGB
     O         ( GBBU  , GBBV  , GBBW  , GBBT  , 
     O           GBBTOR, GBBPOR                   )
*
*"         < 2. 時間フィルター >
*
      TFIL1 = 1. - 2. * TFIL
*
      DO 1100 IJK = 1, IDIM*JDIM*KMAX
         GBU  ( IJK ) = TFIL1 * GBU   ( IJK )
     &                + TFIL  * GAU   ( IJK )
     &                + TFIL  * GBBU  ( IJK )
         GBV  ( IJK ) = TFIL1 * GBV   ( IJK )
     &                + TFIL  * GAV   ( IJK )
     &                + TFIL  * GBBV  ( IJK )
         GBW  ( IJK ) = TFIL1 * GBW   ( IJK )
     &                + TFIL  * GAW   ( IJK )
     &                + TFIL  * GBBW  ( IJK )
         GBT  ( IJK ) = TFIL1 * GBT   ( IJK )
     &                + TFIL  * GAT   ( IJK )
     &                + TFIL  * GBBT  ( IJK )
         GBTOR( IJK ) = TFIL1 * GBTOR ( IJK )
     &                + TFIL  * GATOR ( IJK )
     &                + TFIL  * GBBTOR( IJK )
         GBPOR( IJK ) = TFIL1 * GBPOR ( IJK )
     &                + TFIL  * GAPOR ( IJK )
     &                + TFIL  * GBBPOR( IJK )
 1100 CONTINUE
*
      RETURN
      END
