Aplikasi cabul



Dalam lampiran artikel, jalur partikel menyediakan bahan potong: jalur integral, percobaan dua celah pada atom neon dingin, bingkai teleportasi partikel, dan adegan lain dari kekejaman dan sifat seksual.



Menurut pendapat saya, tidak ada cara lain untuk menganggap formalisme matematika sebagai konsisten secara logis selain menunjukkan bahwa konsekuensinya menyimpang dari pengalaman, atau untuk membuktikan bahwa ramalannya tidak menguras kemungkinan pengamatan.

Niels Bohr



Sebagai kesimpulan, penulis ingin menyatakan bahwa kita hanya mengenali dua alasan bagus untuk meninggalkan teori yang menjelaskan berbagai fenomena. Pertama, teori ini tidak konsisten secara internal, dan kedua, tidak setuju dengan eksperimen.

David Bohm

Sebelumnya kami telah belajar dari mana persamaan Schrödinger berasal, mengapa persamaan ini diambil dari sana, dan bagaimana persamaan ini diambil dengan berbagai metode



iΨt=(22m2+V)Ψ



Sekarang, mari kita bagi menjadi dua persamaan nyata. Untuk melakukan ini, kami mewakili psi dalam bentuk kutubΨ=ReiS/, :



St+(S)22m22m2RR+V=0R2t+(R2Sm)=0



S, R . , , , — -, ( ).



, U=S/m. , S -, - - :



S=i2lnΨΨ



, -, , , , S, , , , . , , . -.





— , . , , , . , , , .





, , , . . . , , , .



, .





, , , . , ( - ). :





()





, , , : ,





, . . .



U=S/m=i2mlnΨΨ=mIm(ψψ)



-, :



x+=UΔt



using LinearAlgebra, SparseArrays, Plots

const ħ = 1.0546e-34 # J*s
const m = 9.1094e-31 # kg
const q = 1.6022e-19 # Kl
const nm = 1e-9 # m
const fs = 1e-12; # s

function wavefun()

    gauss(x) = exp( -(x-x0)^2 / (2*σ^2) + im*x*k )
    k = m*v/ħ

    #    
    Vm = spdiagm(0 => V )
    H = spdiagm(-1 => ones(Nx-1), 0 => -2ones(Nx), 1 => ones(Nx-1) )
    H *= ħ^2 / ( 2m*dx^2 )
    H += Vm

    A = I + 0.5im*dt/ħ * H #  
    B = I - 0.5im*dt/ħ * H # 
    psi = zeros(Complex, Nx, Nt)
    psi[:,1] = gauss.(x)

    for t = 1:Nt-1

        b = B * psi[:,t]
        #       A*psi = b
        psi[:,t+1] = A \ b
    end

    return psi
end


dx = 0.05nm # x step
dt = 0.01fs # t step
xlast = 400nm
Nt = 260 # Number of time steps
t = range(0, length = Nt, step = dt)

x = [0:dx:xlast;]
Nx = length(x) # Number of spatial steps

a1 = 200nm
a2 = 200.5nm # 5 
a3 = 205nm
a4 = 205.5nm 
#V = [ a1<xi<a2 ? 2q : 0.0 for xi in x ] # 2 eV 
V = [ a1<xi<a2 || a3<xi<a4 ? 2q : 0.0 for xi in x ] # 2 eV 

x0 = 80nm # Initial position
σ = 20nm # gauss width
v = -120nm/fs;

@time Psi = wavefun()
P = abs2.(Psi);

function ψ(xi, j)

    k = findfirst(el-> abs(el-xi)<dx, x)
    k == nothing && ( k = 1 )

    Psi[k, j]
end

function corpusculaz(n)

    X = zeros(n, Nt)
    X[:,1] = x0 .+ σ*randn(n)

    for j in 2:Nt, i in 1:n
        U = ħ/(2m*dx) * imag( ( ψ(X[i,j-1]+dx, j) -  ψ(X[i,j-1]-dx, j) ) /  ψ(X[i,j-1], j) )
        X[i,j] = X[i,j-1] - U*dt
    end

    X
end

@time X = corpusculaz(20);

plot(x, P[:, 1], legend = false)
plot!(x, P[:, 80], legend = false)
scatter!( X[:,1], zeros(20) )
scatter!( X[:,80], zeros(20) )




. — , . :





, . , , !





, . Double-slit interference with ultracold metastable neon atoms — - .







