3.12.4. horton.part.hirshfeld_e – Extended Hirshfeld (HE) partitioning¶
-
class
horton.part.hirshfeld_e.HEBasis(numbers, proatomdb)¶ Bases:
objectDefines the basis set for the promolecule in Hirshfeld-E
This implementation is based on deviations from the neutral atom. This allows one to eliminate basis functions corresponding to very positive kations.
-
get_atom_begin(i)¶
-
get_atom_nbasis(i)¶
-
get_basis_info()¶
-
get_basis_label(i, j)¶
-
get_basis_lico(i, j)¶
-
get_basis_rho(i, j)¶
-
get_basis_spline(i, j)¶
-
get_constant_lico(i)¶
-
get_constant_rho(i)¶
-
get_constant_spline(i)¶
-
get_initial_propars()¶
-
get_lower_bound(i, j)¶
-
get_nbasis()¶
-
get_total_lico(i, propars)¶
-
-
class
horton.part.hirshfeld_e.HirshfeldEWPart(coordinates, numbers, pseudo_numbers, grid, moldens, proatomdb, spindens=None, local=True, lmax=3, threshold=1e-06, maxiter=500, greedy=False)¶ Bases:
horton.part.hirshfeld_e.HirshfeldEMixin,horton.part.hirshfeld_i.HirshfeldIWPartArguments: (that are not defined in
WPart)- proatomdb
- In instance of ProAtomDB that contains all the reference atomic densities.
Optional arguments: (that are not defined in
WPart)- threshold
- The procedure is considered to be converged when the maximum change of the charges between two iterations drops below this threshold.
- maxiter
- The maximum number of iterations. If no convergence is reached in the end, no warning is given.
- greedy
- Reduce the CPU cost at the expense of more memory consumption.
-
clear()¶ Discard all cached results, e.g. because wfn changed
-
compute_change(propars1, propars2)¶ Compute the difference between an old and a new proatoms
-
compute_pseudo_population(index)¶
-
do_all()¶ Computes all properties and return a list of their keys.
-
do_charges(instance)¶
-
do_density_decomposition(instance)¶
-
do_dispersion(instance)¶
-
do_hartree_decomposition(instance)¶
-
do_moments(instance)¶
-
do_partitioning(instance)¶
-
do_populations(instance)¶
-
do_prosplines()¶
-
do_spin_charges(instance)¶
-
eval_proatom(index, output, grid=None)¶
-
eval_spline(index, spline, output, grid=None, label='noname')¶
-
fix_proatom_rho(index, rho, deriv)¶ Check if the radial density for the proatom is correct and fix as needed.
Arguments:
- index
- The atom for which this proatom rho is created.
- rho
- The radial density
- deriv
- the derivative of the radial density or None.
-
get_basis(index, j, grid=None)¶
-
get_constant(index, grid=None)¶
-
get_grid(index=None)¶ Return an integration grid
Optional arguments:
- index
- The index of the atom. If not given, a grid for the entire system is returned. If self.local is False, a full system grid is always returned.
-
get_interpolation_info(i, charges=None)¶
-
get_isolated(index, charge, grid=None)¶
-
get_memory_estimates()¶
-
get_moldens(index=None, output=None)¶
-
get_proatom_rho(index, propars=None)¶
-
get_proatom_spline(index, *args, **kwargs)¶
-
get_rgrid(index)¶
-
get_somefn(index, spline, key, label, grid=None)¶
-
get_spindens(index=None, output=None)¶
-
get_wcor(index)¶
-
get_wcor_fit(index)¶
-
to_atomic_grid(index, data)¶
-
update_at_weights()¶
-
update_pro(index, proatdens, promoldens)¶
-
cache¶
-
coordinates¶
-
grid¶
-
hebasis¶
-
linear= False¶
-
lmax¶
-
local¶
-
name= 'he'¶
-
natom¶
-
numbers¶
-
options= ['lmax', 'threshold', 'maxiter', 'greedy']¶
-
proatomdb¶
-
pseudo_numbers¶
-
class
horton.part.hirshfeld_e.HirshfeldECPart(coordinates, numbers, pseudo_numbers, grid, moldens, proatomdb, spindens=None, local=True, lmax=3, wcor_numbers=None, wcor_rcut_max=2.0, wcor_rcond=0.1, threshold=1e-06, maxiter=500, greedy=False)¶ Bases:
horton.part.hirshfeld_e.HirshfeldEMixin,horton.part.hirshfeld_i.HirshfeldICPartArguments: (that are not defined in
CPart)- proatomdb
- In instance of ProAtomDB that contains all the reference atomic densities.
Optional arguments: (that are not defined in
CPart)- threshold
- The procedure is considered to be converged when the maximum change of the charges between two iterations drops below this threshold.
- maxiter
- The maximum number of iterations. If no convergence is reached in the end, no warning is given.
- greedy
- Reduce the CPU cost at the expense of more memory consumption.
-
clear()¶ Discard all cached results, e.g. because wfn changed
-
compute_change(propars1, propars2)¶ Compute the difference between an old and a new proatoms
-
compute_pseudo_population(index)¶
-
do_all()¶ Computes all properties and return a list of their keys.
-
do_charges(instance)¶
-
do_dispersion(instance)¶
-
do_moments(instance)¶
-
do_partitioning(instance)¶
-
do_populations(instance)¶
-
do_prosplines()¶
-
do_spin_charges(instance)¶
-
eval_proatom(index, output, grid=None)¶
-
eval_spline(index, spline, output, grid=None, label='noname')¶
-
fix_proatom_rho(index, rho, deriv)¶ Check if the radial density for the proatom is correct and fix as needed.
Arguments:
- index
- The atom for which this proatom rho is created.
- rho
- The radial density
- deriv
- the derivative of the radial density or None.
-
get_basis(index, j, grid=None)¶
-
get_constant(index, grid=None)¶
-
get_cutoff_radius(index)¶ The radius at which the weight function goes to zero
-
get_grid(index=None)¶ Return an integration grid
Optional arguments:
- index
- The index of the atom. If not given, a grid for the entire system is returned. If self.local is False, a full system grid is always returned.
-
get_interpolation_info(i, charges=None)¶
-
get_isolated(index, charge, grid=None)¶
-
get_memory_estimates()¶
-
get_moldens(index=None, output=None)¶
-
get_proatom_rho(index, propars=None)¶
-
get_proatom_spline(index, *args, **kwargs)¶
-
get_rgrid(index)¶
-
get_somefn(index, spline, key, label, grid=None)¶
-
get_spindens(index=None, output=None)¶
-
get_wcor(index=None)¶
-
get_wcor_fit(index=None)¶
-
get_wcor_fit_funcs(index)¶
-
get_wcor_funcs(index)¶
-
to_atomic_grid(index, data)¶
-
to_sys_grid(index, data)¶
-
update_at_weights()¶
-
update_pro(index, proatdens, promoldens)¶
-
cache¶
-
coordinates¶
-
grid¶
-
hebasis¶
-
linear= False¶
-
lmax¶
-
local¶
-
name= 'he'¶
-
natom¶
-
numbers¶
-
options= ['lmax', 'threshold', 'maxiter', 'greedy']¶
-
proatomdb¶
-
pseudo_numbers¶
-
wcor_numbers¶