blob: 1f3c7ca27d78791da8bf944a5aed2ea32ae06093 [file] [log] [blame]
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"name": "sky130_plot_gm.ipynb",
"provenance": [],
"collapsed_sections": [],
"include_colab_link": true
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
},
"language_info": {
"name": "python"
}
},
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "view-in-github",
"colab_type": "text"
},
"source": [
"<a href=\"https://colab.research.google.com/github/bmurmann/skywater-pdk-sky130-raw-data/blob/main/notebooks/sky130_plot_gm.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
]
},
{
"cell_type": "markdown",
"source": [
"# SKY130 plots of ID-VG derivatives"
],
"metadata": {
"id": "HKybZHpP21Qk"
}
},
{
"cell_type": "markdown",
"source": [
"\n",
"Boris Murmann, August 2022<br>\n",
"Based on:\n",
"[sky130-raw-data-viz.ipynb](https://colab.research.google.com/github/proppy/skywater-pdk-sky130-raw-data/blob/notebooks/notebooks/sky130-raw-data-viz.ipynb)<br>\n",
"SPDX-License-Identifier: Apache-2.0\n"
],
"metadata": {
"id": "zfiP46zb1v0E"
}
},
{
"cell_type": "markdown",
"source": [
"## Get data"
],
"metadata": {
"id": "-YKKCZ0-3Aai"
}
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "WyPcr_ls4WWj",
"outputId": "92698718-3d89-4ac7-9c8b-9cf962223c4a"
},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"Cloning into 'skywater-pdk-sky130-raw-data'...\n",
"remote: Enumerating objects: 1028, done.\u001b[K\n",
"remote: Counting objects: 100% (1028/1028), done.\u001b[K\n",
"remote: Compressing objects: 100% (1021/1021), done.\u001b[K\n",
"remote: Total 1028 (delta 9), reused 1023 (delta 6), pack-reused 0\u001b[K\n",
"Receiving objects: 100% (1028/1028), 10.29 MiB | 12.64 MiB/s, done.\n",
"Resolving deltas: 100% (9/9), done.\n"
]
}
],
"source": [
"!git clone https://github.com/google/skywater-pdk-sky130-raw-data"
]
},
{
"cell_type": "markdown",
"source": [
"## Install DeviceModelingToolkit\n",
"\n",
"[DeviceModelingToolkit](https://dmt-development.gitlab.io/dmt-core/index.html) (DMT) is a Python tool targeted at helping modeling engineers extract model parameters, run circuit and TCAD simulations and automate their infrastructure.\n"
],
"metadata": {
"id": "nwfj_7-C3KP0"
}
},
{
"cell_type": "code",
"source": [
"!python3 -m pip install DMT-core"
],
"metadata": {
"id": "brxQb0FMd8Jr",
"outputId": "5141c5bb-82dc-4ca8-a26a-2fad8ac98b5d",
"colab": {
"base_uri": "https://localhost:8080/"
}
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"Looking in indexes: https://pypi.org/simple, https://us-python.pkg.dev/colab-wheels/public/simple/\n",
"Collecting DMT-core\n",
" Downloading DMT_core-1.6.2-py3-none-any.whl (236 kB)\n",
"\u001b[K |████████████████████████████████| 236 kB 4.3 MB/s \n",
"\u001b[?25hRequirement already satisfied: pyyaml in /usr/local/lib/python3.7/dist-packages (from DMT-core) (3.13)\n",
"Requirement already satisfied: joblib in /usr/local/lib/python3.7/dist-packages (from DMT-core) (1.1.0)\n",
"Requirement already satisfied: semver in /usr/local/lib/python3.7/dist-packages (from DMT-core) (2.13.0)\n",
"Collecting reprint\n",
" Downloading reprint-0.6.0-py2.py3-none-any.whl (6.0 kB)\n",
"Collecting verilogae>=0.9b4\n",
" Downloading verilogae-0.9b8-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (22.0 MB)\n",
"\u001b[K |████████████████████████████████| 22.0 MB 4.8 MB/s \n",
"\u001b[?25hRequirement already satisfied: scipy in /usr/local/lib/python3.7/dist-packages (from DMT-core) (1.7.3)\n",
"Requirement already satisfied: pandas in /usr/local/lib/python3.7/dist-packages (from DMT-core) (1.3.5)\n",
"Collecting colormath\n",
" Downloading colormath-3.0.0.tar.gz (39 kB)\n",
"Requirement already satisfied: h5py in /usr/local/lib/python3.7/dist-packages (from DMT-core) (3.1.0)\n",
"Requirement already satisfied: more-itertools in /usr/local/lib/python3.7/dist-packages (from DMT-core) (8.13.0)\n",
"Requirement already satisfied: numpy in /usr/local/lib/python3.7/dist-packages (from DMT-core) (1.21.6)\n",
"Collecting scikit-rf\n",
" Downloading scikit-rf-0.23.1.tar.gz (30.9 MB)\n",
"\u001b[K |████████████████████████████████| 30.9 MB 1.2 MB/s \n",
"\u001b[?25hCollecting pint\n",
" Downloading Pint-0.18-py2.py3-none-any.whl (209 kB)\n",
"\u001b[K |████████████████████████████████| 209 kB 41.5 MB/s \n",
"\u001b[?25hRequirement already satisfied: pytest in /usr/local/lib/python3.7/dist-packages (from DMT-core) (3.6.4)\n",
"Requirement already satisfied: networkx>=2.0 in /usr/local/lib/python3.7/dist-packages (from colormath->DMT-core) (2.6.3)\n",
"Requirement already satisfied: cached-property in /usr/local/lib/python3.7/dist-packages (from h5py->DMT-core) (1.5.2)\n",
"Requirement already satisfied: python-dateutil>=2.7.3 in /usr/local/lib/python3.7/dist-packages (from pandas->DMT-core) (2.8.2)\n",
"Requirement already satisfied: pytz>=2017.3 in /usr/local/lib/python3.7/dist-packages (from pandas->DMT-core) (2022.1)\n",
"Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.7/dist-packages (from python-dateutil>=2.7.3->pandas->DMT-core) (1.15.0)\n",
"Requirement already satisfied: packaging in /usr/local/lib/python3.7/dist-packages (from pint->DMT-core) (21.3)\n",
"Requirement already satisfied: importlib-metadata in /usr/local/lib/python3.7/dist-packages (from pint->DMT-core) (4.12.0)\n",
"Requirement already satisfied: zipp>=0.5 in /usr/local/lib/python3.7/dist-packages (from importlib-metadata->pint->DMT-core) (3.8.1)\n",
"Requirement already satisfied: typing-extensions>=3.6.4 in /usr/local/lib/python3.7/dist-packages (from importlib-metadata->pint->DMT-core) (4.1.1)\n",
"Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in /usr/local/lib/python3.7/dist-packages (from packaging->pint->DMT-core) (3.0.9)\n",
"Requirement already satisfied: attrs>=17.4.0 in /usr/local/lib/python3.7/dist-packages (from pytest->DMT-core) (22.1.0)\n",
"Requirement already satisfied: atomicwrites>=1.0 in /usr/local/lib/python3.7/dist-packages (from pytest->DMT-core) (1.4.1)\n",
"Requirement already satisfied: pluggy<0.8,>=0.5 in /usr/local/lib/python3.7/dist-packages (from pytest->DMT-core) (0.7.1)\n",
"Requirement already satisfied: setuptools in /usr/local/lib/python3.7/dist-packages (from pytest->DMT-core) (57.4.0)\n",
"Requirement already satisfied: py>=1.5.0 in /usr/local/lib/python3.7/dist-packages (from pytest->DMT-core) (1.11.0)\n",
"Collecting backports.shutil-get-terminal-size\n",
" Downloading backports.shutil_get_terminal_size-1.0.0-py2.py3-none-any.whl (6.5 kB)\n",
"Collecting colorama\n",
" Downloading colorama-0.4.5-py2.py3-none-any.whl (16 kB)\n",
"Requirement already satisfied: matplotlib in /usr/local/lib/python3.7/dist-packages (from scikit-rf->DMT-core) (3.2.2)\n",
"Requirement already satisfied: xlwt in /usr/local/lib/python3.7/dist-packages (from scikit-rf->DMT-core) (1.3.0)\n",
"Requirement already satisfied: openpyxl in /usr/local/lib/python3.7/dist-packages (from scikit-rf->DMT-core) (3.0.10)\n",
"Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.7/dist-packages (from matplotlib->scikit-rf->DMT-core) (0.11.0)\n",
"Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib->scikit-rf->DMT-core) (1.4.4)\n",
"Requirement already satisfied: et-xmlfile in /usr/local/lib/python3.7/dist-packages (from openpyxl->scikit-rf->DMT-core) (1.1.0)\n",
"Building wheels for collected packages: colormath, scikit-rf\n",
" Building wheel for colormath (setup.py) ... \u001b[?25l\u001b[?25hdone\n",
" Created wheel for colormath: filename=colormath-3.0.0-py3-none-any.whl size=39408 sha256=0c09419ea52e2b0cd56c30bc440a898d7e5563342edbde61f44b77cf5996fecf\n",
" Stored in directory: /root/.cache/pip/wheels/1a/d7/a7/458a4632ccc8bfe436f5e9db9fef1aa84e5d243a1b4b4c7b59\n",
" Building wheel for scikit-rf (setup.py) ... \u001b[?25l\u001b[?25hdone\n",
" Created wheel for scikit-rf: filename=scikit_rf-0.23.1-py3-none-any.whl size=3408203 sha256=f21b8f6c228ee86727a3d0df993271220f96e962deca4c23a9077a6e139a40c0\n",
" Stored in directory: /root/.cache/pip/wheels/25/e7/c7/9b465c754ec65d763f881bc4272b62e17375538f03c027882d\n",
"Successfully built colormath scikit-rf\n",
"Installing collected packages: colorama, backports.shutil-get-terminal-size, verilogae, scikit-rf, reprint, pint, colormath, DMT-core\n",
"Successfully installed DMT-core-1.6.2 backports.shutil-get-terminal-size-1.0.0 colorama-0.4.5 colormath-3.0.0 pint-0.18 reprint-0.6.0 scikit-rf-0.23.1 verilogae-0.9b8\n"
]
}
]
},
{
"cell_type": "markdown",
"source": [
"## Read measurement data"
],
"metadata": {
"id": "8N3pycAi3X-5"
}
},
{
"cell_type": "code",
"source": [
"import pathlib\n",
"import pandas as pd\n",
"import DMT.core\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"cells_dir = pathlib.Path('skywater-pdk-sky130-raw-data/sky130_fd_pr/cells')\n",
"\n",
"# 5V device\n",
"#cell_dir = cells_dir / 'nfet_g5v0d10v5'\n",
"#mdm_path = cell_dir / 'sky130_fd_pr__nfet_g5v0d10v5_w0p420u_l0p500u_m1(2618_1_10_IDVD_D3).mdm'\n",
"\n",
"# 1.8V device, regular Vt, long channel\n",
"#cell_dir = cells_dir / 'nfet_01v8'\n",
"#mdm_path = cell_dir / 'sky130_fd_pr__nfet_01v8_w7u_l8u_m1(8392_5_6_IDVG).mdm'\n",
"\n",
"# 1.8V device, regular Vt, short channel\n",
"cell_dir = cells_dir / 'nfet_01v8'\n",
"mdm_path = cell_dir / 'sky130_fd_pr__nfet_01v8_w1u_l0p15u_m1(8436_6_7_IDVG).mdm'\n",
"\n",
"measurement = DMT.core.DutMeas(\n",
" database_dir=None,\n",
" dut_type=DMT.core.DutType.device,\n",
" name=mdm_path.stem,\n",
" reference_node='E')\n",
"\n",
"measurement.add_data(pathlib.Path(mdm_path),\n",
" key=mdm_path.stem)\n",
"df = measurement.data[mdm_path.stem]\n",
"df = df[np.isclose(df[\"VD\"], 1.8)]\n",
"df = df[np.isclose(df[\"VB\"], 0)]\n",
"df"
],
"metadata": {
"id": "R3ORhP756NZE",
"outputId": "48ccb396-64fa-4cfb-d8a0-b9e6c8d0454a",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
}
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"DMT->Plot: Failed to import plotting module pyqtgraph.\n",
"-----------------------------------------------------------------------\n",
"DMT Copyright (C) 2022 SemiMod\n",
"This program comes with ABSOLUTELY NO WARRANTY.\n",
"DMT_core is free software, and you are welcome to redistribute it.\n",
"-----------------------------------------------------------------------\n"
]
},
{
"output_type": "execute_result",
"data": {
"text/plain": [
" VG IG ID IB VS VB VD\n",
"37 0.00 1.362800e-09 1.426900e-09 -1.215200e-08 0.0 0.0 1.8\n",
"38 0.05 1.081400e-09 2.290300e-09 -8.773000e-09 0.0 0.0 1.8\n",
"39 0.10 1.227300e-09 2.128200e-09 1.097400e-08 0.0 0.0 1.8\n",
"40 0.15 -1.394500e-09 1.156100e-09 2.806300e-08 0.0 0.0 1.8\n",
"41 0.20 -1.171700e-09 -2.132000e-09 1.125000e-08 0.0 0.0 1.8\n",
"42 0.25 1.426000e-09 -1.087000e-09 -2.662100e-08 0.0 0.0 1.8\n",
"43 0.30 9.785000e-10 2.435100e-09 -8.399000e-09 0.0 0.0 1.8\n",
"44 0.35 -1.502700e-09 1.357500e-09 2.671100e-08 0.0 0.0 1.8\n",
"45 0.40 -1.421000e-09 1.528200e-09 8.179000e-09 0.0 0.0 1.8\n",
"46 0.45 -1.387000e-09 8.153400e-09 1.022800e-08 0.0 0.0 1.8\n",
"47 0.50 2.781000e-09 3.532900e-08 2.798400e-08 0.0 0.0 1.8\n",
"48 0.55 -1.859700e-09 1.349200e-07 2.761900e-08 0.0 0.0 1.8\n",
"49 0.60 -8.261000e-10 4.597100e-07 -1.184900e-08 0.0 0.0 1.8\n",
"50 0.65 2.785100e-09 1.283700e-06 2.571500e-08 0.0 0.0 1.8\n",
"51 0.70 1.955900e-09 3.073200e-06 7.982000e-09 0.0 0.0 1.8\n",
"52 0.75 -2.434500e-09 6.648300e-06 7.299000e-09 0.0 0.0 1.8\n",
"53 0.80 2.824500e-09 1.225000e-05 -1.841700e-08 0.0 0.0 1.8\n",
"54 0.85 2.825300e-09 2.080200e-05 -1.046300e-08 0.0 0.0 1.8\n",
"55 0.90 2.332200e-09 3.217000e-05 -1.533800e-08 0.0 0.0 1.8\n",
"56 0.95 1.673900e-09 4.634700e-05 -2.270000e-08 0.0 0.0 1.8\n",
"57 1.00 1.353700e-09 6.293800e-05 -3.052600e-08 0.0 0.0 1.8\n",
"58 1.05 1.261800e-09 8.140900e-05 -3.375000e-08 0.0 0.0 1.8\n",
"59 1.10 2.638700e-09 1.016170e-04 -4.092200e-08 0.0 0.0 1.8\n",
"60 1.15 2.798700e-09 1.230200e-04 -2.365200e-08 0.0 0.0 1.8\n",
"61 1.20 2.239800e-09 1.457200e-04 -3.201100e-08 0.0 0.0 1.8\n",
"62 1.25 1.601500e-09 1.687700e-04 -3.731200e-08 0.0 0.0 1.8\n",
"63 1.30 1.333200e-09 1.924900e-04 -4.154900e-08 0.0 0.0 1.8\n",
"64 1.35 2.878400e-09 2.163500e-04 -4.210900e-08 0.0 0.0 1.8\n",
"65 1.40 2.540900e-09 2.410900e-04 -3.370900e-08 0.0 0.0 1.8\n",
"66 1.45 1.873000e-09 2.655900e-04 -3.583400e-08 0.0 0.0 1.8\n",
"67 1.50 1.410500e-09 2.902800e-04 -4.086500e-08 0.0 0.0 1.8\n",
"68 1.55 1.287300e-09 3.149900e-04 -4.047200e-08 0.0 0.0 1.8\n",
"69 1.60 2.783100e-09 3.397300e-04 -4.277900e-08 0.0 0.0 1.8\n",
"70 1.65 2.195000e-09 3.647300e-04 -3.139900e-08 0.0 0.0 1.8\n",
"71 1.70 1.567800e-09 3.893900e-04 -3.491500e-08 0.0 0.0 1.8\n",
"72 1.75 1.330100e-09 4.140200e-04 -3.711500e-08 0.0 0.0 1.8\n",
"73 1.80 2.876700e-09 4.385600e-04 -3.647900e-08 0.0 0.0 1.8"
],
"text/html": [
"\n",
" <div id=\"df-1523bbe3-3006-4c42-82bf-861454fe8ea8\">\n",
" <div class=\"colab-df-container\">\n",
" <div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>VG</th>\n",
" <th>IG</th>\n",
" <th>ID</th>\n",
" <th>IB</th>\n",
" <th>VS</th>\n",
" <th>VB</th>\n",
" <th>VD</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>37</th>\n",
" <td>0.00</td>\n",
" <td>1.362800e-09</td>\n",
" <td>1.426900e-09</td>\n",
" <td>-1.215200e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>38</th>\n",
" <td>0.05</td>\n",
" <td>1.081400e-09</td>\n",
" <td>2.290300e-09</td>\n",
" <td>-8.773000e-09</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>39</th>\n",
" <td>0.10</td>\n",
" <td>1.227300e-09</td>\n",
" <td>2.128200e-09</td>\n",
" <td>1.097400e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>40</th>\n",
" <td>0.15</td>\n",
" <td>-1.394500e-09</td>\n",
" <td>1.156100e-09</td>\n",
" <td>2.806300e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>41</th>\n",
" <td>0.20</td>\n",
" <td>-1.171700e-09</td>\n",
" <td>-2.132000e-09</td>\n",
" <td>1.125000e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>42</th>\n",
" <td>0.25</td>\n",
" <td>1.426000e-09</td>\n",
" <td>-1.087000e-09</td>\n",
" <td>-2.662100e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>43</th>\n",
" <td>0.30</td>\n",
" <td>9.785000e-10</td>\n",
" <td>2.435100e-09</td>\n",
" <td>-8.399000e-09</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>44</th>\n",
" <td>0.35</td>\n",
" <td>-1.502700e-09</td>\n",
" <td>1.357500e-09</td>\n",
" <td>2.671100e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>45</th>\n",
" <td>0.40</td>\n",
" <td>-1.421000e-09</td>\n",
" <td>1.528200e-09</td>\n",
" <td>8.179000e-09</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td>0.45</td>\n",
" <td>-1.387000e-09</td>\n",
" <td>8.153400e-09</td>\n",
" <td>1.022800e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>47</th>\n",
" <td>0.50</td>\n",
" <td>2.781000e-09</td>\n",
" <td>3.532900e-08</td>\n",
" <td>2.798400e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>48</th>\n",
" <td>0.55</td>\n",
" <td>-1.859700e-09</td>\n",
" <td>1.349200e-07</td>\n",
" <td>2.761900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>49</th>\n",
" <td>0.60</td>\n",
" <td>-8.261000e-10</td>\n",
" <td>4.597100e-07</td>\n",
" <td>-1.184900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50</th>\n",
" <td>0.65</td>\n",
" <td>2.785100e-09</td>\n",
" <td>1.283700e-06</td>\n",
" <td>2.571500e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>51</th>\n",
" <td>0.70</td>\n",
" <td>1.955900e-09</td>\n",
" <td>3.073200e-06</td>\n",
" <td>7.982000e-09</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>52</th>\n",
" <td>0.75</td>\n",
" <td>-2.434500e-09</td>\n",
" <td>6.648300e-06</td>\n",
" <td>7.299000e-09</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>53</th>\n",
" <td>0.80</td>\n",
" <td>2.824500e-09</td>\n",
" <td>1.225000e-05</td>\n",
" <td>-1.841700e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>54</th>\n",
" <td>0.85</td>\n",
" <td>2.825300e-09</td>\n",
" <td>2.080200e-05</td>\n",
" <td>-1.046300e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>55</th>\n",
" <td>0.90</td>\n",
" <td>2.332200e-09</td>\n",
" <td>3.217000e-05</td>\n",
" <td>-1.533800e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>56</th>\n",
" <td>0.95</td>\n",
" <td>1.673900e-09</td>\n",
" <td>4.634700e-05</td>\n",
" <td>-2.270000e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>57</th>\n",
" <td>1.00</td>\n",
" <td>1.353700e-09</td>\n",
" <td>6.293800e-05</td>\n",
" <td>-3.052600e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>58</th>\n",
" <td>1.05</td>\n",
" <td>1.261800e-09</td>\n",
" <td>8.140900e-05</td>\n",
" <td>-3.375000e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>59</th>\n",
" <td>1.10</td>\n",
" <td>2.638700e-09</td>\n",
" <td>1.016170e-04</td>\n",
" <td>-4.092200e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>60</th>\n",
" <td>1.15</td>\n",
" <td>2.798700e-09</td>\n",
" <td>1.230200e-04</td>\n",
" <td>-2.365200e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>61</th>\n",
" <td>1.20</td>\n",
" <td>2.239800e-09</td>\n",
" <td>1.457200e-04</td>\n",
" <td>-3.201100e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>62</th>\n",
" <td>1.25</td>\n",
" <td>1.601500e-09</td>\n",
" <td>1.687700e-04</td>\n",
" <td>-3.731200e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>63</th>\n",
" <td>1.30</td>\n",
" <td>1.333200e-09</td>\n",
" <td>1.924900e-04</td>\n",
" <td>-4.154900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>64</th>\n",
" <td>1.35</td>\n",
" <td>2.878400e-09</td>\n",
" <td>2.163500e-04</td>\n",
" <td>-4.210900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>65</th>\n",
" <td>1.40</td>\n",
" <td>2.540900e-09</td>\n",
" <td>2.410900e-04</td>\n",
" <td>-3.370900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>66</th>\n",
" <td>1.45</td>\n",
" <td>1.873000e-09</td>\n",
" <td>2.655900e-04</td>\n",
" <td>-3.583400e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>67</th>\n",
" <td>1.50</td>\n",
" <td>1.410500e-09</td>\n",
" <td>2.902800e-04</td>\n",
" <td>-4.086500e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>68</th>\n",
" <td>1.55</td>\n",
" <td>1.287300e-09</td>\n",
" <td>3.149900e-04</td>\n",
" <td>-4.047200e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>69</th>\n",
" <td>1.60</td>\n",
" <td>2.783100e-09</td>\n",
" <td>3.397300e-04</td>\n",
" <td>-4.277900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>70</th>\n",
" <td>1.65</td>\n",
" <td>2.195000e-09</td>\n",
" <td>3.647300e-04</td>\n",
" <td>-3.139900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>71</th>\n",
" <td>1.70</td>\n",
" <td>1.567800e-09</td>\n",
" <td>3.893900e-04</td>\n",
" <td>-3.491500e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>72</th>\n",
" <td>1.75</td>\n",
" <td>1.330100e-09</td>\n",
" <td>4.140200e-04</td>\n",
" <td>-3.711500e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>73</th>\n",
" <td>1.80</td>\n",
" <td>2.876700e-09</td>\n",
" <td>4.385600e-04</td>\n",
" <td>-3.647900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>\n",
" <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-1523bbe3-3006-4c42-82bf-861454fe8ea8')\"\n",
" title=\"Convert this dataframe to an interactive table.\"\n",
" style=\"display:none;\">\n",
" \n",
" <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
" width=\"24px\">\n",
" <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n",
" <path d=\"M18.56 5.44l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94zm-11 1L8.5 8.5l.94-2.06 2.06-.94-2.06-.94L8.5 2.5l-.94 2.06-2.06.94zm10 10l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94z\"/><path d=\"M17.41 7.96l-1.37-1.37c-.4-.4-.92-.59-1.43-.59-.52 0-1.04.2-1.43.59L10.3 9.45l-7.72 7.72c-.78.78-.78 2.05 0 2.83L4 21.41c.39.39.9.59 1.41.59.51 0 1.02-.2 1.41-.59l7.78-7.78 2.81-2.81c.8-.78.8-2.07 0-2.86zM5.41 20L4 18.59l7.72-7.72 1.47 1.35L5.41 20z\"/>\n",
" </svg>\n",
" </button>\n",
" \n",
" <style>\n",
" .colab-df-container {\n",
" display:flex;\n",
" flex-wrap:wrap;\n",
" gap: 12px;\n",
" }\n",
"\n",
" .colab-df-convert {\n",
" background-color: #E8F0FE;\n",
" border: none;\n",
" border-radius: 50%;\n",
" cursor: pointer;\n",
" display: none;\n",
" fill: #1967D2;\n",
" height: 32px;\n",
" padding: 0 0 0 0;\n",
" width: 32px;\n",
" }\n",
"\n",
" .colab-df-convert:hover {\n",
" background-color: #E2EBFA;\n",
" box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
" fill: #174EA6;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-convert {\n",
" background-color: #3B4455;\n",
" fill: #D2E3FC;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-convert:hover {\n",
" background-color: #434B5C;\n",
" box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
" filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
" fill: #FFFFFF;\n",
" }\n",
" </style>\n",
"\n",
" <script>\n",
" const buttonEl =\n",
" document.querySelector('#df-1523bbe3-3006-4c42-82bf-861454fe8ea8 button.colab-df-convert');\n",
" buttonEl.style.display =\n",
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
"\n",
" async function convertToInteractive(key) {\n",
" const element = document.querySelector('#df-1523bbe3-3006-4c42-82bf-861454fe8ea8');\n",
" const dataTable =\n",
" await google.colab.kernel.invokeFunction('convertToInteractive',\n",
" [key], {});\n",
" if (!dataTable) return;\n",
"\n",
" const docLinkHtml = 'Like what you see? Visit the ' +\n",
" '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
" + ' to learn more about interactive tables.';\n",
" element.innerHTML = '';\n",
" dataTable['output_type'] = 'display_data';\n",
" await google.colab.output.renderOutput(dataTable, element);\n",
" const docLink = document.createElement('div');\n",
" docLink.innerHTML = docLinkHtml;\n",
" element.appendChild(docLink);\n",
" }\n",
" </script>\n",
" </div>\n",
" </div>\n",
" "
]
},
"metadata": {},
"execution_count": 4
}
]
},
{
"cell_type": "markdown",
"source": [
"# Compute quantities of interest"
],
"metadata": {
"id": "zkZovmLBwQ7G"
}
},
{
"cell_type": "code",
"source": [
"# simple equations for derivatives; can put in more work to use forward/backward at the edge, central in the middle\n",
"dx = 50e-3;\n",
"df['GM1'] = df['ID'].diff(1)/dx\n",
"df['GM2'] = (df['ID'] - 2*df['ID'].shift(1) + df['ID'].shift(2))/dx**2\n",
"df['GM3'] = (df['ID'] - 3*df['ID'].shift(1) + 3*df['ID'].shift(2) - df['ID'].shift(3))/dx**3\n",
"df['GM1_ID'] = df['GM1']/df['ID']\n",
"df"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 1000
},
"id": "QD3tE0VldjjO",
"outputId": "3c10427a-5b5c-44ba-e314-93d1b29416d2"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" VG IG ID IB VS VB VD \\\n",
"37 0.00 1.362800e-09 1.426900e-09 -1.215200e-08 0.0 0.0 1.8 \n",
"38 0.05 1.081400e-09 2.290300e-09 -8.773000e-09 0.0 0.0 1.8 \n",
"39 0.10 1.227300e-09 2.128200e-09 1.097400e-08 0.0 0.0 1.8 \n",
"40 0.15 -1.394500e-09 1.156100e-09 2.806300e-08 0.0 0.0 1.8 \n",
"41 0.20 -1.171700e-09 -2.132000e-09 1.125000e-08 0.0 0.0 1.8 \n",
"42 0.25 1.426000e-09 -1.087000e-09 -2.662100e-08 0.0 0.0 1.8 \n",
"43 0.30 9.785000e-10 2.435100e-09 -8.399000e-09 0.0 0.0 1.8 \n",
"44 0.35 -1.502700e-09 1.357500e-09 2.671100e-08 0.0 0.0 1.8 \n",
"45 0.40 -1.421000e-09 1.528200e-09 8.179000e-09 0.0 0.0 1.8 \n",
"46 0.45 -1.387000e-09 8.153400e-09 1.022800e-08 0.0 0.0 1.8 \n",
"47 0.50 2.781000e-09 3.532900e-08 2.798400e-08 0.0 0.0 1.8 \n",
"48 0.55 -1.859700e-09 1.349200e-07 2.761900e-08 0.0 0.0 1.8 \n",
"49 0.60 -8.261000e-10 4.597100e-07 -1.184900e-08 0.0 0.0 1.8 \n",
"50 0.65 2.785100e-09 1.283700e-06 2.571500e-08 0.0 0.0 1.8 \n",
"51 0.70 1.955900e-09 3.073200e-06 7.982000e-09 0.0 0.0 1.8 \n",
"52 0.75 -2.434500e-09 6.648300e-06 7.299000e-09 0.0 0.0 1.8 \n",
"53 0.80 2.824500e-09 1.225000e-05 -1.841700e-08 0.0 0.0 1.8 \n",
"54 0.85 2.825300e-09 2.080200e-05 -1.046300e-08 0.0 0.0 1.8 \n",
"55 0.90 2.332200e-09 3.217000e-05 -1.533800e-08 0.0 0.0 1.8 \n",
"56 0.95 1.673900e-09 4.634700e-05 -2.270000e-08 0.0 0.0 1.8 \n",
"57 1.00 1.353700e-09 6.293800e-05 -3.052600e-08 0.0 0.0 1.8 \n",
"58 1.05 1.261800e-09 8.140900e-05 -3.375000e-08 0.0 0.0 1.8 \n",
"59 1.10 2.638700e-09 1.016170e-04 -4.092200e-08 0.0 0.0 1.8 \n",
"60 1.15 2.798700e-09 1.230200e-04 -2.365200e-08 0.0 0.0 1.8 \n",
"61 1.20 2.239800e-09 1.457200e-04 -3.201100e-08 0.0 0.0 1.8 \n",
"62 1.25 1.601500e-09 1.687700e-04 -3.731200e-08 0.0 0.0 1.8 \n",
"63 1.30 1.333200e-09 1.924900e-04 -4.154900e-08 0.0 0.0 1.8 \n",
"64 1.35 2.878400e-09 2.163500e-04 -4.210900e-08 0.0 0.0 1.8 \n",
"65 1.40 2.540900e-09 2.410900e-04 -3.370900e-08 0.0 0.0 1.8 \n",
"66 1.45 1.873000e-09 2.655900e-04 -3.583400e-08 0.0 0.0 1.8 \n",
"67 1.50 1.410500e-09 2.902800e-04 -4.086500e-08 0.0 0.0 1.8 \n",
"68 1.55 1.287300e-09 3.149900e-04 -4.047200e-08 0.0 0.0 1.8 \n",
"69 1.60 2.783100e-09 3.397300e-04 -4.277900e-08 0.0 0.0 1.8 \n",
"70 1.65 2.195000e-09 3.647300e-04 -3.139900e-08 0.0 0.0 1.8 \n",
"71 1.70 1.567800e-09 3.893900e-04 -3.491500e-08 0.0 0.0 1.8 \n",
"72 1.75 1.330100e-09 4.140200e-04 -3.711500e-08 0.0 0.0 1.8 \n",
"73 1.80 2.876700e-09 4.385600e-04 -3.647900e-08 0.0 0.0 1.8 \n",
"\n",
" GM1 GM2 GM3 GM1_ID \n",
"37 NaN NaN NaN NaN \n",
"38 1.726800e-08 NaN NaN 7.539624 \n",
"39 -3.242000e-09 -4.102000e-07 NaN -1.523353 \n",
"40 -1.944200e-08 -3.240000e-07 0.000002 -16.816884 \n",
"41 -6.576200e-08 -9.264000e-07 -0.000012 30.845216 \n",
"42 2.090000e-08 1.733240e-06 0.000053 -19.227231 \n",
"43 7.044200e-08 9.908400e-07 -0.000015 28.927765 \n",
"44 -2.155200e-08 -1.839880e-06 -0.000057 -15.876243 \n",
"45 3.414000e-09 4.993200e-07 0.000047 2.234001 \n",
"46 1.325040e-07 2.581800e-06 0.000042 16.251380 \n",
"47 5.435120e-07 8.220160e-06 0.000113 15.384302 \n",
"48 1.991820e-06 2.896616e-05 0.000415 14.762971 \n",
"49 6.495800e-06 9.007960e-05 0.001222 14.130213 \n",
"50 1.647980e-05 1.996800e-04 0.002192 12.837735 \n",
"51 3.579000e-05 3.862040e-04 0.003730 11.645841 \n",
"52 7.150200e-05 7.142400e-04 0.006561 10.754930 \n",
"53 1.120340e-04 8.106400e-04 0.001928 9.145633 \n",
"54 1.710400e-04 1.180120e-03 0.007390 8.222286 \n",
"55 2.273600e-04 1.126400e-03 -0.001074 7.067454 \n",
"56 2.835400e-04 1.123600e-03 -0.000056 6.117764 \n",
"57 3.318200e-04 9.656000e-04 -0.003160 5.272173 \n",
"58 3.694200e-04 7.520000e-04 -0.004272 4.537828 \n",
"59 4.041600e-04 6.948000e-04 -0.001144 3.977287 \n",
"60 4.280600e-04 4.780000e-04 -0.004336 3.479597 \n",
"61 4.540000e-04 5.188000e-04 0.000816 3.115564 \n",
"62 4.610000e-04 1.400000e-04 -0.007576 2.731528 \n",
"63 4.744000e-04 2.680000e-04 0.002560 2.464544 \n",
"64 4.772000e-04 5.600000e-05 -0.004240 2.205685 \n",
"65 4.948000e-04 3.520000e-04 0.005920 2.052346 \n",
"66 4.900000e-04 -9.600000e-05 -0.008960 1.844949 \n",
"67 4.938000e-04 7.600000e-05 0.003440 1.701116 \n",
"68 4.942000e-04 8.000000e-06 -0.001360 1.568939 \n",
"69 4.948000e-04 1.200000e-05 0.000080 1.456451 \n",
"70 5.000000e-04 1.040000e-04 0.001840 1.370877 \n",
"71 4.932000e-04 -1.360000e-04 -0.004800 1.266596 \n",
"72 4.926000e-04 -1.200000e-05 0.002480 1.189798 \n",
"73 4.908000e-04 -3.600000e-05 -0.000480 1.119117 "
],
"text/html": [
"\n",
" <div id=\"df-3891e038-7946-42f1-bf2f-df2558ee806b\">\n",
" <div class=\"colab-df-container\">\n",
" <div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>VG</th>\n",
" <th>IG</th>\n",
" <th>ID</th>\n",
" <th>IB</th>\n",
" <th>VS</th>\n",
" <th>VB</th>\n",
" <th>VD</th>\n",
" <th>GM1</th>\n",
" <th>GM2</th>\n",
" <th>GM3</th>\n",
" <th>GM1_ID</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>37</th>\n",
" <td>0.00</td>\n",
" <td>1.362800e-09</td>\n",
" <td>1.426900e-09</td>\n",
" <td>-1.215200e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>38</th>\n",
" <td>0.05</td>\n",
" <td>1.081400e-09</td>\n",
" <td>2.290300e-09</td>\n",
" <td>-8.773000e-09</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>1.726800e-08</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>7.539624</td>\n",
" </tr>\n",
" <tr>\n",
" <th>39</th>\n",
" <td>0.10</td>\n",
" <td>1.227300e-09</td>\n",
" <td>2.128200e-09</td>\n",
" <td>1.097400e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>-3.242000e-09</td>\n",
" <td>-4.102000e-07</td>\n",
" <td>NaN</td>\n",
" <td>-1.523353</td>\n",
" </tr>\n",
" <tr>\n",
" <th>40</th>\n",
" <td>0.15</td>\n",
" <td>-1.394500e-09</td>\n",
" <td>1.156100e-09</td>\n",
" <td>2.806300e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>-1.944200e-08</td>\n",
" <td>-3.240000e-07</td>\n",
" <td>0.000002</td>\n",
" <td>-16.816884</td>\n",
" </tr>\n",
" <tr>\n",
" <th>41</th>\n",
" <td>0.20</td>\n",
" <td>-1.171700e-09</td>\n",
" <td>-2.132000e-09</td>\n",
" <td>1.125000e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>-6.576200e-08</td>\n",
" <td>-9.264000e-07</td>\n",
" <td>-0.000012</td>\n",
" <td>30.845216</td>\n",
" </tr>\n",
" <tr>\n",
" <th>42</th>\n",
" <td>0.25</td>\n",
" <td>1.426000e-09</td>\n",
" <td>-1.087000e-09</td>\n",
" <td>-2.662100e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>2.090000e-08</td>\n",
" <td>1.733240e-06</td>\n",
" <td>0.000053</td>\n",
" <td>-19.227231</td>\n",
" </tr>\n",
" <tr>\n",
" <th>43</th>\n",
" <td>0.30</td>\n",
" <td>9.785000e-10</td>\n",
" <td>2.435100e-09</td>\n",
" <td>-8.399000e-09</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>7.044200e-08</td>\n",
" <td>9.908400e-07</td>\n",
" <td>-0.000015</td>\n",
" <td>28.927765</td>\n",
" </tr>\n",
" <tr>\n",
" <th>44</th>\n",
" <td>0.35</td>\n",
" <td>-1.502700e-09</td>\n",
" <td>1.357500e-09</td>\n",
" <td>2.671100e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>-2.155200e-08</td>\n",
" <td>-1.839880e-06</td>\n",
" <td>-0.000057</td>\n",
" <td>-15.876243</td>\n",
" </tr>\n",
" <tr>\n",
" <th>45</th>\n",
" <td>0.40</td>\n",
" <td>-1.421000e-09</td>\n",
" <td>1.528200e-09</td>\n",
" <td>8.179000e-09</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>3.414000e-09</td>\n",
" <td>4.993200e-07</td>\n",
" <td>0.000047</td>\n",
" <td>2.234001</td>\n",
" </tr>\n",
" <tr>\n",
" <th>46</th>\n",
" <td>0.45</td>\n",
" <td>-1.387000e-09</td>\n",
" <td>8.153400e-09</td>\n",
" <td>1.022800e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>1.325040e-07</td>\n",
" <td>2.581800e-06</td>\n",
" <td>0.000042</td>\n",
" <td>16.251380</td>\n",
" </tr>\n",
" <tr>\n",
" <th>47</th>\n",
" <td>0.50</td>\n",
" <td>2.781000e-09</td>\n",
" <td>3.532900e-08</td>\n",
" <td>2.798400e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>5.435120e-07</td>\n",
" <td>8.220160e-06</td>\n",
" <td>0.000113</td>\n",
" <td>15.384302</td>\n",
" </tr>\n",
" <tr>\n",
" <th>48</th>\n",
" <td>0.55</td>\n",
" <td>-1.859700e-09</td>\n",
" <td>1.349200e-07</td>\n",
" <td>2.761900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>1.991820e-06</td>\n",
" <td>2.896616e-05</td>\n",
" <td>0.000415</td>\n",
" <td>14.762971</td>\n",
" </tr>\n",
" <tr>\n",
" <th>49</th>\n",
" <td>0.60</td>\n",
" <td>-8.261000e-10</td>\n",
" <td>4.597100e-07</td>\n",
" <td>-1.184900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>6.495800e-06</td>\n",
" <td>9.007960e-05</td>\n",
" <td>0.001222</td>\n",
" <td>14.130213</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50</th>\n",
" <td>0.65</td>\n",
" <td>2.785100e-09</td>\n",
" <td>1.283700e-06</td>\n",
" <td>2.571500e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>1.647980e-05</td>\n",
" <td>1.996800e-04</td>\n",
" <td>0.002192</td>\n",
" <td>12.837735</td>\n",
" </tr>\n",
" <tr>\n",
" <th>51</th>\n",
" <td>0.70</td>\n",
" <td>1.955900e-09</td>\n",
" <td>3.073200e-06</td>\n",
" <td>7.982000e-09</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>3.579000e-05</td>\n",
" <td>3.862040e-04</td>\n",
" <td>0.003730</td>\n",
" <td>11.645841</td>\n",
" </tr>\n",
" <tr>\n",
" <th>52</th>\n",
" <td>0.75</td>\n",
" <td>-2.434500e-09</td>\n",
" <td>6.648300e-06</td>\n",
" <td>7.299000e-09</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>7.150200e-05</td>\n",
" <td>7.142400e-04</td>\n",
" <td>0.006561</td>\n",
" <td>10.754930</td>\n",
" </tr>\n",
" <tr>\n",
" <th>53</th>\n",
" <td>0.80</td>\n",
" <td>2.824500e-09</td>\n",
" <td>1.225000e-05</td>\n",
" <td>-1.841700e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>1.120340e-04</td>\n",
" <td>8.106400e-04</td>\n",
" <td>0.001928</td>\n",
" <td>9.145633</td>\n",
" </tr>\n",
" <tr>\n",
" <th>54</th>\n",
" <td>0.85</td>\n",
" <td>2.825300e-09</td>\n",
" <td>2.080200e-05</td>\n",
" <td>-1.046300e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>1.710400e-04</td>\n",
" <td>1.180120e-03</td>\n",
" <td>0.007390</td>\n",
" <td>8.222286</td>\n",
" </tr>\n",
" <tr>\n",
" <th>55</th>\n",
" <td>0.90</td>\n",
" <td>2.332200e-09</td>\n",
" <td>3.217000e-05</td>\n",
" <td>-1.533800e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>2.273600e-04</td>\n",
" <td>1.126400e-03</td>\n",
" <td>-0.001074</td>\n",
" <td>7.067454</td>\n",
" </tr>\n",
" <tr>\n",
" <th>56</th>\n",
" <td>0.95</td>\n",
" <td>1.673900e-09</td>\n",
" <td>4.634700e-05</td>\n",
" <td>-2.270000e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>2.835400e-04</td>\n",
" <td>1.123600e-03</td>\n",
" <td>-0.000056</td>\n",
" <td>6.117764</td>\n",
" </tr>\n",
" <tr>\n",
" <th>57</th>\n",
" <td>1.00</td>\n",
" <td>1.353700e-09</td>\n",
" <td>6.293800e-05</td>\n",
" <td>-3.052600e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>3.318200e-04</td>\n",
" <td>9.656000e-04</td>\n",
" <td>-0.003160</td>\n",
" <td>5.272173</td>\n",
" </tr>\n",
" <tr>\n",
" <th>58</th>\n",
" <td>1.05</td>\n",
" <td>1.261800e-09</td>\n",
" <td>8.140900e-05</td>\n",
" <td>-3.375000e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>3.694200e-04</td>\n",
" <td>7.520000e-04</td>\n",
" <td>-0.004272</td>\n",
" <td>4.537828</td>\n",
" </tr>\n",
" <tr>\n",
" <th>59</th>\n",
" <td>1.10</td>\n",
" <td>2.638700e-09</td>\n",
" <td>1.016170e-04</td>\n",
" <td>-4.092200e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.041600e-04</td>\n",
" <td>6.948000e-04</td>\n",
" <td>-0.001144</td>\n",
" <td>3.977287</td>\n",
" </tr>\n",
" <tr>\n",
" <th>60</th>\n",
" <td>1.15</td>\n",
" <td>2.798700e-09</td>\n",
" <td>1.230200e-04</td>\n",
" <td>-2.365200e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.280600e-04</td>\n",
" <td>4.780000e-04</td>\n",
" <td>-0.004336</td>\n",
" <td>3.479597</td>\n",
" </tr>\n",
" <tr>\n",
" <th>61</th>\n",
" <td>1.20</td>\n",
" <td>2.239800e-09</td>\n",
" <td>1.457200e-04</td>\n",
" <td>-3.201100e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.540000e-04</td>\n",
" <td>5.188000e-04</td>\n",
" <td>0.000816</td>\n",
" <td>3.115564</td>\n",
" </tr>\n",
" <tr>\n",
" <th>62</th>\n",
" <td>1.25</td>\n",
" <td>1.601500e-09</td>\n",
" <td>1.687700e-04</td>\n",
" <td>-3.731200e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.610000e-04</td>\n",
" <td>1.400000e-04</td>\n",
" <td>-0.007576</td>\n",
" <td>2.731528</td>\n",
" </tr>\n",
" <tr>\n",
" <th>63</th>\n",
" <td>1.30</td>\n",
" <td>1.333200e-09</td>\n",
" <td>1.924900e-04</td>\n",
" <td>-4.154900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.744000e-04</td>\n",
" <td>2.680000e-04</td>\n",
" <td>0.002560</td>\n",
" <td>2.464544</td>\n",
" </tr>\n",
" <tr>\n",
" <th>64</th>\n",
" <td>1.35</td>\n",
" <td>2.878400e-09</td>\n",
" <td>2.163500e-04</td>\n",
" <td>-4.210900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.772000e-04</td>\n",
" <td>5.600000e-05</td>\n",
" <td>-0.004240</td>\n",
" <td>2.205685</td>\n",
" </tr>\n",
" <tr>\n",
" <th>65</th>\n",
" <td>1.40</td>\n",
" <td>2.540900e-09</td>\n",
" <td>2.410900e-04</td>\n",
" <td>-3.370900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.948000e-04</td>\n",
" <td>3.520000e-04</td>\n",
" <td>0.005920</td>\n",
" <td>2.052346</td>\n",
" </tr>\n",
" <tr>\n",
" <th>66</th>\n",
" <td>1.45</td>\n",
" <td>1.873000e-09</td>\n",
" <td>2.655900e-04</td>\n",
" <td>-3.583400e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.900000e-04</td>\n",
" <td>-9.600000e-05</td>\n",
" <td>-0.008960</td>\n",
" <td>1.844949</td>\n",
" </tr>\n",
" <tr>\n",
" <th>67</th>\n",
" <td>1.50</td>\n",
" <td>1.410500e-09</td>\n",
" <td>2.902800e-04</td>\n",
" <td>-4.086500e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.938000e-04</td>\n",
" <td>7.600000e-05</td>\n",
" <td>0.003440</td>\n",
" <td>1.701116</td>\n",
" </tr>\n",
" <tr>\n",
" <th>68</th>\n",
" <td>1.55</td>\n",
" <td>1.287300e-09</td>\n",
" <td>3.149900e-04</td>\n",
" <td>-4.047200e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.942000e-04</td>\n",
" <td>8.000000e-06</td>\n",
" <td>-0.001360</td>\n",
" <td>1.568939</td>\n",
" </tr>\n",
" <tr>\n",
" <th>69</th>\n",
" <td>1.60</td>\n",
" <td>2.783100e-09</td>\n",
" <td>3.397300e-04</td>\n",
" <td>-4.277900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.948000e-04</td>\n",
" <td>1.200000e-05</td>\n",
" <td>0.000080</td>\n",
" <td>1.456451</td>\n",
" </tr>\n",
" <tr>\n",
" <th>70</th>\n",
" <td>1.65</td>\n",
" <td>2.195000e-09</td>\n",
" <td>3.647300e-04</td>\n",
" <td>-3.139900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>5.000000e-04</td>\n",
" <td>1.040000e-04</td>\n",
" <td>0.001840</td>\n",
" <td>1.370877</td>\n",
" </tr>\n",
" <tr>\n",
" <th>71</th>\n",
" <td>1.70</td>\n",
" <td>1.567800e-09</td>\n",
" <td>3.893900e-04</td>\n",
" <td>-3.491500e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.932000e-04</td>\n",
" <td>-1.360000e-04</td>\n",
" <td>-0.004800</td>\n",
" <td>1.266596</td>\n",
" </tr>\n",
" <tr>\n",
" <th>72</th>\n",
" <td>1.75</td>\n",
" <td>1.330100e-09</td>\n",
" <td>4.140200e-04</td>\n",
" <td>-3.711500e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.926000e-04</td>\n",
" <td>-1.200000e-05</td>\n",
" <td>0.002480</td>\n",
" <td>1.189798</td>\n",
" </tr>\n",
" <tr>\n",
" <th>73</th>\n",
" <td>1.80</td>\n",
" <td>2.876700e-09</td>\n",
" <td>4.385600e-04</td>\n",
" <td>-3.647900e-08</td>\n",
" <td>0.0</td>\n",
" <td>0.0</td>\n",
" <td>1.8</td>\n",
" <td>4.908000e-04</td>\n",
" <td>-3.600000e-05</td>\n",
" <td>-0.000480</td>\n",
" <td>1.119117</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>\n",
" <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-3891e038-7946-42f1-bf2f-df2558ee806b')\"\n",
" title=\"Convert this dataframe to an interactive table.\"\n",
" style=\"display:none;\">\n",
" \n",
" <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
" width=\"24px\">\n",
" <path d=\"M0 0h24v24H0V0z\" fill=\"none\"/>\n",
" <path d=\"M18.56 5.44l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94zm-11 1L8.5 8.5l.94-2.06 2.06-.94-2.06-.94L8.5 2.5l-.94 2.06-2.06.94zm10 10l.94 2.06.94-2.06 2.06-.94-2.06-.94-.94-2.06-.94 2.06-2.06.94z\"/><path d=\"M17.41 7.96l-1.37-1.37c-.4-.4-.92-.59-1.43-.59-.52 0-1.04.2-1.43.59L10.3 9.45l-7.72 7.72c-.78.78-.78 2.05 0 2.83L4 21.41c.39.39.9.59 1.41.59.51 0 1.02-.2 1.41-.59l7.78-7.78 2.81-2.81c.8-.78.8-2.07 0-2.86zM5.41 20L4 18.59l7.72-7.72 1.47 1.35L5.41 20z\"/>\n",
" </svg>\n",
" </button>\n",
" \n",
" <style>\n",
" .colab-df-container {\n",
" display:flex;\n",
" flex-wrap:wrap;\n",
" gap: 12px;\n",
" }\n",
"\n",
" .colab-df-convert {\n",
" background-color: #E8F0FE;\n",
" border: none;\n",
" border-radius: 50%;\n",
" cursor: pointer;\n",
" display: none;\n",
" fill: #1967D2;\n",
" height: 32px;\n",
" padding: 0 0 0 0;\n",
" width: 32px;\n",
" }\n",
"\n",
" .colab-df-convert:hover {\n",
" background-color: #E2EBFA;\n",
" box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
" fill: #174EA6;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-convert {\n",
" background-color: #3B4455;\n",
" fill: #D2E3FC;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-convert:hover {\n",
" background-color: #434B5C;\n",
" box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
" filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
" fill: #FFFFFF;\n",
" }\n",
" </style>\n",
"\n",
" <script>\n",
" const buttonEl =\n",
" document.querySelector('#df-3891e038-7946-42f1-bf2f-df2558ee806b button.colab-df-convert');\n",
" buttonEl.style.display =\n",
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
"\n",
" async function convertToInteractive(key) {\n",
" const element = document.querySelector('#df-3891e038-7946-42f1-bf2f-df2558ee806b');\n",
" const dataTable =\n",
" await google.colab.kernel.invokeFunction('convertToInteractive',\n",
" [key], {});\n",
" if (!dataTable) return;\n",
"\n",
" const docLinkHtml = 'Like what you see? Visit the ' +\n",
" '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
" + ' to learn more about interactive tables.';\n",
" element.innerHTML = '';\n",
" dataTable['output_type'] = 'display_data';\n",
" await google.colab.output.renderOutput(dataTable, element);\n",
" const docLink = document.createElement('div');\n",
" docLink.innerHTML = docLinkHtml;\n",
" element.appendChild(docLink);\n",
" }\n",
" </script>\n",
" </div>\n",
" </div>\n",
" "
]
},
"metadata": {},
"execution_count": 5
}
]
},
{
"cell_type": "markdown",
"source": [
"# Plots"
],
"metadata": {
"id": "jGhY23EkEF5v"
}
},
{
"cell_type": "markdown",
"source": [
"**comments:** \n",
"* From the log plot, we see that the data gets noisy below 2nA.\n"
],
"metadata": {
"id": "tKztRJpRgKtP"
}
},
{
"cell_type": "code",
"source": [
"# plot ID-VG on linear and log scales\n",
"fig, axes = plt.subplots(1, 2, figsize=(12, 4))\n",
"df.plot(x=\"VG\", y=\"ID\", ax=axes[0], logy=False, title = mdm_path.stem)\n",
"df.plot(x=\"VG\", y=\"ID\", ax=axes[1], logy=True, title = mdm_path.stem)\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 295
},
"id": "QuGRGGmTCJMi",
"outputId": "39b93934-81cf-4384-f57b-6dd232ff242d"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 864x288 with 2 Axes>"
],
"image/png": "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\n"
},
"metadata": {
"needs_background": "light"
}
}
]
},
{
"cell_type": "markdown",
"source": [
"**comments:** \n",
"\n",
"* gm looks OK, showing velocity saturation. But, not sure why there are kinks above ~1.2V\n",
"* Not surprisingly, gm/ID looks bad below VG ~ 0.5V (or gm/ID ~ 15 S/A) due to the noise in ID\n",
"* This means the data cannot be used to predict the subthreshold slope (digital leakage) or peak gm/ID (for low power analog)"
],
"metadata": {
"id": "m8psYe3wfoX-"
}
},
{
"cell_type": "code",
"source": [
"# plot gm and gm/ID\n",
"fig, axes = plt.subplots(1, 2, figsize=(12, 4))\n",
"df.plot(x=\"VG\", y=\"GM1\", ax=axes[0], title = mdm_path.stem)\n",
"df.plot(x=\"VG\", y=\"GM1_ID\", ax=axes[1], title = mdm_path.stem)\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 295
},
"id": "cZgaBWfbw9Dk",
"outputId": "9e584deb-64d0-4f58-b471-a61fe2976b04"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 864x288 with 2 Axes>"
],
"image/png": "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\n"
},
"metadata": {
"needs_background": "light"
}
}
]
},
{
"cell_type": "markdown",
"source": [
"**comments:**\n",
"* Looks noisy, but curve fitting & filtering may help here\n",
"* If we squint a little bit, we can see the expected zero crossing in GM3; a sweet spot for low-distortion design "
],
"metadata": {
"id": "tsVK4v_Pgtui"
}
},
{
"cell_type": "code",
"source": [
"# plot high-order derivatives (for distortion modeling)\n",
"fig, axes = plt.subplots(1, 2, figsize=(12, 4))\n",
"df.plot(x=\"VG\", y=\"GM2\", ax=axes[0], title = mdm_path.stem)\n",
"df.plot(x=\"VG\", y=\"GM3\", ax=axes[1], title = mdm_path.stem)\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 295
},
"id": "yn6rMWz23Vgg",
"outputId": "3936126c-c0b4-4a03-be82-4978fc563ded"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 864x288 with 2 Axes>"
],
"image/png": "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lKmypzvIyKhheV0JXzz3KEQ2c/0DrxIxho+ffli2u6ck4Ot/2sore/sy2uaKhWV87YKVCfdv3bqV4447LmkbF198Mb/73e849thjOe644/D5fHHL3XrrrVx22WVT6q+izAV2dwUB6BpQAz+XycaYDZkZt7/0pS9x++23U15ezuOPPz7lfs8kGclkqyi5SHPHAACNNSUUuF385LJjuGD1Qr79l9f42RNNWe6dMpv55Cc/yerVqznhhBPGtl166aX87ne/48477+Tyy+NOQHL99dfj8Xi44oorZqqripKzOB78LvXgKxlgMuP29ddfz+7du7niiiv46U9/OpPdnTLqwVfmLDs6BgFoqCkGwON28aNLVyPAdx/chjHwyX9SRdhsYyKvzXSwcuVK7r333rH3N954Ix0dHaxZs2Zs2/z58ykoKOCRRx7hJz/5CX//+98PaeO2227j/vvv59FHH825qV5FyQa7uy0PfuegavBzmWyM2ZCZcdvhiiuu4LzzzuPrX//6tPc7U6gHX5mztHQMUuLzUFtycErO43bxw0tX8+5jFvK9h7bx349uz2IPldnC29/+doaGhvif//mfsW2BwPggXtdddx033HADbrf7kO0PPvgg3/3ud1m/fj3FxcXT3l9FyQfUg69MhamO29u3H7z///GPf+Soo46avs5OA+rBV+YsLZ0BGmqKx3lTPW4XP7j0GFwi/OCR12nrD/Hm+nJKfR789l+Jz0NJoYcSrwe/z43Hrc/K+YyI8Ic//IHPfvazfPe736W2tha/388NN9xwSLlTTz01bv2rrrqKUCjEWWedBVgLbX/+cw0ApiiJGBoZ5UBfCK/bRU9whNGIwe3SmS8ldaY6bl999dVs27YNl8vF0qVLc27MVgNfmbO0dAxwzOLKuPvcLuF7l6ymwO3i18/uTNpOaaGHRz93OvPKCqejm8osYcGCBaxbty7uvjPOOGPctmuvvXbsdVOTrulQlHTY22PJc960sIyXdvfQHRimpiT+wnVFScRUxu1oeU8uoga+MicJhUfZ0x3kPcfWJyzjdgk3XLyKa847iv6hMAOhg3+D9l97f4jvP/w692/Zx4ff0jiDZ6AoijK7eeaNTuaV+TistiTtuo7+/pj6csvAH1QDX1HSQQ18ZU6yuytAxEBjzcR66IpiLxXF3oT7H3h5P3/aslcNfEVRFJvRiOHj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\n"
},
"metadata": {
"needs_background": "light"
}
}
]
},
{
"cell_type": "markdown",
"source": [
"For comparison, refer to [data](https://www.mos-ak.org/munich_2007/papers/02_MOS-AK_Assenmacher.pdf) collected by Infineon for PSP modeling. Key points:\n",
"\n",
"* Their ID looks noise free down to several tens of pA, see p. 12 (instead of 2nA)\n",
"* The derivatives computed from measurements look cleaner, see p. 13 (though I don't know how exactly how they were computed)\n",
"* Their VG step size is also 50mV, so should be OK for us as well\n",
"\n",
"\n",
"\n",
"\n"
],
"metadata": {
"id": "hXgzHMmHH9ye"
}
}
]
}