using Random, Gnuplot, Statistics
#  
function trapez(f, a, b, n)
    h = (b - a)/n
    result = 0.5*(f(a) + f(b))
    for i in 1:n-1
        result += f(a + i*h)
    end
    result * h
end
#  
function rk4(f, x, y, h)
    k1 = h * f(x       , y        )
    k2 = h * f(x + 0.5h, y + 0.5k1)
    k3 = h * f(x + 0.5h, y + 0.5k2)
    k4 = h * f(x +    h, y +    k3)

    return y + (k1 + 2*(k2 + k3) + k4)/6.0
end


const ħ = 1.055e-34 # J*s 
const kB = 1.381e-23 # J*K-1
const g = 9.8 # m/s^2

const l1 = 76e-3 # m
const l2 = 113e-3 # m
const yh = 2.8e-3 # m
const d = 6e-6 # m
const b = 2e-6 # m
const a1 = 0.5(- d - b) # 
const a2 = 0.5(- d + b)
const b1 = 0.5(  d - b)
const b2 = 0.5(  d + b)

const m = 3.349e-26 # kg
const T = 2.5e-3 # K
const σv = sqrt(kB*T/m) #  
const σ₀ = 10e-6 # 10 mkm #      
const σz = 3e-4 # 0.3 mm #  z
const σk = m*σv / (ħ*√3) # 2e8 m/s #    

v₀ = zeros(3)
k₀ = zeros(3);


: , , -, .





k



1)ψ0(x,y,z;k0x,k0y,k0z)=ψ0x(x;k0x)ψ0y(z;k0y)ψ0z(z;k0z)=(2πσ02)1/4ex2/4σ02eik0xx×(2πσ02)1/4ey2/4σ02eik0yy×(2πσz2)1/4ez2/4σz2eik0zz



, . , , , . , , .





, . , , — . , , , . , , .



Quantum Mechanics And Path Integrals, A. R. Hibbs, R. P. Feynman, , 3.6 .



,



K(β,tβ;α,tα)=Kx(xβ,tβ;xα,tα)Ky(yβ,tβ;yα,tα)Kz(zβ,tβ;zα,tα)



Kx(xβ,tβ;xα,tα)=(m2iπ(tβtα))1/2expim((xβxα)22(tβtα))Ky(yβ,tβ;yα,tα)=(m2iπ(tβtα))1/2expim((yβyα)22(tβtα))Kz(zβ,tβ;zα,tα)=(m2iπ(tβtα))1/2expim((zβzα)22(tβtα))×expim(g2(zβ+zα)(tβtα)g224(tβtα)3)



Z , . ,



ψ(β,t)=K(β,t;α,tα)ψ(α,tα)dxα,dyα,dzα



, . , X, . :



ψx(x,t;k0x)=K(x,t;xα,0)ψ0(xα)dxαψx(x,t;k0x)=(2πs02(t))1/4exp[(xv0xt)24σ0s0(t)+ik0x(xv0xt)]ρx(x,t)=(2πε02(t))1/2exp[x22ε02(t)]



ε02(t)=σ02(t)+(htσvm)2σ02(t)=σ02+(ht2mσ02)2



, :



ε₀(t) = σ₀^2 + ( ħ/(2m*σ₀) * t )^2 + (ħ*t*σv/m)^2
s₀(t) = σ₀ + im*ħ/(2m*σ₀) * t

ρₓ(x, t) = exp( -x^2 / (2ε₀(t)) ) / sqrt( 2π*ε₀(t) )

t₁(v, z) = sqrt( 2*(l1-z)/g + (v/g)^2 ) - v/g
tf1 = t₁(v₀[3], 0) # s #    
X1 = range(-100, stop = 100, length = 100)*1e-6 
Z1 = range(0, stop = l1, length = 100)
Cron1 = range(0, stop = tf1, length = 100)

P1 = [ ρₓ(x, t) for t in Cron1, x in X1 ]
P1 /= maximum(P1); #   

@gp "set title 'Wavefun before the slits'" xlab="Z, mkm" ylab="X, mkm"
@gp :- 1000Z1 1000000X1 P1 "w image notit"




— .





, :



ψx(x,t)=ψA+ψBψA=AKx(x,t;xa,t1)ψx(xa,t1,k0x)dxaψB=BKx(x,t;xb,t1)ψx(xb,t1,k0x)dxb





ρx(x,t)=+(2πσv2)1/2exp(k0x22σv2)|ψx(x,t;k0x)|2dk0x



