*"表題   BARO 力学 スペクトル→格子点値 GCM5(BDGENG)
*
*"履歴   90/08/31 沼口  敦
*"       92/04/02 竹広真一
*"       96/08/23 竹広真一
*"       96/11/15 竹広真一
*
************************************************************************
*"            << 新格子点値の生成 >>
************************************************************************
      SUBROUTINE GENGD
     O         ( GDU   , GDV   ,
     O           GDVOR ,
     I           WDVOR ,
     C           EDEL  , UVFACT          )
*
#if   SYS_IBMS
      INCLUDE   (ZCDIM)                  !" 格子点数, 波数
#else
#include        "zcdim.F"                    !" 格子点数, 波数
#endif
*
      REAL       GDU   ( IDIM*JDIM, KMAX )   !" 西風  Ｕ
      REAL       GDV   ( IDIM*JDIM, KMAX )   !" 南風  Ｖ
      REAL       GDVOR ( IDIM*JDIM, KMAX )   !" 渦度  ζ
*
      REAL       WDVOR ( NMDIM , KMAX     )  !" 渦度  ζ
*
      REAL       EDEL  ( NMDIM  )            !" ζ,Ｄ→Ｕ,Ｖ
      REAL       UVFACT( IDIM*JDIM )         !" u→U のファクター
*
      COMMON    /COMWRK/
     &           WDPSI
      REAL       WDPSI ( NMDIM, KMAX      )  !" ψ/a スペクトル
*
      INTEGER    IJ, K, NM
*
*"          < 1. ψ/a のスペクトル >
*
      DO 1100 K = 1, KMAX
         DO 1100 NM = 1, NMDIM
            WDPSI( NM,K ) = WDVOR( NM,K ) * EDEL( NM )
 1100 CONTINUE
*
*"          < 2. ζ 格子点値 >
*
      CALL W2G
     O         ( GDVOR ,
     I           WDVOR ,
     I           '    ', 'POS ', KMAX )
*
*
*"          < 3.  Ｕ，Ｖ の格子点値 >
*
      CALL W2G
     O         ( GDU   ,
     I           WDPSI ,
     I           'YGRA', 'NEG ', KMAX )
*
      CALL W2G
     O         ( GDV   ,
     I           WDPSI ,
     I           'XGRA', 'POS ', KMAX )
*
      DO 3100 K = 1, KMAX
         DO 3100 IJ = 1, IDIM*JDIM
            GDU ( IJ,K ) = GDU ( IJ,K ) / UVFACT( IJ )
            GDV ( IJ,K ) = GDV ( IJ,K ) / UVFACT( IJ )
 3100 CONTINUE
*
      RETURN
      END
