[ Home ] [ News ] [ Contact ] [ Search ] output-1-band-schroedinger

 ==> Download Software
 nextnano³ documentation

 Copyright notice
 About us
 Useful Links
 Publications
 * password protected

 

 
Up
 

Output-1-band-schroedinger

The output of the eigenvalues and eigenfunctions for the single-band Schrödinger equations ('effective-mass') is controlled by this keyword. All eigenfunctions and eigenvalues between cb-min-ev and cb-max-ev are put out for each band.

!---------------------------------------------------------------!
$output-1-band-schroedinger                            optional !
 destination-directory                 character       required !
 sg-structure                          character       optional !
 effective-mass-tensor                 character       optional !
 complex-wave-functions                character       optional !
 eigenvalues-only                      character       optional !
 scale                                 double          optional !
 shift-wavefunction-by-eigenvalue      character       optional !
                                                                !
 conduction-band-numbers               integer_array   optional !
 cb-min-ev                             integer         optional !
 cb-max-ev                             integer         optional !
                                                                !
 valence-band-numbers                  integer_array   optional !
 vb-min-ev                             integer         optional !
 vb-max-ev                             integer         optional !
                                                                !
 interband-matrix-elements             character       optional !
 intraband-matrix-elements             character       optional !
 intraband-lifetime                    character       optional !
                                                                !
 stark-effect-out                      character       optional !
 voltage-offset                        double          optional !
 lever-arm-length                      double          optional !
                                                                !
 resonance-bound-states                integer_array   optional !
 resonance-incidence                   integer_array   optional !
                                                                !
$end_output-1-band-schroedinger                        optional !
!---------------------------------------------------------------!

 

Syntax:

destination-directory = my-directory/
                 e.g. = sg_1band1/

Name of directory to which the files should be written. Must exist and directory name has to include the slash (\ for DOS and / for UNIX).

 

sg-structure = yes / no

Flag whether to put out the Schrödinger structure file (sg_definition.dat). This file describes the internal number and degeneracy of the Schrödinger equations that have to be solved.
Note: If the energy bands are splitted due to strain, e.g. X valley and L valley, then the Schrödinger equation has to be solved for different band edges. If the masses are anisotropic, then for each mass valley a separate Schrödinger equation has to be solved.

 

effective-mass-tensor = yes / no

Flag whether to put out the effective mass tensor (1/m)ij for each Schrödinger equation to be solved. Output is a 3x3 matrix for each grid point.
(*mass_tensor*.dat)

Example for 1D output:
cb003mass_tensor1D_qc001_sg003_deg001.dat
cb003 = conduction band no. 3 (=X band)
                1D = simulation dimension
                   qc001 = quantum cluster no. 1
                         sg003 = no. of Schrödinger equation to be solved
                               deg001 = degeneracy of Schrödinger equation to be solved

distance [nm]
distance       (1/m)_xx       (1/m)_yy       (1/m)_zz       (1/m)_xy       (1/m)_xz       (1/m)_yz
...
0.350750E+002  0.769231E+000  0.434783E+001  0.434783E+001  0.000000E+000  0.000000E+000  0.000000E+000
...
              1/1.3 = 0.769   1/0.23 = 4.434  1/0.23 = 4.34
 

In this example the mass tensor is diagonal and (1/m)xx contains 1/(longitudinal mass ml) and (1/m)yy=(1/m)zz contains 1/(transverse mass mt) of the X valley of GaAs.

database.in:
$binary-zb-default
 binary-type            = GaAs-zb-default
 conduction-band-masses = 0.067d0 0.067d0  0.067d0   ! Gamma
                          1.9d0   0.0754d0 0.0754d0  ! L  (ml mt mt)
                          1.3d0   0.23d0   0.23d0    ! X  (ml mt mt)
More information on effective masses...

 

complex-wave-functions = yes
                     
 = no
                       = yes-lengvec  !
Due to historic reason, can be eliminated some day. Will print out wave functions on a different grid.
                       = no-lengvev   !
Due to historic reason, can be eliminated some day. Will print out wave functions on a different grid.

Flag whether to print out the wave functions psi including real and imaginary parts in addition to the output of Psi².
This works in 1D, 2D and 3D.
This currently only works for 2D.

 

eigenvalues-only        = yes / no   ! (default: no)

Sometimes one is only interested in plotting out the eigenvalues but not the eigenfunctions.
Nevertheless, internally in the program the eigenfunctions are used (e.g. for calculating the density).

 

