many TCE methods broken with 2eorb


Click here for full thread
Gets Around
Previously I reported that MBPT4 consistently crashes with 2eorb, though that combination had worked in version 6.0: http://nwchemgit.github.io/Special_AWCforum/st/id1755/bug%3A_2eorb_used_to_work_wi...

I have now run through a larger variety of TCE methods with the old 6.0 executable and with the latest 6.5 snapshot from July.

In 6.0 all the tested methods ran with 2eorb and terminated normally, though there was apparently a bug in the particular 6.0 I have to test with that prevented CCSD(T) or QCISD(T) energies from being reported -- both show up as *************************.

Results for 6.0:

OK ['cc2', 'ccd', 'ccsd', 'ccsd(2)_t', 'ccsd(t)', 'ccsdt', 'ccsd[t]', 'cisd', 'cisdt', 'cr-ccsd(t)', 'cr-ccsd[t]', 'cr-qcisd(t)', 'lccd', 'lccsd', 'lccsd(t)', 'lr-ccsd', 'lr-ccsd(t)', 'mbpt2', 'mbpt3', 'mbpt4', 'mbpt4(sdq)', 'mbpt4sdq(t)', 'qcisd', 'qcisd(t)']

In 6.5, fewer than half of the tested methods still work with 2eorb. A few are now flagged incompatible, and the rest now cause abnormal termination with the error "hashv2: key not found".

Results for 6.5:

OK ['cc2', 'ccsd', 'ccsd(2)_t', 'ccsd(t)', 'ccsd[t]', 'cr-ccsd(t)', 'cr-ccsd[t]', 'lr-ccsd', 'lr-ccsd(t)']
Incompatible ['ccsdt', 'cisdt']
Crashes with hashv2 error ['ccd', 'cisd', 'cr-qcisd(t)', 'lccd', 'lccsd', 'lccsd(t)', 'mbpt2', 'mbpt3', 'mbpt4', 'mbpt4(sdq)', 'mbpt4sdq(t)', 'qcisd', 'qcisd(t)']

Why did so many methods stop working with 2eorb? Is it possible to get those hashv2-crashing methods working with 2eorb again? The more efficient use of memory is crucial for calculations with larger numbers of basis functions.

If it is not possible to fix 2eorb for the crashing methods, I think at least the incompatibility check should be updated to add those methods.

Finally, it appears that the cr-qcisd(t) method is totally broken in 6.5; it crashes with the hashv2 error when 2eorb is enabled and crashes with a segmentation fault when 2eorb is disabled.

Here is an archive with all my 6.0 and 6.5 calculations, plus the small script I used to generate/run the test cases: http://www.sciencemadness.org/cc/tce-bugs.tgz

EDIT: For 6.0 I also compared the final energies with and without 2eorb, to see if e.g. there were erroneous results caused by 2eorb that caused the 2eorb option to be disabled in later releases. For my (admittedly simple) test case all the final energies agreed to many decimal places except for those CCSD(T) and QCISD(T) problem-energies that showed up as asterisks instead of numbers.