|
votca 2026-dev
|
Surrogate lattice model of a hopping system, written as an ordinary XTP topology (segments with one pseudo atom each, a periodic box and a neighbour list with couplings), so that every transport method in XTP can be run and cross-checked on it. More...
#include <latticemodel.h>

Classes | |
| struct | Options |
| class | NormalGenerator |
Public Types | |
| enum class | Disorder { None , Uncorrelated , Correlated } |
Public Member Functions | |
| LatticeModel (const Options &opt) | |
| void | BuildTopology (Topology &top) const |
| Fill an empty topology with segments, box and neighbour list. | |
| const std::vector< double > & | SiteEnergies () const |
| Site energies in segment order. | |
| const std::vector< Eigen::Vector3d > & | Positions () const |
| Positions in segment order. | |
| Index | NumberOfSites () const |
Static Public Member Functions | |
| static Disorder | DisorderFromString (const std::string &name) |
Private Member Functions | |
| Eigen::Vector3d | ShortestConnection (const Eigen::Vector3d &r1, const Eigen::Vector3d &r2) const |
| void | GenerateEnergies () |
| std::vector< std::vector< Index > > | NearestNeighbours (Index l) const |
| indices of the l nearest other sites of every site, ties broken by index | |
| std::vector< std::pair< double, std::array< Index, 3 > > > | Offsets (double radius) const |
| Index | SiteIndex (Index ix, Index iy, Index iz) const |
| site index of lattice coordinates (taken modulo the dimensions) | |
Private Attributes | |
| Options | opt_ |
| Eigen::Matrix3d | box_ |
| std::vector< Eigen::Vector3d > | positions_ |
| std::vector< double > | energies_ |
Surrogate lattice model of a hopping system, written as an ordinary XTP topology (segments with one pseudo atom each, a periodic box and a neighbour list with couplings), so that every transport method in XTP can be run and cross-checked on it.
Follows the setup of Chen, van der Hoorn, Baumeier, arXiv:2405.15836: simple cubic lattice with spacing a, sites at (i+1/2)a, periodic in all three directions (a time-of-flight calculation cuts one of them), pairs for |r| < cutoff, |J|^2 = J0^2 exp(-(|r|-a)/decay), one reorganization energy for all pairs, and Gaussian site energies without or with spatial correlation (moving-average construction of Baumeier et al., PRB 86, 184202 (2012); eq. 2.5 of the paper excludes the site itself from the averages, see Options::include_self).
All quantities are in atomic units (bohr, Hartree).
Definition at line 55 of file latticemodel.h.
|
strong |
| Enumerator | |
|---|---|
| None | |
| Uncorrelated | |
| Correlated | |
Definition at line 57 of file latticemodel.h.
|
explicit |
Definition at line 70 of file latticemodel.cc.
| void votca::xtp::LatticeModel::BuildTopology | ( | Topology & | top | ) | const |
Fill an empty topology with segments, box and neighbour list.
Definition at line 262 of file latticemodel.cc.
|
static |
Definition at line 57 of file latticemodel.cc.
|
private |
Definition at line 200 of file latticemodel.cc.
|
private |
indices of the l nearest other sites of every site, ties broken by index
Definition at line 143 of file latticemodel.cc.
|
inline |
Definition at line 94 of file latticemodel.h.
|
private |
lattice offsets (in units of a, reduced to the box) of all other sites within radius of a site, with their distances; by translation symmetry the same for every site, so neighbour searches cost O(n) instead of O(n^2)
Definition at line 121 of file latticemodel.cc.
|
inline |
Positions in segment order.
Definition at line 92 of file latticemodel.h.
|
private |
Definition at line 107 of file latticemodel.cc.
|
inline |
Site energies in segment order.
Definition at line 89 of file latticemodel.h.
site index of lattice coordinates (taken modulo the dimensions)
Definition at line 114 of file latticemodel.cc.
|
private |
Definition at line 115 of file latticemodel.h.
|
private |
Definition at line 117 of file latticemodel.h.
|
private |
Definition at line 114 of file latticemodel.h.
|
private |
Definition at line 116 of file latticemodel.h.