Hamiltonian: 8-band model for zincblende

The Model

Hint

This model can be triggered for any point of the simulation using classical{ bulk_dispersion{KP8{}}}. See the bulk_dispersion{ } section for reference on syntax.

Our implementation of the 8-band kp model for bulk crystals is a simplified version of the matrix Hamiltonian described in a PhD thesis [AndlauerPhD2009] obtained from the one-particle Hamiltonian

H^=p^22m+V0(r)+4m2c2[σ^×V0(r)]p^

The description below contains also definitions and relations that can be found in [BirnerPhD2011] and [BahderPRB1990].

Warning

The Hamiltonian below does not contain terms related to the presence of the magnetic field. Therefore, proper operator ordering is neglected to keep formulas as simple as possible. Also, parameters N+, N, κ, and g are not included here. Comprehensive documentation will be published elsewhere.

Our model is expressed in a basis of class A functions:

{|s,|s,|x1,|x2,|x3,|x1,|x2,|x3}

The Hamiltonian can be concisely written in a block form as follows.

H^kp=[H^cc(k,ϵ^)0H^cv(k)00H^cc(k,ϵ^)0H^cv(k)H^vc(k)0H^vv(k)+H^vv(ϵ^)+H^so↑↑H^so↑↓0H^vc(k)H^so↓↑H^vv(k)+H^vv(ϵ^)+H^so↓↓]

where k is a wave vector and ϵ^ is a strain tensor.

Diagonal elements for the conduction band are defined as

H^cc(k,ϵ^)=Ec+Ack2+acTr{ϵ^},

where k is length of the wave vector, Ec is conduction-band edge, ac is absolute hydrostatic deformation potential for the conduction band, Tr{ϵ^} is trace of the strain tensor, Ac is defined as

Ac=A+22m0.

A is one of Kane parameters. It contains interactions between the conduction band and the remote bands B with Γ5 symmetry

A=2m02njB|s|p^1|nΓ5j|2EcEn,Γ5.

Blocks introducing interaction between conduction and valence bands are given by

H^cv(k)=[ıP0k1+Bk2k3ıP0k2+Bk1k3ıP0k3+Bk1k2]

and

H^vc(k)=[ıP0k1+Bk2k3ıP0k2+Bk1k3ıP0k3+Bk1k2],

where k1,k2,k3 are three components of the wave vector of interest, P0 is a Kane parameter describing interactions between conduction band and valence bands within the A basis

P0=ım0s|p^1|x1,

and B is a Kane parameter including interaction between the all the bands in class A and remote bands B of Γ5 symmetry

B=22m02njBs|p^1|nΓ5jnΓ5j|p^1|x3[Ec+Ev]/2En,Γ5.

with top valence band energy Ev=Ev,av+Δ0.

Blocks for the valence bands without the strain included are defined as

H^vv(k)=[Ev,av+22m0k2000Ev,av+22m0k2000Ev,av+22m0k2]+[Lk12+Mk22+Mk32Nk1k2Nk1k3Nk1k2Mk12+Lk22+Mk32Nk2k3Nk1k3Nk2k3Mk12+Mk22+Lk32],

where Ev,av is average energy of valence bands at Γ point, M, N, and L are Kane parameters introducing interactions between the valence bands in A and remote bands B of Γ1,Γ3,Γ4,Γ5 symmetries

M=H1+H2N=FG+H1H2L=F+2G

where

G=22m02njB|x1|p^1|nΓ3j|2EvEn,Γ3F=22m02njB|x1|p^1|nΓ1j|2EvEn,Γ1H1=22m02njB|x1|p^1|nΓ5j|2EvEn,Γ5H2=22m02njB|x1|p^1|nΓ4j|2EvEn,Γ4

Spin-orbit interaction within the valence bands is introduced by

H^so↑↑=Δ03[0ı0ı00000]=[H^so↓↓]andH^so↑↓=Δ03[00100ı1ı0]=[H^so↓↑],

where spin-orbit interaction energy Δ0 is defined by

Δ03=ı4m02c2x1|[V0(r)×p^]2|x3.

The strain is introduced to the valence bands by

H^vv(ϵ^)=[lϵ11+mϵ22+mϵ33nϵ21nϵ31nϵ21mϵ11+lϵ22+mϵ33nϵ32nϵ31nϵ32mϵ11+mϵ22+lϵ33]

where ϵij are elements of the strain tensor ϵ^ and m,n,l are matrix elements of a strain-dependent interaction operator, further defining deformation potentails for the valence bands.

Note

All sections below may be moved elswhere in near future

Offsets

Ec=Eg(db)+Ev,av(db)+13Δ0(db), Ev,av=Ev,av(db), Δ0=Δ0(db)

Where the following mapping to our database is applied.

Table 2.2.3 Mapping of offsets to the database

parameter

value in the database

Eg(db)

database{ ..._zb{ conduction_bands{ Gamma{ bandgap } } } }

Ev,av(db)

database{ ..._zb{ valence_bands{ bandoffset } } }

Δ0(db)

database{ ..._zb{ valence_bands{ delta_SO } } }

Attention

If temperature dependence is triggered then the Varshni formula is applied to the energy gap such that EcEc(T) and Ev,avEv,av(T).

Deformation potentials

ac=ac(db),m=av(db)b(db),n=3d(db),l=av(db)+2b(db),

Where the following mapping to our database is applied.

Table 2.2.4 Mapping of deformation potentials to the database

parameter

value in the database

ac(db)

database{ ..._zb{ Gamma{ defpot_absolute } } }

av(db)

