{
"cells": [
{
"cell_type": "markdown",
"id": "c80cd461",
"metadata": {},
"source": [
"(analysis-framework-tutorial)=\n",
"# Tutorial 3. Building custom analyses - the data analysis framework\n",
"\n",
"```{seealso}\n",
"\n",
"The complete source code of this tutorial can be found in\n",
"\n",
"{nb-download}`Tutorial 3. Building custom analyses - the data analysis framework.ipynb`\n",
"\n",
"```\n",
"\n",
"Quantify provides an analysis framework in the form of a {class}`~quantify_core.analysis.base_analysis.BaseAnalysis` class and several subclasses for simple cases (e.g., {class}`~quantify_core.analysis.base_analysis.BasicAnalysis`, {class}`~quantify_core.analysis.base_analysis.Basic2DAnalysis`, {class}`~quantify_core.analysis.spectroscopy_analysis.ResonatorSpectroscopyAnalysis`). The framework provides a structured, yet flexible, flow of the analysis steps. We encourage all users to adopt the framework by sub-classing the {class}`~quantify_core.analysis.base_analysis.BaseAnalysis`.\n",
"\n",
"To give insight into the concepts and ideas behind the analysis framework, we first write analysis scripts to *\"manually\"* analyze the data as if we had a new type of experiment in our hands.\n",
"Next, we encapsulate these steps into reusable functions packing everything together into a simple python class.\n",
"\n",
"We conclude by showing how the same class is implemented much more easily by extending the {class}`~quantify_core.analysis.base_analysis.BaseAnalysis` and making use of the quantify framework."
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "114e888a",
"metadata": {
"mystnb": {
"code_prompt_show": "Imports and auxiliary utilities"
},
"tags": [
"hide-cell"
]
},
"outputs": [],
"source": [
"import json\n",
"import logging\n",
"from pathlib import Path\n",
"from typing import Tuple\n",
"\n",
"import lmfit\n",
"import matplotlib\n",
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"import xarray as xr\n",
"\n",
"import quantify_core.visualization.pyqt_plotmon as pqm\n",
"from quantify_core.analysis.cosine_analysis import CosineAnalysis\n",
"from quantify_core.analysis.fitting_models import CosineModel, cos_func\n",
"from quantify_core.data.handling import (\n",
" default_datadir,\n",
" get_latest_tuid,\n",
" load_dataset,\n",
" locate_experiment_container,\n",
" set_datadir,\n",
")\n",
"from quantify_core.measurement import MeasurementControl\n",
"from quantify_core.utilities.examples_support import mk_cosine_instrument\n",
"from quantify_core.utilities.inspect_utils import display_source_code\n",
"from quantify_core.visualization.SI_utilities import set_xlabel, set_ylabel"
]
},
{
"cell_type": "markdown",
"id": "97036a87",
"metadata": {},
"source": [
"Before instantiating any instruments or starting a measurement we change the\n",
"directory in which the experiments are saved using the\n",
"{meth}`~quantify_core.data.handling.set_datadir`\n",
"\\[{meth}`~quantify_core.data.handling.get_datadir`\\] functions.\n",
"\n",
"----------------------------------------------------------------------------------------\n",
"\n",
"⚠️ **Warning!**\n",
"\n",
"We recommend always setting the directory at the start of the python kernel and stick\n",
"to a single common data directory for all notebooks/experiments within your\n",
"measurement setup/PC.\n",
"\n",
"The cell below sets a default data directory (`~/quantify-data` on Linux/macOS or\n",
"`$env:USERPROFILE\\\\quantify-data` on Windows) for tutorial purposes. Change it to your\n",
"desired data directory. The utilities to find/search/extract data only work if\n",
"all the experiment containers are located within the same directory.\n",
"\n",
"----------------------------------------------------------------------------------------"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "efe3fa65",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Data will be saved in:\n",
"/root/quantify-data\n"
]
}
],
"source": [
"set_datadir(default_datadir()) # change me!"
]
},
{
"cell_type": "markdown",
"id": "6795b2b8",
"metadata": {},
"source": [
"## Run an experiment\n",
"\n",
"We mock an experiment in order to generate a toy dataset to use in this tutorial."
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "881bb888",
"metadata": {
"mystnb": {
"code_prompt_show": "Source code of a mock instrument"
},
"tags": [
"hide-cell"
]
},
"outputs": [
{
"data": {
"text/html": [
"
defmk_cosine_instrument()->Instrument:\n",
""""A container of parameters (mock instrument) providing a cosine model."""\n",
"\n",
" instr=Instrument("ParameterHolder")\n",
"\n",
" # ManualParameter's is a handy class that preserves the QCoDeS' Parameter\n",
" # structure without necessarily having a connection to the physical world\n",
" instr.add_parameter(\n",
" "amp",\n",
" initial_value=0.5,\n",
" unit="V",\n",
" label="Amplitude",\n",
" parameter_class=ManualParameter,\n",
" )\n",
" instr.add_parameter(\n",
" "freq",\n",
" initial_value=1,\n",
" unit="Hz",\n",
" label="Frequency",\n",
" parameter_class=ManualParameter,\n",
" )\n",
" instr.add_parameter(\n",
" "t",initial_value=1,unit="s",label="Time",parameter_class=ManualParameter\n",
" )\n",
" instr.add_parameter(\n",
" "phi",\n",
" initial_value=0,\n",
" unit="Rad",\n",
" label="Phase",\n",
" parameter_class=ManualParameter,\n",
" )\n",
" instr.add_parameter(\n",
" "noise_level",\n",
" initial_value=0.05,\n",
" unit="V",\n",
" label="Noise level",\n",
" parameter_class=ManualParameter,\n",
" )\n",
" instr.add_parameter(\n",
" "acq_delay",initial_value=0.02,unit="s",parameter_class=ManualParameter\n",
" )\n",
"\n",
" defcosine_model():\n",
" sleep(instr.acq_delay())# simulates the acquisition delay of an instrument\n",
" return(\n",
" cos_func(instr.t(),instr.freq(),instr.amp(),phase=instr.phi(),offset=0)\n",
" +np.random.randn()*instr.noise_level()\n",
" )\n",
"\n",
" # Wrap our function in a Parameter to be able to associate metadata to it, e.g. unit\n",
" instr.add_parameter(\n",
" name="sig",label="Signal level",unit="V",get_cmd=cosine_model\n",
" )\n",
"\n",
" returninstr\n",
"
\n"
],
"text/latex": [
"\\begin{Verbatim}[commandchars=\\\\\\{\\}]\n",
"\\PY{k}{def}\\PY{+w}{ }\\PY{n+nf}{mk\\PYZus{}cosine\\PYZus{}instrument}\\PY{p}{(}\\PY{p}{)} \\PY{o}{\\PYZhy{}}\\PY{o}{\\PYZgt{}} \\PY{n}{Instrument}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{l+s+sd}{\\PYZdq{}\\PYZdq{}\\PYZdq{}A container of parameters (mock instrument) providing a cosine model.\\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
"\n",
" \\PY{n}{instr} \\PY{o}{=} \\PY{n}{Instrument}\\PY{p}{(}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{ParameterHolder}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{)}\n",
"\n",
" \\PY{c+c1}{\\PYZsh{} ManualParameter\\PYZsq{}s is a handy class that preserves the QCoDeS\\PYZsq{} Parameter}\n",
" \\PY{c+c1}{\\PYZsh{} structure without necessarily having a connection to the physical world}\n",
" \\PY{n}{instr}\\PY{o}{.}\\PY{n}{add\\PYZus{}parameter}\\PY{p}{(}\n",
" \\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{amp}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,}\n",
" \\PY{n}{initial\\PYZus{}value}\\PY{o}{=}\\PY{l+m+mf}{0.5}\\PY{p}{,}\n",
" \\PY{n}{unit}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{V}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,}\n",
" \\PY{n}{label}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{Amplitude}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,}\n",
" \\PY{n}{parameter\\PYZus{}class}\\PY{o}{=}\\PY{n}{ManualParameter}\\PY{p}{,}\n",
" \\PY{p}{)}\n",
" \\PY{n}{instr}\\PY{o}{.}\\PY{n}{add\\PYZus{}parameter}\\PY{p}{(}\n",
" \\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{freq}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,}\n",
" \\PY{n}{initial\\PYZus{}value}\\PY{o}{=}\\PY{l+m+mi}{1}\\PY{p}{,}\n",
" \\PY{n}{unit}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{Hz}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,}\n",
" \\PY{n}{label}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{Frequency}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,}\n",
" \\PY{n}{parameter\\PYZus{}class}\\PY{o}{=}\\PY{n}{ManualParameter}\\PY{p}{,}\n",
" \\PY{p}{)}\n",
" \\PY{n}{instr}\\PY{o}{.}\\PY{n}{add\\PYZus{}parameter}\\PY{p}{(}\n",
" \\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{t}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{initial\\PYZus{}value}\\PY{o}{=}\\PY{l+m+mi}{1}\\PY{p}{,} \\PY{n}{unit}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{s}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{label}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{Time}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{parameter\\PYZus{}class}\\PY{o}{=}\\PY{n}{ManualParameter}\n",
" \\PY{p}{)}\n",
" \\PY{n}{instr}\\PY{o}{.}\\PY{n}{add\\PYZus{}parameter}\\PY{p}{(}\n",
" \\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{phi}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,}\n",
" \\PY{n}{initial\\PYZus{}value}\\PY{o}{=}\\PY{l+m+mi}{0}\\PY{p}{,}\n",
" \\PY{n}{unit}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{Rad}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,}\n",
" \\PY{n}{label}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{Phase}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,}\n",
" \\PY{n}{parameter\\PYZus{}class}\\PY{o}{=}\\PY{n}{ManualParameter}\\PY{p}{,}\n",
" \\PY{p}{)}\n",
" \\PY{n}{instr}\\PY{o}{.}\\PY{n}{add\\PYZus{}parameter}\\PY{p}{(}\n",
" \\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{noise\\PYZus{}level}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,}\n",
" \\PY{n}{initial\\PYZus{}value}\\PY{o}{=}\\PY{l+m+mf}{0.05}\\PY{p}{,}\n",
" \\PY{n}{unit}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{V}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,}\n",
" \\PY{n}{label}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{Noise level}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,}\n",
" \\PY{n}{parameter\\PYZus{}class}\\PY{o}{=}\\PY{n}{ManualParameter}\\PY{p}{,}\n",
" \\PY{p}{)}\n",
" \\PY{n}{instr}\\PY{o}{.}\\PY{n}{add\\PYZus{}parameter}\\PY{p}{(}\n",
" \\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{acq\\PYZus{}delay}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{initial\\PYZus{}value}\\PY{o}{=}\\PY{l+m+mf}{0.02}\\PY{p}{,} \\PY{n}{unit}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{s}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{parameter\\PYZus{}class}\\PY{o}{=}\\PY{n}{ManualParameter}\n",
" \\PY{p}{)}\n",
"\n",
" \\PY{k}{def}\\PY{+w}{ }\\PY{n+nf}{cosine\\PYZus{}model}\\PY{p}{(}\\PY{p}{)}\\PY{p}{:}\n",
" \\PY{n}{sleep}\\PY{p}{(}\\PY{n}{instr}\\PY{o}{.}\\PY{n}{acq\\PYZus{}delay}\\PY{p}{(}\\PY{p}{)}\\PY{p}{)} \\PY{c+c1}{\\PYZsh{} simulates the acquisition delay of an instrument}\n",
" \\PY{k}{return} \\PY{p}{(}\n",
" \\PY{n}{cos\\PYZus{}func}\\PY{p}{(}\\PY{n}{instr}\\PY{o}{.}\\PY{n}{t}\\PY{p}{(}\\PY{p}{)}\\PY{p}{,} \\PY{n}{instr}\\PY{o}{.}\\PY{n}{freq}\\PY{p}{(}\\PY{p}{)}\\PY{p}{,} \\PY{n}{instr}\\PY{o}{.}\\PY{n}{amp}\\PY{p}{(}\\PY{p}{)}\\PY{p}{,} \\PY{n}{phase}\\PY{o}{=}\\PY{n}{instr}\\PY{o}{.}\\PY{n}{phi}\\PY{p}{(}\\PY{p}{)}\\PY{p}{,} \\PY{n}{offset}\\PY{o}{=}\\PY{l+m+mi}{0}\\PY{p}{)}\n",
" \\PY{o}{+} \\PY{n}{np}\\PY{o}{.}\\PY{n}{random}\\PY{o}{.}\\PY{n}{randn}\\PY{p}{(}\\PY{p}{)} \\PY{o}{*} \\PY{n}{instr}\\PY{o}{.}\\PY{n}{noise\\PYZus{}level}\\PY{p}{(}\\PY{p}{)}\n",
" \\PY{p}{)}\n",
"\n",
" \\PY{c+c1}{\\PYZsh{} Wrap our function in a Parameter to be able to associate metadata to it, e.g. unit}\n",
" \\PY{n}{instr}\\PY{o}{.}\\PY{n}{add\\PYZus{}parameter}\\PY{p}{(}\n",
" \\PY{n}{name}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{sig}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{label}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{Signal level}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{unit}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{V}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{get\\PYZus{}cmd}\\PY{o}{=}\\PY{n}{cosine\\PYZus{}model}\n",
" \\PY{p}{)}\n",
"\n",
" \\PY{k}{return} \\PY{n}{instr}\n",
"\\end{Verbatim}\n"
],
"text/plain": [
"def mk_cosine_instrument() -> Instrument:\n",
" \"\"\"A container of parameters (mock instrument) providing a cosine model.\"\"\"\n",
"\n",
" instr = Instrument(\"ParameterHolder\")\n",
"\n",
" # ManualParameter's is a handy class that preserves the QCoDeS' Parameter\n",
" # structure without necessarily having a connection to the physical world\n",
" instr.add_parameter(\n",
" \"amp\",\n",
" initial_value=0.5,\n",
" unit=\"V\",\n",
" label=\"Amplitude\",\n",
" parameter_class=ManualParameter,\n",
" )\n",
" instr.add_parameter(\n",
" \"freq\",\n",
" initial_value=1,\n",
" unit=\"Hz\",\n",
" label=\"Frequency\",\n",
" parameter_class=ManualParameter,\n",
" )\n",
" instr.add_parameter(\n",
" \"t\", initial_value=1, unit=\"s\", label=\"Time\", parameter_class=ManualParameter\n",
" )\n",
" instr.add_parameter(\n",
" \"phi\",\n",
" initial_value=0,\n",
" unit=\"Rad\",\n",
" label=\"Phase\",\n",
" parameter_class=ManualParameter,\n",
" )\n",
" instr.add_parameter(\n",
" \"noise_level\",\n",
" initial_value=0.05,\n",
" unit=\"V\",\n",
" label=\"Noise level\",\n",
" parameter_class=ManualParameter,\n",
" )\n",
" instr.add_parameter(\n",
" \"acq_delay\", initial_value=0.02, unit=\"s\", parameter_class=ManualParameter\n",
" )\n",
"\n",
" def cosine_model():\n",
" sleep(instr.acq_delay()) # simulates the acquisition delay of an instrument\n",
" return (\n",
" cos_func(instr.t(), instr.freq(), instr.amp(), phase=instr.phi(), offset=0)\n",
" + np.random.randn() * instr.noise_level()\n",
" )\n",
"\n",
" # Wrap our function in a Parameter to be able to associate metadata to it, e.g. unit\n",
" instr.add_parameter(\n",
" name=\"sig\", label=\"Signal level\", unit=\"V\", get_cmd=cosine_model\n",
" )\n",
"\n",
" return instr"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"display_source_code(mk_cosine_instrument)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "f58b3e02",
"metadata": {
"mystnb": {
"remove-output": true
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Starting iterative measurement...\n"
]
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "84067d302a4f4a8188ac1e3d08b0e3f8",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
"Completed: 0%| [ elapsed time: 00:00 | time left: ? ] it"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"meas_ctrl = MeasurementControl(\"meas_ctrl\")\n",
"plotmon = pqm.PlotMonitor_pyqt(\"plotmon\")\n",
"meas_ctrl.instr_plotmon(plotmon.name)\n",
"pars = mk_cosine_instrument()\n",
"\n",
"meas_ctrl.settables(pars.t)\n",
"meas_ctrl.setpoints(np.linspace(0, 2, 30))\n",
"meas_ctrl.gettables(pars.sig)\n",
"dataset = meas_ctrl.run(\"Cosine experiment\")"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "0e3dbd26",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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u53D4RgMBhqN9uWXXxKbU2VnZ3/00Uc6nY7H443qfYFABTkVBCx86xW81pKenr5p06a4uDgqlSqVSrdu3fr6669/9NFHROFLly5RKJTPPvtMKBT29PSM8JKQkJC9e/dGRER8/fXX//jHP7Zs2TJlypSDBw9yudwdO3bs27dv+fLleL9jbW3tyy+/nJeX99hjj/H5/AsXLrz00kuvvPLKhx9+mJmZuWPHjt///vcvvfQSXuPBx+P8+9//3rVr16OPPnrXXXcxGIyTJ0++9tprAoHggQceIGL4+OOPX3nllbS0NDxmXFdXF7EjCq6vr4947HQ6n332WZVK9d5776Wnp7e1tb300kvPPffc7t27BQJBv8+wvb1927ZtM2fO3LZtG5/PLy8v/8tf/uJeYMxBjllxcfG6deteffVVCoXy2muvffLJJxKJJDc39/3337dYLHhr/6JFi/CK/kjCI5hMpqampnvvvZc4otFoPvjgg/Xr1z/88MNMJtNsNp89e9a9Zzc5OdnlclVXV/er2oJJC+bSgICiUqlqa2tramqKi4u3bdtGoVDwTsq77rorISGBRqNRKJSUlJT77ruvpqZGp9MRF9rt9pdfflksFrNYLHwk500vcTqdW7dujYqKotPphYWFISEhCoXi2WefDQsLYzAYDz74IELo/PnzeOEvvvgiOjr6ueeew0eTzpw585FHHqmurpbL5VQqFd/njslkcjgcDodDo9GsVuuXX355xx13/Pa3v2WxWFQqddmyZQUFBd9++637vhebNm3Kzs7mcDiRkZHEwXffffe+G9XV1RFnKysrW1paHnzwwXnz5lGp1GnTpr3wwgsmk+nAgQMDP89Dhw7Z7fYXX3wxPDycSqUuXrzYvdN3PEGO2bRp0x599NHg4OCgoKD777/f4XBwudzCwkI2m41hWGFhoV6vl8lkIw+PoFQqnU5nVFQUcaSjo8PpdN566634rxw2m7148WL3KinebqFQKMb/vkBggHoqCChlZWVlZWUIISqVmpCQ8OSTT+K7OptMpkOHDtXX1+t0OqfT2dvbixC6evUq8fdxypQpxNAY3E0viY6OJnapo1KpU6ZMCQsLI/pBg4ODg4OD1Wo1QsjlctXU1MyYMePYsWPE/fFTly5dSkhIGPhGmpqajEYjjUYrKSkhDlqtVr1er9VqidcdtMH28ccf79fx+f7777e2tuKP8XG27gOD8T7IQcffXrhwYdq0ae5pZv78+UT77XiCHLOUlBRinC2epFNSUoiz+BH8sx1heAS9Xo8Qct/fNCEhISws7LXXXlu5cmVGRkZqamq/jmd88BR+IQAIcioIMKtXr7733nupVGpYWBjRZ2Y2m4uKinQ6XX5+/pw5cxgMxqVLly5fvmyz2YgL+/WHjeQSDofjfgmNRut3hE6nOxwOhJDFYrFarUql8ptvvnEvkJSUNNRO7HgKr66ubm5u7ncJfs9Bw8bFxsbOmDHD/Yh7B6HRaBx4IY/Hw4/3gw/McT/iPmtzPEGOmfuHjG94OfAI/uojDI+A/1v0+yf+29/+9vnnn+/fv3/37t1BQUFr1659+OGHiTFTFouFuBAABDkVBJjg4GD3ShWuvLxcoVDs2LGDqNDcdKbmGC4ZBovFYjKZ6enpL7/88ggvwStAhYWFa9asGfPrDnPn7u5uYqAN/tR9tK174Y6ODvcjGo3GB0F6xGjDCw8PRwi5N+8jhGJjY7du3epyuZqamvbv379nz56pU6euXbsWP4vXUAdWecGkBf2pIPDhQ2OEQiFxRCKRePySYVAolIyMjHPnzvX7e03Au+vMZjNxZPr06aGhoaWlpYP2/I0H3izs/nZqamq0Wu2g82Rmz57d1tbm3l/ofqH3gvSI0YYXHR3N4/FaWloGnqJQKElJSc8++yybzW5qaiKO4x23ycnJnooZTHSQU0HgwxtC//GPf3R3d7e3t3/44Ye1tbUev2R4mzdvNpvNTz755Llz5zQaTXt7e0VFxYsvvoi3NEZHR3M4nOLi4jNnzlRVVanVagaDsXnz5pqampdffvnixYt6vf7y5ctHjhzZvn37eMJACM2ZM2f27Nmff/55SUmJWq2urKx87bXXMAwbtDK3Zs2aoKCgrVu3XrhwQaPR7Nu379SpU8RZ7wXpEaMND58+W19fTxz56aefPvzwQ6lUqtPpNBrN119/bTabk5KSiAK1tbWhoaHuR8AkB22/IPAlJyfff//9u3btOnz4MEIoJSXl8ccff/PNNz17yfDEYvH27dvfeeedp556Cj/CYDDwkbf442efffazzz577rnnHA4HPj917dq1dDr9008/PXnyJH5JaGjoXXfdNeYYCG+88cZrr732xhtv4E/j4+Nff/31QZe3DQ8P/8tf/rJt27aioiKEUFRU1B//+Mc///nPRAHvBekRow1v1apVTzzxhFwuxweOcTic77//fu/evfhZNpu9cePG1atX40+dTueJEydWrFiBd+ICgBCi+GejDQAep9fr29raMAxz70f0+CU31dnZqVaruVxuVFTUSMa2OJ1OhUJhNBrDwsIiIyM9+OdbpVJ1dXWFhoa6N3EPym63y2QyOp2ekJAw6KJ93gvSI0YV3gMPPDBnzpwnnniCOHL16lW1Ws1ms6Ojo4lx3QihM2fOvPDCC19++eXwazOBSQVyKgAAXPfzzz//z//8z3/+85+bbjhTVFSUmpo61GYDYHKCnAoAADeQyWRTpkzpN4moH7zuHh8f715zBQByKgAAAOAZMO4XAAAA8AzIqQAAAIBnQE4FAAAAPANyKgAAAOAZkFMBAAAAz4CcCgAAAHgG5FQAAADAMyCnAgAAAJ4BORUAAADwDMipAAAAgGdATgUAAAA84/8BDE3QQOx4uUEAAAAASUVORK5CYII=",
"text/plain": [
""
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"plotmon.main_QtPlot"
]
},