scale = 1d0

The scale parameter can be used to scale the size of the  wave functions in the output file.

1D: So far, it scales the wave function psi and psi² (i.e. the probability amplitude or charge density) the same way:
psi²' = scale * psi²
psi'  = scale * psi

2D/3D: No scaling via input file implemented so far. However, internally in 3D psi² is scaled in any case by
(1 *  1010) * 0.001 / MAXVAL(psiV)² = 1 *  107 / MAXVAL(psiV)².
In 2D, the scaling now works for both, psi and psi².

1D: The units of psi² are [1/Angstrom], the units of psi are SQRT([1/Angstrom]).
   This way the integrated psi² over the whole device (which is in units of [nm]) equals 0.1 and not 1.
   One has to convert either psi² into [1/nm] or the device length into [Angstrom] in order to equal 1.
1D: The units of psi² are [1/nm], the units of psi are SQRT([1/nm]).
   This way the integrated psi² over the whole device (which is in units of [nm]) equals 1.
2D: The units of psi² are [1/nm²], the units of psi are SQRT([1/nm²]).
   This way the integrated psi² over the whole device (which is in units of [nm²]) equals 1.
3D: The units of psi² are [1/nm³], the units of psi are SQRT([1/nm³]).
   This way the integrated psi² over the whole device (which is in units of [nm³]) equals 1.

A good check to see if psi² is scaled correctly is to apply Neumann boundary conditions at all boundaries of the quantum cluster. The ground state probability density then is constant over the whole device. This value in units of [1/nm] (1D), [1/nm²] (2D) or [1/nm³] (3D) multiplied by the length (1D), area (2D) or volume (3D) of the quantum cluster must equal 1.

 

shift-wavefunction-by-eigenvalue  = yes ! (1D:    yes = default)
                                  = no  !
(2D/3D: no  = default)

If yes, in addition to default output, the wave function psi and the probability density psi2 are shifted with respect to their eigenvalue.
This is sometimes useful when plotting the wave functions together with the band edge profile.
The relevant output files have the label _shift in their file names.

 

conduction-band-numbers = 1 2 3

Integer array that determines the numbers of the conduction bands for which the corresponding eigenvalues and eigenfunctions should be put out.

 

cb-min-ev = 1

Lower boundary for interval of conduction band eigenvalues and eigenfunctions to be put out.

 

cb-max-ev = 1

Upper  boundary for interval of conduction band eigenvalues and eigenfunctions to be put out.

 

valence-band-numbers = 1 2 3

Integer array that determines the numbers of the valence bands for which the corresponding eigenvalues and eigenfunctions should be put out.

 

vb-min-ev = 1

Lower boundary for interval of valence band eigenvalues and eigenfunctions to be put out.

 

vb-max-ev = 1

Upper  boundary for interval of valence band eigenvalues and eigenfunctions to be put out.

 

interband-matrix-elements = yes  ! calculates interband matrix elements
                          
= no
==> square of the spatial overlap matrix element | <psi_i* | psi_j> |^2

The output files
  interband1D_vb001_cb001_qc001_hlsg001_deg001_dir.dat (heavy   hole <-> Gamma conduction band)
  interband1D_vb002_cb001_qc001_hlsg002_deg001_dir.dat
(light     hole <-> Gamma conduction band)
  interband1D_vb003_cb001_qc001_hlsg003_deg001_dir.dat
(split-off hole <-> Gamma conduction band)
 contain data like
 Spatial overlap matrix elements | < psi_hl_i | psi_el_j > |^2 and
                                                   energy of transition in [eV]
 heavy hole <-> Gamma conduction band
------------------------------------------------------------------------
  |<psi_vb001|psi_cb001>|^2  0.987507995852382         1.654103
  |<psi_vb001|psi_cb002>|^2  1.336279027563441E-030
  |<psi_vb001|psi_cb003>|^2  0.145559411422541         2.538366
  |<psi_vb002|psi_cb001>|^2  1.133344425625580E-030
  |<psi_vb002|psi_cb002>|^2  0.964789984970279         2.065139
which are the spatial overlap matrix elements between all calculated states in bands 'cband' and 'vband' from eigenvalues 'min-ev' to 'max-ev'.

There is also a two-dimensional plot available: interband1D_vb001_cb001_qc001_hlsg001_deg001_dir_2Dplot.fld / *.coord / *.dat
It contains the matrix elements Mij where the x axis refers to the i hole states, and the y axis to the j electron states.
If only Mii transitions are allowed, a diagonal structure should be seen (e.g. in an infinite quantum well).


To plot matrix elements vs. electric field.
The electric field is calculated by ('voltage-offset' + vbias) / distance
with v_bias = sweep_index * sweep_voltage.

The electric field is scaled to [kV/cm].

The 'voltage-offset' is the built-in potential in [V].
distance:
The length of the region with constant field [in scaled units: nm] is specified via 'lever-arm-length'.

This only works for intrinsic regions with quasi constant electric field, but imitates the way experimental physicists approximate the electric field.

In order to use only bound states the MODULE bound_states_1D must be initialized.
=> $quantum-bound-states

-> momentum matrix <psi*|p|psi>  (not implemented yet)
-> Coulomb element <psi*|V|psi> 
(not implemented yet)
with V = Int( 1/4pi (r1-r2) * |psi(r2)|‹dr2 )

 

 

intraband-matrix-elements = p    ! < psij* | p | psii >
                          
= z    ! < psij* | z | psii >
                          
= o    ! < psij*   |   psii > (spatial overlap)
                          
= yes  !
(prints out all matrix elements, i.e. 'p',  'z' and  'o')
                          
= no   !
Calculates intersubband dipole moment and oscillator strength.

The output files
  intraband_p1D_cb001_qc001_sg001_deg001_dir.dat ! (Gamma conduction band)
  intraband_p1D_vb001_qc001_sg001_deg001_dir.dat !
(heavy hole)
  intraband_p1D_vb002_qc001_sg002_deg001_dir.dat !
(light hole)
  intraband_p1D_vb003_qc001_sg003_deg001_dir.dat !
(split-off hole)
            z                                    !
kind of matrix element ('p' / 'z' / 'o')
            o                                    !
kind of matrix element ('p' / 'z' / 'o')
             2D                                  !
'1D', '2D', '3D'
             3D                                  !
'1D', '2D', '3D'
                                         neu     !
kind of boundary condition (Dirichlet 'dir' / Neumann 'neu')
 contain data like

(Note: < psij* | p | psii > matrix element given in green color.)

-------------------------------------------------------------------------------
Intersubband transitions
=> Gamma conduction band
-------------------------------------------------------------------------------
Electric field in z-direction [kV/cm]: 0.0000000E+00
-------------------------------------------------------------------------------

-------------------------------------------------------------------------------
       Intersubband dipole moment < psi_j* | z | psi_i > [Angstrom]
       Intersubband dipole moment < psi_j* | p | psi_i > [- i h_bar / Angstrom]
------------------|------------------------------------------------------------
                                  Oscillator strength []
------------------|--------------|---------------------------------------------
                                                 Energy of transition [eV]
------------------|--------------|--------------|------------------------------
                                                            m* [m_0]
------------------|--------------|--------------|----------|-------------------
<psi001*|z|psi001>  249.0000  
        (matrix element <1|1> depends on choice of origin!)
<psi001*|p|psi001>  4.3405972E-19 
(matrix element <1|1> independent of origin)

<psi002*|z|psi00118.01673       0.9602799      0.1694912  6.6500001E-02
<psi002*|p|psi001>  2.6649671E-02  0.9602799      0.1694912  6.6500001E-02

<psi003*|z|psi001>  6.1430171E-07  2.9757722E-15  0.4517909  6.6500001E-02
(same parity: symmetric)
<psi003*|p|psi001>  2.7325134E-18

<psi004*|z|psi001>  1.441336       3.0698571E-02  0.8466209  6.6500001E-02
<psi004*|p|psi001>  1.0649348E-02  3.0698579E-02  0.8466209  6.6500001E-02

<psi005*|z|psi001>  1.6007220E-07  6.0536645E-16  1.353592   6.6500001E-02
(same parity: symmetric)
<psi005*|p|psi001>  6.9518724E-18

<psi006*|z|psi001>  0.3971010      5.4281605E-03  1.972205   6.6500001E-02
<psi006*|p|psi001>  6.8347314E-03  5.4281540E-03  1.972205   6.6500001E-02

<psi007*|z|psi001>  5.1874160E-08  1.2690011E-16  2.701849   6.6500001E-02
(same parity: symmetric)
<psi007*|p|psi001>  2.8686024E-19

