hashv2: key not found with TCE and MP4


Gets Around
echo

start molecule

title "CO"
charge 0

geometry units angstroms print xyz
 symmetry c1
 C        1.23046       -0.22006       -0.00656
 O        2.19160        0.45243        0.23176
end

basis spherical
 * library cc-pVTZ
end

tce
 freeze atomic
 #mbpt4
 mbpt4sdq(t)
 #ccsd(t)
 2eorb
end

task tce energy


The above job runs to completion with ccsd(t) selected but fails with mbpt4 or mbpt4sdq(t). The error is
...
MBPT(2) iterations
 --------------------------------------------------------
 Iter          Residuum       Correlation     Cpu    Wall
 --------------------------------------------------------
 key=                    3
 hashv2: key not found 2                   0
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
  current input line : 
     0: 
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
 This error has not yet been assigned to a category


I found the following in tce_init.F that is supposed to prevent these errors:

c
c     PREVENT "hashv2: key not found" errors
c
      if(intorb.and.nointorb) then
        if(nodezero) then
          write(LuOut,*) '2eorb does not work with ',ctype
        endif
        call errquit('tce_init: method incompatible with 2eorb',
     +                0,CALC_ERR)
      endif


I don't know if the problem is that MBPT is supposed to work with 2eorb, but somehow doesn't, or that the nointorb condition is not set for MBPT methods before it reaches the test quoted here.

Gets Around
It should work. At the very least, the error message should be helpful. We can at least ignore 2eorb when it won't work, but the right thing to do is to fix this.

I created https://github.com/jeffhammond/nwchem/issues/3 for myself. You have license to harass me via Github until it is fixed.


Forum >> NWChem's corner >> Running NWChem