计算Be原子基态能级

用类氢轨道计算Be原子基态能级,Be原子基态4个核外电子的轨道分别是1s和2s,1s轨道的半径是1, 2s轨道的半径是4。轨道分别是

计算能级

因为E1=E2,E3=E4,J13=J14=J23=J24,K13=K14=K23=K24

所以原式可以化简

分别展开

计算库仑积分,因为都是s轨道可以用公式

由此计算J12

同样计算J13=0.24,J34=0.15

计算交换积分

因此Be原子基态能级为=2*(-8-0.875)+2.5+0.24*4+0.15-0.0456*4=-14.317Hartrees,Hartree-Fock算法的值是-14.57,是Hartree-Fock算法的98.2%。

import sympy
import math
from sympy import symbols, cancel


a = sympy.Symbol('a')
e = sympy.Symbol('e')
m = sympy.Symbol('m')
h = sympy.Symbol('h')
l = sympy.Symbol('l')
lp = sympy.Symbol('lp')
r = sympy.Symbol('r')
EE = sympy.Symbol('EE')
R = sympy.Symbol('R')
r1 = sympy.Symbol('r1')
r2 = sympy.Symbol('r2')
r3 = sympy.Symbol('r3')

c1 = sympy.Symbol('c1')
c2 = sympy.Symbol('c2')
c3 = sympy.Symbol('c3')

μ = sympy.Symbol('μ')
v = sympy.Symbol('v')

α = sympy.Symbol('α')
β = sympy.Symbol('β')



x = sympy.Symbol('x')
y = sympy.Symbol('y')
z = sympy.Symbol('z')

θ1= sympy.Symbol('θ1')
θ2= sympy.Symbol('θ2')
Φ1= sympy.Symbol('Φ1')
Φ2= sympy.Symbol('Φ2')

θ= sympy.Symbol('θ')
Ψ= sympy.Symbol('Ψ')
Φ= sympy.Symbol('Φ')
pi=sympy.Symbol('pi')
E=sympy.Symbol('E')
I=sympy.Symbol('I')
sin=sympy.Symbol('sin')
cos=sympy.Symbol('cos')
diff=sympy.Symbol('diff')
integrate=sympy.Symbol('integrate')

pi=sympy.pi
E=sympy.E
sin=sympy.sin
cos=sympy.cos
diff=sympy.diff
integrate=sympy.integrate

#Be原子基态能级

def hin( fx1 ,fx2, z ):
    fx = fx1
    z=z
    # 拉普拉斯算符
    f1 = (1 / (r * r)) * diff((r * r * diff(fx, r)), r)

    f2 = (1 / (r * r * sin(θ))) * diff((sin(θ) * diff(fx, θ)), θ)

    f3 = (1 / (r * r * sin(θ) * sin(θ))) * diff(fx, Φ, Φ)

    f8 = fx2*(-1 / 2) * (f1 + f2 + f3)

    # print   (   f1 )
    # print   (   f2 )
    # print   (   f3 )

    # print    ( f8 )

    # 球坐标积分  动能
    f9 = (integrate((integrate(integrate(f8 * r * r * sin(θ), (r, 0, float('inf'))), (θ, 0, pi))), (Φ, 0, 2 * pi)))

    # print(f9)

    f10 = fx2 * (-z / r) * fx
    # 势能
    f11 = (integrate((integrate(integrate(f10 * r * r * sin(θ), (r, 0, float('inf'))), (θ, 0, pi))), (Φ, 0, 2 * pi)))

    # print(f11)
    print("H", f9 + f11)

    return f9 + f11

def jin (fr1 ,fr2 ):


    f21 = fr1 * fr2 * (1 / r1) * fr1 * fr2 * r1 * r1 * r2 * r2

    f22 = fr1 * fr2 * (1 / r2) * fr1 * fr2 * r1 * r1 * r2 * r2

    f23 = (integrate(f21, (r2, 0, r1)))

    f24 = (integrate(f22, (r2, r1, float('inf'))))

    f25 = (16 * pi ** (2) * integrate(f24 + f23, (r1, 0, float('inf'))))

    # print("f23",f23)
    # print("f24",f24)

    print("J", f25)

    return f25

def kin (fr1,fr2,fr3,fr4 ):


    # 交换积分
    #fr1 = (z) ** (1.5) * sympy.exp(-z * r1) * pi ** (-0.5)
    #fr2 = (z) ** (1.5) * sympy.exp(-z * r2) * pi ** (-0.5)

    #fr3 = (z) ** (1.5) * sympy.exp(-z * r2) * pi ** (-0.5)
    #fr4 = (z) ** (1.5) * sympy.exp(-z * r1) * pi ** (-0.5)

    f21 = fr1 * fr2 * (1 / r1) * fr3 * fr4 * r1 * r1 * r2 * r2

    f22 = fr1 * fr2 * (1 / r2) * fr3 * fr4 * r1 * r1 * r2 * r2

    f23 = (integrate(f21, (r2, 0, r1)))

    f24 = (integrate(f22, (r2, r1, float('inf'))))

    f36 = (16 * pi ** (2) * integrate(f24 + f23, (r1, 0, float('inf'))))

    # print("f23",f23)
    # print("f24",f24)

    print("K", f36)

    return f36

def sab (fr1 ,fr2 ):


    # print("f23",f23)
    # print("f24",f24)

    f9 = (integrate((integrate(integrate( fr1*fr2 * r * r * sin(θ), (r, 0, float('inf'))), (θ, 0, pi))), (Φ, 0, 2 * pi)))

    print("S", f9)

    return f9


z=4

a0=1
a1=4


fx1=(z/a0)**(1.5)*2*sympy.exp(-z*r/a0  )*(4*pi)**(-0.5)
fx2=(z/( 2*a1))**(1.5)*(2-z*r/a1)*sympy.exp(-z*r/(2*a1)  )*(4*pi)**(-0.5)

fj1 = (z/a0)**(1.5)*2*sympy.exp(-z*r1/a0  )*(4*pi)**(-0.5)
fj2 = (z/a0)**(1.5)*2*sympy.exp(-z*r2/a0  )*(4*pi)**(-0.5)

fj3=(z/( 2*a1))**(1.5)*(2-z*r1/a1)*sympy.exp(-z*r1/(2*a1)  )*(4*pi)**(-0.5)
fj4=(z/( 2*a1))**(1.5)*(2-z*r2/a1)*sympy.exp(-z*r2/(2*a1)  )*(4*pi)**(-0.5)

fh=hin(fx1, fx1, z)*2+ hin(fx2, fx2, z)*2

fj=jin(fj1,fj2)+jin(fj1,fj4)*4+jin(fj3,fj4)

fk=kin( fj1 , fj4 , fj2 , fj3 )*4


print(   fh+fj-fk , (fh+fj-fk)/14.57   )

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黑榆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值