{ "cells": [ { "metadata": {}, "cell_type": "markdown", "source": [ "# One-dimensional Forward Modeling\n", "The most simple forward modeling problem is the calculation of the SQUID signal generated by a current running in an infinitely long strip. While this might seem oversimplified, modeling this the starting point for th eexperimental determinatin of current flow patterns, such as in the prototypical investigations of Poisueille flow in electron hydrodynamics.\n", "\n", "We consider a SQUID sensor of inner radius $\\rho_1$ and outer radius $\\rho_2$ placed at a height $h$ above the sample. Mind that this is the distance between the SQUID center and the sample, not the tip-sample distance. The SQUID is tilted by an angle $\\phi$ with respect to the surface normal such that a $\\phi=0$ SQUID records only out-of-plane field, and a $\\phi=\\pi/2$ SQUID records only in-plane field. We use the following coordinate system:\n", "\n", "![Coordinate systems used to describe the current imaging geometry.](illustrations/OrientationFigure.svg)\n", "\n", "Here, current flows along a strip of width $W$ that is tilted an angle $\\gamma$ with respect of the SQUID frame. The tilted frame is indicated with two primes $(x'',y'')$ and, since the strip is infinitely long, the current density is described by a function $\\mathbf{J}=J(y'') \\hat{\\mathbf{x}}''$.\n", "\n", "To perform forward modeling, we must import sottools.forward as well as numpy and matplotlib for numerical calculations and plotting, respectively." ], "id": "d7883a174e294be1" }, { "metadata": { "collapsed": true, "ExecuteTime": { "end_time": "2026-07-10T08:47:52.949521Z", "start_time": "2026-07-10T08:47:51.794672Z" } }, "cell_type": "code", "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import sottools.forward as forward" ], "id": "2c4a9f32c4453d89", "outputs": [], "execution_count": 1 }, { "metadata": {}, "cell_type": "markdown", "source": "In SOTtools, forward calculations are performed by objects (e.g. of the Forward1D class) that are initialized with the geometry of the problem. This allows them to pre-compute all relevant kernels, and then perform the actual forward calculation for any current distribution in a very efficient manner. Generally, for simple forward problems, it is completely unneccesary to run on GPU. To parameterize these geometries, we use the Forward1DParameters class, which encapsulates the geometry of both the SQUID and the sample.", "id": "1f84e51d321b066e" }, { "metadata": { "ExecuteTime": { "end_time": "2026-07-10T08:47:53.813009Z", "start_time": "2026-07-10T08:47:53.748248Z" } }, "cell_type": "code", "source": [ "params = forward.Forward1DParameters(\n", " Lscan = 10.0, # Scan length in microns\n", " Wdevice = 5.0, # Device (strip) width\n", " Nscan = 256, # Number of points in the SQUID scan\n", " gamma = 0.0,\n", " rho1 = 0.2,\n", " rho2 = 0.4,\n", " height = 0.5,\n", " phi = np.deg2rad(63.0), # Standard TM-SOT sensor tilt angle\n", " invert_normal=True # Sets the sign of the SQUID response\n", ")\n", "\n", "fwd = forward.Forward1D(params)" ], "id": "99a4f611d605cbdc", "outputs": [], "execution_count": 2 }, { "metadata": {}, "cell_type": "markdown", "source": [ "A small note on units: standard SOTtools is configured to be used in units of micrometers, micro-amps and microteslas. To change the unit system, one can pass a value for the vacuum permittivity $\\mu_0$ to the Forward1D constructor. For instance, passing $4\\pi \\cdot 10^{-7}$ will set the units to SI (meters, amps, teslas).\n", "\n", "The sottools.utils classes contain various utility functions for plotting and visualization. For instance, we can use it to calculate the kernel of the forward problem. The kernel shows the SQUID response to a delta function (one grid point wide) of current in the middle of the device. Note that the kernel is given in arbitrary units." ], "id": "6e7638d490fa9c0a" }, { "metadata": { "ExecuteTime": { "end_time": "2026-07-10T08:47:54.865633Z", "start_time": "2026-07-10T08:47:54.807100Z" } }, "cell_type": "code", "source": [ "import sottools.utils.forwardplotting as forwardplotting\n", "fig, ax = plt.subplots(1,1,figsize=(4,3))\n", "forwardplotting.plot_1dforwardkernel(fwd, ax)\n", "plt.show()" ], "id": "fbb59ad6cfdb312a", "outputs": [ { "data": { "text/plain": [ "
" ], "image/png": "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" }, "metadata": {}, "output_type": "display_data", "jetTransient": { "display_id": null } } ], "execution_count": 3 }, { "metadata": {}, "cell_type": "markdown", "source": [ "The horizontal axis has a total width of $30=3\\times L_{scan}$. This is deliberate: SOTtools zero-pads current distributions to three times the scan length and then uses a wider kernel, to avoid any edge effects whatsoever.\n", "\n", "Using our fwd object, we can now calculate the SQUID response to any current distribution. For instance, we can calculate the response to two edge currents." ], "id": "70567da7ad38409e" }, { "metadata": { "ExecuteTime": { "end_time": "2026-07-10T08:55:40.935450Z", "start_time": "2026-07-10T08:55:40.885744Z" } }, "cell_type": "code", "source": [ "channelwidth = 0.2 # Width of the edge channels\n", "ydevice = params.ydevice.cpu().numpy() # Convert to NumPy from Torch\n", "yscan = params.yscan.cpu().numpy() # Convert to NumPy from Torch\n", "currents = np.zeros_like(ydevice)\n", "currents[(ydevice < -params.Wdevice/2 + channelwidth) | (ydevice > params.Wdevice/2 - channelwidth)] = 1.0\n", "\n", "signal = fwd.forward(currents)\n", "\n", "# For plotting esthetics, we embed currents in a zero-padded array of length Lscan\n", "currents_plotting = np.zeros_like(yscan)\n", "Nscan = len(yscan)\n", "Ndevice = len(ydevice)\n", "currents_plotting[Nscan//2-Ndevice//2:Nscan//2+Ndevice//2] = currents\n", "\n", "fig, ax = plt.subplots(1,1,figsize=(4,3))\n", "ax_current = ax.twinx()\n", "ax_current.plot(yscan, currents_plotting, color='C1')\n", "ax.plot(yscan, signal, color='C0')\n", "ax.set_zorder(ax_current.get_zorder() + 1)\n", "ax.patch.set_visible(False)\n", "ax.set_xlabel('y (µm)')\n", "ax.set_ylabel('SQUID signal (µTµm²)', color='C0')\n", "ax_current.set_ylabel('Sheet current density (µA/µm)', color='C1')\n", "plt.show()" ], "id": "28e09b944eee7769", "outputs": [ { "data": { "text/plain": [ "
" ], "image/png": "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" }, "metadata": {}, "output_type": "display_data", "jetTransient": { "display_id": null } } ], "execution_count": 16 }, { "metadata": {}, "cell_type": "code", "outputs": [], "execution_count": null, "source": "", "id": "90506a6869d398a4" } ], "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.12.8" } }, "nbformat": 4, "nbformat_minor": 5 }