
{
"cell_type": "markdown",
"id": "b2e180c6",
"metadata": {},
"source": [
"## Manual analysis steps\n",
"\n",
"### Loading the data\n",
"\n",
"The {class}`~xarray.Dataset` contains all the information required to perform a basic analysis of the experiment.\n",
"We can alternatively load the dataset from disk based on its {class}`~quantify_core.data.types.TUID`, a timestamp-based unique identifier. If you do not know the tuid of the experiment you can find the latest tuid containing a certain string in the experiment name using {meth}`~quantify_core.data.handling.get_latest_tuid`.\n",
"See the {ref}`data-storage` documentation for more details on the folder structure and files contained in the data directory."
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "6210845e",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
"
],
"text/plain": [
" Size: 480B\n",
"Dimensions: (dim_0: 30)\n",
"Coordinates:\n",
" x0 (dim_0) float64 240B 0.0 0.06897 0.1379 0.2069 ... 1.862 1.931 2.0\n",
"Dimensions without coordinates: dim_0\n",
"Data variables:\n",
" y0 (dim_0) float64 240B 0.5003 0.4885 0.2989 ... 0.2915 0.379 0.5761\n",
"Attributes:\n",
" tuid: 20250723-134632-175-659fd8\n",
" name: Cosine experiment\n",
" grid_2d: False\n",
" grid_2d_uniformly_spaced: False\n",
" 1d_2_settables_uniformly_spaced: False"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"tuid = get_latest_tuid(contains=\"Cosine experiment\")\n",
"dataset = load_dataset(tuid)\n",
"dataset"
]
},
{
"cell_type": "markdown",
"id": "868ba095",
"metadata": {},
"source": [
"### Performing a fit\n",
"\n",
"We have a sinusoidal signal in the experiment dataset, the goal is to find the underlying parameters.\n",
"We extract these parameters by performing a fit to a model, a cosine function in this case.\n",
"For fitting we recommend using the lmfit library. See [the lmfit documentation](https://lmfit.github.io/lmfit-py/model.html) on how to fit data to a custom model."
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "e8f19380",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAkIAAAHHCAYAAABTMjf2AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8ekN5oAAAACXBIWXMAAA9hAAAPYQGoP6dpAACx00lEQVR4nOzdd3hT5/XA8e+VZMt74Q3GZoPZ00DYI0AGSZqErDZpmqRt0rTNaH8hHWmaNKuZTZM0zR4NzYAMSgKEGfbeYPYy3nsvSff3x7UEBm/LupJ1Ps/jB5CvpGPA8tH7nvccRVVVFSGEEEIIL2TQOwAhhBBCCL1IIiSEEEIIryWJkBBCCCG8liRCQgghhPBakggJIYQQwmtJIiSEEEIIryWJkBBCCCG8liRCQgghhPBakggJIYQQwmtJIiSEcClFUXj88cdbfb/Tp0+jKAoffPDBJZ+77777mDlzZvuD62DPP/88PXv2xGg0MmzYMF1jGTt2LP/3f/+nawxCuANJhITwUh988AGKoqAoChs2bLjk86qqkpCQgKIoXHXVVTpE2DKnTp3inXfe4Q9/+IPeoTTp+++/5//+7/+47LLLeP/993n66ad1jeeRRx7h9ddfJysrS9c4hNCbJEJCeDk/Pz8WLFhwye0//PAD586dw2w26xBVy/3jH/+gR48eTJ06Ve9QmrR69WoMBgPvvvsut99+O1dccYWu8VxzzTWEhITwxhtv6BqHEHqTREgIL3fFFVfwxRdfYLFY6t2+YMECRo4cSWxsrE6RNa+2tpZPPvmEefPm6R1Ks3JycvD398fX11fvUAAwGAzccMMNfPTRR8jsbeHNJBESwsvdcsst5Ofns2LFCsdtNTU1LFy4kFtvvfWS68vLy3n44YdJSEjAbDbTr18/XnjhhUt+mFZXV/Pggw8SFRVFcHAwc+fO5dy5cw3GkJ6ezs9+9jNiYmIwm80MHDiQ9957r9nYN2zYQF5eHjNmzLjkc1VVVTz++OP07dsXPz8/4uLi+NGPfsSJEyda/bWsWLGCCRMmEBYWRlBQEP369WvVVpyiKLz//vuUl5c7tiM/+OCDJuueLq6levzxx1EUhePHj/PTn/6UsLAwQkNDufPOO6moqLjk/v/5z38YM2YMAQEBhIeHM2nSJL7//vt618ycOZMzZ86wZ8+eFn8tQnQ2Jr0DEELoKykpiXHjxvHf//6XOXPmALB06VKKi4u5+eabefXVVx3XqqrK3LlzWbNmDXfddRfDhg1j+fLl/P73vyc9PZ2XX37Zce3dd9/Nf/7zH2699VbGjx/P6tWrufLKKy95/uzsbMaOHYuiKNx///1ERUWxdOlS7rrrLkpKSnjggQcajX3Tpk0oisLw4cPr3W61WrnqqqtYtWoVN998M7/97W8pLS1lxYoVHDhwgF69erX4azl48CBXXXUVQ4YM4YknnsBsNnP8+HE2btzY4r/jjz/+mLfeeott27bxzjvvADB+/PgW3/9C8+bNo0ePHjzzzDPs2rWLd955h+joaJ577jnHNX/96195/PHHGT9+PE888QS+vr5s3bqV1atXc/nllzuuGzlyJAAbN2685O9QCK+hCiG80vvvv68C6vbt29XXXntNDQ4OVisqKlRVVdUbb7xRnTp1qqqqqpqYmKheeeWVqqqq6tdff60C6t/+9rd6j3XDDTeoiqKox48fV1VVVffs2aMC6n333VfvultvvVUF1L/85S+O2+666y41Li5OzcvLq3ftzTffrIaGhjpiOnXqlAqo77//vuOaH//4x2qXLl0u+dree+89FVBfeumlSz5ns9la9bW8/PLLKqDm5uY28LfYcnfccYcaGBhY77aGvia7i/+e/vKXv6iA+rOf/azeddddd129v4Njx46pBoNBve6661Sr1VrvWvvXfiFfX1/13nvvbcNXJETnIFtjQgjmzZtHZWUlS5YsobS0lCVLljS4Lfbdd99hNBr5zW9+U+/2hx9+GFVVWbp0qeM64JLrLl7dUVWVRYsWcfXVV6OqKnl5eY6PWbNmUVxczK5duxqNOz8/n/Dw8EtuX7RoEZGRkfz617++5HOKorTqawkLCwPgm2++wWazNRqLq/zyl7+s9+eJEyeSn59PSUkJAF9//TU2m43HHnsMg6H+S7z9a79QeHg4eXl5HRewEG5OEiEhBFFRUcyYMYMFCxbw5ZdfYrVaueGGGy657syZM8THxxMcHFzv9gEDBjg+b//VYDDQq1evetf169ev3p9zc3MpKirirbfeIioqqt7HnXfeCWhFxk1RGyj0PXHiBP369cNkanz3v6Vfy0033cRll13G3XffTUxMDDfffDOff/65bklR9+7d6/3ZnggWFhYC2tduMBhITk5u0eOpqtpggiSEt5AaISEEALfeeiv33HMPWVlZzJkzx7ES0pHsycSPf/xj7rjjjgavGTJkSKP379KliyMB6Cj+/v6sW7eONWvW8O2337Js2TI+++wzpk2bxvfff4/RaGzzYzeWgFit1kbv09jzNZQQtkRRURGRkZFtuq8QnYGsCAkhALjuuuswGAxs2bKlwW0xgMTERDIyMigtLa13++HDhx2ft/9qs9nqndACOHLkSL0/20+UWa1WZsyY0eBHdHR0ozH379+fwsJCiouL693eq1cvjhw5Qm1tbaP3benXAtpR8+nTp/PSSy9x6NAhnnrqKVavXs2aNWsaffyWsK/mFBUV1bvdvhrVFr169cJms3Ho0KFmr01PT6empsaxCiaEN5JESAgBQFBQEP/61794/PHHufrqqxu85oorrsBqtfLaa6/Vu/3ll19GURTHqTP7rxeeOAN45ZVX6v3ZaDRy/fXXs2jRIg4cOHDJ8+Xm5jYZ87hx41BVlZ07d9a7/frrrycvL++SOOH8yklLv5aCgoJLHsM+HqO6urrJ+JoTEhJCZGQk69atq3d7e5ocXnvttRgMBp544olLtu8uXjWy/7219QSbEJ2BbI0JIRwa256yu/rqq5k6dSp//OMfOX36NEOHDuX777/nm2++4YEHHnDUBA0bNoxbbrmFN954g+LiYsaPH8+qVas4fvz4JY/57LPPsmbNGlJSUrjnnntITk6moKCAXbt2sXLlygYTEbsJEybQpUsXVq5cybRp0xy333777Xz00Uc89NBDbNu2jYkTJ1JeXs7KlSu57777uOaaa1r8tTzxxBOsW7eOK6+8ksTERHJycnjjjTfo1q0bEyZMaMtfcz133303zz77LHfffTejRo1i3bp1HD16tM2P17t3b/74xz/y5JNPMnHiRH70ox9hNpvZvn078fHxPPPMM45rV6xYQffu3eXovPBueh1XE0Lo68Lj80258Pi8qqpqaWmp+uCDD6rx8fGqj4+P2qdPH/X555+/5Gh2ZWWl+pvf/Ebt0qWLGhgYqF599dVqWlraJcfCVVVVs7Oz1V/96ldqQkKC6uPjo8bGxqrTp09X33rrLcc1jR01/81vfqP27t37krgrKirUP/7xj2qPHj0cj3nDDTeoJ06caNXXsmrVKvWaa65R4+PjVV9fXzU+Pl695ZZb1KNHjzb593axho7P2+O866671NDQUDU4OFidN2+e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",
"text/plain": [
"
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# create a fitting model based on a cosine function\n",
"fitting_model = lmfit.Model(cos_func)\n",
"\n",
"# specify initial guesses for each parameter\n",
"fitting_model.set_param_hint(\"amplitude\", value=0.5, min=0.1, max=2, vary=True)\n",
"fitting_model.set_param_hint(\"frequency\", value=0.8, vary=True)\n",
"fitting_model.set_param_hint(\"phase\", value=0)\n",
"fitting_model.set_param_hint(\"offset\", value=0)\n",
"params = fitting_model.make_params()\n",
"\n",
"# here we run the fit\n",
"fit_result = fitting_model.fit(dataset.y0.values, x=dataset.x0.values, params=params)\n",
"\n",
"# It is possible to get a quick visualization of our fit using a build-in method of lmfit\n",
"_ = fit_result.plot_fit(show_init=True)"
]
},