qat.fermion.hamiltonians.make_embedded_model

qat.fermion.hamiltonians.make_embedded_model(u: float, mu: float, D: ndarray, lambda_c: ndarray, t_loc: Optional[ndarray] = None, int_kernel: Optional[ndarray] = None, grouping: Optional[str] = 'spins') ElectronicStructureHamiltonian

Returns the canonical second quantized form

\[H_{\mathrm{CSQ}} = \sum_{p,q} h_{pq} f_p^\dagger f_q + \frac{1}{2}\sum_{p,q,r,s} h_{pqrs} f_p^\dagger f_q^\dagger f_r f_s + c\mathbb{I}\]

of an embedded hamiltonian

\[\begin{split}H_{\mathrm{emb}} = U \sum \limits_{i,j,k,l=1}^{2M} I_{ijkl} f^{\dagger}_i f_j f^{\dagger}_k f_l - \mu \sum \limits_{i=1}^{M} f^{\dagger}_{i} f_{j} + \sum \limits_{i, j=1}^{M} t^{\mathrm{loc}}_{ij} f^{\dagger}_i f_j \\ + \sum \limits_{i,j=1}^{M} (D_{ij} f^{\dagger}_{i} f_{M+j} + \mathrm{h.c.}) \\ + \sum \limits_{i,j=1}^{M} \lambda^c_{ij} f_{M+i} f^{\dagger}_{M+j}\end{split}\]

where \(M\) is the number of orbitals (imp+bath). Indices here correspond to the spin-orbitals ordering referred to as ‘cluster’ (see below).

Parameters
  • U (float) – Onsite repulsion on impurity sites.

  • mu (float) – Chemical potential.

  • D (np.ndarray) – Hopping matrix (i.e. hybridization) between the correlated orbitals and the uncorrelated bath.

  • lambda_c (np.ndarray) – Hopping matrix of the uncorrelated sites.

  • t_loc (Optional[np.ndarray]) – Hopping matrix of the correlated sites.

  • int_kernel (Optional[np.ndarray]) – Array \(I\) with 1 at position \(i, j, k, l\) where \(U\) must be put (conv. for associated term: \(c^{\dagger}c^{\dagger}cc\)). Defaults to None, in which case \(U\) is put before terms \(c^{\dagger}_{2i}c^{\dagger}_{2i+1}c_{2i}c_{2i+1}, i=1..M/2\) if grouping is ‘clusters’, \(c^{\dagger}_{i}c^{\dagger}_{i+M}c_{i}c_{i+M}, i=1..M/2\) if grouping is ‘spins’. This array must be a 4D array.

  • grouping (Optional[str]) – Defines how spin-orbitals indices are ordered (see below), defaults to ‘spins’.

Returns

ElectronicStructureHamiltonian

The two grouping strategies are the following:

  • “clusters”: the first \(M\) orbitals SO are \((\uparrow, \mathrm{imp}_0), (\downarrow, \mathrm{imp}_0),..., (\uparrow, \mathrm{imp}_{M-1}), (\downarrow, \mathrm{imp}_{M-1})\) and the last \(M\) orbitals are bath orbitals with similar ordering.

  • “spins”: the first \(M\) orbitals are \((\uparrow, \mathrm{imp}_0), (\uparrow, \mathrm{imp}_1), ..., (\uparrow, \mathrm{bath}_{M-2}), (\uparrow, \mathrm{bath}_{M-1})\) and the last \(M\) orbitals are down orbitals with similar ordering.