pyscf.solvent.hessian package
pyscf.solvent.hessian.pcm module
Gradient of PCM family solvent model, copied from GPU4PyCF with modifications
-
class pyscf.solvent.hessian.pcm.WithSolventHess(hess_method)[source]
Bases: object
-
kernel(*args, dm=None, atmlst=None, **kwargs)[source]
-
make_h1(mo_coeff, mo_occ, chkfile=None, atmlst=None, verbose=None)[source]
-
to_gpu()[source]
-
undo_solvent()[source]
-
pyscf.solvent.hessian.pcm.analytical_grad_vmat(pcmobj, dm, atmlst=None, verbose=None)[source]
dv_solv / da
-
pyscf.solvent.hessian.pcm.analytical_hess_nuc(pcmobj, dm, verbose=None)[source]
-
pyscf.solvent.hessian.pcm.analytical_hess_qv(pcmobj, dm, verbose=None)[source]
-
pyscf.solvent.hessian.pcm.analytical_hess_solver(pcmobj, dm, verbose=None)[source]
-
pyscf.solvent.hessian.pcm.einsum_Adi_ij_Adj_inverseK(Adi_term, K)[source]
-
pyscf.solvent.hessian.pcm.einsum_ij_Adj_Adi_inverseK(K, Adj_term)[source]
-
pyscf.solvent.hessian.pcm.get_d2D_d2S(surface, with_S=True, with_D=False, stream=None)[source]
Second derivatives of D matrix and S matrix (offdiagonals only)
-
pyscf.solvent.hessian.pcm.get_d2F_d2A(surface)[source]
Notations adopted from
J. Chem. Phys. 133, 244111 (2010), Appendix C
-
pyscf.solvent.hessian.pcm.get_d2Sii(surface, dF, d2F, stream=None)[source]
Second derivative of S matrix (diagonal only)
-
pyscf.solvent.hessian.pcm.get_dA_dot_q(dA, q, atmlst)[source]
-
pyscf.solvent.hessian.pcm.get_dDT_dot_q(dD, q, atmlst, gridslice, ngrids)[source]
-
pyscf.solvent.hessian.pcm.get_dD_dot_q(dD, q, atmlst, gridslice, ngrids)[source]
-
pyscf.solvent.hessian.pcm.get_dST_dot_q(dS, dSii, q, atmlst, gridslice)[source]
-
pyscf.solvent.hessian.pcm.get_dS_dot_q(dS, dSii, q, atmlst, gridslice)[source]
-
pyscf.solvent.hessian.pcm.get_dqsym_dx(pcmobj, dm, atmlst)[source]
-
pyscf.solvent.hessian.pcm.get_dqsym_dx_fix_K_R(pcmobj, dm, atmlst)[source]
-
pyscf.solvent.hessian.pcm.get_dqsym_dx_fix_vgrids(pcmobj, atmlst)[source]
-
pyscf.solvent.hessian.pcm.get_dvgrids(pcmobj, dm, atmlst)[source]
-
pyscf.solvent.hessian.pcm.get_v_dot_d2A_dot_q(d2A, v_left, q_right)[source]
-
pyscf.solvent.hessian.pcm.get_v_dot_d2DT_dot_q(d2D, v_left, q_right, natom, gridslice)[source]
-
pyscf.solvent.hessian.pcm.get_v_dot_d2D_dot_q(d2D, v_left, q_right, natom, gridslice)[source]
-
pyscf.solvent.hessian.pcm.get_v_dot_d2ST_dot_q(d2S, d2Sii, v_left, q_right, natom, gridslice)[source]
-
pyscf.solvent.hessian.pcm.get_v_dot_d2S_dot_q(d2S, d2Sii, v_left, q_right, natom, gridslice)[source]
-
pyscf.solvent.hessian.pcm.gradgrad_switch_h(x)[source]
2nd derivative of h(x)
-
pyscf.solvent.hessian.pcm.make_hess_object(hess_method)[source]
pyscf.solvent.hessian.smd module
Hessian of SMD solvent model, copied from GPU4PySCF with modification for CPU
-
class pyscf.solvent.hessian.smd.WithSolventHess(hess_method)[source]
Bases: object
-
kernel(*args, dm=None, atmlst=None, **kwargs)[source]
-
make_h1(mo_coeff, mo_occ, chkfile=None, atmlst=None, verbose=None)[source]
-
to_gpu()[source]
-
undo_solvent()[source]
-
pyscf.solvent.hessian.smd.get_cds(smdobj)[source]
-
pyscf.solvent.hessian.smd.make_hess_object(hess_method)[source]
For hess_method in vacuum, add nuclear Hessian of solvent smdobj
pyscf.solvent.hessian.smd_experiment module
Hessian of SMD solvent model (for experiment and education)
copied from GPU4PySCF with modification for CPU
-
pyscf.solvent.hessian.smd_experiment.atomic_surface_tension(symbols, coords, n, alpha, beta, water=True)[source]
TODO: debug later
- list of atomic symbols
- atomic coordinates in Anstrong
- solvent descriptors: n, alpha, beta
-
pyscf.solvent.hessian.smd_experiment.hess_swtich_function(R, r, dr)[source]