
{
"cell_type": "markdown",
"id": "488679bd",
"metadata": {},
"source": [
"The summary of the fit result can be nicely printed in a Jupyter-like notebook:"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "e6f191c1",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
Fit Result
Model: Model(cos_func)
Fit Statistics
fitting method
leastsq
# function evals
36
# data points
30
# variables
4
chi-square
0.06068405
reduced chi-square
0.00233400
Akaike info crit.
-178.098153
Bayesian info crit.
-172.493364
R-squared
0.98456771
Parameters
name
value
standard error
relative error
initial value
min
max
vary
frequency
1.00827442
0.00785015
(0.78%)
0.8
-inf
inf
True
amplitude
0.49885154
0.01231697
(2.47%)
0.5
0.10000000
2.00000000
True
offset
0.00117736
0.00952589
(809.09%)
0.0
-inf
inf
True
phase
-0.04881250
0.05552150
(113.74%)
0.0
-inf
inf
True
Correlations (unreported values are < 0.100)
Parameter1
Parameter 2
Correlation
frequency
phase
-0.8880
frequency
offset
-0.3739
offset
phase
+0.3322
frequency
amplitude
-0.1054
"
],
"text/plain": [
""
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"fit_result"
]
},
{
"cell_type": "markdown",
"id": "3a6641e6",
"metadata": {},
"source": [
"### Analyzing the fit result and saving key quantities"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "4c8a7ea6",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'amplitude': 0.4988515406556373, 'frequency': 1.0082744211953827}"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"quantities_of_interest = {\n",
" \"amplitude\": fit_result.params[\"amplitude\"].value,\n",
" \"frequency\": fit_result.params[\"frequency\"].value,\n",
"}\n",
"quantities_of_interest"
]
},
{
"cell_type": "markdown",
"id": "54821380",
"metadata": {},
"source": [
"Now that we have the relevant quantities, we want to store them in the same\n",
"`experiment directory` where the raw dataset is stored.\n",
"\n",
"First, we determine the experiment directory on the file system."
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "2084197a",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"PosixPath('/root/quantify-data/20250723/20250723-134632-175-659fd8-Cosine experiment')"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# the experiment folder is retrieved with a convenience function\n",
"exp_folder = Path(locate_experiment_container(dataset.tuid))\n",
"exp_folder"
]
},
{
"cell_type": "markdown",
"id": "033c7543",
"metadata": {},
"source": [
"Then, we save the quantities of interest to disk in the human-readable JSON format."
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "57d7ca8f",
"metadata": {},
"outputs": [],
"source": [
"with open(exp_folder / \"quantities_of_interest.json\", \"w\", encoding=\"utf-8\") as file:\n",
" json.dump(quantities_of_interest, file)"
]
},
{
"cell_type": "markdown",
"id": "9054cdd5",
"metadata": {},
"source": [
"### Plotting and saving figures\n",
"\n",
"We would like to save a plot of our data and the fit in our lab logbook but the figure above is not fully satisfactory: there are no units and no reference to the original dataset.\n",
"\n",
"Below we create our own plot for full control over the appearance and we store it on disk in the same `experiment directory`.\n",
"For plotting, we use the ubiquitous matplotlib and some visualization utilities."
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "81af206d",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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3bt3Z+TIkc6fw8PD6dKli8t9CtHaSdGyEG4kMDAQgOLi4jodv3//fkwmEx07dnRpj4qKIjg4mP379wMwevRoLrvsMubMmcO//vUvxowZw7Rp07jmmmvqVHDbvn17l59DQkIAOHr0KIGBgezZswelFJ06darx9p6enrXe9+HDhykoKOCtt96qdeZZbm6u83svLy/eeecdBg4ciMVi4d1333VJKhxMJhOJiYkubZ07dwZwTs3es2cPhYWFREREnPFxQU946uPU5y0oKAiA2NjYau0n1+bUN65THwf0v9Gp9T5CtGaS8AjhRgIDA4mJiSE5Oblet6vpA//U67/88kvWrFnDd999x88//8xNN93E888/z5o1a/D39z/t7c1mc43tyl5oa7PZ0DSNn376qcZjT3f/NpsNgGuvvZYZM2bUeEyvXr1cfv75558BKCsrY8+ePfVORE5+7IiICD7++OMarw8PD3f52cfHp173X9vzVlO7Oqloub5xnenvI4SQhEcIt3PRRRfx1ltvsXr1aoYOHXraY+Pi4rDZbOzZs4du3bo523NycigoKCAuLs7l+CFDhjBkyBCefPJJPvnkE/70pz/x2Wefccstt5xTzB06dEApRUJCgrMXpa7Cw8MJCAjAarUyfvz4Mx6/detW5s6dy4033siWLVu45ZZb2LZtm7P3xMFms7Fv3z6XeHbv3g3gXIemQ4cO/PrrrwwfPrzeyUxjaoy4zpQUC9HSSQ2PEG7m/vvvx8/Pj1tuuYWcnJxq16empvLSSy8BcMEFFwDw4osvuhzzwgsvAHDhhRcC+tDTqWf7ffr0Aag2ff1sXHrppZjNZubMmVPtcZRSHDlypNbbms1mLrvsMr766qsae7YOHz7s/L6yspIbbriBmJgYXnrpJd577z1ycnL461//WuN9v/LKKy5xvPLKK3h6ejJu3DgArrjiCqxWK48//ni121ZVVVFQUHDa37uxNEZcfn5+AIb9TkIYTXp4hHAzHTp04JNPPuHKK6+kW7duListr1q1ii+++MK55kvv3r2ZMWMGb731FgUFBYwePZp169bx/vvvM23aNMaOHQvA+++/z2uvvcYll1xChw4dKC4uZv78+QQGBjqTpnON+YknnmDWrFmkp6czbdo0AgICSEtL45tvvuG2227jb3/7W623f/rpp/ntt98YPHgwt956K927dyc/P59Nmzbx66+/kp+fD8ATTzzBli1bWLx4MQEBAfTq1Yt//OMfPPLII0yfPt3ld7FYLCxcuJAZM2YwePBgfvrpJ3744Qceeugh55DQ6NGjmTlzJk899RRbtmxh4sSJeHp6smfPHr744gteeuklpk+ffs7PT301Rlx9+vTBbDYzb948CgsL8fb25rzzzqu1TkiIFseYyWFCiDPZvXu3uvXWW1V8fLzy8vJSAQEBavjw4erll19WZWVlzuMqKyvVnDlzVEJCgvL09FSxsbFq1qxZLsds2rRJXX311ap9+/bK29tbRUREqIsuukht2LDB5TGpZVq6Yxq3g2PadVpamkv7V199pUaMGKH8/PyUn5+f6tq1q7rzzjtd1sipTU5OjrrzzjtVbGys8vT0VFFRUWrcuHHqrbfeUkoptXHjRuXh4eEy1VwpfVr3wIEDVUxMjHO9nxkzZig/Pz+VmpqqJk6cqHx9fVVkZKSaPXu2slqt1R77rbfeUv3791c+Pj4qICBA9ezZU91///3q0KFDzmPi4uLUhRdeWGPstU1LP3UZgNqeT0e8DRnX6NGjXaa6K6XU/PnzVWJiojKbzTJFXbQ6mlJS1SaEaFluuOEGvvzyS0pKSowORQjhJqSGRwghhBAtniQ8QgghhGjxJOERQgghRIsnNTxCCCGEaPGkh0cIIYQQLZ4kPEIIIYRo8SThEc3We++9h6Zpzo0gTyc+Pt65WJ8QovlbuHAhffr0wWKxoGnaaVeQHjNmDGPGjGmy2IR7koRHGGLVqlU89thjzWKZ+507d3L//ffTp08fAgICiI6O5sILL2TDhg01Hn/w4EGuuOIKgoODCQwM5OKLL2bfvn0ux2RmZjJnzhwGDRpESEgIYWFhjBkzhl9//bXa/TkSu5ou2dnZ1Y5fsGAB/fr1w2Kx0L59e2bPnk1VVZXLMWPGjKn1Pk/e2fzIkSM8++yzjBo1ivDwcIKDgxkyZAiff/55tcfdvn07l19+OYmJifj6+hIWFsaoUaP47rvv6vQ8A/zyyy/cfPPNJCUlYTabnXtenerQoUNce+21dOnShYCAAIKDgxk0aBDvv//+GTfMnDBhApqmcdddd9V4fU5ODjNnzqRt27ZYLBbi4+O5+eabXY755ptvmDRpEjExMXh7e9OuXTumT59ebWuM+jx/tcnKyuLBBx9k7NixBAQEoGkav//+e7Xj0tPTa/2baprGrbfe6jz2999/r/W4NWvW1Dm24uJi7r//fhISEvD29qZt27ZMnz6d0tJS5zH1+f8tKSnh//7v/2jXrh3e3t5069aN119/vdrjHjlyhCuuuAIfHx9effVVPvzwQ+fWGXVVWFjI/fffT6dOnfDx8SEuLo6bb76ZjIyMet2PaD5kawlhiFWrVjFnzhxuuOEGgoODz+o+rrvuOq666iq8vb0bNrhT/Oc//+Htt9/msssu44477qCwsJA333yTIUOGsHDhQpcNL0tKShg7diyFhYU89NBDeHp68q9//YvRo0ezZcsWQkNDAfj222+ZN28e06ZNY8aMGVRVVfHBBx8wYcIE3nnnHW688cZqccydO7faruCnPnc//fQT06ZNY8yYMbz88sts27aNJ554gtzcXJcPjocffrjahqHHjh3jz3/+MxMnTnS2rV69mocffpgLLriARx55BA8PD7766iuuuuoqUlJSmDNnjvPY/fv3U1xczIwZM4iJiaG0tJSvvvqKqVOn8uabb3Lbbbed8bn+5JNP+Pzzz+nXrx8xMTG1HpeXl8eBAweYPn067du3p7KykkWLFnHDDTewa9cu/vnPf9Z4u6+//prVq1fXer+ZmZkMHz4cgD//+c+0bduWQ4cOsW7dOpfjtm3bRkhICPfccw9hYWFkZ2fzzjvvMGjQIFavXk3v3r3r/fzVZteuXcybN49OnTrRs2fPWuMPDw/nww8/rNa+cOFCPv74Y5e/q8Pdd9/NwIEDXdo6dux4xphATxhGjx7NgQMHuO222+jYsSOHDx9m+fLllJeX4+vr63L8mf5/rVYrkyZNYsOGDdx555106tSJn3/+mTvuuIOjR4/y0EMPOY9dv349xcXFPP7443XacPZUNpuNCRMmkJKSwh133EHnzp3Zu3cvr732Gj///DM7duwgICCg3vcr3Jyh6zyLVuvZZ5+tcWuCxnLq0v/1sWHDBlVcXOzSlpeXp8LDw9Xw4cNd2ufNm6cAtW7dOmfbjh07lNlsVrNmzXK2JScnV9teoKysTHXt2lW1a9fOpb22bQpq0r17d9W7d29VWVnpbHv44YeVpmlqx44dp73thx9+qAD18ccfO9v27dun0tPTXY6z2WzqvPPOU97e3qqkpOS091lVVaV69+6tunTpcsbYlVLq4MGDqqKiQiml1IUXXqji4uLqdDuHiy66SPn5+amqqqpq1x0/flzFx8eruXPnKkDdeeed1Y45//zzVUJCgsrLy6vX4yqlVHZ2tvLw8FAzZ850tp3r86eUUkVFRerIkSNKKaW++OKLem8JMW7cOBUYGKiOHz/ubPvtt98UoL744os638+pbr/9dhUcHKz27dt32uPq+v/73//+VwHq7bffdmm/7LLLlMViUTk5Oc62999/v86vCaWqb7OxcuVKBahXXnnF5bh33nlHAerrr7+u0/2K5kWGtESTe+yxx/j73/8OQEJCgrN7Oz093dkt/95771W7naZpPPbYY86fa6rhUUrxxBNP0K5dO3x9fRk7dizbt2+vMY7U1FRSU1PPGG///v3x9/d3aQsNDWXkyJHs2LHDpf3LL79k4MCBLmfNXbt2Zdy4cfz3v/91tvXo0YOwsDCX23p7e3PBBRdw4MABiouLa4yluLgYq9Va43UpKSmkpKRw22234eFxovP2jjvuQCnFl19+edrf85NPPsHPz4+LL77Y2ZaQkEBcXJzLcZqmMW3aNMrLy6sN1Z3KbDYTGxtb56HLmJgYlyG1+oqPj6e0tJSKiopq1z3zzDPYbLZaNzHduXMnP/30E3//+98JDQ2lrKyMysrKOj92REQEvr6+Lr/ruT5/AAEBAbRp06bOcZwsKyuL3377jUsvvRSLxVLjMcXFxdWGPM+koKCAd999l9tuu42EhAQqKiooLy8/4+1O9/+7fPlyAK666iqX9quuuoqysjK+/fZbQB+OnTFjBgADBw5E0zSX+ry33nqLDh064OPjw6BBg5z3e7KioiIAIiMjXdqjo6MB8PHxOePvIpofSXhEk7v00ku5+uqrAfjXv/7Fhx9+yIcffujcwfpc/OMf/+DRRx+ld+/ePPvssyQmJjJx4kSOHTtW7dhx48Yxbty4s36s7Oxsl6TFZrOxdetWBgwYUO3YQYMGkZqaWmsic/J9+vr6VhsOABg7diyBgYH4+voydepU9uzZ43L95s2bAao9fkxMDO3atXNeX5PDhw+zaNEipk2bVqdaCEftxalJG+hDY3l5eaSmpvKvf/2Ln3766Zye59M5fvw4eXl5pKen8/777/Puu+8ydOjQah9YGRkZPP3008ybN6/WDzNH/VRkZCTjxo3Dx8cHHx8fzj///FoL4wsKCjh8+DDbtm3jlltuoaioqE6/6+mev4b02WefYbPZ+NOf/lTj9TfeeCOBgYFYLBbGjh1ba13aqVasWEFZWRkdO3Zk+vTp+Pr64uPjw/Dhw9myZUuNtznT/295eTlmsxkvLy+XdsdrYePGjYA+HOsYHp07dy4ffvghM2fOBODtt99m5syZREVF8cwzzzB8+HCmTp1KZmamy30OGDAAPz8/Hn30UZYsWcLBgwdZunQp999/PwMHDjyrYTLRDBjdxSRap9qGtNLS0hSg3n333Wq34ZSdvE/dsTs3N1d5eXmpCy+8UNlsNudxDz30kAKqDWnFxcXVe8jEYdmyZUrTNPXoo4862w4fPqwANXfu3GrHv/rqqwpQO3furPU+9+zZoywWi7ruuutc2j///HN1ww03qPfff19988036pFHHlG+vr4qLCxMZWRkOI9zPKcntzkMHDhQDRkypNbHfvnllxWgfvzxx9P+3kopdeTIERUREaFGjhxZ4/UzZ85UgAKUyWRS06dPV/n5+We831PVZUjrqaeecj4WoMaNG1fj7z99+nQ1bNgw58/UMKR19913K0CFhoaqyZMnq88//1w9++yzyt/fX3Xo0EEdO3as2v126dLF+dj+/v7qkUceqXE39pOd6fk7nfoOafXv319FR0dXi2nlypXqsssuU2+//bb69ttv1VNPPaVCQ0OVxWJRmzZtOuP9vvDCC87natCgQerjjz9Wr732moqMjFQhISEuu7nX9f/3+eefV4Bavny5y2M9+OCDClAXXXSRs62mYbKKigoVERGh+vTpo8rLy53tb731lgKq7Rz//fffq+joaJf/n0mTJlUbvhYthyQ8whCNkfB88sknClALFy50uV1ubm6NCc/ZysnJUe3atVOJiYkub44ZGRkKUPPmzat2m7ffflsBavPmzTXe57Fjx1SfPn1USEiIOnjw4BljWL58udI0zaVexFGbcnKtg8PIkSNV7969a72/oUOHqvDwcJfan5pYrVY1efJk5eXlpbZs2VLjMTt27FCLFi1S77//vrrwwgvVJZdcorKzs8/4O52qLglPenq6WrRokfrkk0/UNddco8aNG6d27drlcsySJUuUpmkudVU1JTw33XSTAlSPHj1cEoRPP/1UAWr+/PnVHn/VqlVq4cKF6rXXXlMDBw5U9913n7MGqSZ1ef5Opz4Jz65duxSg/vrXv9bpvvfs2aN8fHzUpEmTznis438t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",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# create matplotlib figure\n",
"fig, ax = plt.subplots()\n",
"\n",
"# plot data\n",
"dataset.y0.plot.line(ax=ax, x=\"x0\", marker=\"o\", label=\"Data\")\n",
"\n",
"# plot fit\n",
"x_fit = np.linspace(dataset[\"x0\"][0].values, dataset[\"x0\"][-1].values, 1000)\n",
"y_fit = cos_func(x=x_fit, **fit_result.best_values)\n",
"ax.plot(x_fit, y_fit, label=\"Fit\")\n",
"ax.legend()\n",
"\n",
"# set units-aware tick labels\n",
"set_xlabel(dataset.x0.long_name, dataset.x0.units)\n",
"set_ylabel(dataset.y0.long_name, dataset.y0.units)\n",
"\n",
"# add a reference to the origal dataset in the figure title\n",
"fig.suptitle(f\"{dataset.attrs['name']}\\ntuid: {dataset.attrs['tuid']}\")\n",
"\n",
"# Save figure\n",
"fig.savefig(exp_folder / \"Cosine fit.png\", dpi=300, bbox_inches=\"tight\")"
]
},