<psi008*|z|psi001>  0.1634139      1.6508275E-03  3.541806   6.6500001E-02
<psi008*|p|psi001>  5.0510615E-03  1.6508278E-03  3.541806   6.6500001E-02
 ...
<psi020*|z|psi001>  1.0178176E-02  3.9451432E-05  21.81846   6.6500001E-02
<psi020*|p|psi001>  1.9380626E-03  3.9452334E-05  21.81846   6.6500001E-02

Sum rule of oscillator strength
: f_j,001 = 0.9994023
Sum rule of oscillator strength: f_j,001 = 0.9994023
  ...


which are the intersubband dipole moments

    | Mji | = | integral  (psij* (z) z psii (z) dz) |

and the oscillator strengths

    fji = 2m* / hbar² (Ej - Ei)  | Mji

 between all calculated states in each band from eigenvalues 'min-ev' to 'max-ev'.


Unfortunately, the commonly used
                  Intersubband dipole moment
< psi_j* | z | psi_i >   [Angstrom]

depends on the choice of origin for the matrix elements where j = i, thus the user might prefer to output the
                  Intersubband dipole moment < psi_j* | p | psi_i >   [- i h_bar / Angstrom]

which are the intersubband dipole moments

    | Nji | = | integral  (psij* (z) pz psii (z) dz) | = | - i hbar integral  (psij* (z) d/dz psii (z) dz) |

and the oscillator strengths

    fji
= 2m* / hbar² (Ej - Ei)  | Mji  = 2 / ( m* (Ej - Ei) )  | Nji

 between all calculated states in each band from eigenvalues 'min-ev' to 'max-ev'.


For more details, have a look at the tutorial: Optical intersubband transitions in a quantum well - Intraband matrix elements and selection rules

 

Note: To get correct overlap integrals for inter- and intraband transitions, the wave functions psi must be real for a real, symmetric matrix which is the case for the single-band Schrödinger equation (without superlattice and without magnetic field).
In 2D and 3D, if magnetic-field-on = yes and schroedinger-masses-anisotropic = yes or = box and if  schroedinger-1band-ev-solv = arpack or = chearn, then the wave functions psi will have an imaginary part unequal to zero leading to different results for the spatial overlap integrals.

 

intraband-lifetime        = yes  ! calculates the lifetime of intersubband transitions
                         
= no   ! does nothing (default)

This feature is useful for e.g. quantum cascade lasers.
Note: intraband-matrix-elements must not be set to no in order to print out the lifetimes (scattering rates).
See tutorial "Scattering times for electrons in unbiased and biased single and multiple quantum wells" for more details.

 

 

stark-effect-out          = yes
                         
= no

voltage-offset            = 1d0    ! necessary for stark-effect-out          = yes
                                  
!
necessary for interband-matrix-elements = yes
in units of [V]

lever-arm-length          = ???    ! necessary for stark-effect-out          = yes
                                  
!
necessary for interband-matrix-elements = yes
in units of [nm]

resonance-bound-states    = ???
resonance-incidence       = ???
 

 

Output:


 

Eigenfunctions and eigenvalues:

Filename

cb003_ind002_qc001_sg001_deg001_neu.dat
cb003 Number of conduction/valence band
     _ind002 Number of voltage sweep step 
            _qc001 Number of quantum cluster
                  _sg001 Number of Schrödinger equation
                       _deg001 Number of subsolution
                              _neu
                              _dir
Boundary condition (Dirichlet _dir and Neumann _neu)

Structure:                          

position[nm] ev_(001)[eV] ev_(002)[eV] psi^2_(001) psi^2_(002) E_edge[eV]
Position in space Eigenvalue number 1[eV] Eigenvalue number 2 [eV] Eigenfunction number 1 [psi2] Eigenfunction number 2 [psi2] Edge energy [eV]

 

Comments

Structure of the 1-band solutions (sg_definition.dat)

Meaning of: num_sg
                  For different band energies, different Schrödinger equations have to be solved.
                  These are numbered by num_sg.

                  num_deg
        
For equal energy but different masses again, different equations have to be solved.
                  These are numbered by num_deg).

Eigenvalues are in [eV].

Output:
-       .dat Eigenfunctions are
psi^2, normalized to one (with respect to [nm] units].
- _shift.dat: Eigenfunctions are
psi^2, normalized to one (with respect to [nm] units] and shifted by their eigenvalues.


 

 

   
Last modified: 27-Jan-2012