Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
Thank you for trying out the first version of the Python lecture code!
The exercise sheet is written for the MATLAB code, so this README points you to the corresponding functions in the Python code such that you can get started quickly.
To execute the code, you will need Python 3 with numpy, scipy and matplotlib installed.
Task 1: Complete the function run_simulation() in scripts/ballistic_negf.py.
You don't need to worry about units, everything is already in the units defined in qtlecture/constants.py.
To invert a matrix M, use scipy.linalg.inv(M).
Task 2: Execute run.py. It runs the simulation first in the WF formalism, which is implemented in scripts/ballistic_wf.py, and then in your NEGF implementation. If everything works, the simulation times are printed to the console, and the plots are saved to plots/.
Task 3: Try to implement RGF in scripts/ballistic_negf.py to make it faster!
You will have to change the skeleton code a bit to make it work.
Mind that all quantities are saved as a three-dimensional array in space (x), energy (E), and bias (U).
You can expect about a two-fold speedup with respect to the WF formalism.
If you have any (much appreciated) feedback or questions about the Python code, feel free to reach out to Patrice Kolb (pkolb@iis.ee.ethz.ch).