vibeqc.compute_gradient_rks¶
- vibeqc.compute_gradient_rks(mol, basis, result, grid_options=None, options=None, *, dft_plus_u=None, allow_incomplete=False, _auto_df_for_fshell=False)[source]¶
RKS analytic nuclear gradient (Ha/bohr, per atom).
Note: the C++ signature is
compute_gradient_rks(mol, basis, result, grid_options, options); keep the positional order or pass by keyword.dft_plus_u: same convention ascompute_gradient().allow_incomplete: the kernel omits the long-range exact-exchange gradient of a range-separated hybrid and the VV10 nonlocal gradient (GitLab #571; seefunctional_gradient_terms_missing()). For such aresult.functionalthis wrapper raisesNotImplementedErrornaming the missing terms, because the returned array would not be the derivative ofresult.energy(hse06 5.6e-3, vv10 7.0e-4, wb97x-v 5.6e-2 Ha/bohr off finite differences on O/H/H STO-3G). Passallow_incomplete=Trueto receive the partial analytic gradient knowingly.