, :



function ρₓ(xᵢ, tᵢ) 

    Kₓ(xb, tb, xa, ta) = sqrt( m/(2im*π*ħ*(tb-ta)) ) * exp( im*m*(xb-xa)^2 / (2ħ*(tb-ta)) )

    function subintrho(k) 

        ψₓ(x, t) = ( 2π*s₀(t) )^-0.25 * exp( -(x-ħ*k*t/m)^2 / (4σ₀*s₀(t)) + im*k*(x-ħ*k*t/m) )
        subintpsi(x) = Kₓ(xᵢ, tᵢ, x, tf1) * ψₓ(x, tf1)

        ψa = trapez(subintpsi, a1, a2, 200)
        ψb = trapez(subintpsi, b1, b2, 200)

        exp( -k^2 / (2σv^2) ) * abs2(ψa + ψb)
    end

    trapez(subintrho, -10σk, 10σk, 20) / sqrt( 2π*σv^2 )
end


t₂(v, z) = sqrt( 2*(l1+l2-z)/g + (v/g)^2 ) - v/g
tf2 = t₂(v₀[3], 0) # s #    
X2 = range(-800, stop = 800, length = 200)*1e-6
Z2 = range(l1, stop = l2, length = 100)
Cron2 = range(tf1, stop = tf2, length = 100)

@time P2 = [ ρₓ(x, t) for t in Cron2, x in X2 ];

P2 /= maximum(P2[4:end,:]);
@gp "set title 'Wavefun after the slits'" xlab="t, s" ylab="X, mkm"
@gp :- Cron2[4:end] 1000000X2 P2[4:end,:] "w image notit"


2 :











:



v=Sm



. . , ,



v(x,y,z,t)=Sm+logρ×sms=(0,0,/2)logρ×sm=2mρ(ρy,ρx,0)



, ,



dxdt=vx(x,t)=1mSx+2mρρy=v0x+(xv0xt)2t4m2σ02σ02(t)(yv0yt)2mσ02(t)dydt=vy(x,t)=1mSy2mρρx=v0y(yv0yt)2t4m2σ02σ02(t)+(xv0xt)2mσ02(t)dzdt=vz(z,t)=1mSz=v0z+gt+(zv0ztgt2/2)2t4m2σz2σz2(t)



x(t)=v0xt+x02+y02σ0(t)σ0cosφ(t)y(t)=v0yt+x02+y02σ0(t)σ0sinφ(t)z(t)=v0zt+12gt2+z0σz(t)σz



σ02(t)=σ02+(t2mσ0)2φ(t)=φ0+arctan(t2mσ02)cos(φ0)=x0x02+y02sin(φ0)=y0x02+y02sin(arctanx)=x1+x2cos(arctanx)=11+x2cos(a+b)=cosacosbsinasinbsin(a+b)=sinacosb+cosasinb



function xbs(t, xo, yo, vo)

    cosϕ = xo / sqrt( xo^2 + yo^2 )
    sinϕ = yo / sqrt( xo^2 + yo^2 )
    atnx = -ħ*t / (2m*σ₀^2)
    sinatnx = atnx / sqrt( atnx^2 + 1)
    cosatnx =    1 / sqrt( atnx^2 + 1)
    cosϕt = cosϕ * cosatnx - sinϕ * sinatnx
    #sinϕt = sinϕ*cosatnx + cosϕ*sinatnx

    σ₀t = sqrt( σ₀^2 + ( ħ*t / (2*m*σ₀) )^2 )

    vo*t + sqrt(xo^2 + yo^2) * σ₀t/σ₀ * cosϕt
end

@gp "set title 'Trajectories before slits'" xlab="t, s" ylab="X, mkm" # "set yrange [-10:10]"

@time for i in 1:80

    x0 = randn()*σ₀
    y0 = randn()*σ₀
    v0 = randn()*σv*1e-4

    prtclᵢ = [ xbs(t,x0,y0,v0) for t in Cron1 ]

    @gp :- Cron1 1000000prtclᵢ "with lines notit lw 2 lc rgb 'black'"
    # slits -4-> -2, 2->4 mkm
end




, , , , , . . . , .





Y , , . X . .



" " ,



vx(x,t)=1tt1[x+12(α2+βt2)(βtIm(C(x,t)H(x,t))+αRe(C(x,t)H(x,t))βtγx,t)]



18+

