Convergence of Geom opt + frozen dihedral

Hi,

I am trying to optimize a molecular geometry with a frozen dihedral angle, followed by a single point calculation with a different basis set.

I am having issues with SCF iterations not converging even with 500 iterations (version 1.4rc1). Arguably, this is supposed to be the least stable dihedral angle, but I would still expect to see convergence after so many steps.

I am new to Psi4, so any suggestions on how to speed up convergence without sacrificing the accuracy of the optimized geometry would be greatly appreciated. (Any tips on code structure and best practices are also welcomed!)

########################################
# psi4 geom opt (dih frozen) + single point

memory 16gb

output = "dya_dihopt_90.xyz"

molecule mol {
-1 1
C     -1.3937896155     3.0966558410     1.0276271778
H     -0.6225352571     3.8705799378     0.8263085072
H     -1.8801137017     3.2978861067     2.0055499873
H     -2.1426632555     3.0918251396     0.2075645621
C     -0.6938262919     1.7401286650     1.0808824724
O      0.1821548150     1.6333594441     1.9581167193
N     -1.0165443331     0.7341617072     0.2260347984
H     -1.9851216571     0.7540146759    -0.1083681735
C     -0.2494082570    -0.3254379510    -0.2755146060
C     -1.0580106470    -1.5029721819    -0.8149577632
O     -2.1397549006    -1.3464712522    -1.3432879903
N     -0.3949707029    -2.6928664602    -0.5650024689
H      0.5712592690    -2.5348089921    -0.2837334513
C     -0.6969797407    -4.1470025556    -0.5913067815
H     -1.0286276045    -4.7361158680    -1.4729394712
H     -1.4754883079    -4.4450581300     0.1013927874
H      0.1337606939    -4.7722873491    -0.2853089633
C      2.0468536756     0.8611324541    -0.2755146060
O      2.3669874959     1.2955173579    -1.4104679013
O      2.4230684526     1.3457961933     0.8493379139
C      1.1257917430    -0.3254379510    -0.2755146060
H      1.6321481209    -1.2893323943    -0.2755146060
}

# Fixing dihedral term
dihedral_string = "9  21  18  20"

set optking {
  frozen_dihedral  = $dihedral_string
}
########################################
# Geometry Optimization

basis {
  assign 6-31+G*
}

set {
  scf_type df
  g_convergence gau
  geom_maxiter 500
  maxiter 500
# if convergence is an issue,
# uncomment the next 2 lines:  
  soscf true
  soscf_max_iter 35
}

psi4.optimize("mp2")

mol.save_xyz_file(output, False)

########################################
# Single-point energy calculation
basis {

  assign O aug-cc-pVQZ
  assign N aug-cc-pVQZ
  assign H aug-cc-pVQZ
  assign C aug-cc-pVQZ
  assign P aug-cc-pVQZ
  assign S aug-cc-pVQZ
}

set guess sad
set scf_type df

e = energy("mp2")
econv = e * psi_hartree2kcalmol
psi4.print_out("E [kcal/mol]: %10.6f\n" % (econv))

Interesting enough, Psi4 v1.7 converged much faster with 83 geometry optimization steps and very few SCF steps.