
{
"cell_type": "markdown",
"id": "ccfab7e1",
"metadata": {},
"source": [
"## Reusable fitting model and analysis steps\n",
"\n",
"The previous steps achieve our goal, however, the code above is not easily reusable and hard to maintain or debug.\n",
"We can do better than this! We can package our code in functions that perform specific tasks.\n",
"In addition, we will use the objected-oriented interface of `lmfit` to further structure our code.\n",
"We explore the details of the object-oriented approach later in this tutorial."
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "652768c7",
"metadata": {},
"outputs": [],
"source": [
"class MyCosineModel(lmfit.model.Model):\n",
" \"\"\"\n",
" `lmfit` model with a guess for a cosine fit.\n",
" \"\"\"\n",
"\n",
" def __init__(self, *args, **kwargs):\n",
" \"\"\"Configures the constraints of the model.\"\"\"\n",
" # pass in the model's equation\n",
" super().__init__(cos_func, *args, **kwargs)\n",
"\n",
" # configure constraints that are independent from the data to be fitted\n",
"\n",
" self.set_param_hint(\"frequency\", min=0, vary=True) # enforce positive frequency\n",
" self.set_param_hint(\"amplitude\", min=0, vary=True) # enforce positive amplitude\n",
" self.set_param_hint(\"offset\", vary=True)\n",
" self.set_param_hint(\n",
" \"phase\", vary=True, min=-np.pi, max=np.pi\n",
" ) # enforce phase range\n",
"\n",
" def guess(self, data, **kws) -> lmfit.parameter.Parameters:\n",
" \"\"\"Guess parameters based on the data.\"\"\"\n",
"\n",
" self.set_param_hint(\"offset\", value=np.average(data))\n",
" self.set_param_hint(\"amplitude\", value=(np.max(data) - np.min(data)) / 2)\n",
" # a simple educated guess based on experiment type\n",
" # a more elaborate but general approach is to use a Fourier transform\n",
" self.set_param_hint(\"frequency\", value=1.2)\n",
"\n",
" params_ = self.make_params()\n",
" return lmfit.models.update_param_vals(params_, self.prefix, **kws)"
]
},
{
"cell_type": "markdown",
"id": "47143c62",
"metadata": {},
"source": [
"Most of the code related to the fitting model is now packed in a single object, while the analysis steps are split into functions that take care of specific tasks."
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "d288a58c",
"metadata": {},
"outputs": [],
"source": [
"def extract_data(label: str) -> xr.Dataset:\n",
" \"\"\"Loads a dataset from its label.\"\"\"\n",
" tuid_ = get_latest_tuid(contains=label)\n",
" dataset_ = load_dataset(tuid_)\n",
" return dataset_\n",
"\n",
"\n",
"def run_fitting(dataset_: xr.Dataset) -> lmfit.model.ModelResult:\n",
" \"\"\"Executes fitting.\"\"\"\n",
" model = MyCosineModel() # create the fitting model\n",
" params_guess = model.guess(data=dataset_.y0.values)\n",
" result = model.fit(\n",
" data=dataset_.y0.values, x=dataset_.x0.values, params=params_guess\n",
" )\n",
" return result\n",
"\n",
"\n",
"def analyze_fit_results(fit_result_: lmfit.model.ModelResult) -> dict:\n",
" \"\"\"Analyzes the fit results and saves quantities of interest.\"\"\"\n",
" quantities = {\n",
" \"amplitude\": fit_result_.params[\"amplitude\"].value,\n",
" \"frequency\": fit_result_.params[\"frequency\"].value,\n",
" }\n",
" return quantities\n",
"\n",
"\n",
"def plot_fit(\n",
" fig_: matplotlib.figure.Figure,\n",
" ax_: matplotlib.axes.Axes,\n",
" dataset_: xr.Dataset,\n",
" fit_result_: lmfit.model.ModelResult,\n",
") -> Tuple[matplotlib.figure.Figure, matplotlib.axes.Axes]:\n",
" \"\"\"Plots a fit result.\"\"\"\n",
" dataset_.y0.plot.line(ax=ax_, x=\"x0\", marker=\"o\", label=\"Data\") # plot data\n",
"\n",
" x_fit_ = np.linspace(dataset_[\"x0\"][0].values, dataset_[\"x0\"][-1].values, 1000)\n",
" y_fit_ = cos_func(x=x_fit_, **fit_result_.best_values)\n",
" ax_.plot(x_fit, y_fit_, label=\"Fit\") # plot fit\n",
" ax_.legend()\n",
"\n",
" # set units-aware tick labels\n",
" set_xlabel(dataset_.x0.long_name, dataset_.x0.units, ax_)\n",
" set_ylabel(dataset_.y0.long_name, dataset_.y0.units, ax_)\n",
"\n",
" # add a reference to the original dataset_ in the figure title\n",
" fig_.suptitle(f\"{dataset_.attrs['name']}\\ntuid: {dataset_.attrs['tuid']}\")\n",
"\n",
"\n",
"def save_quantities_of_interest(tuid_: str, quantities_of_interest_: dict) -> None:\n",
" \"\"\"Saves the quantities of interest to disk in JSON format.\"\"\"\n",
" exp_folder_ = Path(locate_experiment_container(tuid_))\n",
" # Save fit results\n",
" with open(exp_folder_ / \"quantities_of_interest.json\", \"w\", encoding=\"utf-8\") as f_:\n",
" json.dump(quantities_of_interest_, f_)\n",
"\n",
"\n",
"def save_mpl_figure(tuid_: str, fig_: matplotlib.figure.Figure) -> None:\n",
" \"\"\"Saves a matplotlib figure as PNG.\"\"\"\n",
" exp_folder_ = Path(locate_experiment_container(tuid_))\n",
" fig_.savefig(exp_folder_ / \"Cosine fit.png\", dpi=300, bbox_inches=\"tight\")\n",
" plt.close(fig_)"
]
},
{
"cell_type": "markdown",
"id": "c9d139bd",
"metadata": {},
"source": [
"Now the execution of the entire analysis becomes much more readable and clean:"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "358959d4",
"metadata": {},
"outputs": [],
"source": [
"dataset = extract_data(label=\"Cosine experiment\")\n",
"fit_result = run_fitting(dataset)\n",
"quantities_of_interest = analyze_fit_results(fit_result)\n",
"save_quantities_of_interest(dataset.tuid, quantities_of_interest)\n",
"fig, ax = plt.subplots()\n",
"plot_fit(fig_=fig, ax_=ax, dataset_=dataset, fit_result_=fit_result)\n",
"save_mpl_figure(dataset.tuid, fig)"
]
},
{
"cell_type": "markdown",
"id": "31482522",
"metadata": {},
"source": [
"If we inspect the experiment directory, we will find a structure that looks like the following:\n",
"\n",
"```{code-block}\n",
"20230125-172712-018-87b9bf-Cosine experiment/\n",
"├── Cosine fit.png\n",
"├── dataset.hdf5\n",
"├── quantities_of_interest.json\n",
"└── snapshot.json\n",
"```\n",
"\n",
"## Creating a simple analysis class\n",
"\n",
"Even though we have improved code structure greatly, in order to execute the same analysis against some other dataset we would have to copy-paste a significant portion of code (the analysis steps).\n",
"\n",
"We tackle this by taking advantage of the Object Oriented Programming (OOP) in python.\n",
"We will create a python class that serves as a structured container for data (attributes) and the methods (functions) that act on the information.\n",
"\n",
"Some of the advantages of OOP are:\n",
"\n",
"- the same class can be instantiated multiple times to act on different data while reusing the same methods;\n",
"- all the methods have access to all the data (attributes) associated with a particular instance of the class;\n",
"- subclasses can inherit from other classes and extend their functionalities.\n",
"\n",
"Let's now observe what such a class could look like.\n",
"\n",
"```{warning}\n",
"This analysis class is intended for educational purposes only.\n",
"It is not intended to be used as a template!\n",
"See the end of the tutorial for the recommended usage of the analysis framework.\n",
"```"
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "da4a3264",
"metadata": {},
"outputs": [],
"source": [
"class MyCosineAnalysis:\n",
" \"\"\"Analysis as a class.\"\"\"\n",
"\n",
" def __init__(self, label: str):\n",
" \"\"\"This is a special method that python calls when an instance of this class is\n",
" created.\"\"\"\n",
"\n",
" self.label = label\n",
"\n",
" # objects to be filled up later when running the analysis\n",
" self.tuid = None\n",
" self.dataset = None\n",
" self.fit_results = {}\n",
" self.quantities_of_interest = {}\n",
" self.figs_mpl = {}\n",
" self.axs_mpl = {}\n",
"\n",
" # with just slight modification our functions become methods\n",
" # with the advantage that we have access to all the necessary information from self\n",
" def run(self):\n",
" \"\"\"Execute the analysis steps.\"\"\"\n",
" self.extract_data()\n",
" self.run_fitting()\n",
" self.analyze_fit_results()\n",
" self.create_figures()\n",
" self.save_quantities_of_interest()\n",
" self.save_figures()\n",
"\n",
" def extract_data(self):\n",
" \"\"\"Load data from disk.\"\"\"\n",
" self.tuid = get_latest_tuid(contains=self.label)\n",
" self.dataset = load_dataset(tuid)\n",
"\n",
" def run_fitting(self):\n",
" \"\"\"Fits the model to the data.\"\"\"\n",
" model = MyCosineModel()\n",
" guess = model.guess(self.dataset.y0.values)\n",
" result = model.fit(\n",
" self.dataset.y0.values, x=self.dataset.x0.values, params=guess\n",
" )\n",
" self.fit_results.update({\"cosine\": result})\n",
"\n",
" def analyze_fit_results(self):\n",
" \"\"\"Analyzes the fit results and saves quantities of interest.\"\"\"\n",
" self.quantities_of_interest.update(\n",
" {\n",
" \"amplitude\": self.fit_results[\"cosine\"].params[\"amplitude\"].value,\n",
" \"frequency\": self.fit_results[\"cosine\"].params[\"frequency\"].value,\n",
" }\n",
" )\n",
"\n",
" def save_quantities_of_interest(self):\n",
" \"\"\"Save quantities of interest to disk.\"\"\"\n",
" exp_folder_ = Path(locate_experiment_container(self.tuid))\n",
" with open(\n",
" exp_folder_ / \"quantities_of_interest.json\", \"w\", encoding=\"utf-8\"\n",
" ) as file_:\n",
" json.dump(self.quantities_of_interest, file_)\n",
"\n",
" def plot_fit(self, fig_: matplotlib.figure.Figure, ax_: matplotlib.axes.Axes):\n",
" \"\"\"Plot the fit result.\"\"\"\n",
"\n",
" self.dataset.y0.plot.line(ax=ax_, x=\"x0\", marker=\"o\", label=\"Data\") # plot data\n",
"\n",
" x_fit_ = np.linspace(\n",
" self.dataset[\"x0\"][0].values, self.dataset[\"x0\"][-1].values, 1000\n",
" )\n",
" y_fit_ = cos_func(x=x_fit_, **self.fit_results[\"cosine\"].best_values)\n",
" ax_.plot(x_fit_, y_fit_, label=\"Fit\") # plot fit\n",
" ax_.legend()\n",
"\n",
" # set units-aware tick labels\n",
" set_xlabel(self.dataset.x0.long_name, self.dataset.x0.attrs[\"units\"], ax_)\n",
" set_ylabel(self.dataset.y0.long_name, self.dataset.y0.attrs[\"units\"], ax_)\n",
"\n",
" # add a reference to the original dataset in the figure title\n",
" fig_.suptitle(f\"{dataset.attrs['name']}\\ntuid: {dataset.attrs['tuid']}\")\n",
"\n",
" def create_figures(self):\n",
" \"\"\"Create figures.\"\"\"\n",
" fig_, ax_ = plt.subplots()\n",
" self.plot_fit(fig_, ax_)\n",
"\n",
" fig_id = \"cos-data-and-fit\"\n",
" self.figs_mpl.update({fig_id: fig_})\n",
" # keep a reference to `ax` as well\n",
" # it can be accessed later to apply modifications (e.g., in a notebook)\n",
" self.axs_mpl.update({fig_id: ax_})\n",
"\n",
" def save_figures(self):\n",
" \"\"\"Save figures to disk.\"\"\"\n",
" exp_folder_ = Path(locate_experiment_container(self.tuid))\n",
" for fig_name, fig_ in self.figs_mpl.items():\n",
" fig_.savefig(exp_folder_ / f\"{fig_name}.png\", dpi=300, bbox_inches=\"tight\")\n",
" plt.close(fig_)"
]
},
{
"cell_type": "markdown",
"id": "b56c4016",
"metadata": {},
"source": [
"Running the analysis is now as simple as:"
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "ba6ee364",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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3bt3Z+TIkc6fw8PD6dKli8t9CtHaSdGyEG4kMDAQgOLi4jodv3//fkwmEx07dnRpj4qKIjg4mP379wMwevRoLrvsMubMmcO//vUvxowZw7Rp07jmmmvqVHDbvn17l59DQkIAOHr0KIGBgezZswelFJ06darx9p6enrXe9+HDhykoKOCtt96qdeZZbm6u83svLy/eeecdBg4ciMVi4d1333VJKhxMJhOJiYkubZ07dwZwTs3es2cPhYWFREREnPFxQU946uPU5y0oKAiA2NjYau0n1+bUN65THwf0v9Gp9T5CtGaS8AjhRgIDA4mJiSE5Oblet6vpA//U67/88kvWrFnDd999x88//8xNN93E888/z5o1a/D39z/t7c1mc43tyl5oa7PZ0DSNn376qcZjT3f/NpsNgGuvvZYZM2bUeEyvXr1cfv75558BKCsrY8+ePfVORE5+7IiICD7++OMarw8PD3f52cfHp173X9vzVlO7Oqloub5xnenvI4SQhEcIt3PRRRfx1ltvsXr1aoYOHXraY+Pi4rDZbOzZs4du3bo523NycigoKCAuLs7l+CFDhjBkyBCefPJJPvnkE/70pz/x2Wefccstt5xTzB06dEApRUJCgrMXpa7Cw8MJCAjAarUyfvz4Mx6/detW5s6dy4033siWLVu45ZZb2LZtm7P3xMFms7Fv3z6XeHbv3g3gXIemQ4cO/PrrrwwfPrzeyUxjaoy4zpQUC9HSSQ2PEG7m/vvvx8/Pj1tuuYWcnJxq16empvLSSy8BcMEFFwDw4osvuhzzwgsvAHDhhRcC+tDTqWf7ffr0Aag2ff1sXHrppZjNZubMmVPtcZRSHDlypNbbms1mLrvsMr766qsae7YOHz7s/L6yspIbbriBmJgYXnrpJd577z1ycnL461//WuN9v/LKKy5xvPLKK3h6ejJu3DgArrjiCqxWK48//ni121ZVVVFQUHDa37uxNEZcfn5+AIb9TkIYTXp4hHAzHTp04JNPPuHKK6+kW7duListr1q1ii+++MK55kvv3r2ZMWMGb731FgUFBYwePZp169bx/vvvM23aNMaOHQvA+++/z2uvvcYll1xChw4dKC4uZv78+QQGBjqTpnON+YknnmDWrFmkp6czbdo0AgICSEtL45tvvuG2227jb3/7W623f/rpp/ntt98YPHgwt956K927dyc/P59Nmzbx66+/kp+fD8ATTzzBli1bWLx4MQEBAfTq1Yt//OMfPPLII0yfPt3ld7FYLCxcuJAZM2YwePBgfvrpJ3744Qceeugh55DQ6NGjmTlzJk899RRbtmxh4sSJeHp6smfPHr744gteeuklpk+ffs7PT301Rlx9+vTBbDYzb948CgsL8fb25rzzzqu1TkiIFseYyWFCiDPZvXu3uvXWW1V8fLzy8vJSAQEBavjw4erll19WZWVlzuMqKyvVnDlzVEJCgvL09FSxsbFq1qxZLsds2rRJXX311ap9+/bK29tbRUREqIsuukht2LDB5TGpZVq6Yxq3g2PadVpamkv7V199pUaMGKH8/PyUn5+f6tq1q7rzzjtd1sipTU5OjrrzzjtVbGys8vT0VFFRUWrcuHHqrbfeUkoptXHjRuXh4eEy1VwpfVr3wIEDVUxMjHO9nxkzZig/Pz+VmpqqJk6cqHx9fVVkZKSaPXu2slqt1R77rbfeUv3791c+Pj4qICBA9ezZU91///3q0KFDzmPi4uLUhRdeWGPstU1LP3UZgNqeT0e8DRnX6NGjXaa6K6XU/PnzVWJiojKbzTJFXbQ6mlJS1SaEaFluuOEGvvzyS0pKSowORQjhJqSGRwghhBAtniQ8QgghhGjxJOERQgghRIsnNTxCCCGEaPGkh0cIIYQQLZ4kPEIIIYRo8SThEc3We++9h6Zpzo0gTyc+Pt65WJ8QovlbuHAhffr0wWKxoGnaaVeQHjNmDGPGjGmy2IR7koRHGGLVqlU89thjzWKZ+507d3L//ffTp08fAgICiI6O5sILL2TDhg01Hn/w4EGuuOIKgoODCQwM5OKLL2bfvn0ux2RmZjJnzhwGDRpESEgIYWFhjBkzhl9//bXa/TkSu5ou2dnZ1Y5fsGAB/fr1w2Kx0L59e2bPnk1VVZXLMWPGjKn1Pk/e2fzIkSM8++yzjBo1ivDwcIKDgxkyZAiff/55tcfdvn07l19+OYmJifj6+hIWFsaoUaP47rvv6vQ8A/zyyy/cfPPNJCUlYTabnXtenerQoUNce+21dOnShYCAAIKDgxk0aBDvv//+GTfMnDBhApqmcdddd9V4fU5ODjNnzqRt27ZYLBbi4+O5+eabXY755ptvmDRpEjExMXh7e9OuXTumT59ebWuM+jx/tcnKyuLBBx9k7NixBAQEoGkav//+e7Xj0tPTa/2baprGrbfe6jz2999/r/W4NWvW1Dm24uJi7r//fhISEvD29qZt27ZMnz6d0tJS5zH1+f8tKSnh//7v/2jXrh3e3t5069aN119/vdrjHjlyhCuuuAIfHx9effVVPvzwQ+fWGXVVWFjI/fffT6dOnfDx8SEuLo6bb76ZjIyMet2PaD5kawlhiFWrVjFnzhxuuOEGgoODz+o+rrvuOq666iq8vb0bNrhT/Oc//+Htt9/msssu44477qCwsJA333yTIUOGsHDhQpcNL0tKShg7diyFhYU89NBDeHp68q9//YvRo0ezZcsWQkNDAfj222+ZN28e06ZNY8aMGVRVVfHBBx8wYcIE3nnnHW688cZqccydO7faruCnPnc//fQT06ZNY8yYMbz88sts27aNJ554gtzcXJcPjocffrjahqHHjh3jz3/+MxMnTnS2rV69mocffpgLLriARx55BA8PD7766iuuuuoqUlJSmDNnjvPY/fv3U1xczIwZM4iJiaG0tJSvvvqKqVOn8uabb3Lbbbed8bn+5JNP+Pzzz+nXrx8xMTG1HpeXl8eBAweYPn067du3p7KykkWLFnHDDTewa9cu/vnPf9Z4u6+//prVq1fXer+ZmZkMHz4cgD//+c+0bduWQ4cOsW7dOpfjtm3bRkhICPfccw9hYWFkZ2fzzjvvMGjQIFavXk3v3r3r/fzVZteuXcybN49OnTrRs2fPWuMPDw/nww8/rNa+cOFCPv74Y5e/q8Pdd9/NwIEDXdo6dux4xphATxhGjx7NgQMHuO222+jYsSOHDx9m+fLllJeX4+vr63L8mf5/rVYrkyZNYsOGDdx555106tSJn3/+mTvuuIOjR4/y0EMPOY9dv349xcXFPP7443XacPZUNpuNCRMmkJKSwh133EHnzp3Zu3cvr732Gj///DM7duwgICCg3vcr3Jyh6zyLVuvZZ5+tcWuCxnLq0v/1sWHDBlVcXOzSlpeXp8LDw9Xw4cNd2ufNm6cAtW7dOmfbjh07lNlsVrNmzXK2JScnV9teoKysTHXt2lW1a9fOpb22bQpq0r17d9W7d29VWVnpbHv44YeVpmlqx44dp73thx9+qAD18ccfO9v27dun0tPTXY6z2WzqvPPOU97e3qqkpOS091lVVaV69+6tunTpcsbYlVLq4MGDqqKiQiml1IUXXqji4uLqdDuHiy66SPn5+amqqqpq1x0/flzFx8eruXPnKkDdeeed1Y45//zzVUJCgsrLy6vX4yqlVHZ2tvLw8FAzZ850tp3r86eUUkVFRerIkSNKKaW++OKLem8JMW7cOBUYGKiOHz/ubPvtt98UoL744os638+pbr/9dhUcHKz27dt32uPq+v/73//+VwHq7bffdmm/7LLLlMViUTk5Oc62999/v86vCaWqb7OxcuVKBahXXnnF5bh33nlHAerrr7+u0/2K5kWGtESTe+yxx/j73/8OQEJCgrN7Oz093dkt/95771W7naZpPPbYY86fa6rhUUrxxBNP0K5dO3x9fRk7dizbt2+vMY7U1FRSU1PPGG///v3x9/d3aQsNDWXkyJHs2LHDpf3LL79k4MCBLmfNXbt2Zdy4cfz3v/91tvXo0YOwsDCX23p7e3PBBRdw4MABiouLa4yluLgYq9Va43UpKSmkpKRw22234eFxovP2jjvuQCnFl19+edrf85NPPsHPz4+LL77Y2ZaQkEBcXJzLcZqmMW3aNMrLy6sN1Z3KbDYTGxtb56HLmJgYlyG1+oqPj6e0tJSKiopq1z3zzDPYbLZaNzHduXMnP/30E3//+98JDQ2lrKyMysrKOj92REQEvr6+Lr/ruT5/AAEBAbRp06bOcZwsKyuL3377jUsvvRSLxVLjMcXFxdWGPM+koKCAd999l9tuu42EhAQqKiooLy8/4+1O9/+7fPlyAK666iqX9quuuoqysjK+/fZbQB+OnTFjBgADBw5E0zSX+ry33nqLDh064OPjw6BBg5z3e7KioiIAIiMjXdqjo6MB8PHxOePvIpofSXhEk7v00ku5+uqrAfjXv/7Fhx9+yIcffujcwfpc/OMf/+DRRx+ld+/ePPvssyQmJjJx4kSOHTtW7dhx48Yxbty4s36s7Oxsl6TFZrOxdetWBgwYUO3YQYMGkZqaWmsic/J9+vr6VhsOABg7diyBgYH4+voydepU9uzZ43L95s2bAao9fkxMDO3atXNeX5PDhw+zaNEipk2bVqdaCEftxalJG+hDY3l5eaSmpvKvf/2Ln3766Zye59M5fvw4eXl5pKen8/777/Puu+8ydOjQah9YGRkZPP3008ybN6/WDzNH/VRkZCTjxo3Dx8cHHx8fzj///FoL4wsKCjh8+DDbtm3jlltuoaioqE6/6+mev4b02WefYbPZ+NOf/lTj9TfeeCOBgYFYLBbGjh1ba13aqVasWEFZWRkdO3Zk+vTp+Pr64uPjw/Dhw9myZUuNtznT/295eTlmsxkvLy+XdsdrYePGjYA+HOsYHp07dy4ffvghM2fOBODtt99m5syZREVF8cwzzzB8+HCmTp1KZmamy30OGDAAPz8/Hn30UZYsWcLBgwdZunQp999/PwMHDjyrYTLRDBjdxSRap9qGtNLS0hSg3n333Wq34ZSdvE/dsTs3N1d5eXmpCy+8UNlsNudxDz30kAKqDWnFxcXVe8jEYdmyZUrTNPXoo4862w4fPqwANXfu3GrHv/rqqwpQO3furPU+9+zZoywWi7ruuutc2j///HN1ww03qPfff19988036pFHHlG+vr4qLCxMZWRkOI9zPKcntzkMHDhQDRkypNbHfvnllxWgfvzxx9P+3kopdeTIERUREaFGjhxZ4/UzZ85UgAKUyWRS06dPV/n5+We831PVZUjrqaeecj4WoMaNG1fj7z99+nQ1bNgw58/UMKR19913K0CFhoaqyZMnq88//1w9++yzyt/fX3Xo0EEdO3as2v126dLF+dj+/v7qkUceqXE39pOd6fk7nfoOafXv319FR0dXi2nlypXqsssuU2+//bb69ttv1VNPPaVCQ0OVxWJRmzZtOuP9vvDCC87natCgQerjjz9Wr732moqMjFQhISEuu7nX9f/3+eefV4Bavny5y2M9+OCDClAXXXSRs62mYbKKigoVERGh+vTpo8rLy53tb731lgKq7Rz//fffq+joaJf/n0mTJlUbvhYthyQ8whCNkfB88sknClALFy50uV1ubm6NCc/ZysnJUe3atVOJiYkub44ZGRkKUPPmzat2m7ffflsBavPmzTXe57Fjx1SfPn1USEiIOnjw4BljWL58udI0zaVexFGbcnKtg8PIkSNV7969a72/oUOHqvDwcJfan5pYrVY1efJk5eXlpbZs2VLjMTt27FCLFi1S77//vrrwwgvVJZdcorKzs8/4O52qLglPenq6WrRokfrkk0/UNddco8aNG6d27drlcsySJUuUpmkudVU1JTw33XSTAlSPHj1cEoRPP/1UAWr+/PnVHn/VqlVq4cKF6rXXXlMDBw5U9913n7MGqSZ1ef5Opz4Jz65duxSg/vrXv9bpvvfs2aN8fHzUpEmTznis438t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",
"text/plain": [
""
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"a_obj = MyCosineAnalysis(label=\"Cosine experiment\")\n",
"a_obj.run()\n",
"a_obj.figs_mpl[\"cos-data-and-fit\"]"
]
},