This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Last revision Both sides next revision | ||
qcl:software_documentation [2017/03/16 09:51] thomas.grange [Working principle] |
qcl:software_documentation [2017/07/24 12:51] thomas.grange |
||
---|---|---|---|
Line 33: | Line 33: | ||
If you have further questions, see the [[qcl:faq|FAQ]] or contact <support@nextnano.com>. | If you have further questions, see the [[qcl:faq|FAQ]] or contact <support@nextnano.com>. | ||
- | ===== Working principle ===== | ||
- | The code is based on the non-equilibrium Green's functions (NEGF) formalism (also known as the Keldysh, or Kadanoff-Baym formalism). This formalism allows to account for both quantum transport effects (i.e. coherent transport effects, such as resonant tunneling), as well as scattering mechanisms. | ||
- | |||
- | In the NEGF formalism, scattering processes are described in terms of self-energies. Self-energies and Green's functions are calculated in a self-consistent way, as both elastic and inelastic scattering processes are accounted within the the self-consistent Born approximation. | ||
- | |||
- | The code uses **field-periodic boundary condition**. | ||
- | In this way the simulation accounts for an infinite periodic structure, with a periodic electric field. | ||
- | Coherent transport between periods is accounted on a length set by ''<Coherence_length_in_Periods>''. | ||
- | |||
- | === Program flow === | ||
- | |||
- | {{ :qcl:flowchart.jpg?400 |}} | ||
- | |||
- | In the beginning of the calculation, the single-band effective mass Schrödinger equation is solved in real space. | ||
- | The calculated energy levels and wave functions are then used as input to the NEGF algorithm. | ||
- | The wave functions are termed **modes** and the NEGF algorithm is written in terms of **mode space** and not **real space** to make it computationally more efficient. | ||
- | The number of QCL periods that are input to this Schrödinger equation are specified in ''<Number_of_lateral_periods_for_band_structure>''. | ||
- | In general, the core of the NEGF algorithm should be rather independent of this number, e.g. | ||
- | <code> | ||
- | <Number_of_lateral_periods_for_band_structure> 4 | ||
- | </Number_of_lateral_periods_for_band_structure> | ||
- | </code> | ||
- | should lead to very similar results compared to a value of ''5'' but the numerical values might differ slightly. | ||
- | |||
- | {{ :qcl:ldos_emin_emax_okay.jpg?200 |}} | ||
- | |||
- | As a second step, the scattering coupling terms are calculated for each of the accounted mechanism (optical and acoustic phonons, charged impurities, interface roughness, alloy disorder). | ||
- | |||
- | Then, the main part of the calculation consists in the self-consistent NEGF solver. Starting from an initial guess of the Green's functions, the self-energies are calculated. The Green's functions are then calculated iteratively. | ||
- | Simultaneously, the mean-field electrostatic potential is calculted self-consistenly (Poisson's equation). Such iterations are made until convergence is reached for the Green's functions as well as for the calculated current. | ||
- | |||
- | From the Green's functions solution, the gain is then calculated (if requested in the input file). | ||