{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Schrodinger QW and MQW" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from solcore import si, material\n", "from solcore.structure import Layer, Structure\n", "import solcore.quantum_mechanics as QM" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "First we create the materials we need" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "bulk = material(\"GaAs\")(T=293, strained=False)\n", "barrier = material(\"GaAsP\")(T=293, P=0.1, strained=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As well as some of the layers" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "top_layer = Layer(width=si(\"30nm\"), material=barrier)\n", "inter = Layer(width=si(\"3nm\"), material=bulk)\n", "barrier_layer = Layer(width=si(\"5nm\"), material=barrier)\n", "bottom_layer = top_layer" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We create the QW material at the given composition" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "QW = material(\"InGaAs\")(T=293, In=0.15, strained=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And the layer" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "well_layer = Layer(width=si(\"7.2nm\"), material=QW)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The following lines create the QW structure, with different number of QWs and interlayers. Indicating the substrate material with the keyword \"substrate\" is essential in order to calculate correctly the strain." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A single QW with interlayers" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "test_structure_1 = Structure([top_layer, inter, well_layer, inter, bottom_layer], substrate=bulk)\n", "output_1 = QM.schrodinger(test_structure_1, quasiconfined=0, graphtype='potentials', num_eigenvalues=20, show=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "10 QWs without interlayers" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "test_structure_2 = Structure([top_layer, barrier_layer] + 10 * [well_layer, barrier_layer] + [bottom_layer],\n", " substrate=bulk)\n", "output_2 = QM.schrodinger(test_structure_2, quasiconfined=0.05, graphtype='potentialsLDOS', num_eigenvalues=200,\n", " show=True)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.4" } }, "nbformat": 4, "nbformat_minor": 4 }