
{
"cell_type": "markdown",
"id": "6b1d19bb",
"metadata": {},
"source": [
"The first line will instantiate the class by calling the {code}`.__init__()` method.\n",
"\n",
"As expected this will save similar files into the `experiment directory`:\n",
"\n",
"```{code-block}\n",
"20230125-172712-018-87b9bf-Cosine experiment/\n",
"├── cos-data-and-fit.png\n",
"├── Cosine fit.png\n",
"├── dataset.hdf5\n",
"├── quantities_of_interest.json\n",
"└── snapshot.json\n",
"```\n",
"\n",
"## Extending the BaseAnalysis\n",
"\n",
"While the above stand-alone class provides the gist of an analysis, we can do even better by defining a structured framework that all analyses need to adhere to and factoring out the pieces of code that are common to most analyses.\n",
"Besides that, the overall functionality can be improved.\n",
"\n",
"Here is where the {class}`~quantify_core.analysis.base_analysis.BaseAnalysis` enters the scene.\n",
"It allows us to focus only on the particular aspect of our custom analysis by implementing only the relevant methods. Take a look at how the above class is implemented where we are making use of the analysis framework. For completeness, a fully documented {class}`~quantify_core.analysis.fitting_models.CosineModel` which can serve as a template is shown as well."
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "0909e0d6",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
classCosineModel(lmfit.model.Model):\n",
""""\n",
" Exemplary lmfit model with a guess for a cosine.\n",
"\n",
" .. note::\n",
"\n",
" The :mod:`lmfit.models` module provides several fitting models that might fit\n",
" your needs out of the box.\n",
" """\n",
"\n",
" def__init__(self,*args,**kwargs):\n",
" # pass in the model's equation\n",
" super().__init__(cos_func,*args,**kwargs)\n",
"\n",
" # configure constraints that are independent from the data to be fitted\n",
" self.set_param_hint("frequency",min=0,vary=True)# enforce positive frequency\n",
" self.set_param_hint("amplitude",min=0,vary=True)# enforce positive amplitude\n",
" self.set_param_hint("offset",vary=True)\n",
" self.set_param_hint(\n",
" "phase",vary=True,min=-np.pi,max=np.pi\n",
" )# enforce phase range\n",
"\n",
" # pylint: disable=missing-function-docstring\n",
" defguess(self,data,x,**kws)->lmfit.parameter.Parameters:\n",
""""\n",
" Guess parameters based on the data\n",
"\n",
" Parameters\n",
" ----------\n",
" data: np.ndarray\n",
" Data to fit to\n",
" x: np.ndarray\n",
" Independet variable\n",
" """\n",
"\n",
" self.set_param_hint("offset",value=np.average(data))\n",
" self.set_param_hint("amplitude",value=(np.max(data)-np.min(data))/2)\n",
"\n",
" # Guess frequency and phase using Fourier Transform\n",
" freq_guess,phase_guess=fft_freq_phase_guess(data,x)\n",
" phase_wrap=(phase_guess+np.pi)%(2*np.pi)-np.pi\n",
" self.set_param_hint("frequency",value=freq_guess)\n",
" self.set_param_hint("phase",value=phase_wrap)\n",
"\n",
" params=self.make_params()\n",
" returnlmfit.models.update_param_vals(params,self.prefix,**kws)\n",
"\n",
" # Same design patter is used in lmfit.models to inherit common docstrings.\n",
" # We adjust these common docstrings to our docs build pipeline\n",
" __init__.__doc__=get_model_common_doc()+mk_seealso("cos_func")\n",
" guess.__doc__=get_guess_common_doc()\n",
"
\n"
],
"text/latex": [
"\\begin{Verbatim}[commandchars=\\\\\\{\\}]\n",
"\\PY{k}{class}\\PY{+w}{ }\\PY{n+nc}{CosineModel}\\PY{p}{(}\\PY{n}{lmfit}\\PY{o}{.}\\PY{n}{model}\\PY{o}{.}\\PY{n}{Model}\\PY{p}{)}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{l+s+sd}{\\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
"\\PY{l+s+sd}{ Exemplary lmfit model with a guess for a cosine.}\n",
"\n",
"\\PY{l+s+sd}{ .. note::}\n",
"\n",
"\\PY{l+s+sd}{ The :mod:`lmfit.models` module provides several fitting models that might fit}\n",
"\\PY{l+s+sd}{ your needs out of the box.}\n",
"\\PY{l+s+sd}{ \\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
"\n",
" \\PY{k}{def}\\PY{+w}{ }\\PY{n+nf+fm}{\\PYZus{}\\PYZus{}init\\PYZus{}\\PYZus{}}\\PY{p}{(}\\PY{n+nb+bp}{self}\\PY{p}{,} \\PY{o}{*}\\PY{n}{args}\\PY{p}{,} \\PY{o}{*}\\PY{o}{*}\\PY{n}{kwargs}\\PY{p}{)}\\PY{p}{:}\n",
" \\PY{c+c1}{\\PYZsh{} pass in the model\\PYZsq{}s equation}\n",
" \\PY{n+nb}{super}\\PY{p}{(}\\PY{p}{)}\\PY{o}{.}\\PY{n+nf+fm}{\\PYZus{}\\PYZus{}init\\PYZus{}\\PYZus{}}\\PY{p}{(}\\PY{n}{cos\\PYZus{}func}\\PY{p}{,} \\PY{o}{*}\\PY{n}{args}\\PY{p}{,} \\PY{o}{*}\\PY{o}{*}\\PY{n}{kwargs}\\PY{p}{)}\n",
"\n",
" \\PY{c+c1}{\\PYZsh{} configure constraints that are independent from the data to be fitted}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{set\\PYZus{}param\\PYZus{}hint}\\PY{p}{(}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{frequency}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n+nb}{min}\\PY{o}{=}\\PY{l+m+mi}{0}\\PY{p}{,} \\PY{n}{vary}\\PY{o}{=}\\PY{k+kc}{True}\\PY{p}{)} \\PY{c+c1}{\\PYZsh{} enforce positive frequency}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{set\\PYZus{}param\\PYZus{}hint}\\PY{p}{(}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{amplitude}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n+nb}{min}\\PY{o}{=}\\PY{l+m+mi}{0}\\PY{p}{,} \\PY{n}{vary}\\PY{o}{=}\\PY{k+kc}{True}\\PY{p}{)} \\PY{c+c1}{\\PYZsh{} enforce positive amplitude}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{set\\PYZus{}param\\PYZus{}hint}\\PY{p}{(}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{offset}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{vary}\\PY{o}{=}\\PY{k+kc}{True}\\PY{p}{)}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{set\\PYZus{}param\\PYZus{}hint}\\PY{p}{(}\n",
" \\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{phase}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{vary}\\PY{o}{=}\\PY{k+kc}{True}\\PY{p}{,} \\PY{n+nb}{min}\\PY{o}{=}\\PY{o}{\\PYZhy{}}\\PY{n}{np}\\PY{o}{.}\\PY{n}{pi}\\PY{p}{,} \\PY{n+nb}{max}\\PY{o}{=}\\PY{n}{np}\\PY{o}{.}\\PY{n}{pi}\n",
" \\PY{p}{)} \\PY{c+c1}{\\PYZsh{} enforce phase range}\n",
"\n",
" \\PY{c+c1}{\\PYZsh{} pylint: disable=missing\\PYZhy{}function\\PYZhy{}docstring}\n",
" \\PY{k}{def}\\PY{+w}{ }\\PY{n+nf}{guess}\\PY{p}{(}\\PY{n+nb+bp}{self}\\PY{p}{,} \\PY{n}{data}\\PY{p}{,} \\PY{n}{x}\\PY{p}{,} \\PY{o}{*}\\PY{o}{*}\\PY{n}{kws}\\PY{p}{)} \\PY{o}{\\PYZhy{}}\\PY{o}{\\PYZgt{}} \\PY{n}{lmfit}\\PY{o}{.}\\PY{n}{parameter}\\PY{o}{.}\\PY{n}{Parameters}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{l+s+sd}{\\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
"\\PY{l+s+sd}{ Guess parameters based on the data}\n",
"\n",
"\\PY{l+s+sd}{ Parameters}\n",
"\\PY{l+s+sd}{ \\PYZhy{}\\PYZhy{}\\PYZhy{}\\PYZhy{}\\PYZhy{}\\PYZhy{}\\PYZhy{}\\PYZhy{}\\PYZhy{}\\PYZhy{}}\n",
"\\PY{l+s+sd}{ data: np.ndarray}\n",
"\\PY{l+s+sd}{ Data to fit to}\n",
"\\PY{l+s+sd}{ x: np.ndarray}\n",
"\\PY{l+s+sd}{ Independet variable}\n",
"\\PY{l+s+sd}{ \\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
"\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{set\\PYZus{}param\\PYZus{}hint}\\PY{p}{(}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{offset}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{value}\\PY{o}{=}\\PY{n}{np}\\PY{o}{.}\\PY{n}{average}\\PY{p}{(}\\PY{n}{data}\\PY{p}{)}\\PY{p}{)}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{set\\PYZus{}param\\PYZus{}hint}\\PY{p}{(}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{amplitude}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{value}\\PY{o}{=}\\PY{p}{(}\\PY{n}{np}\\PY{o}{.}\\PY{n}{max}\\PY{p}{(}\\PY{n}{data}\\PY{p}{)} \\PY{o}{\\PYZhy{}} \\PY{n}{np}\\PY{o}{.}\\PY{n}{min}\\PY{p}{(}\\PY{n}{data}\\PY{p}{)}\\PY{p}{)} \\PY{o}{/} \\PY{l+m+mi}{2}\\PY{p}{)}\n",
"\n",
" \\PY{c+c1}{\\PYZsh{} Guess frequency and phase using Fourier Transform}\n",
" \\PY{n}{freq\\PYZus{}guess}\\PY{p}{,} \\PY{n}{phase\\PYZus{}guess} \\PY{o}{=} \\PY{n}{fft\\PYZus{}freq\\PYZus{}phase\\PYZus{}guess}\\PY{p}{(}\\PY{n}{data}\\PY{p}{,} \\PY{n}{x}\\PY{p}{)}\n",
" \\PY{n}{phase\\PYZus{}wrap} \\PY{o}{=} \\PY{p}{(}\\PY{n}{phase\\PYZus{}guess} \\PY{o}{+} \\PY{n}{np}\\PY{o}{.}\\PY{n}{pi}\\PY{p}{)} \\PY{o}{\\PYZpc{}} \\PY{p}{(}\\PY{l+m+mi}{2} \\PY{o}{*} \\PY{n}{np}\\PY{o}{.}\\PY{n}{pi}\\PY{p}{)} \\PY{o}{\\PYZhy{}} \\PY{n}{np}\\PY{o}{.}\\PY{n}{pi}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{set\\PYZus{}param\\PYZus{}hint}\\PY{p}{(}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{frequency}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{value}\\PY{o}{=}\\PY{n}{freq\\PYZus{}guess}\\PY{p}{)}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{set\\PYZus{}param\\PYZus{}hint}\\PY{p}{(}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{phase}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{value}\\PY{o}{=}\\PY{n}{phase\\PYZus{}wrap}\\PY{p}{)}\n",
"\n",
" \\PY{n}{params} \\PY{o}{=} \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{make\\PYZus{}params}\\PY{p}{(}\\PY{p}{)}\n",
" \\PY{k}{return} \\PY{n}{lmfit}\\PY{o}{.}\\PY{n}{models}\\PY{o}{.}\\PY{n}{update\\PYZus{}param\\PYZus{}vals}\\PY{p}{(}\\PY{n}{params}\\PY{p}{,} \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{prefix}\\PY{p}{,} \\PY{o}{*}\\PY{o}{*}\\PY{n}{kws}\\PY{p}{)}\n",
"\n",
" \\PY{c+c1}{\\PYZsh{} Same design patter is used in lmfit.models to inherit common docstrings.}\n",
" \\PY{c+c1}{\\PYZsh{} We adjust these common docstrings to our docs build pipeline}\n",
" \\PY{n+nf+fm}{\\PYZus{}\\PYZus{}init\\PYZus{}\\PYZus{}}\\PY{o}{.}\\PY{n+nv+vm}{\\PYZus{}\\PYZus{}doc\\PYZus{}\\PYZus{}} \\PY{o}{=} \\PY{n}{get\\PYZus{}model\\PYZus{}common\\PYZus{}doc}\\PY{p}{(}\\PY{p}{)} \\PY{o}{+} \\PY{n}{mk\\PYZus{}seealso}\\PY{p}{(}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{cos\\PYZus{}func}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{)}\n",
" \\PY{n}{guess}\\PY{o}{.}\\PY{n+nv+vm}{\\PYZus{}\\PYZus{}doc\\PYZus{}\\PYZus{}} \\PY{o}{=} \\PY{n}{get\\PYZus{}guess\\PYZus{}common\\PYZus{}doc}\\PY{p}{(}\\PY{p}{)}\n",
"\\end{Verbatim}\n"
],
"text/plain": [
"class CosineModel(lmfit.model.Model):\n",
" \"\"\"\n",
" Exemplary lmfit model with a guess for a cosine.\n",
"\n",
" .. note::\n",
"\n",
" The :mod:`lmfit.models` module provides several fitting models that might fit\n",
" your needs out of the box.\n",
" \"\"\"\n",
"\n",
" def __init__(self, *args, **kwargs):\n",
" # pass in the model's equation\n",
" super().__init__(cos_func, *args, **kwargs)\n",
"\n",
" # configure constraints that are independent from the data to be fitted\n",
" self.set_param_hint(\"frequency\", min=0, vary=True) # enforce positive frequency\n",
" self.set_param_hint(\"amplitude\", min=0, vary=True) # enforce positive amplitude\n",
" self.set_param_hint(\"offset\", vary=True)\n",
" self.set_param_hint(\n",
" \"phase\", vary=True, min=-np.pi, max=np.pi\n",
" ) # enforce phase range\n",
"\n",
" # pylint: disable=missing-function-docstring\n",
" def guess(self, data, x, **kws) -> lmfit.parameter.Parameters:\n",
" \"\"\"\n",
" Guess parameters based on the data\n",
"\n",
" Parameters\n",
" ----------\n",
" data: np.ndarray\n",
" Data to fit to\n",
" x: np.ndarray\n",
" Independet variable\n",
" \"\"\"\n",
"\n",
" self.set_param_hint(\"offset\", value=np.average(data))\n",
" self.set_param_hint(\"amplitude\", value=(np.max(data) - np.min(data)) / 2)\n",
"\n",
" # Guess frequency and phase using Fourier Transform\n",
" freq_guess, phase_guess = fft_freq_phase_guess(data, x)\n",
" phase_wrap = (phase_guess + np.pi) % (2 * np.pi) - np.pi\n",
" self.set_param_hint(\"frequency\", value=freq_guess)\n",
" self.set_param_hint(\"phase\", value=phase_wrap)\n",
"\n",
" params = self.make_params()\n",
" return lmfit.models.update_param_vals(params, self.prefix, **kws)\n",
"\n",
" # Same design patter is used in lmfit.models to inherit common docstrings.\n",
" # We adjust these common docstrings to our docs build pipeline\n",
" __init__.__doc__ = get_model_common_doc() + mk_seealso(\"cos_func\")\n",
" guess.__doc__ = get_guess_common_doc()"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"
classCosineAnalysis(ba.BaseAnalysis):\n",
""""\n",
" Exemplary analysis subclass that fits a cosine to a dataset.\n",
" """\n",
"\n",
" defprocess_data(self):\n",
""""\n",
" In some cases, you might need to process the data, e.g., reshape, filter etc.,\n",
" before starting the analysis. This is the method where it should be done.\n",
"\n",
" See :meth:`~quantify_core.analysis.spectroscopy_analysis.ResonatorSpectroscopyAnalysis.process_data`\n",
" for an implementation example.\n",
" """# pylint: disable=line-too-long\n",
"\n",
" defrun_fitting(self):\n",
""""\n",
" Fits a :class:`~quantify_core.analysis.fitting_models.CosineModel` to the data.\n",
" """\n",
" # create a fitting model based on a cosine function\n",
" model=CosineModel()\n",
" guess=model.guess(self.dataset.y0.values,x=self.dataset.x0.values)\n",
" result=model.fit(\n",
" self.dataset.y0.values,x=self.dataset.x0.values,params=guess\n",
" )\n",
" self.fit_results.update({"cosine":result})\n",
"\n",
" defcreate_figures(self):\n",
""""\n",
" Creates a figure with the data and the fit.\n",
" """\n",
" fig,ax=plt.subplots()\n",
" fig_id="cos_fit"\n",
" self.figs_mpl.update({fig_id:fig})\n",
" self.axs_mpl.update({fig_id:ax})\n",
"\n",
" self.dataset.y0.plot(ax=ax,x="x0",marker="o",linestyle="")\n",
" qpl.plot_fit(ax,self.fit_results["cosine"])\n",
" qpl.plot_textbox(ax,ba.wrap_text(self.quantities_of_interest["fit_msg"]))\n",
"\n",
" adjust_axeslabels_SI(ax)\n",
" qpl.set_suptitle_from_dataset(fig,self.dataset,"x0-y0")\n",
" ax.legend()\n",
"\n",
" defanalyze_fit_results(self):\n",
""""\n",
" Checks fit success and populates :code:`quantities_of_interest`.\n",
" """\n",
" fit_result=self.fit_results["cosine"]\n",
" fit_warning=ba.check_lmfit(fit_result)\n",
"\n",
" # If there is a problem with the fit, display an error message in the text box.\n",
" # Otherwise, display the parameters as normal.\n",
" iffit_warningisNone:\n",
" self.quantities_of_interest["fit_success"]=True\n",
" unit=self.dataset.y0.units\n",
" text_msg="Summary\\n"\n",
" text_msg+=format_value_string(\n",
" r"$f$",fit_result.params["frequency"],end_char="\\n",unit="Hz"\n",
" )\n",
" text_msg+=format_value_string(\n",
" r"$A$",fit_result.params["amplitude"],unit=unit\n",
" )\n",
" else:\n",
" text_msg=fit_warning\n",
" self.quantities_of_interest["fit_success"]=False\n",
"\n",
" # save values and fit uncertainty\n",
" forparameter_namein["frequency","amplitude"]:\n",
" self.quantities_of_interest[parameter_name]=ba.lmfit_par_to_ufloat(\n",
" fit_result.params[parameter_name]\n",
" )\n",
" self.quantities_of_interest["fit_msg"]=text_msg\n",
"
\n"
],
"text/latex": [
"\\begin{Verbatim}[commandchars=\\\\\\{\\}]\n",
"\\PY{k}{class}\\PY{+w}{ }\\PY{n+nc}{CosineAnalysis}\\PY{p}{(}\\PY{n}{ba}\\PY{o}{.}\\PY{n}{BaseAnalysis}\\PY{p}{)}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{l+s+sd}{\\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
"\\PY{l+s+sd}{ Exemplary analysis subclass that fits a cosine to a dataset.}\n",
"\\PY{l+s+sd}{ \\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
"\n",
" \\PY{k}{def}\\PY{+w}{ }\\PY{n+nf}{process\\PYZus{}data}\\PY{p}{(}\\PY{n+nb+bp}{self}\\PY{p}{)}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{l+s+sd}{\\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
"\\PY{l+s+sd}{ In some cases, you might need to process the data, e.g., reshape, filter etc.,}\n",
"\\PY{l+s+sd}{ before starting the analysis. This is the method where it should be done.}\n",
"\n",
"\\PY{l+s+sd}{ See :meth:`\\PYZti{}quantify\\PYZus{}core.analysis.spectroscopy\\PYZus{}analysis.ResonatorSpectroscopyAnalysis.process\\PYZus{}data`}\n",
"\\PY{l+s+sd}{ for an implementation example.}\n",
"\\PY{l+s+sd}{ \\PYZdq{}\\PYZdq{}\\PYZdq{}} \\PY{c+c1}{\\PYZsh{} pylint: disable=line\\PYZhy{}too\\PYZhy{}long}\n",
"\n",
" \\PY{k}{def}\\PY{+w}{ }\\PY{n+nf}{run\\PYZus{}fitting}\\PY{p}{(}\\PY{n+nb+bp}{self}\\PY{p}{)}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{l+s+sd}{\\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
"\\PY{l+s+sd}{ Fits a :class:`\\PYZti{}quantify\\PYZus{}core.analysis.fitting\\PYZus{}models.CosineModel` to the data.}\n",
"\\PY{l+s+sd}{ \\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
" \\PY{c+c1}{\\PYZsh{} create a fitting model based on a cosine function}\n",
" \\PY{n}{model} \\PY{o}{=} \\PY{n}{CosineModel}\\PY{p}{(}\\PY{p}{)}\n",
" \\PY{n}{guess} \\PY{o}{=} \\PY{n}{model}\\PY{o}{.}\\PY{n}{guess}\\PY{p}{(}\\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{dataset}\\PY{o}{.}\\PY{n}{y0}\\PY{o}{.}\\PY{n}{values}\\PY{p}{,} \\PY{n}{x}\\PY{o}{=}\\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{dataset}\\PY{o}{.}\\PY{n}{x0}\\PY{o}{.}\\PY{n}{values}\\PY{p}{)}\n",
" \\PY{n}{result} \\PY{o}{=} \\PY{n}{model}\\PY{o}{.}\\PY{n}{fit}\\PY{p}{(}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{dataset}\\PY{o}{.}\\PY{n}{y0}\\PY{o}{.}\\PY{n}{values}\\PY{p}{,} \\PY{n}{x}\\PY{o}{=}\\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{dataset}\\PY{o}{.}\\PY{n}{x0}\\PY{o}{.}\\PY{n}{values}\\PY{p}{,} \\PY{n}{params}\\PY{o}{=}\\PY{n}{guess}\n",
" \\PY{p}{)}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{fit\\PYZus{}results}\\PY{o}{.}\\PY{n}{update}\\PY{p}{(}\\PY{p}{\\PYZob{}}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{cosine}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{:} \\PY{n}{result}\\PY{p}{\\PYZcb{}}\\PY{p}{)}\n",
"\n",
" \\PY{k}{def}\\PY{+w}{ }\\PY{n+nf}{create\\PYZus{}figures}\\PY{p}{(}\\PY{n+nb+bp}{self}\\PY{p}{)}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{l+s+sd}{\\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
"\\PY{l+s+sd}{ Creates a figure with the data and the fit.}\n",
"\\PY{l+s+sd}{ \\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
" \\PY{n}{fig}\\PY{p}{,} \\PY{n}{ax} \\PY{o}{=} \\PY{n}{plt}\\PY{o}{.}\\PY{n}{subplots}\\PY{p}{(}\\PY{p}{)}\n",
" \\PY{n}{fig\\PYZus{}id} \\PY{o}{=} \\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{cos\\PYZus{}fit}\\PY{l+s+s2}{\\PYZdq{}}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{figs\\PYZus{}mpl}\\PY{o}{.}\\PY{n}{update}\\PY{p}{(}\\PY{p}{\\PYZob{}}\\PY{n}{fig\\PYZus{}id}\\PY{p}{:} \\PY{n}{fig}\\PY{p}{\\PYZcb{}}\\PY{p}{)}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{axs\\PYZus{}mpl}\\PY{o}{.}\\PY{n}{update}\\PY{p}{(}\\PY{p}{\\PYZob{}}\\PY{n}{fig\\PYZus{}id}\\PY{p}{:} \\PY{n}{ax}\\PY{p}{\\PYZcb{}}\\PY{p}{)}\n",
"\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{dataset}\\PY{o}{.}\\PY{n}{y0}\\PY{o}{.}\\PY{n}{plot}\\PY{p}{(}\\PY{n}{ax}\\PY{o}{=}\\PY{n}{ax}\\PY{p}{,} \\PY{n}{x}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{x0}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{marker}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{o}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{linestyle}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{)}\n",
" \\PY{n}{qpl}\\PY{o}{.}\\PY{n}{plot\\PYZus{}fit}\\PY{p}{(}\\PY{n}{ax}\\PY{p}{,} \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{fit\\PYZus{}results}\\PY{p}{[}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{cosine}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{]}\\PY{p}{)}\n",
" \\PY{n}{qpl}\\PY{o}{.}\\PY{n}{plot\\PYZus{}textbox}\\PY{p}{(}\\PY{n}{ax}\\PY{p}{,} \\PY{n}{ba}\\PY{o}{.}\\PY{n}{wrap\\PYZus{}text}\\PY{p}{(}\\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{quantities\\PYZus{}of\\PYZus{}interest}\\PY{p}{[}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{fit\\PYZus{}msg}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{]}\\PY{p}{)}\\PY{p}{)}\n",
"\n",
" \\PY{n}{adjust\\PYZus{}axeslabels\\PYZus{}SI}\\PY{p}{(}\\PY{n}{ax}\\PY{p}{)}\n",
" \\PY{n}{qpl}\\PY{o}{.}\\PY{n}{set\\PYZus{}suptitle\\PYZus{}from\\PYZus{}dataset}\\PY{p}{(}\\PY{n}{fig}\\PY{p}{,} \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{dataset}\\PY{p}{,} \\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{x0\\PYZhy{}y0}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{)}\n",
" \\PY{n}{ax}\\PY{o}{.}\\PY{n}{legend}\\PY{p}{(}\\PY{p}{)}\n",
"\n",
" \\PY{k}{def}\\PY{+w}{ }\\PY{n+nf}{analyze\\PYZus{}fit\\PYZus{}results}\\PY{p}{(}\\PY{n+nb+bp}{self}\\PY{p}{)}\\PY{p}{:}\n",
"\\PY{+w}{ }\\PY{l+s+sd}{\\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
"\\PY{l+s+sd}{ Checks fit success and populates :code:`quantities\\PYZus{}of\\PYZus{}interest`.}\n",
"\\PY{l+s+sd}{ \\PYZdq{}\\PYZdq{}\\PYZdq{}}\n",
" \\PY{n}{fit\\PYZus{}result} \\PY{o}{=} \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{fit\\PYZus{}results}\\PY{p}{[}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{cosine}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{]}\n",
" \\PY{n}{fit\\PYZus{}warning} \\PY{o}{=} \\PY{n}{ba}\\PY{o}{.}\\PY{n}{check\\PYZus{}lmfit}\\PY{p}{(}\\PY{n}{fit\\PYZus{}result}\\PY{p}{)}\n",
"\n",
" \\PY{c+c1}{\\PYZsh{} If there is a problem with the fit, display an error message in the text box.}\n",
" \\PY{c+c1}{\\PYZsh{} Otherwise, display the parameters as normal.}\n",
" \\PY{k}{if} \\PY{n}{fit\\PYZus{}warning} \\PY{o+ow}{is} \\PY{k+kc}{None}\\PY{p}{:}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{quantities\\PYZus{}of\\PYZus{}interest}\\PY{p}{[}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{fit\\PYZus{}success}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{]} \\PY{o}{=} \\PY{k+kc}{True}\n",
" \\PY{n}{unit} \\PY{o}{=} \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{dataset}\\PY{o}{.}\\PY{n}{y0}\\PY{o}{.}\\PY{n}{units}\n",
" \\PY{n}{text\\PYZus{}msg} \\PY{o}{=} \\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{Summary}\\PY{l+s+se}{\\PYZbs{}n}\\PY{l+s+s2}{\\PYZdq{}}\n",
" \\PY{n}{text\\PYZus{}msg} \\PY{o}{+}\\PY{o}{=} \\PY{n}{format\\PYZus{}value\\PYZus{}string}\\PY{p}{(}\n",
" \\PY{l+s+sa}{r}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{\\PYZdl{}f\\PYZdl{}}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{fit\\PYZus{}result}\\PY{o}{.}\\PY{n}{params}\\PY{p}{[}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{frequency}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{]}\\PY{p}{,} \\PY{n}{end\\PYZus{}char}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+se}{\\PYZbs{}n}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{unit}\\PY{o}{=}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{Hz}\\PY{l+s+s2}{\\PYZdq{}}\n",
" \\PY{p}{)}\n",
" \\PY{n}{text\\PYZus{}msg} \\PY{o}{+}\\PY{o}{=} \\PY{n}{format\\PYZus{}value\\PYZus{}string}\\PY{p}{(}\n",
" \\PY{l+s+sa}{r}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{\\PYZdl{}A\\PYZdl{}}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{n}{fit\\PYZus{}result}\\PY{o}{.}\\PY{n}{params}\\PY{p}{[}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{amplitude}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{]}\\PY{p}{,} \\PY{n}{unit}\\PY{o}{=}\\PY{n}{unit}\n",
" \\PY{p}{)}\n",
" \\PY{k}{else}\\PY{p}{:}\n",
" \\PY{n}{text\\PYZus{}msg} \\PY{o}{=} \\PY{n}{fit\\PYZus{}warning}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{quantities\\PYZus{}of\\PYZus{}interest}\\PY{p}{[}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{fit\\PYZus{}success}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{]} \\PY{o}{=} \\PY{k+kc}{False}\n",
"\n",
" \\PY{c+c1}{\\PYZsh{} save values and fit uncertainty}\n",
" \\PY{k}{for} \\PY{n}{parameter\\PYZus{}name} \\PY{o+ow}{in} \\PY{p}{[}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{frequency}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{,} \\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{amplitude}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{]}\\PY{p}{:}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{quantities\\PYZus{}of\\PYZus{}interest}\\PY{p}{[}\\PY{n}{parameter\\PYZus{}name}\\PY{p}{]} \\PY{o}{=} \\PY{n}{ba}\\PY{o}{.}\\PY{n}{lmfit\\PYZus{}par\\PYZus{}to\\PYZus{}ufloat}\\PY{p}{(}\n",
" \\PY{n}{fit\\PYZus{}result}\\PY{o}{.}\\PY{n}{params}\\PY{p}{[}\\PY{n}{parameter\\PYZus{}name}\\PY{p}{]}\n",
" \\PY{p}{)}\n",
" \\PY{n+nb+bp}{self}\\PY{o}{.}\\PY{n}{quantities\\PYZus{}of\\PYZus{}interest}\\PY{p}{[}\\PY{l+s+s2}{\\PYZdq{}}\\PY{l+s+s2}{fit\\PYZus{}msg}\\PY{l+s+s2}{\\PYZdq{}}\\PY{p}{]} \\PY{o}{=} \\PY{n}{text\\PYZus{}msg}\n",
"\\end{Verbatim}\n"
],
"text/plain": [
"class CosineAnalysis(ba.BaseAnalysis):\n",
" \"\"\"\n",
" Exemplary analysis subclass that fits a cosine to a dataset.\n",
" \"\"\"\n",
"\n",
" def process_data(self):\n",
" \"\"\"\n",
" In some cases, you might need to process the data, e.g., reshape, filter etc.,\n",
" before starting the analysis. This is the method where it should be done.\n",
"\n",
" See :meth:`~quantify_core.analysis.spectroscopy_analysis.ResonatorSpectroscopyAnalysis.process_data`\n",
" for an implementation example.\n",
" \"\"\" # pylint: disable=line-too-long\n",
"\n",
" def run_fitting(self):\n",
" \"\"\"\n",
" Fits a :class:`~quantify_core.analysis.fitting_models.CosineModel` to the data.\n",
" \"\"\"\n",
" # create a fitting model based on a cosine function\n",
" model = CosineModel()\n",
" guess = model.guess(self.dataset.y0.values, x=self.dataset.x0.values)\n",
" result = model.fit(\n",
" self.dataset.y0.values, x=self.dataset.x0.values, params=guess\n",
" )\n",
" self.fit_results.update({\"cosine\": result})\n",
"\n",
" def create_figures(self):\n",
" \"\"\"\n",
" Creates a figure with the data and the fit.\n",
" \"\"\"\n",
" fig, ax = plt.subplots()\n",
" fig_id = \"cos_fit\"\n",
" self.figs_mpl.update({fig_id: fig})\n",
" self.axs_mpl.update({fig_id: ax})\n",
"\n",
" self.dataset.y0.plot(ax=ax, x=\"x0\", marker=\"o\", linestyle=\"\")\n",
" qpl.plot_fit(ax, self.fit_results[\"cosine\"])\n",
" qpl.plot_textbox(ax, ba.wrap_text(self.quantities_of_interest[\"fit_msg\"]))\n",
"\n",
" adjust_axeslabels_SI(ax)\n",
" qpl.set_suptitle_from_dataset(fig, self.dataset, \"x0-y0\")\n",
" ax.legend()\n",
"\n",
" def analyze_fit_results(self):\n",
" \"\"\"\n",
" Checks fit success and populates :code:`quantities_of_interest`.\n",
" \"\"\"\n",
" fit_result = self.fit_results[\"cosine\"]\n",
" fit_warning = ba.check_lmfit(fit_result)\n",
"\n",
" # If there is a problem with the fit, display an error message in the text box.\n",
" # Otherwise, display the parameters as normal.\n",
" if fit_warning is None:\n",
" self.quantities_of_interest[\"fit_success\"] = True\n",
" unit = self.dataset.y0.units\n",
" text_msg = \"Summary\\n\"\n",
" text_msg += format_value_string(\n",
" r\"$f$\", fit_result.params[\"frequency\"], end_char=\"\\n\", unit=\"Hz\"\n",
" )\n",
" text_msg += format_value_string(\n",
" r\"$A$\", fit_result.params[\"amplitude\"], unit=unit\n",
" )\n",
" else:\n",
" text_msg = fit_warning\n",
" self.quantities_of_interest[\"fit_success\"] = False\n",
"\n",
" # save values and fit uncertainty\n",
" for parameter_name in [\"frequency\", \"amplitude\"]:\n",
" self.quantities_of_interest[parameter_name] = ba.lmfit_par_to_ufloat(\n",
" fit_result.params[parameter_name]\n",
" )\n",
" self.quantities_of_interest[\"fit_msg\"] = text_msg"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"display_source_code(CosineModel)\n",
"display_source_code(CosineAnalysis)"
]
},