# Test of Maple V STO diatomic intgrals programs printf("Test of diatomic STO integral programs by Neumann expansion:\n"); printf(" Six simple integrals, evaluated by\n"); printf(" each of the three overall programs:\n"); printf(" Two_el_0 (reference formula--each term in closed form)\n"); printf(" Two_el_1 (same, using generated arrays)\n"); printf(" Two_el_2 (small-exponential-parameter expansion)\n\n"); printf(" Some of these integrals are given by E. N. Maslen and"); printf(" M. G. Trefry,\n"); printf(" Int. J. Quantum Chem. 37, 51 (1990)-referred to as MT\n\n"); printf(" All calculations at 16-digits precision, 4 terms in Neumann"); printf(" expansion,\n"); Digits := 16; mumax=4; printf(" [1sa 1sb | 1sa 1sb], R=5.0, all zeta=1.0; correct value"); printf(" is\n 0.51193...x10^-9 (MT is in error by factor 10)\n\n"); printf(" Closed formula:\n"); Two_el_0(5.,3.,1,0,0,-3.,1,0,0,-3.,1,0,0,3.,1,0,0,4); printf(" Array formula:\n"); Two_el_1(5.,3.,1,0,0,-3.,1,0,0,-3.,1,0,0,3.,1,0,0,4); printf(" Small-exponent formula (very poor because zeta*R=15, which\n"); printf(" is certainly not small; moderate convergence parameters)\n"); Two_el_2(5.,3.,1,0,0,-3.,1,0,0,-3.,1,0,0,3.,1,0,0,4,10,10); printf(" [2sa 1sb | 1sa 1sb], R=1.0, all zeta=1.0; correct value"); printf(" is\n 0.35678... (agrees with MT)\n"); printf(" Closed formula:\n"); Two_el_0(1.,1.,2,0,0,-1.,1,0,0,1.,1,0,0,-1.,1,0,0,4); printf(" Array formula:\n"); Two_el_1(1.,1.,2,0,0,-1.,1,0,0,1.,1,0,0,-1.,1,0,0,4); printf(" Small-exponent formula (better than for previous)"); printf(" case,\n (here run with cutoffs too small for full"); printf(" convergence)\n"); Two_el_2(1.,1.,2,0,0,-1.,1,0,0,1.,1,0,0,-1.,1,0,0,4,10,10); printf(" [2psigma-a 1sb | 2psigma-a 1sb], R=1.0, all zeta=1.0;\n"); printf(" correct value is 0.17206... (agrees with MT assuming their\n"); printf(" unlabelled 2p is in fact 2p sigma)\n"); printf(" Closed formula:\n"); Two_el_0(1.,1.,2,1,0,-1.,1,0,0,1.,2,1,0,-1.,1,0,0,4); printf(" Array formula:\n"); Two_el_1(1.,1.,2,1,0,-1.,1,0,0,1.,2,1,0,-1.,1,0,0,4); printf(" Small-exponent formula:\n"); Two_el_2(1.,1.,2,1,0,-1.,1,0,0,1.,2,1,0,-1.,1,0,0,4,10,10); printf(" [2p pi-a 1sb | 2p pi'-a 1sb], R=1.0, all zeta=1.0; correct\n"); printf(" value is 0.11117...\n"); printf(" Closed formula:\n"); Two_el_0(1.,1.,2,1,1,-1.,1,0,0,1.,2,1,-1,-1.,1,0,0,4); printf(" Array formula:\n"); Two_el_1(1.,1.,2,1,1,-1.,1,0,0,1.,2,1,-1,-1.,1,0,0,4); printf(" Small-exponent formula:\n"); Two_el_2(1.,1.,2,1,1,-1.,1,0,0,1.,2,1,-1,-1.,1,0,0,4,10,10); printf(" [2psigma-a 1sb | 2psigma-b 1sa], R=1.0,all zeta=1.0;\n"); printf(" correct value is -0.046259...\n"); printf(" Closed formula:\n"); Two_el_0(1.,1.,2,1,0,-1.,1,0,0,-1.,2,1,0,1.,1,0,0,4); printf(" Array formula:\n"); Two_el_1(1.,1.,2,1,0,-1.,1,0,0,-1.,2,1,0,1.,1,0,0,4); printf(" Small-exponent formula:\n"); Two_el_2(1.,1.,2,1,0,-1.,1,0,0,-1.,2,1,0,1.,1,0,0,4,10,10); printf(" [2p-pi-a 1sb | 2p-pi'-b 1sa], R=1.0, all zeta=1.0;\n"); printf(" correct value is 0.11117...\n"); printf(" Closed formula:\n"); Two_el_0(1.,1.,2,1,1,-1.,1,0,0,-1.,2,1,-1,1.,1,0,0,4); printf(" Array formula:\n"); Two_el_1(1.,1.,2,1,1,-1.,1,0,0,-1.,2,1,-1,1.,1,0,0,4); printf(" Small-exponent formula:\n"); Two_el_2(1.,1.,2,1,1,-1.,1,0,0,-1.,2,1,-1,1.,1,0,0,4,10,10); #-------------------------------end of file------------------------------