势能积分的计算公式
*2
由公式得到两个java计算方法
VabA( double R ,int zn, double za,double zb, int n1,int L1 ,int m1 ,int n2 ,int L2 ,int m2 )
VabB( double R ,int zn, double za,double zb, int n1,int L1 ,int m1 ,int n2 ,int L2 ,int m2 )
zn是原子核的核电荷数,za,zb分别是ζ,ζ‘。公式里是假设两个原子的核电荷数都是1。
验算这两个方法,参考了两篇文章
1.Calculation of the One-Electron Two-Center Integrals Over Slater-Type Orbitals by Means of the Ellipsoidal Coordinates Method by SIDI MOHAMED MEKELLECHE, ABDELLATIF BABA-AHMED(1996)
2..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 | 计算值 | 计算值/参照值 | |
| zna=1 | 2 | 1 | 3 | 2 | 1 | 4.2 | 4.4 | 2.5 | 0.011498097921007800 | 0.011498097921203000 | 1.000000000016980000 |
| 3 | 2 | 2 | 1 | 0 | 2.3 | 2.3 | 2.5 | 0.154172007331042000 | 0.154172007331022000 | 0.999999999999870000 | |
| 3 | 2 | 3 | 2 | 2 | 5.8 | 4.5 | 0.2 | -1.471238017764440000 | -1.471238018706040000 | 1.000000000640010000 | |
| 3 | 2 | 3 | 2 | 1 | 2 | 4.4 | 8.7 | 0.000000857400767270 | 0.000000857431091410 | 1.000035367522470000 | |
| 4 | 3 | 5 | 2 | 1 | 1.5 | 0.5 | 15 | 0.002572464174355450 | 0.002572464177822200 | 1.000000001347640000 | |
| 5 | 3 | 6 | 4 | 3 | 1.5 | 1 | 0.1 | 0.006949396708185720 | -270.000000000000000000 | ||
| 4 | 3 | 8 | 5 | 2 | 3.6 | 3.7 | 0.1 | -0.007197120074513900 | 0.000000000000000000 | ||
| 6 | 4 | 12 | 4 | 4 | 3.5 | 0.5 | 20 | -0.000003811906504442 | 0.000000000000000000 | ||
| 5 | 3 | 8 | 5 | 3 | 2.5 | 2 | 2.2 | -0.182136029883179000 | 0.000000000000000000 | ||
| 10 | 5 | 5 | 4 | 2 | 0.3 | 0.1 | 10 | -0.006308043501843390 | 0.000000000000000000 | ||
| 15 | 12 | 10 | 8 | 3 | 4 | 2.5 | 1.5 | -0.034376370777494700 | 0.000000000000000000 | ||
| 22 | 20 | 24 | 18 | 15 | 1.5 | 3.5 | 0.8 | -0.001059509498481520 | 0.000000000000000000 | ||
| SIDI MOHAMED MEKELLECHE | 计算值 | ||||||||||
| zna=35 | 3 | 2 | 3 | 2 | 0 | 6.5197 | 2.0387 | 3.75803 | -0.486277949158820000 | -0.486277948407194000 | 0.999999998454328000 |
| 3 | 2 | 3 | 2 | 1 | 6.5197 | 2.0387 | 3.75803 | 0.265448562634640000 | 0.265448562222838000 | 0.999999998448656000 | |
| 3 | 2 | 3 | 2 | 2 | 6.5197 | 2.0387 | 3.75803 | -0.041387530907970000 | -0.041387530988898000 | 1.000000001955370000 | |
| znb=17 | 3 | 2 | 3 | 2 | 0 | 6.5197 | 2.0387 | 3.75803 | -0.086569711360165000 | -0.086569711326935500 | 0.999999999616153000 |
| 3 | 2 | 3 | 2 | 1 | 6.5197 | 2.0387 | 3.75803 | 0.039704646900045000 | 0.039704646872093500 | 0.999999999296014000 | |
| 3 | 2 | 3 | 2 | 2 | 6.5197 | 2.0387 | 3.75803 | -0.005394666015387200 | -0.005394666000166480 | 0.999999997178561000 | |
结果表明用这个程序计算势能积分,主量子数不能大于5.
代入比如第一组
double d2= VabA( 2.5 , 1 , 4.2, 4.4 , 2 , 1 , 1 , 3 , 2 , 1 ); // 0.011498097921203
最后一组
double d2= VabB( 3.75803 , 17 , 6.5197 , 2.0387 , 3 , 2 , 2 , 3 , 2 , 2 );// -0.00539466600016648
对应的java程序为
public static double VabA( double R ,int zn, double za,double zb, int n1,int L1 ,int m1 ,int n2 ,int L2 ,int m2 ) throws IOException, ParseException, InterruptedException {
double f1=-zn* (2*za/ Math.pow(2*n1*(2*n1-1),0.5 ) )*HFoverlapA .Sab ( R, za, zb , n1-1, L1 , m1 ,n2 ,L2 );
return f1;
}
public static double VabB( double R ,int zn, double za,double zb, int n1,int L1 ,int m1 ,int n2 ,int L2 ,int m2 ) throws IOException, ParseException, InterruptedException {
double f1=-zn* (2*zb/ Math.pow(2*n2*(2*n2-1),0.5 ) )*HFoverlapA .Sab ( R, za, zb , n1, L1 , m1 ,n2-1 ,L2 );
return f1;
}



