Computing Dipole Moment from CCSD(T)

Hello!

I am trying to compute a dipole moment of a NaCl dimer from CCSD(T)/aug-cc-pVTZ level of theory. I was trying to do this using the “properties” and “oeprop” python api functions, but it looks like CCSD(T) is not supported. I was wondering if there was any other way to compute the dipole moments. I’ve attached a sample script to this email. Thank you!

import psi4

ion_geom_inp ="""
1 1
Na
--
-1 1
Cl 1 2.360

units ang
“”"

psi4.set_memory(‘8 GB’)
psi4.core.set_output_file(‘output.dat’, False)
psi4.set_options({‘basis’: ‘aug-cc-pVTZ’,
‘scf_type’: ‘df’,
‘cc_type’: ‘df’})

ion_geom = psi4.geometry(ion_geom_inp)
psi4.properties(‘CCSD(T)’, properties=[‘dipole’], molecule=ion_geom)

Best,
Moses

There is. The changes you need to make to your output file are as follows:

Change the last line to _, wfn = psi4.gradient('CCSD(T)', molecule=ion_geom, return_wfn=True). Three important things have changed. One is that we have changed from a properties call to a gradient call. One is that we are now asking to return the wavefunction. The third is that we are now saving the wavefunction as a variable. The goal of all this is to get the correlated response density on a wavefunction object.

This is exactly what oeprop needs:

oeprop = psi4.core.OEProp(wfn)
oeprop.add("DIPOLE")
oeprop.compute()

Two words of warning.

  1. As developers, we strongly encourage you to use the built-in properties function instead of OEProp wherever possible. This is an exception. (OEProp does not check that the density matrix attached to the wavefunction means what you think it means. properties does.)
  2. If you are going to do this, you must use an up-to-date version of Psi4! If you use Psi4 1.3, this method will give you wrong results. I strongly encourage you to use the current stable release of Psi4 1.4. If you use a development version of Psi, it must have PR #1964, which dates to 7/20/2020.
1 Like

Thank you very much, this worked!

Great!

For future reference, I’m hoping to support properties working for DF-CCSD(T) in 1.5.