We’re currently fiddling about with calculating properties determined using different origins, using something along the lines of:
molecule h2o { O H 1 1.0 H 1 1.0 2 104.5 }
set { basis cc-pVTZ }
E, wfn = energy('scf', return_wfn = True) set properties_origin [0.0, 1.0, 0.0] oeprop(wfn, "QUADRUPOLE")
The above works as expected. However, using COM (as outlined here:
set properties_origin ["COM"] oeprop(wfn, "QUADRUPOLE")
throws:
Fatal Error: Invalid specification of PROPERTIES_ORIGIN. Please consult the manual. Error occurred in file: /var/tmp/build/psi4/psi4/src/psi4/libmints/oeprop.cc on line: 783
(Digging into oeprop.cc looks like it should work!)
We’ve also found that we can’t use a variable within the coordinates, i.e.
z = 1.0 set properties_origin [0.0, 0.0, z]
always evaluates z as 0.0 rather than whatever the value of z is.
I’m not sure whether this is an issue within the python driver or the c++ side of things, i.e. whether variables are substituted by their values within python or c++ code.