3. API Documentation¶
This part of the documentation is generated from the docstrings in the source code.
- 3.1. horton– The main HORTON Package- 3.1.1. horton.cache– Avoid recomputation of earlier results and reallocation of existing arrays
- 3.1.2. horton.cext– C++ extensions
- 3.1.3. horton.constants– Physicochemical constants in atomic units
- 3.1.4. horton.context– The context in which HORTON is used
- 3.1.5. horton.exceptions– Definition of all excpetions in HORTON
- 3.1.6. horton.log– Screen logging, timing and citation management
- 3.1.7. horton.moments– Auxiliary routines related to multipole moments
- 3.1.8. horton.orbital_utils– Utility functions for orbital modifications
- 3.1.9. horton.periodic– Periodic table of elements
- 3.1.10. horton.quadprog– A light-weight quadratic programming solver
- 3.1.11. horton.symmetry– Geometric symmetries
- 3.1.12. horton.units– Conversion from and to atomic units
- 3.1.13. horton.utils– Utility functions
- 3.1.14. horton/cell.h– Unit cell code to specify periodic boundary conditions
- 3.1.15. horton/moments.h– Efficient evaluation of various of polynomials
- 3.1.16. horton/nucpot.h– Low-level implementation of nuclear potential on a grid
 
- 3.1.1. 
- 3.2. horton.correlatedwfn– Methods for correlated wavefunctions- 3.2.1. horton.correlatedwfn.geminal– Correlated wavefunction implementations
- 3.2.2. horton.correlatedwfn.perturbation– Perturbation theory module
- 3.2.3. horton.correlatedwfn.restricted_ap1rog– Correlated wavefunction implementations
- 3.2.4. horton.correlatedwfn.stepsearch– Step search methods for orbital rotations
- 3.2.5. horton.correlatedwfn.trustregionopt– Optimization of Newton step
 
- 3.2.1. 
- 3.3. horton.espfit– Electrostatic potential fitting
- 3.4. horton.gbasis– Gaussian basis sets- 3.4.1. horton.gbasis.cext– C++ extensions
- 3.4.2. horton.gbasis.gobasis– Gaussian orbital basis set module.
- 3.4.3. horton.gbasis.iobas– Input/Output routines for gaussian basis sets
- 3.4.4. horton/gbasis/boys.h– The Boys function
- 3.4.5. horton/gbasis/calc.h– Base class for any integral/evaluation of Gaussian functions
- 3.4.6. horton/gbasis/cartpure.h– Conversion of Cartesian to Pure Gaussian functions
- 3.4.7. horton/gbasis/cholesky.h– Cholesky decomposition of (any) four-center integrals
- 3.4.8. horton/gbasis/common.h– Auxiliary functions
- 3.4.9. horton/gbasis/fns.h– Evaluation of functions expanded in a Gaussian basis
- 3.4.10. horton/gbasis/gbasis.h– Gaussian basis set classes
- 3.4.11. horton/gbasis/gbw.h– A four-center integral wrapper for the Cholesky code
- 3.4.12. horton/gbasis/ints.h– Evaluation of integrals of Gaussian basis functions
- 3.4.13. horton/gbasis/iter_gb.h– Iterators over Gaussian basis functions
- 3.4.14. horton/gbasis/iter_pow.h– Iterators over Cartesian polynomials in one shell
 
- 3.4.1. 
- 3.5. horton.grid– Numerical integration grids- 3.5.1. horton.grid.atgrid– Atomic grids
- 3.5.2. horton.grid.base– Base classes for 3D integration grids
- 3.5.3. horton.grid.cext– C++ extensions
- 3.5.4. horton.grid.int1d– 1D integration algorithms
- 3.5.5. horton.grid.molgrid– Molecular integration grids
- 3.5.6. horton.grid.ode2– Finite-element second-order ODE solver
- 3.5.7. horton.grid.poisson– Becke-style numerical Poisson solver
- 3.5.8. horton.grid.radial– 1D Radial integration grid
- 3.5.9. horton.grid.utils– Auxiliaries for numerical integrals
- 3.5.10. horton.grid.visual– Grids suitable for visualization
- 3.5.11. horton/grid/becke.h– Becke partitioning weight function
- 3.5.12. horton/grid/cubic_spline.h– One-dimensional cubic splines (on uniform grids)
- 3.5.13. horton/grid/evaluate.h– Evaluation of splines on grids
- 3.5.14. horton/grid/lebedev_laikov.h– Grids for quadrature on a sphere
- 3.5.15. horton/grid/ode2.h– Second-order finite-element ODE solver using Hermite polynomials
- 3.5.16. horton/grid/rtransform.h– Transformation from uniform 1D to non-uniform 1D grids
- 3.5.17. horton/grid/uniform.h– Uniform 3D grids
- 3.5.18. horton/grid/utils.h– Auxiliary functions
 
