STO双中心动能积分kinetic energy integrals

双中心动能积分的公式

由这个公式得到一个java计算方法

Tab( double R,double za,double zb, int n1,int L1 ,int m1 ,int n2 ,int L2 ,int m2 )

其中R是两核之间的距离,ζ,ζ’是斯莱特规则的核电荷数,因为第三项的lb(lb+1)-nb(nb-1)因此当n-l=1时第三项为0,不必算

验算这个方法,参考了YAKAR, Yusuf写于2006年的这篇文章

Evaluation of Two-center One- and Two-electron Integrals over Slater Type Orbitals by YAKAR, Yusuf , ÖZMEN, Ayhan,ATAV, Ülfet (2006)

得到的数据

n

l

n'

l'

λ

ζ

ζ'

R

YAKAR, Yusuf

计算

参考值/计算值

2

1

3

2

1

4.2

4.4

2.5

0.0173824126508177

0.0173824126557933

0.9999999997137570

3

2

2

1

0

2.3

2.3

2.5

-0.4680808325908930

-0.4680808325908490

1.0000000000000900

3

2

3

2

2

5.8

4.5

0.2

10.8255480900514000

10.8255480689687000

1.0000000019474900

3

2

3

2

1

2

4.4

8.7

0.0000074849179189

0.0000074983855612

0.9982039277395570

4

3

5

2

1

1.5

0.5

15

-0.0009332751691818

-0.0009332751619610

1.0000000077371200

5

3

6

4

3

1.5

1

0.1

-0.0146950937173451

#DIV/0!

4

3

8

5

2

3.6

3.7

0.1

0.0497663176863373

#DIV/0!

由于方法中的重叠积分只对主量子数小于等于5的情况有效,因此双中心动能积分的主量子数也不能超过5。

代数比如第一组

double d2= Tab (2.5 , 4.2 , 4.4 ,   2,  1 , 1 , 3 ,2 , 1  ); // 0.017382412655793364

这个方法的java程序为

 

public static  double Tab( double R,double za,double zb, int n1,int L1 ,int m1 ,int n2 ,int L2 ,int m2 ) throws IOException, ParseException, InterruptedException {
	              
			     
			     double f=0;
			     double f1=0;
			     double f2=0;
			     double f3=0;
			     
			     f1= ( -zb*zb/2)*HFoverlapA.Sab ( R,za, zb,  n1,  L1 ,  m1 ,  n2 ,  L2  );
			     
			     System.out.println(  f1 +" f1 Tab "  );
			     
			     double d1=( ( 2*n2*zb*zb) /Math.pow ( 2*n2*(2*n2-1) ,0.5 ) );
			     double d2=HFoverlapA.Sab (R, za, zb,  n1,  L1 ,  m1 ,  (n2-1) ,  L2  );
			     f2=d1*d2;
			    
			     System.out.println(  f2 +" f2 Tab   " +d1+"  "+d2   );	 
			     
			     double d5=0;
			     double d6=0;
			     if(n2>1){
			     double d4=2*zb*zb*(L2*(L2+1)-n2*(n2-1) );
			     
			     if(Math.abs(d4)>1e-6){
			      d5=Math.pow ( 2*n2*(2*n2-1)*(2*n2-2)*(2*n2-3) ,0.5);
			       d6= HFoverlapA.Sab (R, za, zb,  n1,  L1 ,  m1 ,  (n2-2) ,  L2  );
			       f3=(d4/d5)*d6;
			     }
	  
			     System.out.println(  f3 +" f3 Tab " +d4+"  "+d5+"  "+d6 );
			     }

			     
			     
			     f=f1+f2+f3;
			     
			     System.out.println( f+"  "+ f1+"  "+f2+"  "+f3+" f Tab "  );
		    	
		    	 return f;
		     }

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

黑榆

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

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

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

打赏作者

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

抵扣说明:

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

余额充值