pyscf.soscf package

Submodules

pyscf.soscf.ciah module

class pyscf.soscf.ciah.CIAHOptimizer[source]

Bases: pyscf.lib.misc.StreamObject

ah_conv_tol = 1e-12
ah_level_shift = 0
ah_lindep = 1e-14
ah_max_cycle = 30
ah_start_cycle = 1
ah_start_tol = 5.0
ah_trust_region = 3.0
conv_tol_grad = 0.0001
cost_function(u)[source]
extract_rotation(dr, u0=1)[source]
gen_g_hop(u)[source]
get_grad(u)[source]
kf_interval = 5
kf_trust_region = 5
max_iters = 10
max_stepsize = 0.05
pack_uniq_var(mat)[source]
unpack_uniq_var(v)[source]
pyscf.soscf.ciah.davidson_cc(h_op, g_op, precond, x0, tol=1e-10, xs=[], ax=[], max_cycle=30, lindep=1e-14, dot=<function dot>, verbose=2)[source]
pyscf.soscf.ciah.expmat(a)[source]
pyscf.soscf.ciah.rotate_orb_cc(iah, u0, conv_tol_grad=None, verbose=3)[source]

pyscf.soscf.newton_ah module

Co-iterative augmented hessian second order SCF solver (CIAH-SOSCF)

pyscf.soscf.newton_ah.expmat(a)[source]
pyscf.soscf.newton_ah.gen_g_hop_dhf(mf, mo_coeff, mo_occ, fock_ao=None, h1e=None, with_symmetry=True)[source]
pyscf.soscf.newton_ah.gen_g_hop_ghf(mf, mo_coeff, mo_occ, fock_ao=None, h1e=None, with_symmetry=True)[source]
pyscf.soscf.newton_ah.gen_g_hop_rhf(mf, mo_coeff, mo_occ, fock_ao=None, h1e=None, with_symmetry=True)[source]
pyscf.soscf.newton_ah.gen_g_hop_rohf(mf, mo_coeff, mo_occ, fock_ao=None, h1e=None, with_symmetry=True)[source]
pyscf.soscf.newton_ah.gen_g_hop_uhf(mf, mo_coeff, mo_occ, fock_ao=None, h1e=None, with_symmetry=True)[source]
pyscf.soscf.newton_ah.kernel(mf, mo_coeff=None, mo_occ=None, dm=None, conv_tol=1e-10, conv_tol_grad=None, max_cycle=50, dump_chk=True, callback=None, verbose=3)[source]
pyscf.soscf.newton_ah.newton(mf)[source]

Co-iterative augmented hessian (CIAH) second order SCF solver

Examples:

>>> mol = gto.M(atom='H 0 0 0; H 0 0 1.1', basis='cc-pvdz')
>>> mf = scf.RHF(mol).run(conv_tol=.5)
>>> mf = scf.newton(mf).set(conv_tol=1e-9)
>>> mf.kernel()
-1.0811707843774987
pyscf.soscf.newton_ah.project_mol(mol, dual_basis={})[source]

Module contents