interaction
parameter¶
Model Hamiltonian is defined as
where
The interaction matrix \(U^{i}_{\alpha \beta \gamma \delta}\) is specified by the parameter interaction
.
interaction = kanamori
¶
In this case, the Kanamori-type interaction is used, i.e.
where \(U, U', J\) at each correlated shell are specified by the parameter kanamori
as
interaction = kanamori
kanamori = [(U_1, U'_1, J_1), (U_2, U'_2, J_2), ... ]
For example, if there are two correlated shells that have \((U, U', J) = (4, 2, 1)\) and \((U, U', J) = (6, 3, 1.5)\), respectively, you need to set the input parameters as
interaction = kanamori
kanamori = [(4.0, 2.0, 1.0), (6.0, 3.0, 1.5)]
interaction = slater_f
¶
In this case, the fully rotationally invariant Slater interaction is used. The interaction matrix is constructed by the effective Slater integrals
\(F_0, F_2, F_4, F_6\).
These Slater integrals and the angular momentum at each correlated shell
are specified by the parameter slater_f
as follows
interaction = slater_f
slater_f = [(angular_momentum, F_0, F_2, F_4, F_6), ... ]
For example, if there are two correlated shells, one has d-orbital with \((F_0, F_2, F_4) = (2, 1, 0.5)\) and the other has p-orbital with \((F_0, F_2) = (3, 1.5)\), you need to set the input parameter as
interaction = slater_f
slater_f = [(2, 2.0, 1.0, 0.5, 0.0), (1, 3.0, 1.5 0.0, 0.0)]
Note
You must specify all of \(F_0, F_2, F_4, F_6\).
The basis can be specified by slater_basis
parameter. See slater_basis parameter for details.
interaction = slater_uj
¶
The Slater interaction is used as in the case with interaction = slater_f
, but a conventional intuitive parameterization is implemented.
The effective Slater integrals \(F_0, F_2, F_4, F_6\) are evaluated from parameters \(U\) and \(J\). The explicit formulas are given as follows:
\(l = 1\)
\(l=2\)
\(l=3\)
The \(U\), \(J\) and the angular momentum at each correlated shell
are specified by the parameter slater_uj
as
interaction = slater_uj
slater_uj = [(angular_momentum1, U1, J1), (angular_momentum2, U2, J2), ... ]
The basis can be specified by slater_basis
parameter. See slater_basis parameter for details.
interaction = respack
¶
Use the output by RESPACK. Under construction.
interaction = file
¶
One can set the U tensor \(U^{i}_{\alpha \beta \gamma \delta}\) from an external file. The input parameters for this are
interaction = file
interaction_file = ['file1.npy', 'file2.npy',]
The filenames for all inequivalent shells are listed in interaction_file
parameter.
The suppored formats are
NumPy .npy format (binary file): Four dimensional NumPy array corresponding to \(U^{i}_{\alpha \beta \gamma \delta}\) for shell \(i\) is save by
numpy.save
command.text file: \(U^{i}_{\alpha \beta \gamma \delta}\) for each shell \(i\) is written in a one dimansional manner as follows (example for
norb=3
without spin-orbit coupling)Re(U[0,0,0,0]) Re(U[0,0,0,1]) Re(U[0,0,0,2]) Re(U[0,0,1,0]) ...
or
Re(U[0,0,0,0]) Im(U[0,0,0,0]) Re(U[0,0,0,1]) Im(U[0,0,0,1]) Re(U[0,0,0,2]) Im(U[0,0,0,2]) Re(U[0,0,1,0]) Im(U[0,0,1,0]) ...
No blank line should be put between consecutive elements. Lines beginning with # are skipped.
The definition of the U tensor depends on the spin_orbit
parameter.
For spin_orbit=False
, \(U^{i}_{\alpha \beta \gamma \delta}\) is defined by Eq. (1). The shape of the U tensor is (norb, norb, norb, norb)
.
For spin_orbit=True
, on the other hand, \(U^{i}_{\alpha \beta \gamma \delta}\) is defined by
In this case, the indices \(\alpha, \beta, \gamma, \delta\) include spin.
The shape of the U tensor is therefore (2*norb, 2*norb, 2*norb, 2*norb)
.
density_density
option¶
If you want to treat only the density-density part
you specify the parameter density_density
as
density_density = True
Note
It can not be used in conjunction to the Hubbard-I solver or the double-counting correction.