def Run(mm): try: tester = psr.testing.Tester("Testing Boys and Bernardi CP") tester.print_header() pulsar_psi4.pulsar_psi4_setup(mm) LoadDefaultModules(mm) mm.change_option("PSI4_SCF","BASIS_SET","sto-3g") mm.change_option("PSR_CP","METHOD","PSI4_SCF") mm.change_option("PSR_MBE","METHOD","PSI4_SCF") mm.change_option("PSI4_SCF","PRINT",0) mol=psr.system.make_system(""" 0 1 O 1.2361419 1.0137761 -0.0612424 H 0.5104418 0.8944555 0.5514190 H 1.9926927 1.1973129 0.4956931 O -0.9957202 0.0160415 1.2422556 H -1.4542703 -0.5669741 1.8472817 H -0.9377950 -0.4817912 0.4267562 O -0.2432343 -1.0198566 -1.1953808 H 0.4367536 -0.3759433 -0.9973297 H -0.5031835 -0.8251492 -2.0957959 """) mol = ApplyBasis(mol,"sto-3g","sto-3g") wfn=psr.datastore.Wavefunction() wfn.system=mol MyMod=mm.get_module("PSR_CP",0) NewWfn,Egy=MyMod.deriv(0,wfn) tester.test("Testing CP Energy via Deriv(0)", True, CompareEgy, Egy[0]) NewWfn,Egy=MyMod.energy(wfn) tester.test("Testing CP Energy via Energy()", True, CompareEgy, Egy) NewWfn,Egy=MyMod.deriv(1,wfn) tester.test("Testing CP Gradient via Deriv(1)", True, CompareGrad, Egy) NewWfn,Egy=MyMod.gradient(wfn) tester.test("Testing CP Gradient via Gradient()", True, CompareGrad, Egy) tester.print_results() except Exception as e: psr.output.Output("Caught exception in main handler\n") traceback.print_exc()
def Run(mm): try: tester = psr.testing.Tester("Testing Various Flavors of MBE") tester.print_header() pulsar_psi4.pulsar_psi4_setup(mm) LoadDefaultModules(mm) mm.change_option("PSR_BOND_FRAG","TRUNCATION_ORDER",2) mm.change_option("PSI4_SCF","BASIS_SET","sto-3g") mm.change_option("PSR_MBE","METHOD","PSI4_SCF") mm.change_option("PSR_MBE","FRAGMENTIZER","PSR_BOND_FRAG") mm.duplicate_key("PSR_MBE","PSR_VMFC") mm.change_option("PSR_VMFC","METHOD","PSI4_SCF") mm.change_option("PSR_VMFC","FRAGMENTIZER","PSR_VMFC_FRAG") mm.change_option("PSI4_SCF","PRINT",0)#Set to 1+ to see all the output mol=psr.system.make_system(""" 0 1 O 1.2361419 1.0137761 -0.0612424 H 0.5104418 0.8944555 0.5514190 H 1.9926927 1.1973129 0.4956931 O -0.9957202 0.0160415 1.2422556 H -1.4542703 -0.5669741 1.8472817 H -0.9377950 -0.4817912 0.4267562 O -0.2432343 -1.0198566 -1.1953808 H 0.4367536 -0.3759433 -0.9973297 H -0.5031835 -0.8251492 -2.0957959 """) mol = ApplyBasis(mol,"sto-3g","sto-3g") wfn=psr.datastore.Wavefunction() wfn.system=mol MyMod=mm.get_module("PSR_MBE",0) NewWfn,Egy=MyMod.deriv(0,wfn) tester.test("Testing MBE(2) Energy via Deriv(0)",True,CompareEgy,Egy[0],UnCPEgy) NewWfn,Egy=MyMod.energy(wfn) tester.test("Testing MBE(2) Energy via Energy()",True,CompareEgy,Egy,UnCPEgy) NewWfn,Grad=MyMod.deriv(1,wfn) tester.test("Testing MBE(2) Gradient via Deriv(1)",True, CompareGrad,Grad,UnCPGrad) NewWfn,Grad=MyMod.gradient(wfn) tester.test("Testing MBE(2) Gradient via Gradient()",True,CompareGrad,Grad,UnCPGrad) MyMod=mm.get_module("PSR_VMFC",0) NewWfn,Egy=MyMod.deriv(0,wfn) tester.test("Testing VMFC(2) Energy via Deriv(0)",True,CompareEgy,Egy[0],VMFCEgy) NewWfn,Egy=MyMod.energy(wfn) tester.test("Testing VMFC(2) Energy via Energy()",True,CompareEgy,Egy,VMFCEgy) NewWfn,Grad=MyMod.deriv(1,wfn) tester.test("Testing VMFC(2) Gradient via Deriv(1)",True, CompareGrad,Grad,VMFCGrad) NewWfn,Grad=MyMod.gradient(wfn) tester.test("Testing VMFC(2) Gradient via Gradient()",True,CompareGrad,Grad,VMFCGrad) tester.print_results() except Exception as e: psr.output.Output("Caught exception in main handler\n") traceback.print_exc()