|
occ
|
EEQ partial charges + their derivative wrt nuclear positions. More...
#include <eeq.h>
Public Attributes | |
| Vec | charges |
| std::vector< Mat3N > | dcharges_dR |
EEQ partial charges + their derivative wrt nuclear positions.
Returns: .charges Vec of length N — same as eeq_partial_charges .dcharges_dR std::vector<Mat3N> of length N. dcharges_dR[i](α, j) is ∂q_i/∂R_j^α (Bohr⁻¹). Note R_j here is in Bohr — the derivative respects the Bohr convention used inside the Coulomb-like A matrix, not the input Angstrom positions.
Implementation: given A·q = -χ + (constraint), differentiate to get A · ∂q/∂R = -∂χ/∂R - ∂A/∂R · q and solve once with the LU factorisation of A.
| Vec occ::core::charges::EeqWithGradient::charges |
| std::vector<Mat3N> occ::core::charges::EeqWithGradient::dcharges_dR |