database{ ..._zb{ valence_bands{ defpot_absolute } }

b(db)

database{ ..._zb{ valence_bands{ defpot_uniaxial_b } }

d(db)

database{ ..._zb{ valence_bands{ defpot_uniaxial_d } }

k.p parameters

Attention

In this section we assume that rescale_S_to is not defined in the input file at all, like in the examples below. The topic of rescaling S parameter and it’s influence on the Hamiltonian will be discussed elsewhere.

As the kp models have been derived in the literature on numerous ways, there are couple of parameterisation standards available of which preference is not clear. Also, depending on the method applied to obtaining parameters some of them are easier accessible that the others. Therefore, depending on the source and the material of interest different schemes of parametrisation may be preffered by the user. For this purpose multiple possibilities of connecting our database to this model are available.

Default settings

The default settings are equivalent to setting all the attrubutes use_Luttinger_parameters, from_6band_parameters, approximate_kappa, evaluate_S to no.

Examples
  1. Controlling parameters of the Hamiltonian for computation of electronic energy dispersion for a bulk crystal

classical{
    bulk_dispersion{
        KP8{
            from_6band_parameters = no
            use_Luttinger_parameters = no
            approximate_kappa = no
            evaluate_S = no
        }
    }
}
  1. Controlling parameters of the Hamiltonian for which h Schrödinger equation is solved

quantum {
    region{
        kp_8band{
            kp_parameters{
                from_6band_parameters = no
                use_Luttinger_parameters = no
                approximate_kappa = no
                evaluate_S = no
            }
        }
    }
}

Then the Kane parameters are defined by

M=22m0M(db), N=22m0N(db), L=22m0L(db)
Ac=22m0S(db), B=22m0B(db), P=22m0Ep(db)

where the following mapping to our database is applied.

Table 2.2.5 Mapping of Kane parameters to the database

parameter

value in the database

M(db)

database{ ..._zb{ kp_8_bands{ M } } }

L(db)

database{ ..._zb{ kp_8_bands{ L } } }

N(db)

database{ ..._zb{ kp_8_bands{ N } } }

S(db)

database{ ..._zb{ kp_8_bands{ S } } }

B(db)

database{ ..._zb{ kp_8_bands{ B } } }

Ep(db)

database{ ..._zb{ kp_8_bands{ E_P } } }

Luttinger parameters and electron effective mass

One needs to set all three parameters from_6band_parameters, use_Luttinger_parameters, evaluate_S to yes to use the Luttinger parameters (as defined for 6-band kp model) and the effective mass of electrons.

Examples
  1. Controlling parameters of the Hamiltonian for computation of electronic energy dispersion for a bulk crystal

classical{
    bulk_dispersion{
        KP8{
            from_6band_parameters = yes
            use_Luttinger_parameters = yes
            approximate_kappa = no
            evaluate_S = yes
        }
    }
}
  1. Controlling parameters of the Hamiltonian for which h Schrödinger equation is solved

quantum {
    region{
        kp_8band{
            kp_parameters{
                from_6band_parameters = yes
                use_Luttinger_parameters = yes
                approximate_kappa = no
                evaluate_S = yes
            }
        }
    }
}

Then the Kane parameters are defined by

M=22m0[γ1(db)+2γ2(db)1]N=22m0[6γ3(db)]+Ep(db)EgL=22m0[γ1(db)4γ2(db)1]+Ep(db)EgAc=22m0[1me(db)2Ep(db)3EgEp(db)3[Eg+Δ0(db)]]B=22m0B(db)P=22m0Ep(db),

where the following mapping to our database is applied.

Table 2.2.6 Mapping to the database

parameter

value in the database

γ1(db)

database{ ..._zb{ kp_6_bands{ gamma_1 } } }

γ2(db)

database{ ..._zb{ kp_6_bands{ gamma_2 } } }

γ3(db)

database{ ..._zb{ kp_6_bands{ gamma_3 } } }

me(db)

database{ ..._zb{ conduction_bands{ Gamma{ mass } } } }

Δ0(db)

database{ ..._zb{ valence_bands{ delta_SO } } }

Ep(db)

database{ ..._zb{ kp_8_bands{ E_P } } }

B(db)

database{ ..._zb{ kp_8_bands{ B } } }

Rescaling S

One of ways to get rid of spurious solutions in quantum structures is to rescale S parameter to 0 or 1. The S defines Ac as

Ac=22m0S
Examples
  1. Rescaling S in the Hamiltonian for computation of electronic energy dispersion for a bulk crystal

classical{
    bulk_dispersion{
        KP8{
            rescale_S_to = 1
        }
    }
}
  1. Rescaling S in the Hamiltonian for which the Schrödinger equation is solved

quantum {
    region{
        kp_8band{
            kp_parameters{
                rescale_S_to = 1
            }
        }
    }
}

The initial value of S is determined according to choices described before. If one chose evaluate_S = no then

S=S(db),

otherwise, if one chose evaluate_S = yes then

S=1me(db)2Ep(db)3EgEp(db)3[Eg+Δ0(db)].

In the input file, one can request consistent rescaling the model such that SS(new) resulting in

Ac=22m0S(new).

A rescaled Kane energy Ep(new) is evaluated to ensure that the model gives the same electronic band structure (ideally) as before the rescaling, but without spurious solutions. It is done directly from the assumption the S=S(new).

Ep(new)=Ep(db)+[SS(new)]Eg[Eg+Δ0(db)]Eg+23Δ0(db)

After the rescaled Kane energy is evaluated, it is used to update or redefine other relevant Kane parameters entering the model.

LL+Ep(new)Ep(db)Eg,NN+Ep(new)Ep(db)Eg,P=22m0Ep(new).

Where L and N are initially evaluated according to the choices in the kp_parameters{} group as described in previous sections.


Last update: nn/nn/nnnn