def test_2a(): system1() lbl = "[2a] SCF/cc-pVDZ, Psi4, dertype=1" scf_dz, jrec = qcdb.hessian("SCF/cc-pVDZ", return_wfn=True, hess_dertype=1) print("HESS OUT") print(scf_dz) assert compare_arrays(ref_hess_scf_dz, scf_dz, 6, lbl) assert compare_arrays(ref_hess_scf_dz, qcdb.variable("CURRENT HESSIAN"), 6, lbl) assert compare_arrays(ref_hess_scf_dz, jrec["qcvars"]["CURRENT HESSIAN"].data, 6, lbl) assert compare_arrays(ref_scf_dz, jrec["qcvars"]["CURRENT GRADIENT"].data, 6, lbl) assert compare_arrays(ref_scf_dz, qcdb.variable("CURRENT GRADIENT"), 6, lbl) assert compare_values(ref_e_scf_dz, jrec["qcvars"]["CURRENT ENERGY"].data, 6, lbl) assert compare_values(ref_e_scf_dz, qcdb.variable("CURRENT ENERGY"), 6, lbl) # assert compare_arrays(ref_hess_scf_dz, jrec['qcvars']['HF TOTAL HESSIAN'].data, 6, lbl) # assert compare_arrays(ref_scf_dz, jrec['qcvars']['HF TOTAL GRADIENT'].data, 6, lbl) assert compare_values(ref_e_scf_dz, jrec["qcvars"]["HF TOTAL ENERGY"].data, 6, lbl) # assert compare_arrays(ref_hess_scf_dz, jrec['qcvars']['HF/CC-PVDZ TOTAL HESSIAN'].data, 6, lbl) # assert compare_arrays(ref_scf_dz, jrec['qcvars']['HF/CC-PVDZ TOTAL GRADIENT'].data, 6, lbl) # assert compare_values(ref_e_scf_dz, jrec['qcvars']['HF/CC-PVDZ TOTAL ENERGY'].data, 6, lbl) # TODO provenance kill list assert "Psi4" == jrec["provenance"]["creator"], "[1a] prov" print(jrec["provenance"])
def test_2b(): system1() lbl = "[2b] SCF/cc-pVDZ, Cfour, dertype=1" scf_dz, jrec = qcdb.hessian('c4-SCF/cc-pVDZ', return_wfn=True, hess_dertype=1) assert compare_arrays(ref_hess_scf_dz, scf_dz, 6, lbl) assert compare_arrays(ref_hess_scf_dz, qcdb.get_variable('CURRENT HESSIAN'), 6, lbl) assert compare_arrays(ref_hess_scf_dz, jrec['qcvars']['CURRENT HESSIAN'].data, 6, lbl) assert compare_arrays(ref_scf_dz, jrec['qcvars']['CURRENT GRADIENT'].data, 6, lbl) assert compare_arrays(ref_scf_dz, qcdb.get_variable('CURRENT GRADIENT'), 6, lbl) # assert compare_values(ref_e_scf_dz, jrec['qcvars']['CURRENT ENERGY'].data, 6, lbl) # assert compare_values(ref_e_scf_dz, qcdb.get_variable('CURRENT ENERGY'), 6, lbl) # assert compare_arrays(ref_hess_scf_dz, jrec['qcvars']['HF TOTAL HESSIAN'].data, 6, lbl) # assert compare_arrays(ref_scf_dz, jrec['qcvars']['HF TOTAL GRADIENT'].data, 6, lbl) assert compare_values(ref_e_scf_dz, jrec['qcvars']['HF TOTAL ENERGY'].data, 6, lbl) #assert compare_arrays(ref_hess_scf_dz, jrec['qcvars']['HF/CC-PVDZ TOTAL HESSIAN'].data, 6, lbl) #assert compare_arrays(ref_scf_dz, jrec['qcvars']['HF/CC-PVDZ TOTAL GRADIENT'].data, 6, lbl) #assert compare_values(ref_e_scf_dz, jrec['qcvars']['HF/CC-PVDZ TOTAL ENERGY'].data, 6, lbl) assert 'CFOUR' == jrec['provenance']['creator'], "[1b] prov"
def test_2b(): system1() lbl = "[2b] SCF/cc-pVDZ, Cfour, dertype=1" scf_dz, jrec = qcdb.hessian("c4-SCF/cc-pVDZ", return_wfn=True, hess_dertype=1) assert compare_arrays(ref_hess_scf_dz, scf_dz, 6, lbl) assert compare_arrays(ref_hess_scf_dz, qcdb.variable("CURRENT HESSIAN"), 6, lbl) assert compare_arrays(ref_hess_scf_dz, jrec["qcvars"]["CURRENT HESSIAN"].data, 6, lbl) assert compare_arrays(ref_scf_dz, jrec["qcvars"]["CURRENT GRADIENT"].data, 6, lbl) assert compare_arrays(ref_scf_dz, qcdb.variable("CURRENT GRADIENT"), 6, lbl) # assert compare_values(ref_e_scf_dz, jrec['qcvars']['CURRENT ENERGY'].data, 6, lbl) # assert compare_values(ref_e_scf_dz, qcdb.variable('CURRENT ENERGY'), 6, lbl) # assert compare_arrays(ref_hess_scf_dz, jrec['qcvars']['HF TOTAL HESSIAN'].data, 6, lbl) # assert compare_arrays(ref_scf_dz, jrec['qcvars']['HF TOTAL GRADIENT'].data, 6, lbl) assert compare_values(ref_e_scf_dz, jrec["qcvars"]["HF TOTAL ENERGY"].data, 6, lbl) # assert compare_arrays(ref_hess_scf_dz, jrec['qcvars']['HF/CC-PVDZ TOTAL HESSIAN'].data, 6, lbl) # assert compare_arrays(ref_scf_dz, jrec['qcvars']['HF/CC-PVDZ TOTAL GRADIENT'].data, 6, lbl) # assert compare_values(ref_e_scf_dz, jrec['qcvars']['HF/CC-PVDZ TOTAL ENERGY'].data, 6, lbl) assert "CFOUR" == jrec["provenance"]["creator"], "[1b] prov"
def test_2a(): system1() lbl = "[2a] SCF/cc-pVDZ, Psi4, dertype=1" scf_dz, jrec = qcdb.hessian('SCF/cc-pVDZ', return_wfn=True, hess_dertype=1) print('HESS OUT') print(scf_dz) assert compare_arrays(ref_hess_scf_dz, scf_dz, 6, lbl) assert compare_arrays(ref_hess_scf_dz, qcdb.get_variable('CURRENT HESSIAN'), 6, lbl) assert compare_arrays(ref_hess_scf_dz, jrec['qcvars']['CURRENT HESSIAN'].data, 6, lbl) assert compare_arrays(ref_scf_dz, jrec['qcvars']['CURRENT GRADIENT'].data, 6, lbl) assert compare_arrays(ref_scf_dz, qcdb.get_variable('CURRENT GRADIENT'), 6, lbl) assert compare_values(ref_e_scf_dz, jrec['qcvars']['CURRENT ENERGY'].data, 6, lbl) assert compare_values(ref_e_scf_dz, qcdb.get_variable('CURRENT ENERGY'), 6, lbl) # assert compare_arrays(ref_hess_scf_dz, jrec['qcvars']['HF TOTAL HESSIAN'].data, 6, lbl) # assert compare_arrays(ref_scf_dz, jrec['qcvars']['HF TOTAL GRADIENT'].data, 6, lbl) assert compare_values(ref_e_scf_dz, jrec['qcvars']['HF TOTAL ENERGY'].data, 6, lbl) #assert compare_arrays(ref_hess_scf_dz, jrec['qcvars']['HF/CC-PVDZ TOTAL HESSIAN'].data, 6, lbl) #assert compare_arrays(ref_scf_dz, jrec['qcvars']['HF/CC-PVDZ TOTAL GRADIENT'].data, 6, lbl) #assert compare_values(ref_e_scf_dz, jrec['qcvars']['HF/CC-PVDZ TOTAL ENERGY'].data, 6, lbl) # TODO provenance kill list assert ['QCDB', 'Psi4'] == [d['creator'] for d in jrec['provenance']], "[1a] prov" print(jrec['provenance'])
def test_6b(): system1() lbl = "[6b] MP2/cc-pV[DT]Z, Cfour" mp2_dtz, jrec = qcdb.hessian("c4-MP2/cc-pV[DT]Z", return_wfn=True) assert compare_arrays(ref_hess_mp2_dtz, mp2_dtz, 6, lbl) assert compare_arrays(ref_hess_mp2_dtz, qcdb.variable("CURRENT HESSIAN"), 6, lbl) assert compare_arrays(ref_hess_mp2_dtz, jrec["qcvars"]["CURRENT HESSIAN"].data, 6, lbl) assert compare_arrays(ref_grad_mp2_dtz, jrec["qcvars"]["CURRENT GRADIENT"].data, 6, lbl) assert compare_arrays(ref_grad_mp2_dtz, qcdb.variable("CURRENT GRADIENT"), 6, lbl)
def test_6b(): system1() lbl = '[6b] MP2/cc-pV[DT]Z, Cfour' mp2_dtz, jrec = qcdb.hessian('c4-MP2/cc-pV[DT]Z', return_wfn=True) assert compare_arrays(ref_hess_mp2_dtz, mp2_dtz, 6, lbl) assert compare_arrays(ref_hess_mp2_dtz, qcdb.get_variable('CURRENT HESSIAN'), 6, lbl) assert compare_arrays(ref_hess_mp2_dtz, jrec['qcvars']['CURRENT HESSIAN'].data, 6, lbl) assert compare_arrays(ref_grad_mp2_dtz, jrec['qcvars']['CURRENT GRADIENT'].data, 6, lbl) assert compare_arrays(ref_grad_mp2_dtz, qcdb.get_variable('CURRENT GRADIENT'), 6, lbl)
def test_5b(): system1() lbl = "[5b] SCF/cc-pV[DTQ]Z, Cfour" scf_dtqz, jrec = qcdb.hessian("c4-HF/cc-pV[DTQ]Z", return_wfn=True) assert compare_arrays(ref_hess_scf_dtqz, scf_dtqz, 6, lbl) assert compare_arrays(ref_hess_scf_dtqz, qcdb.variable("CURRENT HESSIAN"), 6, lbl) assert compare_arrays(ref_hess_scf_dtqz, jrec["qcvars"]["CURRENT HESSIAN"].data, 6, lbl) assert compare_arrays(ref_grad_scf_dtqz, jrec["qcvars"]["CURRENT GRADIENT"].data, 6, lbl) # assert compare_values(ref_e_scf_dtqz, jrec['qcvars']['CURRENT ENERGY'].data, 6, lbl) assert compare_arrays(ref_grad_scf_dtqz, qcdb.variable("CURRENT GRADIENT"), 6, lbl)
def test_4b(): system1() lbl = "[4b] SCF/cc-pV[DT]Z Cfour, dertype=1" scf_dtz, jrec = qcdb.hessian('c4-HF/cc-pV[23]Z', return_wfn=True) assert compare_arrays(ref_hess_scf_dtz, scf_dtz, 6, lbl) assert compare_arrays(ref_hess_scf_dtz, qcdb.get_variable('CURRENT HESSIAN'), 6, lbl) assert compare_arrays(ref_hess_scf_dtz, jrec['qcvars']['CURRENT HESSIAN'].data, 6, lbl) assert compare_arrays(ref_grad_scf_dtz, jrec['qcvars']['CURRENT GRADIENT'].data, 6, lbl) # assert compare_values(ref_e_scf_dtz, jrec['qcvars']['CURRENT ENERGY'].data, 6, lbl) assert compare_arrays(ref_grad_scf_dtz, qcdb.get_variable('CURRENT GRADIENT'), 6, lbl)
def test_5a(): system1() lbl = "[5a] HF/cc-pV[DTQ]Z, Psi4" scf_dtqz, jrec = qcdb.hessian("HF/cc-pV[DTQ]Z", return_wfn=True) assert compare_arrays(ref_hess_scf_dtqz, scf_dtqz, 6, lbl) assert compare_arrays(ref_hess_scf_dtqz, qcdb.variable("CURRENT HESSIAN"), 6, lbl) assert compare_arrays(ref_hess_scf_dtqz, jrec["qcvars"]["CURRENT HESSIAN"].data, 6, lbl) assert compare_arrays(ref_grad_scf_dtqz, jrec["qcvars"]["CURRENT GRADIENT"].data, 6, lbl) assert compare_values(ref_e_scf_dtqz, jrec["qcvars"]["CURRENT ENERGY"].data, 6, lbl) assert compare_arrays(ref_grad_scf_dtqz, qcdb.variable("CURRENT GRADIENT"), 6, lbl) assert compare_values(ref_e_scf_dtqz, qcdb.variable("CURRENT ENERGY"), 6, lbl)
def test_4a(): system1() lbl = "[4a] SCF/cc-pV[DT]Z Gradient, dertype=1" scf_dtz, jrec = qcdb.hessian("HF/cc-pV[23]Z", return_wfn=True) assert compare_arrays(ref_hess_scf_dtz, scf_dtz, 6, lbl) assert compare_arrays(ref_hess_scf_dtz, qcdb.variable("CURRENT HESSIAN"), 6, lbl) assert compare_arrays(ref_hess_scf_dtz, jrec["qcvars"]["CURRENT HESSIAN"].data, 6, lbl) assert compare_arrays(ref_grad_scf_dtz, jrec["qcvars"]["CURRENT GRADIENT"].data, 6, lbl) assert compare_values(ref_e_scf_dtz, jrec["qcvars"]["CURRENT ENERGY"].data, 6, lbl) assert compare_arrays(ref_grad_scf_dtz, qcdb.variable("CURRENT GRADIENT"), 6, lbl) assert compare_values(ref_e_scf_dtz, qcdb.variable("CURRENT ENERGY"), 6, lbl)
def test_2d(): system2() lbl = "[2d] SCF/cc-pVDZ, Cfour, dertype=1" scf_dz, jrec = qcdb.hessian("c4-SCF/cc-pVDZ", return_wfn=True, dertype=1) assert compare_arrays(ref_hess_scf_dz_y, scf_dz, 6, lbl) assert compare_arrays(ref_hess_scf_dz_y, qcdb.variable("CURRENT HESSIAN"), 6, lbl) assert compare_arrays(ref_hess_scf_dz_y, jrec["qcvars"]["CURRENT HESSIAN"].data, 6, lbl) assert compare_arrays(ref_scf_dz_y, jrec["qcvars"]["CURRENT GRADIENT"].data, 6, lbl) assert compare_arrays(ref_scf_dz_y, qcdb.variable("CURRENT GRADIENT"), 6, lbl) # assert compare_arrays(ref_hess_scf_dz_y, jrec['qcvars']['HF/CC-PVDZ TOTAL HESSIAN'].data, 6, lbl) # assert compare_arrays(ref_scf_dz_y, jrec['qcvars']['HF/CC-PVDZ TOTAL GRADIENT'].data, 6, lbl) assert "CFOUR" == jrec["provenance"]["creator"], "[1d] prov" print(jrec["provenance"])
def test_2d(): system2() lbl = "[2d] SCF/cc-pVDZ, Cfour, dertype=1" scf_dz, jrec = qcdb.hessian('c4-SCF/cc-pVDZ', return_wfn=True, dertype=1) assert compare_arrays(ref_hess_scf_dz_y, scf_dz, 6, lbl) assert compare_arrays(ref_hess_scf_dz_y, qcdb.get_variable('CURRENT HESSIAN'), 6, lbl) assert compare_arrays(ref_hess_scf_dz_y, jrec['qcvars']['CURRENT HESSIAN'].data, 6, lbl) assert compare_arrays(ref_scf_dz_y, jrec['qcvars']['CURRENT GRADIENT'].data, 6, lbl) assert compare_arrays(ref_scf_dz_y, qcdb.get_variable('CURRENT GRADIENT'), 6, lbl) #assert compare_arrays(ref_hess_scf_dz_y, jrec['qcvars']['HF/CC-PVDZ TOTAL HESSIAN'].data, 6, lbl) #assert compare_arrays(ref_scf_dz_y, jrec['qcvars']['HF/CC-PVDZ TOTAL GRADIENT'].data, 6, lbl) assert 'CFOUR' == jrec['provenance']['creator'], "[1d] prov" print(jrec['provenance'])
def test_5a(): system1() lbl = "[5a] HF/cc-pV[DTQ]Z, Psi4" scf_dtqz, jrec = qcdb.hessian('HF/cc-pV[DTQ]Z', return_wfn=True) assert compare_arrays(ref_hess_scf_dtqz, scf_dtqz, 6, lbl) assert compare_arrays(ref_hess_scf_dtqz, qcdb.get_variable('CURRENT HESSIAN'), 6, lbl) assert compare_arrays(ref_hess_scf_dtqz, jrec['qcvars']['CURRENT HESSIAN'].data, 6, lbl) assert compare_arrays(ref_grad_scf_dtqz, jrec['qcvars']['CURRENT GRADIENT'].data, 6, lbl) assert compare_values(ref_e_scf_dtqz, jrec['qcvars']['CURRENT ENERGY'].data, 6, lbl) assert compare_arrays(ref_grad_scf_dtqz, qcdb.get_variable('CURRENT GRADIENT'), 6, lbl) assert compare_values(ref_e_scf_dtqz, qcdb.get_variable('CURRENT ENERGY'), 6, lbl)
def test_1c(): system2() lbl = "[1c] SCF/cc-pVDZ, Psi4" scf_dz, jrec = qcdb.hessian("SCF/cc-pVDZ", return_wfn=True) assert compare_arrays(ref_hess_scf_dz_y, scf_dz, 6, lbl) assert compare_arrays(ref_hess_scf_dz_y, qcdb.variable("CURRENT HESSIAN"), 6, lbl) assert compare_arrays(ref_hess_scf_dz_y, jrec["qcvars"]["CURRENT HESSIAN"].data, 6, lbl) assert compare_arrays(ref_scf_dz_y, jrec["qcvars"]["CURRENT GRADIENT"].data, 6, lbl) assert compare_arrays(ref_scf_dz_y, qcdb.variable("CURRENT GRADIENT"), 6, lbl) # assert compare_arrays(ref_hess_scf_dz_y, jrec['qcvars']['HF/CC-PVDZ TOTAL HESSIAN'].data, 6, lbl) # assert compare_arrays(ref_scf_dz_y, jrec['qcvars']['HF/CC-PVDZ TOTAL GRADIENT'].data, 6, lbl) # TODO provenance kill list assert "Psi4" == jrec["provenance"]["creator"], "[1c] prov" print(jrec["provenance"])
def test_6a(): system1() lbl = "[6a] MP2/cc-pV[DT]Z, Psi4" # No MP2 freqs mp2_dtz, jrec = qcdb.hessian("MP2/cc-pV[DT]Z", return_wfn=True) assert compare_arrays(ref_hess_mp2_dtz, mp2_dtz, 6, lbl) assert compare_arrays(ref_hess_mp2_dtz, qcdb.variable("CURRENT HESSIAN"), 6, lbl) assert compare_arrays(ref_hess_mp2_dtz, jrec["qcvars"]["CURRENT HESSIAN"].data, 6, lbl) assert compare_arrays(ref_grad_mp2_dtz, jrec["qcvars"]["CURRENT GRADIENT"].data, 6, lbl) assert compare_arrays(ref_grad_mp2_dtz, qcdb.variable("CURRENT GRADIENT"), 6, lbl) assert compare_values(ref_e_mp2_dtz, jrec["qcvars"]["CURRENT ENERGY"].data, 6, lbl) assert compare_values(ref_e_mp2_dtz, qcdb.variable("CURRENT ENERGY"), 6, lbl)
def test_6a(): system1() lbl = '[6a] MP2/cc-pV[DT]Z, Psi4' # No MP2 freqs mp2_dtz, jrec = qcdb.hessian('MP2/cc-pV[DT]Z', return_wfn=True) assert compare_arrays(ref_hess_mp2_dtz, mp2_dtz, 6, lbl) assert compare_arrays(ref_hess_mp2_dtz, qcdb.get_variable('CURRENT HESSIAN'), 6, lbl) assert compare_arrays(ref_hess_mp2_dtz, jrec['qcvars']['CURRENT HESSIAN'].data, 6, lbl) assert compare_arrays(ref_grad_mp2_dtz, jrec['qcvars']['CURRENT GRADIENT'].data, 6, lbl) assert compare_arrays(ref_grad_mp2_dtz, qcdb.get_variable('CURRENT GRADIENT'), 6, lbl) assert compare_values(ref_e_mp2_dtz, jrec['qcvars']['CURRENT ENERGY'].data, 6, lbl) assert compare_values(ref_e_mp2_dtz, qcdb.get_variable('CURRENT ENERGY'), 6, lbl)
def test_2c(): system2() lbl = "[2c] SCF/cc-pVDZ, Psi4, dertype=1" scf_dz, jrec = qcdb.hessian('SCF/cc-pVDZ', return_wfn=True, dertype=1) assert compare_arrays(ref_hess_scf_dz_y, scf_dz, 6, lbl) assert compare_arrays(ref_hess_scf_dz_y, qcdb.get_variable('CURRENT HESSIAN'), 6, lbl) assert compare_arrays(ref_hess_scf_dz_y, jrec['qcvars']['CURRENT HESSIAN'].data, 6, lbl) assert compare_arrays(ref_scf_dz_y, jrec['qcvars']['CURRENT GRADIENT'].data, 6, lbl) assert compare_arrays(ref_scf_dz_y, qcdb.get_variable('CURRENT GRADIENT'), 6, lbl) #assert compare_arrays(ref_hess_scf_dz_y, jrec['qcvars']['HF/CC-PVDZ TOTAL HESSIAN'].data, 6, lbl) #assert compare_arrays(ref_scf_dz_y, jrec['qcvars']['HF/CC-PVDZ TOTAL GRADIENT'].data, 6, lbl) # TODO provenance kill list assert ['QCDB', 'Psi4'] == [d['creator'] for d in jrec['provenance']], "[1c] prov" print(jrec['provenance'])