Not sure whether this is a bug or my incompetence to find the “right” example in the manual. (Both 1.3.2 and 1.2.1 do the same thing on two very different machines.)
As an example consider scf-guess-read1 from the share/psi4/samples directory:
molecule h2o {
O
H 1 0.96
H 1 0.96 2 104.5
}
set basis cc-pVDZ
energy(‘scf’)
clean()
h2o.set_multiplicity(2)
h2o.set_molecular_charge(1)
set scf reference uhf
set scf guess read
energy(‘scf’) <== 2nd energy call
This works fine. However, if I replace the second energy call by ‘ccsd’ or ‘ccsd(t)’ I get fails with
munmap_chunk(): invalid pointer
forrtl: error (76): Abort trap signal
Now, the manual claims all energy methods support restarts, so this should work, right?
The alternative would be to explicitly write/keep a checkpoint file and read it again. According to the manual this is done by either
psi4_io.set_specific_path(PSIF_CHKPT, ‘./’)
psi4_io.set_specific_retention(PSIF_CHKPT, True)
or
psi4_io.set_specific_path(32, ‘./’)
psi4_io.set_specific_retention(32, True)
I suspect this is outdated, that is, it does not work.
The two files psi4 -m leaves are the .35 file and a .180.npy file.
Unfortunately, neither can be used in a
energy(‘ccsd(t)’, restart_file=’./…’)
call.
Cutting to the chase, an explicit example of how to use closed-shell orbitals in an open-shell ccsd or ccsd(t) calculation would be very much appreciated.
Maybe a feature request. The .fchk write works fine. What about a restart using the .fchk file?