As a testcase I am checking optimization of CH4 molecule with DFT and different basis sets.
Strangely, for def2-qz* bases the optimizatoin fails with the symmetry error. The code complains that the symmetry is changed. The end of output is
Molecular point group: cs
Full point group: Td
Geometry (in Angstrom), charge = 0, multiplicity = 1:
C
H 1 1.095343
H 1 1.095343 2 TDA
H 1 1.095343 2 TDA 3 120.000000
H 1 1.095343 2 TDA 4 120.000000
TDA = 109.4712211043
Traceback (most recent call last):
File "CH4_error.py", line 12, in <module>
e,wfn = psi4.optimize("PBE",molecule=geom, return_wfn="yes")
File ".../psi4conda/lib/python2.7/site-packages/psi4/driver/driver.py", line 1098, in optimize
(current_sym, initial_sym))
psi4.driver.p4util.exceptions.ValidationError: Point group changed! (cs <-- c2v) You should restart using the last geometry in the output, after carefully making sure all symmetry-dependent input, such as DOCC, is correct.
which seems perfectly correct to me, except the error and the fact that code thinks that best subgroup of Td is Cs.
How is this possible?
Other bases I tried are Ok.
psi4 1.2.1 (conda)
I am using python driver, the input is
import psi4
mol_string = """
C
H 1 %f
H 1 %f 2 TDA
H 1 %f 2 TDA 3 120
H 1 %f 2 TDA 4 120
"""
mol = lambda x: mol_string%(x,x,x,x)
psi4.set_options({"BASIS": "def2-qzvppd", "scf_type": "df"})
geom = psi4.geometry(mol(1.106))
e,wfn = psi4.optimize("PBE",molecule=geom, return_wfn="yes")
print("Total energy = %f"%e)
dist_mat = wfn.molecule().distance_matrix().to_array()*psi4.constants.bohr2angstroms
print("C-H distance = %f Angstrom"%(dist_mat[0,1]))