24小时热门版块排行榜    

查看: 759  |  回复: 0

17839223730

新虫 (初入文坛)

[求助] 解一维含时薛定谔方程,图像不合心意,急!!!

一维无限深势阱中央有一个势垒,给出一个正态分布的psy初始条件,代入薛定谔方程看其随时间的演化。
      先用Fortran写的程序,之后用origin画的图(图见附件),可是psy波函数解出来后应该是随时间而变化的,但我的随时间轴只是简单的平移(图中是垂直于x轴平移,而理论上应该在xoy平面上与x轴有一定的夹角的平移——这样才能显出随时间演化)。第二种方法:我把psy(念为pusai)函数分解为实部和虚部,代回到薛定谔方程所得到的两个对应项的方程,然后仍旧是使用差分解法。理论上两种方法基本没有区别,而实际上我的图也确实无异,但这更加使我疑惑,不知道问题出现在了哪里。
      老师说我图像不对的原因是——M(空间的步数),N(时间的步数),Tao(即dx,空间步长)和h(即dt,时间步长)的值设置的不合理,而我试了两个晚上,终究还是没出来结果。其他考试临近,实在没太多时间执着于这个问题了,万望高人指点


program time_dependent_schrodinger_equation
    implicit none
    integer,parameter::M=150,N=500
    integer::i,j
    real*16::hba=1.,mu=1./2
!hba即(普朗克常数/2/pi),mu为质量
    real*16::l=150,T1=5
    real,external::V !势能函数(即U)
    real*16,dimension(M)::x,x1
    real*16,dimension(N)::t,normalize,psy4
    real*16,dimension(M,N)::psy2,psy3  !psy2为对复数psy取模并求其平方的大小,psy3,即为归一化后的波恩诠释下的概率。
    complex*16,dimension(M,N)::psy
    complex::cj
    real*16::h,tao,pi
    h=l/M
    tao=T1/N
    pi=asin(1.)*2
    cj=(0.,1.)  !虚数单位
!给出初始边界及初始值
       do j=1,N
        psy(1,j)=0
        psy(M,j)=0 !边界设定为无限深势阱
    end do
    do i=2,M-1
        x1(i)=i*h
        psy(i,1)=exp(((-1)*(x1(i)*0.2-5)**2./2.)/(2.*pi))   !阱内给出初始值
    end do                          !x(i)比着正常多乘上个0。2,平移了波的位置
!中心差法解薛定谔方程
    do j=1,N-1
        do i=2,m-1
            psy(i,j+1)=psy(i,j)+cj*tao*((psy(i+1,j)-2*psy(i,j)+psy(i-1,j))/(h**2)-V(i)*psy(i,j))    !核心内容,将中心差法代入薛定谔方程并整理
            psy2(i,j+1)=(abs(psy(i,j+1)))**2
       !     write(13,*) psy2(i,j+1)
        end do
    end do
!归一化
    do j=2,n
        normalize(j)=(sum(psy2(1:m,j)))!**0.5   
    end do
    do j=2,N
        do i=2,m-1
            x(i)=i*h
            t(j)=j*tao
            psy3(i,j)=psy2(i,j)/(normalize(j))!**2
            write(13,*) x(i),t(j),psy3(i,j)
        end do
        psy4(j)=sum(psy3(1:M,j))
    !    write(14,*) psy4(j)   !检验归一化的正确性
    end do
    stop
    end
!给出势函数
real    function V(i)
        implicit none
        integer::i
        v=0
        if (abs(i-75)-5<1.e-6) then
          V=10.
        end if
!   if abs(x-40)<3&abs(x-60)<3
!   V=10
        return
end

解一维含时薛定谔方程,图像不合心意,急!!!
前5S的图像


解一维含时薛定谔方程,图像不合心意,急!!!-1
初始时刻的值


解一维含时薛定谔方程,图像不合心意,急!!!-2
一维薛定谔方程,取hba=1,mu=0.5

[ Last edited by 17839223730 on 2017-1-5 at 23:24 ]
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 17839223730 的主题更新
信息提示
请填处理意见