
{
"cell_type": "markdown",
"id": "4c1eee01",
"metadata": {},
"source": [
"Now we can simply execute it against our latest experiment as follows:"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "c030ad1e",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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REQEAJ999hn79+9vg+iUUgDDhw9n9OjRR2yLCw1waV9X23mCuLi4Kj8/v6oFCxYMKSoqamotlWY988wzpz766KOfv/fee2/k5eWFzZo165LXX3/9xJdeeul///znP/+TkpIy4K677kp23mfFihWjIyMjyz7//PPXZs6cue6FF144d9q0ab8aN25c+uLFi18ZNWrU7oceeuhCR1JfU1Mj8fHxRS+99NIHy5Yt++dvf/vb5W+//fZpc+bMGeZ83O3btyelpaXFvPvuu+/Mmzfvv/fdd9/GnJycmHfffbeHo82CBQsSsrKy4u+8885Nx/K6lWs8rqxFKdW9ZWVlsXnzZk477TR8fNruV9SUKVPIyspix44dvP/++9x8880EBHSexEApT1FeXs5nn33GGWecQXh4eINtkpOiSAwPILuwosG6cwESwq1pFTuLgIAA25/+9KePH3vssVnR0dEn9O7dO2vkyJF7r7vuupRZs2bVX5+lSffdd98SR436Rx99tHHevHmnrVix4rnJkyfnA/znP//Ztn79+iSsSS8A6NmzZ/b8+fO/AzjppJNWLFiwYHJYWFjZ3LlzNwDExsYuHzFixAmLFy+Ov+qqqzKCgoJsH3zwwTLH/ieddFLBDz/80PvTTz8d9vDDD291bPfz86v+6quvPnEuZxk6dOju1157bcxll12WCfDyyy+PGThwYJojPtW+tOdcKeUxqqur+fDDD1mzZg1Lly5t02OLCOeffz6RkZEUFRXx5ZdftunxleouPvvsM7Zu3coHH3zQ6ExI3l7CnJlDgXrTUDh9PWfm0E41GBTgoYce2p6ZmfmPp59+en5ycvKun376qd8FF1xw4z333DO6Jcc57bTT6pL5uLi4El9f32rnxDc6OrqkqKgo2HmfpKSkun38/PxMUFBQ2eDBg+u2DR06tAQgIyOjbr+bb755fO/evW8IDg6+19/f/49Lly4dl5ube8QVVc+ePQ/UrzO//PLLf1y1atXwgoICn5KSEu+VK1eOuPDCC7UmsINocq6U8hjLli0jLy+P0NBQJk+e3ObHDwgI4Pzzzwdg06ZN7Nixo83PoVRX9vPPP7N161ZEhLPPPrvJmZBmDE/kpavGkhB+5B2qhPAAXrpqrCfOc+6SiIiImltvvXXPu++++11qauobJ5100qY33njjVG9vbwMcccFSXl7eYJ4VGBhYN7GFiODt7W1zfl5EMMYcOb2ej89RbZy3eXlZp7LZbALw0EMPDX/99dfPnDlz5sZ///vf//7qq69ePvnkkzfW1NQcUZITEBBw1Lzud999904fH5/ap556asgzzzwzuLa21uu+++7b1tx7o9qGlrUopTxCZmZm3Vzm55xzDoGBgc3s0Tp9+vRh4sSJrF69ms8++4wBAwa0afmMUl1VRUUFn332GQCTJk2iR48ezexhJehnDE3oLCuEtsrAgQMP/vjjj0MGDhxYCpCamhqKfeHEr776KqHJndvRmjVrevfv3z/9xRdf/MGxLSsry6U6ooCAANvUqVM3/e9//xvj4+NTO3HixJSoqKia9otWOdO/SEopt3PMlWyMYdiwYRx33HHter5p06aRl5fHxIkTNTFXykVLly6lpKSE6OhoTj31VJf38/aSTjVdYmN27doVePbZZ//qoosu2jhx4sQD0dHRlV9//XWPDz744KRx48b9HBUVVdO3b9+Ml156afLw4cPz9+3bF/zUU09Nc1e8SUlJeStWrBg1d+7cASNGjCj45z//OTItLa1HdHR0gSv733nnnRtOP/303wO88847b7RrsOoI+ldJKeV2mzdvJisrCz8/P2bMmNHu5/Px8eGyyy5r9/Mo1VXk5uayfv16AM4+++xueVEbFxdXdfzxx2fMmzfvxGeffTaqtrbWKyIioujMM8/88bXXXlsB8Morryy86aabzps5c+aNsbGxuQ888MDXt91229XuiPepp55av23btoQHHnjgEsBMmjQpZfr06T+sX79+ULM7A1OnTs1LSkpKLykpCbzyyit1iqsOJLqsNYhIGFBYWFhIWFhYmx+/tLSU4ODg5hsq1Q0ZY3jhhRfIy8vjtNNOa5da8+ZUVFTozC1KNWHhwoVs2rSJwYMHc/nll7s7nDpFRUWOGWPCjTFFx3IsERk8adKkvyxYsCAtPj6+qm0i7LxsNhtxcXG3zZo164c333xztbvj6aouvvjiYf/73/9eMMYsd2zrfpe+HaiiooKFCxeSmprKbbfdRlBQl1hATKk2JSJcffXVrFq1ihNPPLHDz798+XJWrlzJVVddRZ8+fTr8/Ep1BmeffTaRkZEMHTrU3aGoDrBjx46gp59+enhxcXHIn//8Z52lpYPpbC3tyN/fn/z8fCorK1m1apW7w1HKY0VERLjtVnlRURHV1dV8++23jU4Lp1R35+vry5QpU4iJiXF3KKoDDBky5N558+adcs899yzq169f51nGtYvQ5LwdiQjTplljQdauXUtJSYmbI1LKs5SXl7s7BE455RS8vb3Zt28fu3fvdnc4SnmUkpISvWjthowxD5eWlj756KOPbnF3LN2RJuftbNCgQfTs2ZOamhq+//57d4ejlMcoKytj7ty5fPDBB1RWVrotjrCwMJKTrVWylyxZoomIUnbGGObPn8/LL79Mdna2u8NRqtvQ5LydOfeer1+/XnvPlbJbs2YNlZWV5OXl4efn59ZYJk+ejK+vL1lZWezZs8etsSjlKXbt2kVmZib5+fmEhoa6Oxylug1NzjtAUlISvXr1ora2lrVr17o7HKXcrry8vO6zcMoppzS5ymBHCAoKYuzYsQB6h0sprF7z5cutySPGjx+vM44p1YE0Oe8AIsKkSZMA2L59u942V93e+vXrqaqqIi4urt0XHHLVxIkT8fLyYu/eveTn57s7HKXcat++fezfvx8fH5+6v1/qsBtvvDE5MjLyDm9v7z+fc845Z7o7HtW1aHLeQY477jjOO+88brzxRrf3EirlTrW1tfzwg7Wa9KRJkzzm8xAeHs55553HbbfdRmRkpLvDUcqt1qxZA8DIkSO117yejz/+OP7111+f/qc//emzjRs3Pv32228vbar966+/3nfkyJGXh4WF3S0ic/72t78NcfVcN9988/ioqKg7fH19/9S3b9/fzp8/v2dL2lRVVclFF100NSoq6nZfX98Ho6Ojb7vsssum2Gy2uv1vueWWE3r06HFzQEDAHwICAv7Qr1+/3zz99NMDXY3xWGJv69cLEBUVdYeIzKn/OP30088GyMrK8psxY8aMyMjIO3x9fR9MSkr6zbvvvtujudhOOumk80ePHn3U6nWvvvpqPxGZs2/fvjZbLEOT83ZUazOs3n2IhZv2szY1nxEjR+Hr6+vusJRyq61bt1JcXExISAjDhw93dzhHGDlyJBEREe4OQym3ysvL4+effwZwy9oDnu79998f3Ldv3/133333LyNHjiyJiYmpbqp9UVGR78CBAw/cf//9n7XkPH/+85+Hvfbaa9N//etfL1u0aNErSUlJB6677rqrtm/fHuxqm1//+teTFy9ePP6Pf/zj5999990/b7/99m8++uijk2666aYJjmP07du36O67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mzZt6v/kk09+9M0337w0fvz43bNnz75m48aNoa4835BBgwbNvueee0Y39nxRUZHvwIEDD9x///2fNdZmw4YN/X71q1/98NFHH70+b968d2pqarwuueSSq3Nycnxb+PKbdNlll238+eef+//4449HzXP91ltvjendu3fmrFmzutwIfk3OPUB4eDh9+vQBDveeA8TeeQc+sbFU7d3LoVdecVd4SrVYbW0t27ZtA3Bparam1OTmcvAfTwMQe/ddbKzwd3kl3dbyjogg/g9/ACD3xZeo3rtXS1tUl+P4WR4xYsRRK3o65P93PhVbtuAVEkL8nx7qyPA82oMPPjgiODi44s9//vMPFRUVAatXr45ozXEOHDjgd+utt17017/+dVFwcPARv9jy8vJ8NmzYMPSee+75+re//e3eU045Je/9999fFhsbm/fII4+Mb+751r62u+66a9eCBQuWPPjggz831mbbtm3znnrqqU1nn332wfPPP//A//73v48LCgrCP/nkk0Z77QcNGjT7jDPOOGvGjBkzAgMD7w8JCbnn9ttvH5uTk+M7efLk8/z9/f8QExNz29NPP103sOeuu+7aGRwcXPbUU0+Nrv++rVu3buisWbOOeVVPT6TJuYdw/OF3Ts69Q0OJf/CPABx6/Q2q9+93S2xKtVRqairl5eUEBwfTr1+/YzrWweeex1ZaSsDw4URefrnLK+Qe60q6YeecTfBJJ2Gqq8n5xz8YMWIEADt37qRS72SpTq68vJw9e6wFIBubz7+2oICDL1ir0sfdfRe+8XEdFp8ny8nJ8X3ppZdOe/LJJ78eN25cUUBAQOXSpUsTnNvcc889o0VkTnPHuvDCC88+4YQTdv7+97/fU/+5yspKL5vNJkFBQTXO2319fWu2bNnSp7nnW/v6WiM7OzsAIDExsckl6lesWDE6MjKy7PPPP39t5syZ61544YVzp02b9qtx48alL168+JVRo0btfuihhy7Mzc31BQgICLCdeuqpP3399dejbbbDC3j+/e9/H2qM8br//vu3tOsLcxNNzj3E0KFDCQsLo2fPnjj/AIZOn07Q+PGYqipy5s51Y4RKuc7Raz5kyBC8vFr/a6Zix04KPvwQgPgH7ke8vIgLdW2lTlfbNUZEiH/gfvDyovjrbwhNTyc+Pp6BAwdSXt7k3x+lPN6OHTuw2WzExcURExPTYJvcl17GVliI/6BBRPzqVx0coee68cYbTx49evSu6dOn5wIkJCQc3LRp0xHJeWRkZEVsbGyTA24eeuih4Xv27EmcP3/+tw09n5iYWNWvX7+MZ5555pRNmzaFVlVVyR/+8IeRaWlpvQoLC0Oae95xnCuvvPJkf3//Pzoeu3fv7jN37txznbetW7cuvLXvR01Njfz+97+fkZSUlH7OOefkNNW2Z8+e2fPnz/9u6tSpeW+//fYKHx+fmrCwsLK5c+dumDp1at7cuXOXl5WVBS5evLiuVOi2227beOjQocjXX3+9n2PbwoULx4wbN25b7969u2RPiQ639hAhISHccccdR91aFBHi7ruPtEsuoeiTRURdey2BbTBftFLtpba2lp9/tu6GHsvc5sYYcp54Amw26yL1hBMASE6KIjE8gOzCigbrzluykm6tzTS5iq//oEFEXHIJBe+9R87fn+T6+f/FW2epUF2A4y7t0KFDG3y+au9e8v77X8CaHUm8vTssNk/2/fffR3711VcnrF279kXHtr59++bs3LnziOT8wQcf/LmpspD169eHPfPMMzP++9///jsiIqKmsXZvv/32guuuu+68MWPG3OXl5WV69eqVlZycnJKamproyvMAjzzyyPobbrih7rb8Nddcc+Gpp566/brrrtvu2DZy5Mjilr8bljPPPPPs/fv3x3399ddvNtc2KSmprj7cz8/PBAUFlQ0ePLhu29ChQ0sAMjIygh3bzjjjjNykpKT0t956a8wNN9yQtnz58qjdu3f3ue+++5a2NmZPp39lPEhjNX+BI4YTdu65FH36KTlPPkWff73ZaFul3C0tLY3y8nKCgoLo27dvq49TumoVpatWIb6+R8yp7O0lzJk5lJvnbUDgiAS9JSvpLk7J4uFF246oX08MD2DOzKFHLPYVe+vvKVq0iIotWyhZ/CXh557T6teklCdwLmlp7AI65+lnoLqa4MmTCTl5ckeG59FuueWW6WVlZYGjRo26y7HNGCMRERGFLTnOV1991aO0tDT4ggsuuNGxzWazye7du/t6e3snl5eXP+Ln52emTJmSv2vXrrdycnJ8s7Oz/UeOHFkyfvz4i2NjY/MBmnseoH///uX9+/evu93n5+dXExsbW3rKKae0fmCO3RlnnHH2hg0bBn/22Wf/GjduXFFz7X18fGzOX4vIEdscd1ptNtsRv8DP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",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"a_obj = CosineAnalysis(label=\"Cosine experiment\").run()\n",
"a_obj.display_figs_mpl()"
]
},