vibeqc.HirshfeldResult¶
- class vibeqc.HirshfeldResult(charges, electron_population, promolecule_norm, molecule_norm, n_grid_points)[source]¶
Bases:
objectOutput of
hirshfeld_charges().- Parameters:
- charges¶
(n_atoms,)array of Hirshfeld atomic partial charges in electrons. Sums tomolecule.chargeto grid precision. Sign convention matchesmulliken_charges()/loewdin_charges()(positive = electron-deficient).- Type:
np.ndarray
- electron_population¶
(n_atoms,)array of ∫ w_A(r) ρ(r) dV — the Hirshfeld- partitioned electron count on each atom.Z_A − thisischarges[A].- Type:
np.ndarray
- promolecule_norm¶
∫ ρ_pro dV evaluated on the grid; should ≈ n_electrons. Diagnostic: when this deviates by > 1e-3 from the integer electron count, the integration grid is too coarse or the SAD promolecule didn’t converge for some atom (very rare).
- Type:
- molecule_norm¶
∫ ρ_mol dV evaluated on the same grid; should also ≈ n_electrons. Comparing the two norms tells you whether grid error is in the molecular density or the promolecule.
- Type:
- n_grid_points¶
Total Becke-Lebedev-Treutler grid point count used. Scales with
GridOptions.n_radial × angular order × n_atoms.- Type:
- __init__(charges, electron_population, promolecule_norm, molecule_norm, n_grid_points)¶
Methods
__init__(charges, electron_population, ...)Attributes