- 3.5.1. 
- 3.6. horton.io– Input and output routines- 3.6.1. horton.io.cif– Crystalographic Information File format
- 3.6.2. horton.io.cp2k– CP2K atomic wavefunctions
- 3.6.3. horton.io.cube– Gaussian cube file format
- 3.6.4. horton.io.gaussian– Gaussian LOG and FCHK file fromats
- 3.6.5. horton.io.internal– HORTON internal file format
- 3.6.6. horton.io.iodata– Input/output dispatcher for different file formats
- 3.6.7. horton.io.lockedh5– H5 file with lock
- 3.6.8. horton.io.molden– Molden wavefunction input file format
- 3.6.9. horton.io.molekel– Molekel wavefunction input file format
- 3.6.10. horton.io.molpro– Molpro 2012 FCIDUMP format.
- 3.6.11. horton.io.vasp– VASP POSCAR, CHGCAR and POTCAR file formats
- 3.6.12. horton.io.wfn– WFN File format (Gaussian and GAMESS)
- 3.6.13. horton.io.xyz– XYZ file format
 
- 3.6.1. 
- 3.7. horton.localization– Methods for orbital localization
- 3.8. horton.matrix– One-, two-, three- and four-dimensional matrix implementations- 3.8.1. horton.matrix.base– Base classes
- 3.8.2. horton.matrix.cext– C++ extensions for matrix package
- 3.8.3. horton.matrix.cholesky– Cholesky decomposition of four-index objects
- 3.8.4. horton.matrix.dense– Dense matrix implementations
- 3.8.5. horton/matrix/slicing.h– Low-level routines forCholeskyLinalgFactory
 
- 3.8.1. 
- 3.9. horton.meanfield– Mean-field electronic structure code- 3.9.1. horton.meanfield.bond_order– Generic implementation of bond orders for mean-field wavefunctions
- 3.9.2. horton.meanfield.builtin– Built-in energy terms
- 3.9.3. horton.meanfield.cext– C++ extensions
- 3.9.4. horton.meanfield.convergence– Evaluation of convergence criteria
- 3.9.5. horton.meanfield.gridgroup– Container for observables involving numerical integration
- 3.9.6. horton.meanfield.guess– Initial guesses for wavefunctions
- 3.9.7. horton.meanfield.hamiltonian– Mean-field DFT/HF Hamiltonian data structures
- 3.9.8. horton.meanfield.libxc– Interface to LDA, GGA and hybrid functionals from LibXC
- 3.9.9. horton.meanfield.observable– Base classes for energy terms and other observables of the wavefunction
- 3.9.10. horton.meanfield.occ– Occupation number models
- 3.9.11. horton.meanfield.project– Projection of 1-electron orbitals to a new basis set
- 3.9.12. horton.meanfield.response– Evaluation of response functions
- 3.9.13. horton.meanfield.rotate– Rotation of orbitals
- 3.9.14. horton.meanfield.scf– Basic Self-Consistent Field (SCF) algorithm
- 3.9.15. horton.meanfield.scf_cdiis– Commutator DIIS SCF algorithm
- 3.9.16. horton.meanfield.scf_diis– Abstract DIIS code used by the different DIIS implementations
- 3.9.17. horton.meanfield.scf_ediis– Energy DIIS SCF algorithm
- 3.9.18. horton.meanfield.scf_ediis2– EDIIS+DIIS SCF algorithm
- 3.9.19. horton.meanfield.scf_oda– Optimal Damping SCF algorithm
- 3.9.20. horton.meanfield.utils– Utility functions
 
- 3.9.1. 
- 3.10. horton.modelhamiltonians– Model Hamiltonians
- 3.11. horton.orbital_entanglement– Methods for measuring orbital entanglement
- 3.12. horton.part– Density-based partitioning (fuzzy atoms-in-molecules) package- 3.12.1. horton.part.base– Base classes for (atoms-in-molecules) partitioning algorithms
- 3.12.2. horton.part.becke– Becke partitioning
- 3.12.3. horton.part.hirshfeld– Hirshfeld partitioning
- 3.12.4. horton.part.hirshfeld_e– Extended Hirshfeld (HE) partitioning
- 3.12.5. horton.part.hirshfeld_i– Iterative Hirshfeld (HI) partitioning
- 3.12.6. horton.part.iterstock– Iterative Stockholder Analysis (ISA) partitioning
- 3.12.7. horton.part.mbis– Minimal Basis Iterative Stockholder (MBIS) partitioning
- 3.12.8. horton.part.mulliken– Mulliken partitioning
- 3.12.9. horton.part.proatomdb– Pro-atom databases
- 3.12.10. horton.part.stockholder– Base classes for all stockholder partitioning schemes
- 3.12.11. horton.part.symmetry– Symmetry analysis of atoms-in-molecules results
 
- 3.12.1. 
- 3.13. horton.scripts– Code (solely) used by HORTON’s command line scripts- 3.13.1. horton.scripts.atomdb– Code used byhorton-atomdb.py
- 3.13.2. horton.scripts.common– Code shared by several scripts
- 3.13.3. horton.scripts.cpart– Utility functions for thehorton-cpart.pyscript
- 3.13.4. horton.scripts.espfit– Code used by ESP fitting scripts
- 3.13.5. horton.scripts.hdf2csv– Code used byhorton-hdf2csv.py
- 3.13.6. horton.scripts.wpart– Utility functions for thehorton-wpart.pyscript
 
- 3.13.1.