
{
"cell_type": "markdown",
"id": "5f30a46e",
"metadata": {},
"source": [
"Inspecting the `experiment directory` will show something like this:\n",
"\n",
"```{code-block}\n",
"20230125-172712-018-87b9bf-Cosine experiment/\n",
"├── analysis_CosineAnalysis/\n",
"│ ├── dataset_processed.hdf5\n",
"│ ├── figs_mpl/\n",
"│ │ ├── cos_fit.png\n",
"│ │ └── cos_fit.svg\n",
"│ ├── fit_results/\n",
"│ │ └── cosine.txt\n",
"│ └── quantities_of_interest.json\n",
"├── cos-data-and-fit.png\n",
"├── Cosine fit.png\n",
"├── dataset.hdf5\n",
"├── quantities_of_interest.json\n",
"└── snapshot.json\n",
"```\n",
"\n",
"As you can conclude from the {class}`!CosineAnalysis` code, we did not implement quite a few methods in there.\n",
"These are provided by the {class}`~quantify_core.analysis.base_analysis.BaseAnalysis`.\n",
"To gain some insight into what exactly is being executed we can enable the logging module and use the internal logger of the analysis instance:"
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "62be0929",
"metadata": {
"myst_nb": {
"output_stderr": "show"
}
},
"outputs": [],
"source": [
"# activate logging and set global level to show warnings only\n",
"logging.basicConfig(level=logging.WARNING)\n",
"\n",
"# set analysis logger level to info (the logger is inherited from BaseAnalysis)\n",
"a_obj.logger.setLevel(level=logging.INFO)\n",
"_ = a_obj.run()"
]
}
],
"metadata": {
"file_format": "mystnb",
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"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.9.23"
},
"widgets": {
"application/vnd.jupyter.widget-state+json": {
"state": {
"23b91ddbeef5497f866da4f100ab91da": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "2.0.0",
"model_name": "HTMLStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "2.0.0",
"_model_name": "HTMLStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "2.0.0",
"_view_name": "StyleView",
"background": null,
"description_width": "",
"font_size": null,
"text_color": null
}
},
"4987c13b2e1a4cd5976c5bb1eabbd6de": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "2.0.0",
"model_name": "HTMLModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "2.0.0",
"_model_name": "HTMLModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "2.0.0",
"_view_name": "HTMLView",
"description": "",
"description_allow_html": false,
"layout": "IPY_MODEL_d6a93cc4f35c4dffaba4eeab7c2d5e35",
"placeholder": "",
"style": "IPY_MODEL_23b91ddbeef5497f866da4f100ab91da",
"tabbable": null,
"tooltip": null,
"value": "Completed: 100%"
}
},
"50914cd72f3c47ab84ea935cdcb50d1f": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "2.0.0",
"model_name": "ProgressStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "2.0.0",
"_model_name": "ProgressStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "2.0.0",
"_view_name": "StyleView",
"bar_color": null,
"description_width": ""
}
},
"84067d302a4f4a8188ac1e3d08b0e3f8": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "2.0.0",
"model_name": "HBoxModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "2.0.0",
"_model_name": "HBoxModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "2.0.0",
"_view_name": "HBoxView",
"box_style": "",
"children": [
"IPY_MODEL_4987c13b2e1a4cd5976c5bb1eabbd6de",
"IPY_MODEL_9770b8c5df5646e39e6c7f26314fe3a6",
"IPY_MODEL_8c5537cf9cf843e9a0f272c04e265791"
],
"layout": "IPY_MODEL_cab4d53920f14dfb8a354de07206d5c1",
"tabbable": null,
"tooltip": null
}
},
"8c5537cf9cf843e9a0f272c04e265791": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "2.0.0",
"model_name": "HTMLModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "2.0.0",
"_model_name": "HTMLModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "2.0.0",
"_view_name": "HTMLView",
"description": "",
"description_allow_html": false,
"layout": "IPY_MODEL_e74255c5185b40b1a2bb4e311daba97a",
"placeholder": "",
"style": "IPY_MODEL_d30e5e68a151439897abdc8e9b22d59f",
"tabbable": null,
"tooltip": null,
"value": " [ elapsed time: 00:00 | time left: 00:00 ] "
}
},
"9770b8c5df5646e39e6c7f26314fe3a6": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "2.0.0",
"model_name": "FloatProgressModel",
"state": {
"_dom_classes": [],
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "2.0.0",
"_model_name": "FloatProgressModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/controls",
"_view_module_version": "2.0.0",
"_view_name": "ProgressView",
"bar_style": "success",
"description": "",
"description_allow_html": false,
"layout": "IPY_MODEL_c9877ab436f34340a106b9df869f6f34",
"max": 100.0,
"min": 0.0,
"orientation": "horizontal",
"style": "IPY_MODEL_50914cd72f3c47ab84ea935cdcb50d1f",
"tabbable": null,
"tooltip": null,
"value": 100.0
}
},
"c9877ab436f34340a106b9df869f6f34": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "2.0.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "2.0.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "2.0.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border_bottom": null,
"border_left": null,
"border_right": null,
"border_top": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"cab4d53920f14dfb8a354de07206d5c1": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "2.0.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "2.0.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "2.0.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border_bottom": null,
"border_left": null,
"border_right": null,
"border_top": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"d30e5e68a151439897abdc8e9b22d59f": {
"model_module": "@jupyter-widgets/controls",
"model_module_version": "2.0.0",
"model_name": "HTMLStyleModel",
"state": {
"_model_module": "@jupyter-widgets/controls",
"_model_module_version": "2.0.0",
"_model_name": "HTMLStyleModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "2.0.0",
"_view_name": "StyleView",
"background": null,
"description_width": "",
"font_size": null,
"text_color": null
}
},
"d6a93cc4f35c4dffaba4eeab7c2d5e35": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "2.0.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "2.0.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "2.0.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border_bottom": null,
"border_left": null,
"border_right": null,
"border_top": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
},
"e74255c5185b40b1a2bb4e311daba97a": {
"model_module": "@jupyter-widgets/base",
"model_module_version": "2.0.0",
"model_name": "LayoutModel",
"state": {
"_model_module": "@jupyter-widgets/base",
"_model_module_version": "2.0.0",
"_model_name": "LayoutModel",
"_view_count": null,
"_view_module": "@jupyter-widgets/base",
"_view_module_version": "2.0.0",
"_view_name": "LayoutView",
"align_content": null,
"align_items": null,
"align_self": null,
"border_bottom": null,
"border_left": null,
"border_right": null,
"border_top": null,
"bottom": null,
"display": null,
"flex": null,
"flex_flow": null,
"grid_area": null,
"grid_auto_columns": null,
"grid_auto_flow": null,
"grid_auto_rows": null,
"grid_column": null,
"grid_gap": null,
"grid_row": null,
"grid_template_areas": null,
"grid_template_columns": null,
"grid_template_rows": null,
"height": null,
"justify_content": null,
"justify_items": null,
"left": null,
"margin": null,
"max_height": null,
"max_width": null,
"min_height": null,
"min_width": null,
"object_fit": null,
"object_position": null,
"order": null,
"overflow": null,
"padding": null,
"right": null,
"top": null,
"visibility": null,
"width": null
}
}
},
"version_major": 2,
"version_minor": 0
}
}
},
"nbformat": 4,
"nbformat_minor": 5
}