24小时热门版块排行榜    

查看: 566  |  回复: 0

zhe852456

铁虫 (小有名气)

[求助] 求助厄米多项式

下面是一个关于厄米多项式的小程序,可是在运行中发现XA(I)和XB(I)输出的数值不一样,XB(I)都是1,如果把数组XB(I)去掉那么XA(I)的输出也变成了1......哪位高手帮忙看下~~
      IMPLICIT DOUBLE PRECISION(A-H,O-Z)
      PARAMETER (NX=256)
      PARAMETER (NA=30)
C
C.....Declare arrays.
      DIMENSION XA(NX),XB(NX)
      DIMENSION FAT(NX),HER(NX,NA)
C
      open(20,file='GRID.dat',status='unknown')
      open(30,file='HERMI.dat',status='unknown')
C.....Variable data input.
      DATA ZMU/1/
      DATA W/1/
      DATA R0/-5/
      DATA Rf/5/
      DATA PI/3.141592653589793D0/
C
C....Test that NX is even
      ITEST=MOD(NX,2)
      IF(ITEST.NE.0) THEN
        WRITE(6,*)' **** NX MUST BE EVEN-FATAL ERROR  ****'
        STOP
      END IF
C
C.....Set up grid
      WRITE(6,*)'Grid paremeters:'
      WRITE(6,*)'   Number of grid poins    = ',NX
      RMIN=R0
      RMAX=Rf
      ZL=(RMAX-RMIN)
      WRITE(6,*)'   Grid length             = ',ZL
      DX=ZL/DFLOAT(NX-1)
      WRITE(6,*)'   Grid spacings           = ',DX
C
C.....COMPUTE HERMI:

      X=RMIN
      DO 003 I=1,NX
      XA(I)=X
      XB(I)=X
      
      DO 004 J=0,NA
      IF(J.EQ.0)THEN
      HER(I,J)=1

      ELSEIF(J.EQ.1)THEN
      HER(I,J)=2*XA(I)

      ELSEIF(J.EQ.2)THEN
      HER(I,J)=4*XA(I)**2-2

      ELSEIF(J.GE.3)THEN
      HER(I,J)=2*XA(I)*HER(I,J-1)-2*(J-1)*HER(I,J-2)
      ENDIF
004   CONTINUE

      WRITE(20,*) XA(I),XB(I)
      X=X+DX
003   CONTINUE
       
      DO I=1,NX
      WRITE(30,*)I,HER(I,1)
      ENDDO
        
      STOP
      END
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

智能机器人

Robot (super robot)

我们都爱小木虫

相关版块跳转 我要订阅楼主 zhe852456 的主题更新
信息提示
请填处理意见