H(x,t)=XAbXA+bf(x,u,t)du+XBbXB+bf(x,u,t)duC(x,t)=[f(x,u,t)]u=XAbu=XA+b+[f(x,u,t)]u=XBbu=XB+bf(x,u,t)=exp[(α+iβt)u2+iγx,tu]α=14σ02(1+(t12mσ02)2)βt=m2(1tt1+1t1(1+(2mσ02t1)2))γx,t=mx(tt1)



function Uₓ(t, x)

    γ = -m*x / ( ħ*(t-tf1) )
    β = m/(2ħ) * ( 1/(t-tf1) + 1 / ( tf1*( 1 + (2m*σ₀^2 / (ħ*tf1) )^2 ) ) )
    α = -( 4σ₀^2 * ( 1 + ( ħ*tf1 / (2m*σ₀^2) )^2 ) )^-1

    f(x, u, t) = exp( ( α + im*β )*u^2 + im*γ*u )

    C = f(x, a2, t) - f(x, a1, t) + f(x, b2, t) - f(x, b1, t)
    H = trapez( u-> f(x, u, t) , a1, a2, 400) + trapez( u-> f(x, u, t) , b1, b2, 400)

    return 1/(t-tf1) * ( x - 0.5/(α^2 + β^2) * ( β*imag(C/H) + α*real(C/H) - β*γ ) )
end

init() = bitrand()[1] ? rand()*(b2 - b1) + b1 : rand()*(a2 - a1) + a1
myrng(a, b, N) = collect( range(a, stop = b, length = N ÷ 2) )




n = 1
xx = 0
ξ = 1e-5
while xx < Cron2[end]-Cron2[1]
    n+=1
    xx += (ξ*n)^2 
end
n

steps = [ (ξ*i)^2 for i in 1:n1 ]
Cronadapt = accumulate(+, steps, init = Cron2[1] )

function modelsolver(Np = 10, Nt = 100)

    #xo = [ init() for i = 1:Np ] # 
    xo = vcat( myrng(a2, a1, Np), myrng(b1, b2, Np) ) # 

    xpath = zeros(Nt, Np)
    xpath[1,:] = xo

    for i in 2:Nt, j in 1:Np
        xpath[i,j] = rk4(Uₓ, Cronadapt[i], xpath[i-1,j], steps[i] )
    end

    xpath
end


@time paths = modelsolver(20, n);

@gp "set title 'Trajectories after the slits'" xlab="t, s" ylab="X, mkm" "set yrange [-800:800]"
for i in 1:size(paths, 2)
    @gp :- Cronadapt 1e6paths[:,i] "with lines notit lw 1 lc rgb 'black'"
end


- 4 , . 2





, : , , .





. , ,



function yas(t, xo, yo, vo)

    cosϕ = xo / sqrt( xo^2 + yo^2 )
    sinϕ = yo / sqrt( xo^2 + yo^2 )
    atnx = -ħ*t / (2m*σ₀^2)
    sinatnx = atnx / sqrt( atnx^2 + 1)
    cosatnx =    1 / sqrt( atnx^2 + 1)
    #cosϕt = cosϕ * cosatnx - sinϕ * sinatnx
    sinϕt = sinϕ*cosatnx + cosϕ*sinatnx

    σ₀t = sqrt( σ₀^2 + ( ħ*t / (2*m*σ₀) )^2 )

    vo*t + sqrt(xo^2 + yo^2) * σ₀t/σ₀ * sinϕt
end

function modelsolver2(Np = 10)

    Nt = length(Cronadapt)
    xo = [ init() for i = 1:Np ]
    #xo = vcat( myrng(a2, a1, Np), myrng(b1, b2, Np) )

    xcoord = copy(xo)
    ycoord = zeros(Np)

    for i in 2:Nt, j in 1:Np
        xcoord[j] = rk4(Uₓ, Cronadapt[i], xcoord[j], steps[i] )
    end

    for (i, x) in enumerate(xo)

        y0 = randn()*yh
        v0 = 0 #randn()*σv*1e-4

        ycoord[i] = yas(Cronadapt[end], x, y0, v0)
    end

    xcoord, ycoord
end

@time X, Y = modelsolver2(100);

@gp "set title 'Impacts on the screen'" xlab="X, mm" ylab="Y, mm"# "set xrange [-1:1]"
@gp :- 1000X 1000Y "with points notit pt 7 ps 0.5 lc rgb 'black'"






, , . , ,





, , , , , — , .






All Articles