{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2025-07-17T12:11:22.373024Z", "start_time": "2025-07-17T12:11:22.366727Z" } }, "outputs": [], "source": [ "local = False #Set to False if working with a web-hosted Jupyter server\n", "#Core libraries\n", "import os\n", "import base64\n", "import re\n", "from time import time\n", "import warnings\n", "warnings.simplefilter(action='ignore', category=FutureWarning)\n", "#Third party libraries\n", "import ipywidgets as widgets\n", "from ipywidgets import HBox, VBox, Layout\n", "from IPython.display import Javascript, display\n", "from bqplot import *\n", "from bqplot import pyplot as plt\n", "from bqplot.interacts import *\n", "import numpy as np\n", "#Custom libraries\n", "from SelectFilesWidget import *\n", "from tools import *\n", "from def_strain import *\n", "from def_DW import *\n", "from def_XRD import *\n", "from def_fit import *" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2025-07-17T12:11:22.497967Z", "start_time": "2025-07-17T12:11:22.376166Z" } }, "outputs": [], "source": [ "#*******************************************************************\n", "# WIDGET: XRD data selection\n", "# \n", "# This allows to load a file from the local drive. \n", "#*******************************************************************\n", "\n", "dirname = ''\n", "filename = ''\n", "#load default data\n", "tth,iexp = np.loadtxt(\"Example_data.txt\", unpack = True) #Read experimental data\n", "iexp[iexp==0] = np.min(iexp[np.nonzero(iexp)]) #Replace any 0s with the minimum value\n", "iexp /= iexp.max() #Normalize to 1\n", "th = tth * np.pi/360 #Convert 2theta angle -> theta angles in radians\n", "\n", "#*** !TO BE USED WHEN THE NOTEBOOK IS RUNNED LOCALLY ***\n", "try:\n", " f=open(\"last_path\", \"r\")\n", " init_dir=f.read()\n", " f.close()\n", "except:\n", " init_dir=os.getcwd()\n", "load_button = SelectFilesButton() #this is the custom load file button\n", "load_button.description = \"NO DATA... PLEASE LOAD XRD FILE.\" \n", "load_button.layout.width = \"50%\"\n", "load_button.default_path = init_dir\n", "\n", "#*** !TO BE USED WHEN THE NOTEBOOK IS HOSTED ON THE WEB ***\n", "upload_button=widgets.FileUpload(\n", " description='Upload XRD data',\n", " accept='.txt', # Accepted file extension e.g. '.txt', '.pdf', 'image/*', 'image/*,.pdf'\n", " multiple=False, # True to accept multiple files upload else False\n", " layout=Layout(width='25%')\n", ")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2025-07-17T12:11:22.792458Z", "start_time": "2025-07-17T12:11:22.501624Z" } }, "outputs": [], "source": [ "#***************************************************************************\n", "# WIDGETS: define the experiment / material / Strain+Debye-Waller parameters\n", "#***************************************************************************\n", "\n", "resol_fct = widgets.Dropdown(\n", " options=['Pseudo-Voigt', 'Gaussian', 'Lorentzian', 'Generalized bell', 'Split pseudo-Voigt'],\n", " value='Gaussian',\n", " description='Resolution',\n", " disabled=False,\n", " continuous_update=False\n", ")\n", "\n", "resol_width = widgets.Text(\n", " value='0.01',\n", " placeholder='Full width at half-maximum',\n", " description='FWHM (°)',\n", " disabled=False,\n", " continuous_update=False,\n", ")\n", "resol_shape = widgets.Text(\n", " value='0.001',\n", " placeholder='eta',\n", " description='Shape',\n", " disabled=False,\n", " continuous_update=False\n", ")\n", "\n", "# Wavelength, offset and background\n", "exp_wl = widgets.Text(\n", " value='1.5406',\n", " placeholder='Wavelength',\n", " description='Wavelength '+ u\"(\\u212B)\",\n", " disabled=False,\n", " continuous_update=False,\n", " style = {'description_width': 'initial'}\n", ")\n", "exp_offset = widgets.Text(\n", " value='0.',\n", " placeholder='2 theta offset',\n", " description='2'+u\"\\u03B8\"+' offset (°)',\n", " disabled=False,\n", " continuous_update=False\n", ")\n", "exp_bkg = widgets.Text(\n", " value='0.',\n", " placeholder='Background',\n", " description='Background',\n", " disabled=False,\n", " continuous_update=False\n", ")\n", "\n", "#*** Widgets for the \"Material\" tab ***\n", "# Type of crystal and Miller indices\n", "cryst_name = widgets.Dropdown(\n", " options=sorted(os.listdir('structures/')),\n", " value='ZrO2.cif',\n", " description='Material',\n", " disabled=False,\n", ")\n", "cryst_h = widgets.Text(\n", " value='0',\n", " placeholder='h',\n", " description='h',\n", " disabled=False,\n", " continuous_update=False,\n", " layout=Layout(width='20%')\n", ")\n", "cryst_k = widgets.Text(\n", " value='0',\n", " placeholder='k',\n", " description='k',\n", " disabled=False,\n", " continuous_update=False,\n", " layout=Layout(width='20%')\n", ")\n", "cryst_l = widgets.Text(\n", " value='4',\n", " placeholder='l',\n", " description='l',\n", " disabled=False,\n", " continuous_update=False,\n", " layout=Layout(width='20%')\n", ")\n", "\n", "# Sample type (single crystal or film)\n", "sample = widgets.Dropdown(\n", " options=['Single crystal', 'Thin film', 'Thick film', 'Thick film + substrate'],\n", " value='Single crystal',\n", " description='Sample type',\n", " disabled=False,\n", ")\n", "\n", "#*** Widgets for the \"Strain / Disorder\" tab ***\n", "# Spline model for strain and DW depth profiles\n", "sdw_model = widgets.Dropdown(\n", " options=['B-splines smooth', 'B-splines abrupt'],\n", " value='B-splines smooth',\n", " description='Strain/DW depth-profile',\n", " disabled=False,\n", " style = {'description_width': 'initial'},\n", " layout=Layout(width='29%')\n", ")\n", "sdw_basis = widgets.Text(\n", " value='6',\n", " placeholder='Number of basis functions',\n", " description='Control points',\n", " disabled=False,\n", " continuous_update=False,\n", " style = {'description_width': 'initial'},\n", " layout=Layout(width='15%')\n", ")\n", "\n", "#Strain V-Scale sliders\n", "strain_scale = widgets.FloatSlider(\n", " value=1,\n", " min=0.5, \n", " max=1.5, \n", " step=0.01,\n", " description='Strain: scale',\n", " disabled=False,\n", " continuous_update=False,\n", " orientation='horizontal',\n", " readout = True\n", ")\n", "#Strain H-Scale sliders\n", "strain_shift = widgets.FloatSlider(\n", " value=0,\n", " min=-0.1, \n", " max=0.1, \n", " step=0.01,\n", " description='shift',\n", " disabled=False,\n", " continuous_update=False,\n", " orientation='horizontal',\n", " readout = True\n", ")\n", "\n", "# Irradiated thickness and number of slices used for the XRD computation\n", "th_value = widgets.Text(\n", " value='100',\n", " placeholder='Damaged depth (nm)',\n", " description='Damaged depth (nm) ',\n", " disabled=False,\n", " continuous_update=False,\n", " style = {'description_width': 'initial'},\n", " layout=Layout(width='29%')\n", ")\n", "th_slices = widgets.Text(\n", " value='60',\n", " placeholder='Number of sub-layers',\n", " description='Data points',\n", " disabled=False,\n", " continuous_update=False,\n", " style = {'description_width': 'initial'},\n", " layout=Layout(width='15%')\n", ")\n", "#DW V-Scale sliders\n", "dw_scale = widgets.FloatSlider(\n", " value=1,\n", " min=0.5,\n", " max=1.5,\n", " step=0.01,\n", " description='DW: scale',\n", " disabled=False,\n", " continuous_update=False,\n", " orientation='horizontal',\n", " readout = True\n", ")\n", "#DW H-Scale sliders\n", "dw_shift = widgets.FloatSlider(\n", " value=0,\n", " min=-0.1,\n", " max=0.1,\n", " step=0.01,\n", " description='shift',\n", " disabled=False,\n", " continuous_update=False,\n", " orientation='horizontal',\n", " readout = True\n", ")\n", "\n", "#*** Widgets for the \"Film parameters\" tab ***\n", "text_film = widgets.HTML(\n", " value='Modify these parameters only if you are using the \"thick film\" or the \"thick film+substrate\" sample types.'\n", ")\n", "fth_value = widgets.Text(\n", " value='1000',\n", " description='Film thickness (nm)',\n", " placeholder='Film thickness has to be larger than damaged depth',\n", " disabled=False,\n", " continuous_update=False,\n", " style = {'description_width': 'initial'},\n", " layout=Layout(width='20%')\n", ") \n", "\n", "sub_name = widgets.Dropdown(\n", " options=sorted(os.listdir('structures/')),\n", " value=sorted(os.listdir('structures/'))[-1],\n", " description='Substrate',\n", " disabled=False,\n", " layout=Layout(width='20%')\n", ")\n", "sub_h = widgets.Text(\n", " value='0',\n", " placeholder='h',\n", " description='h',\n", " disabled=False,\n", " continuous_update=False,\n", " layout=Layout(width='20%')\n", ")\n", "sub_k = widgets.Text(\n", " value='0',\n", " placeholder='k',\n", " description='k',\n", " disabled=False,\n", " continuous_update=False,\n", " layout=Layout(width='19%')\n", ")\n", "sub_l = widgets.Text(\n", " value='4',\n", " placeholder='l',\n", " description='l',\n", " disabled=False,\n", " continuous_update=False,\n", " layout=Layout(width='19%')\n", ")\n", "#*** Widgets for the \"Fitting parameters\" tab ***\n", "algo = widgets.Dropdown(\n", " options=['Least squares', 'Least squares (no bounds)', 'Simulated annealing (GSA)'],\n", " value='Least squares',\n", " description='Fitting algorithm',\n", " disabled=False,\n", " style = {'description_width': 'initial'},\n", " layout=Layout(width='25%')\n", ")\n", "min_strain = widgets.Text(\n", " value='0',\n", " description='Min. strain',\n", " placeholder='Lower limit for the strain',\n", " disabled=False,\n", " continuous_update=False,\n", " layout=Layout(width='19%')\n", ")\n", "max_strain = widgets.Text(\n", " value='5',\n", " description='Max. strain',\n", " placeholder='Upper limit for the strain',\n", " disabled=False,\n", " continuous_update=False,\n", " layout=Layout(width='18%')\n", ")\n", "min_dw = widgets.Text(\n", " value='0',\n", " description='Min. DW',\n", " placeholder='Lower limit for the Debye-Waller',\n", " disabled=False,\n", " continuous_update=False,\n", " layout=Layout(width='18%')\n", ")\n", "max_dw = widgets.Text(\n", " value='1',\n", " description='Max. DW',\n", " placeholder='Upper limit for the Debye-Waller',\n", " disabled=False,\n", " continuous_update=False,\n", " layout=Layout(width='18%')\n", ")\n", "text_gsa = widgets.HTML(\n", " value = 'GSA parameters:',\n", " layout=Layout(width='15%')\n", ")\n", "gsa_temp = widgets.Text(\n", " value='100',\n", " description='Temperature',\n", " placeholder='Simulated annealing pseudo-temperature [1-1000]',\n", " disabled=False,\n", " continuous_update=False,\n", " style = {'description_width': 'initial'} \n", ")\n", "gsa_cycles = widgets.Text(\n", " value='1000',\n", " description='Monte-Carlo steps',\n", " placeholder='Number of Monte Carlo cycles in the GSA routine',\n", " disabled=False,\n", " continuous_update=False,\n", " style = {'description_width': 'initial'}\n", ")\n", "gsa_Tsteps = widgets.Text(\n", " value='10',\n", " description='Cooling stages',\n", " placeholder='How many temperature dwells',\n", " disabled=False,\n", " continuous_update=False,\n", " style = {'description_width': 'initial'}\n", ")\n", "\n", "w_list = [resol_fct, #0\n", " resol_width, #1\n", " resol_shape, #2\n", " exp_wl, #3\n", " exp_offset, #4\n", " exp_bkg, #5\n", " cryst_name, #6\n", " cryst_h, #7\n", " cryst_k, #8\n", " cryst_l, #9\n", " sample, #10\n", " sdw_model, #11\n", " sdw_basis, #12\n", " th_value, #13\n", " th_slices, #14\n", " fth_value, #15\n", " sub_name, #16\n", " sub_h, #17\n", " sub_k, #18\n", " sub_l, #19\n", " algo, #20\n", " min_strain, #21\n", " max_strain, #22\n", " min_dw, #23\n", " max_dw, #24\n", " gsa_temp, #25\n", " gsa_cycles, #26\n", " gsa_Tsteps] #27\n", "\n", "# Compute global variables from the widgets\n", "cst = compute_cst(w_list,th)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2025-07-17T12:11:22.850356Z", "start_time": "2025-07-17T12:11:22.795155Z" }, "scrolled": false }, "outputs": [], "source": [ "#*******************************************************************\n", "# WIDGETS: interactive plots of strain, DW and XRD \n", "#*******************************************************************\n", "\n", "eps = max(auto_strain(tth, iexp, cst), 0.1)\n", "sp = np.full(cst[\"sdw_basis\"], eps)\n", "dwp = np.ones(cst[\"sdw_basis\"]) \n", " \n", "#Create backup (used for to restore saved data when fit is cancelled) \n", "sp_back, dwp_back = np.copy(sp), np.copy(dwp)\n", "\n", "# compute the initial strain, DW and intensity\n", "strain = f_strain(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", "dw = f_DW(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", "ical, t0 = f_Refl(th, np.concatenate((sp,dwp)), cst)\n", "error = rmse(iexp,ical)\n", "\n", "old_strain = np.copy(strain)\n", "old_dw = np.copy(dw)\n", "\n", "# compute the values of strain and DW at the control point coords (in1d, around)\n", "control_sp_x, control_sp_y = control_sp(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", "control_dwp_x, control_dwp_y = control_dwp(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", "\n", "#********** Strain figure **********\n", "xscale = LinearScale()\n", "yscale = LinearScale()\n", "xax = Axis(scale=xscale, label='', grids='off')\n", "yax = Axis(scale=yscale, label='Strain (%)', orientation='vertical', grids='off')\n", "strain_line = Lines(x=(cst[\"t\"]-cst[\"z\"])/10,\n", " y=strain*100,\n", " scales={'x': xscale, 'y': yscale})\n", "strain_scat = Scatter(x=(cst[\"t\"] - control_sp_x)/10, \n", " y=control_sp_y*100,\n", " interactions={\"click\": \"select\"},\n", " selected_style={\"opacity\": 1.0, \"fill\": \"DarkOrange\", \"stroke\": \"Red\"},\n", " enable_move=True, restrict_y = True,default_size=128,\n", " scales={'x': xscale, 'y': yscale})\n", "fig_strain=Figure(marks=[strain_scat, strain_line], axes=[xax, yax], animation_duration = 300)\n", "\n", "#********** DW figure **********\n", "xscale = LinearScale()\n", "yscale = LinearScale(min=0)#, max = 1.1) #MODIFY HERE TO REMOVE DW UPPER BOUND IN PLOT\n", "xax = Axis(scale=xscale, label='Depth (nm)')\n", "yax = Axis(scale=yscale, label='Debye-Waller factor', orientation='vertical', grids='off')\n", "dw_line = Lines(x=(cst[\"t\"]-cst[\"z\"])/10,\n", " y=dw,\n", " scales={'x': xscale, 'y': yscale})\n", "dw_scat = Scatter(x=(cst[\"t\"] - control_dwp_x)/10, \n", " y=control_dwp_y,\n", " interactions={\"click\": \"select\"},\n", " selected_style={\"opacity\": 1.0, \"fill\": \"DarkOrange\", \"stroke\": \"Red\"},\n", " enable_move=True, restrict_y = True,default_size=128,\n", " scales={'x': xscale, 'y': yscale})\n", "fig_DW=Figure(marks=[dw_scat, dw_line], axes=[xax, yax], animation_duration = 300)\n", "\n", "#********** XRD figure **********\n", "xscale = LinearScale()\n", "yscale = LinearScale()\n", "xrd_scat = Scatter(x=th*360/np.pi, y=np.log10(iexp), scales={'x': xscale, 'y': yscale})\n", "xrd_line = Lines(x=th*360/np.pi, y=np.log10(ical), scales={'x': xscale, 'y': yscale}, colors=['red'])\n", "\n", "panzoom = PanZoom(scales={'x': [xscale], 'y': [yscale]})\n", "xax = Axis(scale=xscale, label='2'+u\"\\u03B8\"+' (deg.)', grids='off')\n", "yax = Axis(scale=yscale, label='', orientation='vertical', grid_lines='none', visible=False)\n", "\n", "fig_XRD = Figure(marks=[xrd_scat, xrd_line], axes=[xax, yax], animation_duration = 300,interaction=panzoom)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2025-07-17T12:11:22.970889Z", "start_time": "2025-07-17T12:11:22.852496Z" } }, "outputs": [], "source": [ "#*******************************************************************\n", "# WIDGETS: SAVE EVERYTHING / FIT / CANCEL FIT\n", "#*******************************************************************\n", "\n", "save = widgets.Button(\n", " description='Save',\n", " disabled=False,\n", " button_style='', # 'success', 'info', 'warning', 'danger' or ''\n", " tooltip='Save all parameters, depth-profiles and simulation'\n", ")\n", "\n", "fit = widgets.Button(\n", " description='Fit',\n", " disabled=False,\n", " button_style='', # 'success', 'info', 'warning', 'danger' or ''\n", " tooltip='Fit experimental data'\n", ")\n", "\n", "cancel = widgets.Button(\n", " description='Cancel',\n", " disabled=False,\n", " button_style='', # 'success', 'info', 'warning', 'danger' or ''\n", " tooltip='Reload previous strain/DW values'\n", ")\n", "\n", "out = widgets.Output() #This is an output text area below the GUI\n", "with out:\n", " print(\"Computing time: %f4 sec. RMS error: %f4\"%(t0,error))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2025-07-17T12:11:23.236150Z", "start_time": "2025-07-17T12:11:22.973434Z" } }, "outputs": [], "source": [ "#*******************************************************************\n", "# EVENT LOOP: OBSERVE ALL WIDGET VALUES AND MOUSE EVENTS\n", "#*******************************************************************\n", "#Observe the file load widget (local version)\n", "def on_file_change(change):\n", " global dirname, filename, th, iexp, cst, sp, dwp, old_strain, old_dw\n", " #open data file\n", " dirname = os.path.dirname(load_button.files[0])\n", " filename = os.path.basename(load_button.files[0])\n", " load_button.description = \"File: \"+ os.path.join(dirname, filename)\n", " \n", " #save data file path\n", " f = open(\"last_path\", \"w\")\n", " f.write(dirname)\n", " f.close()\n", " \n", " #load the xrd data\n", " tth,iexp = np.loadtxt(load_button.files[0], unpack = True) #Read experimental data\n", " iexp[iexp==0] = np.min(iexp[np.nonzero(iexp)]) #Replace any 0s with the minimum value\n", " iexp /= iexp.max() #Normalize to 1\n", " th = tth * np.pi/360 #Convert 2theta angle -> theta angles in radians\n", " \n", " #check if there are widget values stored in the folder. If none keep defaults\n", " try:\n", " ipyw_values = np.load(os.path.join(dirname, \"ipyw_values.npy\"), allow_pickle=True).item()\n", " ipyw_flag = 1\n", " with out:\n", " out.clear_output()\n", " print(\"Found saved session\")\n", " except:\n", " ipyw_flag = 0\n", " with out:\n", " out.clear_output()\n", " print(\"No saved session found\")\n", " if ipyw_flag == 1:\n", " for i,key in enumerate(ipyw_values):\n", " w_list[i].value = ipyw_values[key]\n", "\n", " #Check if there are saved B-spline weights. If none keep defaults\n", " try:\n", " sp, dwp = np.loadtxt(os.path.join(dirname, \"weights.txt\"), unpack=True)\n", " #Create backup (used for to restore saved data when fit is cancelled) \n", " sp_back, dwp_back = np.copy(sp), np.copy(dwp)\n", " #compute the initial strain, DW and intensity\n", " strain = f_strain(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " dw = f_DW(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " control_sp_x, control_sp_y = control_sp(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " control_dwp_x, control_dwp_y = control_dwp(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " with out:\n", " print(\"Found saved B-spline weights\")\n", " except:\n", " eps = max(auto_strain(tth, iexp, cst), 0.1)\n", " sp = np.full(cst[\"sdw_basis\"], eps)\n", " dwp = np.ones(cst[\"sdw_basis\"]) \n", " sp_back, dwp_back = np.copy(sp), np.copy(dwp)\n", " strain = f_strain(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " dw = f_DW(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " control_sp_x, control_sp_y = control_sp(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " control_dwp_x, control_dwp_y = control_dwp(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " with out:\n", " print(\"No B-spline weights found\")\n", " \n", " #update the strain/DW plots \n", " with strain_line.hold_sync():\n", " strain_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " strain_line.y = strain*100\n", " with strain_scat.hold_sync():\n", " strain_scat.x = (cst[\"t\"] - control_sp_x)/10\n", " strain_scat.y = control_sp_y*100\n", " with dw_line.hold_sync():\n", " dw_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " dw_line.y = dw\n", " with dw_scat.hold_sync():\n", " dw_scat.x = (cst[\"t\"] - control_dwp_x)/10\n", " dw_scat.y = control_dwp_y\n", " \n", " #compute xrd\n", " cst = compute_cst(w_list,th)\n", " ical, t0 = f_Refl(th, np.concatenate((sp,dwp)), cst)\n", " error = rmse(iexp,ical)\n", " with out:\n", " print(\"Computing time: %f4 sec. RMS error: %f4\"%(t0,error))\n", " \n", " #update xrd plot\n", " with xrd_scat.hold_sync():\n", " xrd_scat.x = th*360/np.pi\n", " xrd_scat.y = np.log10(iexp)\n", " with xrd_line.hold_sync():\n", " xrd_line.x = th*360/np.pi\n", " xrd_line.y = np.log10(ical)\n", " # create a strain/dw backup (for shift)\n", " old_strain = np.copy(strain)\n", " old_dw = np.copy(dw)\n", " \n", "load_button.observe(on_file_change, names='files')\n", "\n", "\n", "#Observe the file load widget (online version)\n", "@out.capture(clear_output=True)\n", "def on_file_upload(change):\n", " global dirname, filename, th, iexp, cst, sp, dwp, old_strain, old_dw\n", " \n", " filename = (upload_button.metadata[0]['name']) #get the file name from the embedded metadata dict\n", " raw_data = upload_button.value[filename]['content'].decode() #extract data byte string and convert to str\n", " try:\n", " data = np.fromstring(raw_data, dtype=float, sep = ' ') #convert str to 1D np array\n", " data = data.reshape(int(len(data)/2),2) #reshape to 2cols format\n", " tth,iexp = data[:,0], data[:,1] #Read experimental data\n", " iexp[iexp==0] = np.min(iexp[np.nonzero(iexp)]) #Replace any 0s with the minimum value\n", " iexp /= iexp.max() #Normalize to 1\n", " th = tth * np.pi/360 #Convert 2theta angle -> theta angles in radians\n", " # guess strain from data and generate profiles\n", " eps = max(auto_strain(tth, iexp, cst), 0.1)\n", " sp = np.full(cst[\"sdw_basis\"], eps)\n", " dwp = np.ones(cst[\"sdw_basis\"])\n", " strain = f_strain(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " dw = f_DW(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " # generate control points\n", " control_sp_x, control_sp_y = control_sp(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " control_dwp_x, control_dwp_y = control_dwp(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " #compute XRD\n", " ical, t0 = f_Refl(th, np.concatenate((sp,dwp)), cst)\n", " error = rmse(iexp,ical)\n", " with out:\n", " print(\"Computing time: %f4 sec. RMS error: %f4\"%(t0,error))\n", " except:\n", " with out:\n", " print(\"ERROR. CHECK INPUT DATA: Numbers only in 2-columns space-separated values\")\n", " print(\"PLEASE REFRESH PAGE.\")\n", " \n", " \n", " \n", " #update xrd plot\n", " #panzoom = PanZoom(scales={'x': [xscale], 'y': [yscale]})\n", " xscale.min = th.min()*360/np.pi\n", " xscale.max = th.max()*360/np.pi\n", " yscale.min = np.log10(iexp.min())\n", " yscale.max = np.log10(iexp.max())\n", " with xrd_scat.hold_sync():\n", " xrd_scat.x = th*360/np.pi\n", " xrd_scat.y = np.log10(iexp)\n", " with xrd_line.hold_sync():\n", " xrd_line.x = th*360/np.pi\n", " xrd_line.y = np.log10(ical)\n", " #update strain/DW plot \n", " with strain_line.hold_sync():\n", " strain_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " strain_line.y = strain*100\n", " with strain_scat.hold_sync():\n", " strain_scat.x = (cst[\"t\"] - control_sp_x)/10\n", " strain_scat.y = control_sp_y*100\n", " with dw_line.hold_sync():\n", " dw_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " dw_line.y = dw\n", " with dw_scat.hold_sync():\n", " dw_scat.x = (cst[\"t\"] - control_dwp_x)/10\n", " dw_scat.y = control_dwp_y\n", " \n", " # create a strain/dw backup (for shift)\n", " old_strain = np.copy(strain)\n", " old_dw = np.copy(dw)\n", " \n", " \n", "upload_button.observe(on_file_upload, names='value')\n", "\n", "\n", "#observe input widgets and update changes\n", "@out.capture(clear_output=True)\n", "def update_xrd(change):\n", " #update the XRD curve only\n", " global cst\n", " cst = compute_cst(w_list,th)\n", " ical, t0 = f_Refl(th, np.concatenate((sp,dwp)), cst)\n", " xrd_line.y = np.log10(ical)\n", " error = rmse(iexp,ical)\n", " with out:\n", " out.clear_output()\n", " print(\"Computing time: %f4 sec. RMS error: %f4\"%(t0,error))\n", "\n", "@out.capture(clear_output=True) \n", "def update_all(change):\n", " #update the strain/DW and XRD curves upon widget modification (except Nb of Bsplines)\n", " global cst, control_sp_x, control_sp_y, control_dwp_x, control_dwp_y, old_strain, old_dw\n", " cst = compute_cst(w_list,th)\n", " # update strain and DW\n", " strain = f_strain(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " dw = f_DW(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " # update the values of strain and DW at the control point coords (in1d, around)\n", " control_sp_x, control_sp_y = control_sp(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " control_dwp_x, control_dwp_y = control_dwp(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " # update the plots\n", " with strain_line.hold_sync():\n", " strain_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " strain_line.y = strain*100\n", " with strain_scat.hold_sync():\n", " strain_scat.x = (cst[\"t\"] - control_sp_x)/10\n", " strain_scat.y = control_sp_y*100\n", " with dw_line.hold_sync():\n", " dw_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " dw_line.y = dw\n", " with dw_scat.hold_sync():\n", " dw_scat.x = (cst[\"t\"] - control_dwp_x)/10\n", " dw_scat.y = control_dwp_y\n", " # update XRD\n", " ical, t0 = f_Refl(th, np.concatenate((sp,dwp)), cst)\n", " xrd_line.y = np.log10(ical)\n", " error = rmse(iexp,ical)\n", " with out:\n", " out.clear_output()\n", " print(\"Computing time: %f4 sec. RMS error: %f4\"%(t0,error))\n", " # create a strain/dw backup (for shift)\n", " old_strain = np.copy(strain)\n", " old_dw = np.copy(dw)\n", "\n", "@out.capture(clear_output=True)\n", "def update_all_w_basis(change):\n", " #update the strain/DW and XRD curves upon Nb of Bsplines modification\n", " global cst, sp, dwp, control_sp_x, control_sp_y, control_dwp_x, control_dwp_y, old_strain, old_dw\n", " #read the new value for the number of basis functions\n", " cst = compute_cst(w_list,th)\n", " #compute the new weights\n", " sp_new = old2new_strain(cst[\"z\"], sp, cst[\"t\"], cst[\"sdw_basis\"],cst[\"sdw_model\"])\n", " dwp_new = old2new_DW(cst[\"z\"], dwp, cst[\"t\"], cst[\"sdw_basis\"],cst[\"sdw_model\"])\n", " sp, dwp = sp_new, dwp_new\n", " #compute the corresponding strain and DW\n", " strain = f_strain(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " dw = f_DW(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " # update the values of strain and DW at the control point coords (in1d, around)\n", " control_sp_x, control_sp_y = control_sp(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " control_dwp_x, control_dwp_y = control_dwp(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " # update the plots\n", " with strain_line.hold_sync():\n", " strain_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " strain_line.y = strain*100\n", " with strain_scat.hold_sync():\n", " strain_scat.x = (cst[\"t\"] - control_sp_x)/10\n", " strain_scat.y = control_sp_y*100\n", " with dw_line.hold_sync():\n", " dw_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " dw_line.y = dw\n", " with dw_scat.hold_sync():\n", " dw_scat.x = (cst[\"t\"] - control_dwp_x)/10\n", " dw_scat.y = control_dwp_y\n", " # update XRD\n", " ical, t0 = f_Refl(th, np.concatenate((sp,dwp)), cst)\n", " error = rmse(iexp,ical)\n", " xrd_line.y = np.log10(ical)\n", " with out:\n", " out.clear_output()\n", " print(\"Computing time: %f4 sec. RMS error: %f4\"%(t0,error))\n", " \n", " # create a strain/dw backup (for shift)\n", " old_strain = np.copy(strain)\n", " old_dw = np.copy(dw)\n", "\n", "#observe all widgets\n", "for i, widget in enumerate(w_list):\n", " if i<=10:\n", " widget.observe(update_xrd, names='value')\n", " elif i==12:\n", " widget.observe(update_all_w_basis, names='value')\n", " else:\n", " widget.observe(update_all, names='value')\n", "\n", "#observe the strain slider \n", "@out.capture(clear_output=True)\n", "def update_strain_scale(change=None):\n", " global sp, strain, control_sp_y, cst, old_strain\n", " #get scale factor from widget and modify control points accordingly\n", " control_sp_y = control_sp_y*strain_scale.value\n", " strain_scat.y = control_sp_y*100\n", " #update strain curve\n", " sp = interp_and_fit_strain(control_sp_x, control_sp_y, cst[\"z\"], sp, cst[\"sdw_model\"]) #compute the weights\n", " strain = f_strain(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " strain_line.y = strain*100 #redraw new strain\n", " #switch slider back to default value = 1\n", " strain_scale.value = 1\n", " #update XRD curve\n", " cst = compute_cst(w_list,th)\n", " ical, t0 = f_Refl(th, np.concatenate((sp,dwp)), cst)\n", " error = rmse(iexp,ical)\n", " xrd_line.y = np.log10(ical)\n", " with out:\n", " out.clear_output()\n", " print(\"Computing time: %f4 sec. RMS error: %f4\"%(t0,error))\n", " # create a strain/dw backup (for shift)\n", " old_strain = np.copy(strain)\n", "\n", "strain_scale.observe(update_strain_scale, names = 'value')\n", "\n", "#observe the strain shift slider \n", "@out.capture(clear_output=True)\n", "def update_strain_shift(change=None):\n", " global sp, strain, control_sp_y, cst, old_strain\n", " # create an array twice the initial size to be shifted\n", " length = int(len(old_strain))\n", " expanded_strain = np.zeros(2*length)\n", " expanded_strain[int(length/2):int(3*length/2)]=old_strain\n", " expanded_strain[int(3*length/2):2*length]=old_strain[-1]\n", " # get shift factor from widget and shift curve accordingly \n", " cut = int(strain_shift.value * length)\n", " shifted_strain = expanded_strain[int(length/2)+cut:int(3*length/2)+cut]\n", " \n", " # compute new weights, new strain and update strain curve\n", " sp = shift_strain(cst[\"z\"], sp, cst[\"t\"], shifted_strain, cst[\"sdw_model\"])\n", " control_sp_x, control_sp_y = control_sp(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " strain = f_strain(cst[\"z\"], sp, cst[\"t\"], cst[\"sdw_model\"])\n", " # update plot (for some reason there is no need to update the XRD. Its done via observe_strain_plot)\n", " strain_line.y = strain*100 #redraw new strain\n", " strain_scat.y = control_sp_y*100\n", " # switch slider back to default value = 0\n", " strain_shift.value = 0\n", "strain_shift.observe(update_strain_shift, names = 'value')\n", "\n", "#observe the dw slider \n", "@out.capture(clear_output=True)\n", "def update_dw_scale(change=None):\n", " global dwp, dw, control_dwp_y, cst, old_dw\n", " #get scale factor from widget and modify control points accordingly\n", " control_dwp_y = control_dwp_y*dw_scale.value\n", "# control_dwp_y[control_dwp_y>1] = 1 #TEMPORARILY REMOVE DW UPPER LIMIT\n", " dw_scat.y = control_dwp_y\n", " #update strain curve\n", " dwp = interp_and_fit_dw(control_dwp_x, control_dwp_y, cst[\"z\"], dwp, cst[\"sdw_model\"]) #compute the weights\n", " dw = f_DW(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " dw_line.y = dw #redraw new strain\n", " #switch slider back to default value = 1\n", " dw_scale.value = 1.\n", " #update XRD and update the curve\n", " cst = compute_cst(w_list,th)\n", " ical, t0 = f_Refl(th, np.concatenate((sp,dwp)), cst)\n", " error = rmse(iexp,ical)\n", " xrd_line.y = np.log10(ical)\n", " with out:\n", " out.clear_output()\n", " print(\"Computing time: %f4 sec. RMS error: %f4\"%(t0,error))\n", " # create a strain/dw backup (for shift)\n", " old_dw = np.copy(dw)\n", "dw_scale.observe(update_dw_scale, names = 'value')\n", "\n", "#observe the dw shift slider \n", "@out.capture(clear_output=True)\n", "def update_dw_shift(change=None):\n", " global dwp, dw, control_dwp_y, cst, old_dw\n", " # create an array twice the initial size to be shifted\n", " length = int(len(old_dw))\n", " expanded_dw = np.ones(2*length)\n", " expanded_dw[int(length/2):int(3*length/2)]=old_dw\n", " expanded_dw[int(3*length/2):2*length]=old_dw[-1]\n", " # get shift factor from widget and shift curve accordingly \n", " cut = int(dw_shift.value * length)\n", " shifted_dw = expanded_dw[int(length/2)+cut:int(3*length/2)+cut]\n", " \n", " # compute new weights, new strain and update strain curve\n", " dwp = shift_dw(cst[\"z\"], dwp, cst[\"t\"], shifted_dw, cst[\"sdw_model\"])\n", " control_dwp_x, control_dwp_y = control_dwp(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " dw = f_DW(cst[\"z\"], dwp, cst[\"t\"], cst[\"sdw_model\"])\n", " # update plot (for some reason there is no need to update the XRD. Its done via observe_strain_plot)\n", " dw_line.y = dw #redraw new strain\n", " dw_scat.y = control_dwp_y\n", " # switch slider back to default value = 0\n", " dw_shift.value = 0\n", "dw_shift.observe(update_dw_shift, names = 'value')\n", "\n", "#observe the strain interactive plot\n", "@out.capture(clear_output=True)\n", "def update_strain_xrd(change=None):\n", " global sp, control_sp_x, control_sp_y, cst, old_strain\n", " \n", " # get the new control point values\n", " if np.any(strain_scat.selected):\n", " old_control_sp_y = np.copy(control_sp_y)\n", " if len(strain_scat.selected)>1:\n", " with out:\n", " print(\"Moving multiple points:\", *strain_scat.selected)\n", " delta_strain = change['new']/100 - old_control_sp_y #get old-new difference array\n", " delta_strain = delta_strain[np.nonzero(delta_strain)] #find the delta value\n", " new_control_sp_y = old_control_sp_y\n", " new_control_sp_y[strain_scat.selected] += delta_strain #shift only selected points\n", " else: \n", " new_control_sp_y = change['new']/100 #get new strain values\n", " \n", " #compute the new weights and update the curve\n", " sp = interp_and_fit_strain(control_sp_x, new_control_sp_y, cst[\"z\"], sp, cst[\"sdw_model\"]) \n", " strain = f_strain(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " with strain_line.hold_sync():\n", " strain_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " strain_line.y = strain*100 #redraw new strain\n", " with strain_scat.hold_sync():\n", " strain_scat.x = (cst[\"t\"] - control_sp_x)/10\n", " strain_scat.y = new_control_sp_y*100 \n", " \n", " control_sp_y = new_control_sp_y #update the control point values\n", " #update XRD\n", " cst = compute_cst(w_list,th)\n", " ical, t0 = f_Refl(th, np.concatenate((sp,dwp)), cst)\n", " error = rmse(iexp,ical)\n", " xrd_line.y = np.log10(ical)\n", " with out:\n", " out.clear_output()\n", " print(\"Computing time: %f4 sec. RMS error: %f4\"%(t0,error))\n", " # create a strain/dw backup (for shift)\n", " old_strain = np.copy(strain)\n", "\n", "strain_scat.observe(update_strain_xrd, names=['y'])\n", "\n", "#observe the dw interactive plot\n", "@out.capture(clear_output=True)\n", "def update_dw_xrd(change=None):\n", " global dwp, control_dwp_x, control_dwp_y, cst, old_dw\n", " \n", " # get the new control point values\n", " if np.any(dw_scat.selected):\n", " old_control_dwp_y = np.copy(control_dwp_y)\n", " if len(dw_scat.selected)>1:\n", " with out:\n", " print(\"Moving multiple points:\", *dw_scat.selected)\n", " delta_dw = change['new'] - old_control_dwp_y #get old-new difference array\n", " delta_dw = delta_dw[np.nonzero(delta_dw)] #find the delta value\n", " new_control_dwp_y = old_control_dwp_y\n", " new_control_dwp_y[dw_scat.selected] += delta_dw #shift only selected points\n", " else: \n", " new_control_dwp_y = change['new'] #get new strain values\n", "\n", " #compute the weights \n", " dwp = interp_and_fit_dw(control_dwp_x, new_control_dwp_y, cst[\"z\"], dwp, cst[\"sdw_model\"])\n", " dw = f_DW(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " with dw_line.hold_sync():\n", " dw_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " dw_line.y = dw #redraw new dw\n", " with dw_scat.hold_sync():\n", " dw_scat.x = (cst[\"t\"] - control_dwp_x)/10\n", " dw_scat.y = new_control_dwp_y\n", " \n", " control_dwp_y = new_control_dwp_y #update the control point values\n", " #update XRD and update the curve\n", " cst = compute_cst(w_list,th)\n", " ical, t0 = f_Refl(th, np.concatenate((sp,dwp)), cst)\n", " error = rmse(iexp,ical)\n", " xrd_line.y = np.log10(ical)\n", " with out:\n", " out.clear_output()\n", " print(\"Computing time: %f4 sec. RMS error: %f4\"%(t0,error))\n", " # create a strain/dw backup (for shift)\n", " old_dw = np.copy(dw)\n", "\n", "dw_scat.observe(update_dw_xrd, names=['y'])\n", "\n", "#observe the save button\n", "def on_save_clicked(b):\n", " #save the widget values\n", " ipyw_values = {\n", " \"resol_fct\": resol_fct.value,\n", " \"resol_width\": resol_width.value,\n", " \"resol_shape\": resol_shape.value,\n", " \"exp_wl\": exp_wl.value,\n", " \"exp_offset\": exp_offset.value,\n", " \"exp_bkg\": exp_bkg.value,\n", " \"cryst_name\": cryst_name.value,\n", " \"cryst_h\": cryst_h.value,\n", " \"cryst_k\": cryst_k.value,\n", " \"cryst_l\": cryst_l.value,\n", " \"sample\": sample.value,\n", " \"sdw_model\": sdw_model.value,\n", " \"sdw_basis\": sdw_basis.value,\n", " \"th_value\": th_value.value,\n", " \"th_slices\": th_slices.value,\n", " \"fth_value\": fth_value.value,\n", " \"sub_name\": sub_name.value,\n", " \"sub_h\": sub_h.value,\n", " \"sub_k\": sub_k.value,\n", " \"sub_l\": sub_l.value,\n", " \"algo\": algo.value,\n", " \"min_strain\": min_strain.value,\n", " \"max_strain\": max_strain.value,\n", " \"min_dw\": min_dw.value,\n", " \"max_dw\": max_dw.value,\n", " \"gsa_temp\": gsa_temp.value,\n", " \"gsa_cycles\": gsa_cycles.value,\n", " \"gsa_Tsteps\": gsa_Tsteps.value\n", " }\n", " #if the notebook is runned locally, save the widget values to disk\n", " if local:\n", " np.save(os.path.join(dirname, \"ipyw_values.npy\"), ipyw_values)\n", " with out:\n", " out.clear_output()\n", " print(\"Data saved.\")\n", " \n", " #save the B-spline weights. If the notebook is runned locally, save the data to disk\n", " if local: \n", " np.savetxt(os.path.join(dirname, \"weights.txt\"), np.column_stack((sp,dwp)), fmt=\"%10.8f\")\n", " \n", " #save the XRD simulation\n", " #if the notebook is runned locally, save the data to disk\n", " #otherwise, the data is downloaded via a base64-encoded data URL\n", " ical = f_Refl(th, np.concatenate((sp,dwp)), cst)[0]\n", " out_xrd = np.column_stack((th*360/np.pi,iexp,ical))\n", " if local: \n", " np.savetxt(os.path.join(dirname, \"simul_xrd.txt\"), out_xrd, fmt=\"%10.8f\")\n", " else: \n", " with out:\n", " out.clear_output()\n", " out_xrd = np.array2string(out_xrd, threshold = 1e6) #convert the array to a str\n", " out_xrd = re.sub('[\\[\\]]', ' ', out_xrd) #remove the [] brackets\n", " out_xrd = out_xrd.replace(\"\\n\", \"%0A\") #thanks raphj (@linuxfr.org) for this hack\n", " #The next 2 lines are needed for base64 encoding only\n", " #out_xrd = base64.b64encode(out_xrd.encode('ascii')) #convert to base64\n", " #out_xrd = str(out_xrd).replace(\"'\",\"\").replace(\"b\",\"\") #remove the b and the quotes from b64 string\n", " xrd_link = \"\"\"Download XRD simulation.\"\"\"\n", " dl_xrd.value = xrd_link\n", " \n", " #save the strain/DW depth-profiles\n", " #if the notebook is runned locally, save the data to disk\n", " #otherwise, the data is downloaded via a base64-encoded data URL\n", " strain = f_strain(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " dw = f_DW(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " depth = (cst[\"t\"]-cst[\"z\"])/10\n", " out_sdw = np.column_stack((depth,strain,dw))\n", " if local:\n", " np.savetxt(os.path.join(dirname, \"simul_strain_dw.txt\"),out_sdw , fmt=\"%10.8f\")\n", " else: \n", " out_sdw = np.array2string(out_sdw, threshold = 1e6) #convert the array to a str\n", " out_sdw = re.sub('[\\[\\]]', ' ', out_sdw) #remove the [] brackets\n", " out_sdw = out_sdw.replace(\"\\n\", \"%0A\") #thanks raphj (@linuxfr.org) for this hack\n", " #The next 2 lines are needed for base64 encoding only\n", " #out_sdw = base64.b64encode(out_sdw.encode('ascii')) #convert to base64\n", " #out_sdw = str(out_sdw).replace(\"'\",\"\").replace(\"b\",\"\") #remove the b and the quotes from b64 string\n", " sdw_link = \"Download strain/DW depth profiles.\"\n", " dl_sdw.value = sdw_link\n", "\n", "save.on_click(on_save_clicked)\n", "\n", "#observe the fit button\n", "@out.capture(clear_output=True)\n", "def on_fit_clicked(b):\n", " global cst, sp, sp_back, dwp_back, dwp, control_sp_x, control_sp_y, control_dwp_x, control_dwp_y, old_strain, old_dw\n", " dl_xrd.value = \"\"\n", " dl_sdw.value = \"\"\n", " sp_back, dwp_back = np.copy(sp), np.copy(dwp)\n", " cst = compute_cst(w_list,th)\n", " with out:\n", " out.clear_output()\n", " print (\"Fitting... Please Wait.\")\n", " t0 = time()\n", " sp, dwp = fit_curve(th, iexp, np.concatenate((sp,dwp)), cst)\n", " fit_time = time() - t0\n", " \n", " # update XRD\n", " ical = f_Refl(th, np.concatenate((sp,dwp)), cst)[0]\n", " error = rmse(iexp, ical)\n", " xrd_line.y = np.log10(ical)\n", " \n", " # update strain and DW\n", " strain = f_strain(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " dw = f_DW(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " # update the values of strain and DW at the control point coords (in1d, around)\n", " control_sp_x, control_sp_y = control_sp(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " control_dwp_x, control_dwp_y = control_dwp(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " # update the plots\n", " with strain_line.hold_sync():\n", " strain_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " strain_line.y = strain*100\n", " with strain_scat.hold_sync():\n", " strain_scat.x = (cst[\"t\"] - control_sp_x)/10\n", " strain_scat.y = control_sp_y*100\n", " with dw_line.hold_sync():\n", " dw_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " dw_line.y = dw\n", " with dw_scat.hold_sync():\n", " dw_scat.x = (cst[\"t\"] - control_dwp_x)/10\n", " dw_scat.y = control_dwp_y \n", " with out:\n", " out.clear_output()\n", " print(\"Done. Fitting time: %5.4f sec. RMS error: %f4\" %(fit_time, error))\n", " # create a strain/dw backup (for shift)\n", " old_strain = np.copy(strain)\n", " old_dw = np.copy(dw)\n", "\n", "fit.on_click(on_fit_clicked)\n", "\n", "#observe the cancel button\n", "def on_cancel_clicked(b):\n", " global cst, sp, dwp, control_sp_x, control_sp_y, control_dwp_x, control_dwp_y, old_strain, old_dw\n", " dl_xrd.value = \"\"\n", " dl_sdw.value = \"\"\n", " cst = compute_cst(w_list,th)\n", " sp, dwp = np.copy(sp_back), np.copy(dwp_back)\n", " with out:\n", " print(\"Fit cancelled.\")\n", " \n", " # update strain and DW\n", " strain = f_strain(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " dw = f_DW(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " # update the values of strain and DW at the control point coords (in1d, around)\n", " control_sp_x, control_sp_y = control_sp(cst[\"z\"],sp,cst[\"t\"],cst[\"sdw_model\"])\n", " control_dwp_x, control_dwp_y = control_dwp(cst[\"z\"],dwp,cst[\"t\"],cst[\"sdw_model\"])\n", " # update the plots\n", " with strain_line.hold_sync():\n", " strain_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " strain_line.y = strain*100\n", " with strain_scat.hold_sync():\n", " strain_scat.x = (cst[\"t\"] - control_sp_x)/10\n", " strain_scat.y = control_sp_y*100\n", " with dw_line.hold_sync():\n", " dw_line.x = (cst[\"t\"]-cst[\"z\"])/10\n", " dw_line.y = dw\n", " with dw_scat.hold_sync():\n", " dw_scat.x = (cst[\"t\"] - control_dwp_x)/10\n", " dw_scat.y = control_dwp_y\n", " # update XRD\n", " ical = f_Refl(th, np.concatenate((sp,dwp)), cst)[0]\n", " xrd_line.y = np.log10(ical)\n", " # create a strain/dw backup (for shift)\n", " old_strain = np.copy(strain)\n", " old_dw = np.copy(dw)\n", "\n", "\n", "cancel.on_click(on_cancel_clicked)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2025-07-17T12:11:23.481363Z", "start_time": "2025-07-17T12:11:23.240080Z" }, "scrolled": false }, "outputs": [], "source": [ "#*******************************************************************\n", "# Generate the GUI\n", "#*******************************************************************\n", "#Experiment tab\n", "resol_box = HBox([resol_fct, resol_width, resol_shape])\n", "exp_box = HBox([exp_wl, exp_offset, exp_bkg])\n", "exp_tab = VBox([resol_box, exp_box])\n", "\n", "#Material tab\n", "cryst_box = HBox([cryst_name, cryst_h, cryst_k, cryst_l])\n", "\n", "#sample_box = HBox([cryst, cryst_h, cryst_k, cryst_l])\n", "mater_tab = VBox([cryst_box, sample])\n", "\n", "#Strain/DW tab\n", "sdw_box = HBox([sdw_model, sdw_basis, strain_scale, strain_shift])\n", "th_box = HBox([th_value, th_slices, dw_scale, dw_shift])\n", "sdw_tab = VBox([sdw_box, th_box])\n", "\n", "#Film parameters tab\n", "sub_box = HBox([fth_value, sub_name, sub_h, sub_k, sub_l])\n", "film_tab = VBox([text_film, sub_box])\n", "\n", "#Fitting tab\n", "limits = HBox([algo, min_strain, max_strain, min_dw, max_dw])\n", "gsa = HBox([text_gsa,gsa_temp, gsa_cycles, gsa_Tsteps])\n", "#fit_tab = VBox([limits, gsa])\n", "fit_tab = limits\n", "\n", "\n", "#Generate tabs\n", "tab = widgets.Tab(children=[exp_tab, mater_tab, sdw_tab, film_tab, fit_tab], selected_index = 0)\n", "tab.set_title(0, 'Experiment')\n", "tab.set_title(1, 'Material')\n", "tab.set_title(2, 'Strain / Disorder')\n", "tab.set_title(3, 'Film parameters')\n", "tab.set_title(4, 'Fitting parameters')\n", "\n", "#Strain/DW/XRD plots\n", "fig_strain.layout.height = '50%'\n", "fig_strain.layout.width = '640px'\n", "fig_strain.fig_margin=dict(top=30, bottom=15, left=50, right=10)\n", "fig_DW.layout.height = '50%'\n", "fig_DW.layout.width = '640px'\n", "fig_DW.fig_margin=dict(top=0, bottom=40, left=50, right=10)\n", "\n", "\n", "fig_XRD.layout.width = '640px'\n", "fig_XRD.fig_margin=dict(top=30, bottom=40, left=10, right=0)\n", "fig_XRD.display_toolbar=True\n", "\n", "items_layout = Layout(overflow_x = 'visible', overflow_y = 'visible') \n", "fig_sdw = VBox([fig_strain,fig_DW], layout = items_layout)\n", "\n", "fig_tot = HBox([fig_sdw, fig_XRD])\n", "\n", "savefitcancel = HBox([fit,save,cancel])\n", "\n", "dl_xrd = widgets.HTML(\"\")\n", "dl_sdw = widgets.HTML(\"\")\n", "\n", "if local:\n", " gui = VBox([load_button,tab,fig_tot, savefitcancel,out]) #Local notebook\n", "else:\n", " gui = VBox([upload_button,tab,fig_tot, savefitcancel, dl_xrd, dl_sdw, out]) #Web-hosted notebook\n", "\n", "gui\n", "\n", "#**************************\n", "#TODO: implement GSA for offline mode\n", "\n" ] } ], "metadata": { "hide_input": false, "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.12.7" }, "varInspector": { "cols": { "lenName": 16, "lenType": 16, "lenVar": 40 }, "kernels_config": { "python": { "delete_cmd_postfix": "", "delete_cmd_prefix": "del ", "library": "var_list.py", "varRefreshCmd": "print(var_dic_list())" }, "r": { "delete_cmd_postfix": ") ", "delete_cmd_prefix": "rm(", "library": "var_list.r", "varRefreshCmd": "cat(var_dic_list()) " } }, "types_to_exclude": [ "module", "function", "builtin_function_or_method", "instance", "_Feature" ], "window_display": false }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": { "01e1a1e9e1cd4ddc8598627f74707923": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "022e2ca27554403091498cd6222f5519": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "02b342e164fe45b288d4968ee4b8678d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Background", "layout": "IPY_MODEL_ce22a98492db4aa5a450dad9d6e54a2d", "placeholder": "Background", "value": "0." } }, "03ca75aee06d4886a6eb98f9ba8141d1": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Wavelength (A)", "layout": "IPY_MODEL_051ad276125c40a9bf112d981ae7961d", "placeholder": "Wavelength", "value": "1.5406" } }, "047cca2f212b41d1b85530a819840547": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "04b3ffb1e5b34b84a87a02072b2e6c5f": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "051ad276125c40a9bf112d981ae7961d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "07cf85bb2e4b43e2965c273b9a093c1e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_dc74953413a544bebbef06e2f20296d9", "IPY_MODEL_aaf893d4c83447559580faa2ff9f4ec8", "IPY_MODEL_3d890c4f3f7b41bb9f70139863a9907b" ], "layout": "IPY_MODEL_38fd933a19c6484ab6f5b4f434c7bf2b" } }, "080923cf410e4bffb738a43bb2504da3": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_493ad87ff6154b77b084a3da3b05c6cf", "IPY_MODEL_8fcc9b5c558544b3bc75c504c49e92fd", "IPY_MODEL_e4eed15d6abf41079fe820bdb807ed78", "IPY_MODEL_c06dd3d7156e4ac89dfa683ff1b6de2b" ], "layout": "IPY_MODEL_52f3b23cbcbe497fbd00bd78a2d1b0bd" } }, "08451bfa626e413387f81934741fd981": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "0b43d8eebf11451fb48788f18052543e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "0b87ff2463174c22b66a7abbbfe7817f": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Thickness (nm)", "layout": "IPY_MODEL_f434268cbc3f408d9128402992e48816", "placeholder": "Irradiated thickness (nm)", "value": "200" } }, "0c45d415ab7f4eff841937c026ee5779": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_ef8ab5e48d954ff58fbc9294908162b7", "IPY_MODEL_b27589063226437f9c10411e307adc03", "IPY_MODEL_15eb4b79d92b425794cbf0ded921d0b5" ], "layout": "IPY_MODEL_0e2d523d5c2b4ad0a84c68f4dd23c694" } }, "0d43bcc78f2b43958b6bd643d2bb2d8d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "0d553ef22b094062b71951b9ec04bf6c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "0de0091ac746469d98d1cc982620ef8a": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_1dedfc46980c438da3e1a620d2287158", "IPY_MODEL_17e9b7e5ccf947d088eaef46deed2dd2" ], "layout": "IPY_MODEL_cea7f8a1bfbb49b5ae932f3dc79ddb66" } }, "0e2d523d5c2b4ad0a84c68f4dd23c694": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "0fc12402d7624fc78da19033c8b058ae": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "1210c00847414c71b2becafa8ddf448b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Thickness (nm)", "layout": "IPY_MODEL_b25fa469a7bb422bad3c7ee35abf4407", "placeholder": "Irradiated thickness (nm)", "value": "200" } }, "128118b6b903448eaea837b7739ee909": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "12b208a0719b4463a934a49e2938b955": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_bd3a93bc2e1f4c809bddd90a28525495", "IPY_MODEL_4b7ae754790b4f6280148af4489a761d" ], "layout": "IPY_MODEL_132073142a20472384868fcf52e11b5e" } }, "12f6ebae94e340f8920cd1cd89a97148": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "132073142a20472384868fcf52e11b5e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "133c109275d845ffadde589d2d47ccea": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_c8b70cd487ce4ae0a7e87d60c8a04082", "IPY_MODEL_2136f7a489874134b54a25f42bb2ee89", "IPY_MODEL_88f215fe6dab4f6a9e70e00e6d9d654c" ], "layout": "IPY_MODEL_f8ef29541f6e43f08d73c4def62b2a9d" } }, "14039bf021d44b05b0a0bbbae667eb6b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Pseudo-Voigt", "Gaussian", "Lorentzian" ], "_view_module_version": "~2.1.4", "description": "Resolution", "layout": "IPY_MODEL_b237ebca2ab749ec9279082f313ae294", "value": "Pseudo-Voigt" } }, "143fd6b4cdd74206a5ee06794f4c6c98": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Single crystal", "Thin film", "Thick film", "Thick film + substrate" ], "_view_module_version": "~2.1.4", "description": "Sample", "layout": "IPY_MODEL_0d553ef22b094062b71951b9ec04bf6c", "value": "Single crystal" } }, "14e321b0e9704e2cb75ac3ee7bc39ada": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "15a5f6176ebf4e558cc8a46524d2c623": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "l", "layout": "IPY_MODEL_2daa1e4fe87443a2a7d3488af2f565f0", "placeholder": "l", "value": "0" } }, "15eb4b79d92b425794cbf0ded921d0b5": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Shape", "layout": "IPY_MODEL_44d5b4c0f90f4de09750d480ed844366", "placeholder": "eta", "value": "0.1" } }, "1609c69d8cba4076adab750a7a196980": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "163eb35e5f5542a5a83683bcc16e70f6": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "16455feae5dc47a3a2891e48306e5faf": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Basis functions", "layout": "IPY_MODEL_d7355b6686cd4fa3b7a8d9640f62f244", "placeholder": "Number of basis functions", "value": "6" } }, "16ec1f084f7d497d96d1921a758c2621": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "l", "layout": "IPY_MODEL_04b3ffb1e5b34b84a87a02072b2e6c5f", "placeholder": "l", "value": "0" } }, "1773d96fbc034129b9dfa56fb276721c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_34c8e4e09e324ffcaa1cb3b4139caa50", "IPY_MODEL_fa5b9cbaf05344bcbaa152eda1f64a24" ], "layout": "IPY_MODEL_d17d9bff9b7d428f915196ab1ca2e58e" } }, "17e9b7e5ccf947d088eaef46deed2dd2": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_68e45ebeddb64cc188e7976136c43b98", "IPY_MODEL_c756de02a2444424bc08d4bb3938464f" ], "layout": "IPY_MODEL_afe8d26de46b454cbe62123625ac4f0d" } }, "181d20882e0e4756b706199a4e7c71d5": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "1854f82b447d4428b2419b25e774859f": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "1ac2a650bfb144f0bb64b10e41c62ba7": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_ba891412ad8941ed8449b0a71bd9fb30", "IPY_MODEL_1cd434e200df4a3287d6dd16ca10429d" ], "layout": "IPY_MODEL_361c425234b44a9d8fd08378850f9a10" } }, "1b06fbc8452648cd983aa33675045de3": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "1b1ce12bf84a4867a826f10b863dc651": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_dc3096bbf1c143e197a724d0915923d8", "IPY_MODEL_5681b66f9310412e8f29cf64a086cca1" ], "layout": "IPY_MODEL_2ae1b2e062c349079d27545862c8321e" } }, "1b9f7bf27fea4ec5be3b6c6ef5ecf5b4": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "1cd434e200df4a3287d6dd16ca10429d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Basis functions", "layout": "IPY_MODEL_b78e229eb7bd485cbd10d92f2c5990f1", "placeholder": "Number of basis functions", "value": "6" } }, "1de636fbdd144ae082e1f9ac5c66d515": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "1dedfc46980c438da3e1a620d2287158": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_e3cad2050f8b402fb3ebafb71f5c2eec", "IPY_MODEL_16455feae5dc47a3a2891e48306e5faf" ], "layout": "IPY_MODEL_5097bbbe3a254c1982a228efc65767da" } }, "1e6b3aefd5f44bce9ef0815b76792a3a": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "B-splines smooth", "B-spline abrupt" ], "_view_module_version": "~2.1.4", "description": "Model", "layout": "IPY_MODEL_5d2b92d559c14f0fa46e37bc12b3295f", "value": "B-splines smooth" } }, "1ec97cead0154914817ee34f756dce39": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "SrTiO3.cif" ], "_view_module_version": "~2.1.4", "description": "Crystal", "layout": "IPY_MODEL_de0ba05a068a467c886d30243206d90b", "value": "SrTiO3.cif" } }, "1fd88921555041338e10f1c2999406c9": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "2136f7a489874134b54a25f42bb2ee89": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "FWHM (°)", "layout": "IPY_MODEL_65e544261a374440a5ab365edcdf9938", "placeholder": "Full width at half-maximum", "value": "0.003" } }, "213753488f9e405b94d03aafff67e8e3": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "21dd3f7acda249f581f27693c94f3332": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_9ed0696f6ec148cfbbd4cc5613c454bb", "IPY_MODEL_b7179e50c2b3444f92811e9af0404191" ], "layout": "IPY_MODEL_557b0a9c9d554dffbdb85b1b7e9925d0" } }, "22d3d69a9d904d4faae5f5496744993d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "2377e4209632450385b8c6e5d097408b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "239b70b5dda24765adfd261c2dbefa73": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Number of slices", "layout": "IPY_MODEL_cf68a6d90a4a480fa8f7813ea9863b70", "placeholder": "Number of slices", "value": "100" } }, "23f95150837747239450a370e11c8a27": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "2428e093366144bfbd785b555cf59f4e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "252056ee1b634f0088a1d99ce6a9f367": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "263fbe6c98c4490aae23a9cbe48eb852": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "2712adcefff445faabf594a9456a49bd": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Single crystal", "Thin film", "Thick film", "Thick film + substrate" ], "_view_module_version": "~2.1.4", "description": "Sample", "layout": "IPY_MODEL_4d6dccd3d15f499f93a5e368666a3ca3", "value": "Single crystal" } }, "290b42d5885c42588fdde167c2b9e76c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "2a96f6566d424bb8bf2797705553083b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "2aab23f08c8b41f6beaa49df3e4bcd2e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_080923cf410e4bffb738a43bb2504da3", "IPY_MODEL_3075c6b71ea64e9f9646c1faa5fc5c74" ], "layout": "IPY_MODEL_53e34df7adc74a5cb9bf5f90271f6d7c" } }, "2ab8de0847df4488bd24eaefa461d839": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "2ae1b2e062c349079d27545862c8321e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "2cece8ae58274107b668274cdc56432e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "2daa1e4fe87443a2a7d3488af2f565f0": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "2fd29fc594664da78a80c501471e0827": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Background", "layout": "IPY_MODEL_c28509d395d74b82a4b347809efa9b62", "placeholder": "Background", "value": "0." } }, "2ffccff6795541d4bd32e70d54999dff": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "3028205d98c04b97bf0bee8558fbb302": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "3075c6b71ea64e9f9646c1faa5fc5c74": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Single crystal", "Thin film", "Thick film", "Thick film + substrate" ], "_view_module_version": "~2.1.4", "description": "Sample", "layout": "IPY_MODEL_64f09dcba3e145f3a1aa7c7df916a3a5", "value": "Single crystal" } }, "312029fc5faf4354a577f82167404a50": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Background", "layout": "IPY_MODEL_d6e08c4d6f1e4188905b878529acb30f", "placeholder": "Background", "value": "0." } }, "31909de2a4f34faf9aa1f3ea40966142": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Basis functions", "layout": "IPY_MODEL_5388da8f750a4f57b02d7ee7944ab69e", "placeholder": "Number of basis functions", "value": "6" } }, "3268d529dbb94f1dab602d3f4def4733": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "32992b28f23f4eaab9d81c4e7ca639d7": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Background", "layout": "IPY_MODEL_ea89874dc7ee44588091f6422cf61217", "placeholder": "Background", "value": "0." } }, "33afc9d0613a4c9db61065b8f368aca9": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "34c8e4e09e324ffcaa1cb3b4139caa50": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_3c5ae15be6a349a686fa66a3fd58ee73", "IPY_MODEL_e6cc81b70c38436397ae0599f6eafd6c", "IPY_MODEL_a513eff9a588416696ffb490f039873e" ], "layout": "IPY_MODEL_e6eb2ab31cf94d0195dd175457e4e7b6" } }, "35696efdc2c544909730e175ae2c2e3f": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "361c425234b44a9d8fd08378850f9a10": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "3669c31e36974388a584383b3b70a809": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "h", "layout": "IPY_MODEL_a6529cfa415f4d089d0041ad80e91360", "placeholder": "h", "value": "0" } }, "38fd933a19c6484ab6f5b4f434c7bf2b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "393960dab8c7428e942331ff1fcedbb5": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "39a8a40f91b24dd8be858ada2e55030d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_ccb40e2fa35e4d069f1adba6fdaa3dad", "IPY_MODEL_8a7b3dcfc80d490f8458b265c0136724" ], "layout": "IPY_MODEL_b4d0e83bdb764b48910dbb56650562dc" } }, "3a128ef63a3843fab9250bc0e7d20ed2": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Wavelength (A)", "layout": "IPY_MODEL_d095f44b59c34d6d896f029664c987ee", "placeholder": "Wavelength", "value": "1.5406" } }, "3a76248cff414856840e1912be4ecc02": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "3c5ae15be6a349a686fa66a3fd58ee73": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Pseudo-Voigt", "Gaussian", "Lorentzian" ], "_view_module_version": "~2.1.4", "description": "Resolution", "layout": "IPY_MODEL_4fe3043fc9d24a77ad6ea5f4032c9056", "value": "Pseudo-Voigt" } }, "3d890c4f3f7b41bb9f70139863a9907b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Background", "layout": "IPY_MODEL_f397182b6e1c4e688fd21150369c2ae5", "placeholder": "Background", "value": "0." } }, "3e485df25eaf40448c6124d5ce70307c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_74b0cab678dc4d6a849606a55acc87dd", "IPY_MODEL_a901bed71dbd4fec8c4b81fca39d0c43", "IPY_MODEL_ae3f8f5af16a4144a5a72f70160638ad", "IPY_MODEL_16ec1f084f7d497d96d1921a758c2621" ], "layout": "IPY_MODEL_2a96f6566d424bb8bf2797705553083b" } }, "3feabbddb69e45838f77d79b3e44d1b4": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "3ffebd9906a4453e94568ac2f90719f7": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "40cf40c7a3094d4e9c9a796663157852": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "433b2861c5ed4f95bbe6197ef7824d84": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "443cdd33a9e04020a5b0ddf8b059a07d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_7daf23dc8cea4472943eda93334ec8ef", "IPY_MODEL_31909de2a4f34faf9aa1f3ea40966142" ], "layout": "IPY_MODEL_bb16debbb2c446029ec8f9f1a17a89cc" } }, "44a63b65700a436c83ed5f5e879b8595": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "44d5b4c0f90f4de09750d480ed844366": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "4584e377e51b40e6a7aed64571e78472": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "\\(2\\theta \\) offset (°)", "layout": "IPY_MODEL_6fa5556634ea4950bf762e381dde94a9", "placeholder": "2 theta offset", "value": "0." } }, "45c04d0ab69045779767991f479cf54b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "SrTiO3.cif" ], "_view_module_version": "~2.1.4", "description": "Crystal", "layout": "IPY_MODEL_c012b61f57044527b82d53f61ff569aa", "value": "SrTiO3.cif" } }, "461dacfe9a99497e93b2b56a0f0e20b5": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "493ad87ff6154b77b084a3da3b05c6cf": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "SrTiO3.cif" ], "_view_module_version": "~2.1.4", "description": "Crystal", "layout": "IPY_MODEL_4af939a4ba294f809b28382eb181e819", "value": "SrTiO3.cif" } }, "4af939a4ba294f809b28382eb181e819": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "4afc06fff8874d06988440d41d58dc93": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "4b7ae754790b4f6280148af4489a761d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_e75569b679574e69b589425ef4504bee", "IPY_MODEL_239b70b5dda24765adfd261c2dbefa73" ], "layout": "IPY_MODEL_3268d529dbb94f1dab602d3f4def4733" } }, "4b7c1a7c7d504f2ab055414ee091f88d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "4cd7733f84014012bb375a64bc7c7256": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "AccordionModel", "state": { "_model_module_version": "~2.1.4", "_titles": { "0": "Experimental Parameters", "1": "Material Parameters", "2": "Strain / Disorder" }, "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_7bd87629b95d40e1875f89093d360fe0", "IPY_MODEL_a0a27febffaf4dbe9872aa9f23e1096f", "IPY_MODEL_12b208a0719b4463a934a49e2938b955" ], "layout": "IPY_MODEL_252056ee1b634f0088a1d99ce6a9f367" } }, "4d539857ecf94810bcf974c0f7b1ff72": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "AccordionModel", "state": { "_model_module_version": "~2.1.4", "_titles": { "0": "Experimental Parameters", "1": "Material Parameters", "2": "Strain / Disorder" }, "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_dd5c99cb541e4697ac31b7c4cd1da22d", "IPY_MODEL_71502a598905442c9754d8d92e68fc45", "IPY_MODEL_ddbfe259326b4a34a2b5801077de9eb1" ], "layout": "IPY_MODEL_bf95a749992d4451907616b02074626d" } }, "4d6dccd3d15f499f93a5e368666a3ca3": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "4db067178fd04a24aca9a33cd723e415": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "4eed6df091a54673a3988e3c1945f4fe": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "AccordionModel", "state": { "_model_module_version": "~2.1.4", "_titles": { "0": "Experimental Parameters", "1": "Material Parameters", "2": "Strain / Disorder" }, "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_7bcc019cb74a41f496d497cefdd0a804", "IPY_MODEL_2aab23f08c8b41f6beaa49df3e4bcd2e", "IPY_MODEL_9234176593d84c5896b8dddadb8e804f" ], "layout": "IPY_MODEL_96a9cf617e8a4df6a84e0cc747782b0e", "selected_index": -1 } }, "4fe3043fc9d24a77ad6ea5f4032c9056": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "50434795399245b7a8e7c3a6dfc2be78": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "l", "layout": "IPY_MODEL_4db067178fd04a24aca9a33cd723e415", "placeholder": "l", "value": "0" } }, "5097bbbe3a254c1982a228efc65767da": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "523efb61586c4c50bc5a60b8fe6ed224": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Basis functions", "layout": "IPY_MODEL_cfd013224b314a9eb7bc3e389deb444a", "placeholder": "Number of basis functions", "value": "6" } }, "52db681b61674c90917253c27daa8b73": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "52f3b23cbcbe497fbd00bd78a2d1b0bd": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "535016ca7f3a4a1fbc9075ebfbcc797a": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "5388da8f750a4f57b02d7ee7944ab69e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "53cd2052c711499cb7adfb953428597e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "53e34df7adc74a5cb9bf5f90271f6d7c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "557b0a9c9d554dffbdb85b1b7e9925d0": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "55c7ce4c507844d086a77e5a6bdc4ae4": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "56639096223a4305b5cbdf36df8dfc9e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Wavelength (A)", "layout": "IPY_MODEL_2377e4209632450385b8c6e5d097408b", "placeholder": "Wavelength", "value": "1.5406" } }, "5681b66f9310412e8f29cf64a086cca1": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Basis functions", "layout": "IPY_MODEL_1b06fbc8452648cd983aa33675045de3", "placeholder": "Number of basis functions", "value": "6" } }, "56c361dfdb70488793df7e8f59d6b2e7": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "SrTiO3.cif" ], "_view_module_version": "~2.1.4", "description": "Crystal", "layout": "IPY_MODEL_88f9b242da304dfa824dab1f71d32a90", "value": "SrTiO3.cif" } }, "58f7ccc6fea54233912b8f134a341491": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "59dfeb9c46314755ab8fbe2ef17a3a40": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "5bf4607014354c46bac6cd201a15d7b3": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "5c875f1f60a148418065755db24a5d92": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Shape", "layout": "IPY_MODEL_33afc9d0613a4c9db61065b8f368aca9", "placeholder": "eta", "value": "0.1" } }, "5d2b92d559c14f0fa46e37bc12b3295f": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "5e27a2af440a4f3693852a6dfd18be99": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "5efc3c7747d649f7a25c83428ed9bc33": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "FWHM (°)", "layout": "IPY_MODEL_22d3d69a9d904d4faae5f5496744993d", "placeholder": "Full width at half-maximum", "value": "0.003" } }, "5f19746bf8484956ae1c0cb1e599fedd": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_56639096223a4305b5cbdf36df8dfc9e", "IPY_MODEL_be32278fa80d4add960cfd4114b1d8ec", "IPY_MODEL_99420b9ab2ba4aaa8070502c34d97a44" ], "layout": "IPY_MODEL_53cd2052c711499cb7adfb953428597e" } }, "61b59c32698d4c6da78d741b14b84d16": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "61e1b195fa294450a988a471cd6419a3": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "61fbfce41317443fa75ee9614e2538df": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "621afae08a6b423a95a56a5603ad7a02": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_dc40dfd1dfb246bea46fa8c5f2ed7959", "IPY_MODEL_ea56a1df1c704d989d21c94712c21f3b" ], "layout": "IPY_MODEL_adbcb9bc27984d08b37cde7524cf48a9" } }, "62465def71b9420e925dba7f23eadb63": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "63d651dd1b424e52ba4b71eb4cb6fe5c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "l", "layout": "IPY_MODEL_6c8e7604eebd463e892a3c34796508f2", "placeholder": "l", "value": "0" } }, "64310224de054d05be87f7b021091425": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_90f54ab372c643a7806462b16171386d", "IPY_MODEL_bdeb021ac56f4f5885eae1b2c16e6884", "IPY_MODEL_9aa303424caa423c8d0434f96e8ec80d", "IPY_MODEL_50434795399245b7a8e7c3a6dfc2be78" ], "layout": "IPY_MODEL_40cf40c7a3094d4e9c9a796663157852" } }, "64cb8c43907e4116afd9a7c8d5904eec": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "FWHM (°)", "layout": "IPY_MODEL_4afc06fff8874d06988440d41d58dc93", "placeholder": "Full width at half-maximum", "value": "0.003" } }, "64f09dcba3e145f3a1aa7c7df916a3a5": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "65bff97b2657404b8869f409bddc8c5e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Number of slices", "layout": "IPY_MODEL_f612f6b409524fb28ca13d1bf452efd7", "placeholder": "Number of slices", "value": "100" } }, "65ccd66b950645e6b5cdbec9bdd6af12": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_1210c00847414c71b2becafa8ddf448b", "IPY_MODEL_89c5f864878b40f5ad84532702a48b8c" ], "layout": "IPY_MODEL_f4226babf5df491a9343cee57709f984" } }, "65e544261a374440a5ab365edcdf9938": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "6657c896b552436dbdbdf8cd775eabe1": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Thickness (nm)", "layout": "IPY_MODEL_14e321b0e9704e2cb75ac3ee7bc39ada", "placeholder": "Irradiated thickness (nm)", "value": "200" } }, "67859f19990e4ade908c5936f7a0e37c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "68e45ebeddb64cc188e7976136c43b98": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Thickness (nm)", "layout": "IPY_MODEL_08451bfa626e413387f81934741fd981", "placeholder": "Irradiated thickness (nm)", "value": "200" } }, "6c8e7604eebd463e892a3c34796508f2": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "6cb2f1453f5a478f91571787702fb1e7": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "AccordionModel", "state": { "_model_module_version": "~2.1.4", "_titles": { "0": "Experimental Parameters", "1": "Material Parameters", "2": "Strain / Disorder" }, "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_7f669a325e9047ea8e05222d7d6c540f", "IPY_MODEL_824f066082434d4dad36089b42a2805e", "IPY_MODEL_7a7c1c5bc7804bb2aef03c9338692cbb" ], "layout": "IPY_MODEL_1b9f7bf27fea4ec5be3b6c6ef5ecf5b4" } }, "6cb639f7f5ae4ba6a7f84dd1ba1e6add": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "6d2b4d0c214740b5b2b80876b0525089": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_f7c6fad43b944446a76fbf596c080409", "IPY_MODEL_f24b67482c9544dc8ee6138464b2f674", "IPY_MODEL_312029fc5faf4354a577f82167404a50" ], "layout": "IPY_MODEL_12f6ebae94e340f8920cd1cd89a97148" } }, "6e53f4447491472885dc58007d133983": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Shape", "layout": "IPY_MODEL_db216d66f630478bb51f8f03ecef3c35", "placeholder": "eta", "value": "0.1" } }, "6fa5556634ea4950bf762e381dde94a9": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "71502a598905442c9754d8d92e68fc45": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_64310224de054d05be87f7b021091425", "IPY_MODEL_80124985e68b4b1e9e4cfa0b5f8a569b" ], "layout": "IPY_MODEL_2ab8de0847df4488bd24eaefa461d839" } }, "7157f2f346ff4b83b89c95ad8b0e1e8d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_3a128ef63a3843fab9250bc0e7d20ed2", "IPY_MODEL_4584e377e51b40e6a7aed64571e78472", "IPY_MODEL_02b342e164fe45b288d4968ee4b8678d" ], "layout": "IPY_MODEL_96f47c8f2a5d4de4a9dd7d6b6f639d3b" } }, "71f6fb39b3fe4cfdaa985e32dd4731ca": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "72d118cff2194dd9b253bc51f119f40c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "73d04f721ed34ab1b6d21d458f38b750": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "74b0cab678dc4d6a849606a55acc87dd": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "SrTiO3.cif" ], "_view_module_version": "~2.1.4", "description": "Crystal", "layout": "IPY_MODEL_1de636fbdd144ae082e1f9ac5c66d515", "value": "SrTiO3.cif" } }, "784c2bb9b7e94da3949772fd40e1e095": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Number of slices", "layout": "IPY_MODEL_93b59fe3fc044d8db89b95a95c97e309", "placeholder": "Number of slices", "value": "100" } }, "790ea191ee6646b5bb83aad35a55172c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_1ec97cead0154914817ee34f756dce39", "IPY_MODEL_3669c31e36974388a584383b3b70a809", "IPY_MODEL_832a98e2a878414986c41458066ab435", "IPY_MODEL_bb435e3e0b8746c58e4e4100d1c7f9fc" ], "layout": "IPY_MODEL_e22d54a1a2bc499ab19b1b70f0266030" } }, "7a1c35781d0e4497a494e479190046f4": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "AccordionModel", "state": { "_model_module_version": "~2.1.4", "_titles": { "0": "Experimental Parameters", "1": "Material Parameters", "2": "Strain / Disorder" }, "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_e0256ba0689d41acb3781967608716be", "IPY_MODEL_f2adf5a142c342ff91682d5fd86f0135", "IPY_MODEL_0de0091ac746469d98d1cc982620ef8a" ], "layout": "IPY_MODEL_022e2ca27554403091498cd6222f5519" } }, "7a1ea1d498a8496da6c73b9154b1850e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "AccordionModel", "state": { "_model_module_version": "~2.1.4", "_titles": { "0": "Experimental Parameters", "1": "Material Parameters", "2": "Strain / Disorder" }, "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_1773d96fbc034129b9dfa56fb276721c", "IPY_MODEL_621afae08a6b423a95a56a5603ad7a02", "IPY_MODEL_8e14213cd6cd4b03a46f99b31f96e63e" ], "layout": "IPY_MODEL_7a30e68b0e054686884f5883944a1fb7" } }, "7a30e68b0e054686884f5883944a1fb7": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "7a5267fe732440688a40f8beb880d64d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "k", "layout": "IPY_MODEL_8e66d4953f6e4a20b6cb62627b9ef706", "placeholder": "k", "value": "0" } }, "7a7c1c5bc7804bb2aef03c9338692cbb": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_21dd3f7acda249f581f27693c94f3332", "IPY_MODEL_39a8a40f91b24dd8be858ada2e55030d" ], "layout": "IPY_MODEL_acc0da2c68a64d39a10cbd30154a32a5" } }, "7bcc019cb74a41f496d497cefdd0a804": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_cd01bf9a7da74b82a752e3d264e46b06", "IPY_MODEL_07cf85bb2e4b43e2965c273b9a093c1e" ], "layout": "IPY_MODEL_949a04a4f5354ba2ad293ab1a945dd24" } }, "7bd87629b95d40e1875f89093d360fe0": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_b29508a4cf0640939358759ec65143ce", "IPY_MODEL_6d2b4d0c214740b5b2b80876b0525089" ], "layout": "IPY_MODEL_c4f79cf3854445119021b81072e50a0a" } }, "7c04aa8271c349308325029ed69bd047": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Number of slices", "layout": "IPY_MODEL_23f95150837747239450a370e11c8a27", "placeholder": "Number of slices", "value": "100" } }, "7daf23dc8cea4472943eda93334ec8ef": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "B-splines smooth", "B-spline abrupt" ], "_view_module_version": "~2.1.4", "description": "Model", "layout": "IPY_MODEL_f025f9010fb944f5abfa5a2e02d7631d", "value": "B-splines smooth" } }, "7efc22f8fcc84989af8b84f5fafa6cc0": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_8ae410fcc74d4b058c396078f62b0d35", "IPY_MODEL_143fd6b4cdd74206a5ee06794f4c6c98" ], "layout": "IPY_MODEL_7fe6f60d28c545c69f534b48cbf66652" } }, "7f669a325e9047ea8e05222d7d6c540f": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_133c109275d845ffadde589d2d47ccea", "IPY_MODEL_5f19746bf8484956ae1c0cb1e599fedd" ], "layout": "IPY_MODEL_d5f328679f0c4427bff0ef3edabe51f3" } }, "7fe6f60d28c545c69f534b48cbf66652": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "80124985e68b4b1e9e4cfa0b5f8a569b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Single crystal", "Thin film", "Thick film", "Thick film + substrate" ], "_view_module_version": "~2.1.4", "description": "Sample", "layout": "IPY_MODEL_9bdca68de6d24041ad8c1d9048c119c2", "value": "Single crystal" } }, "8153b9ee13804473814b8a4d75c8ab34": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "824f066082434d4dad36089b42a2805e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_790ea191ee6646b5bb83aad35a55172c", "IPY_MODEL_bf99cdbd44e148ee8256bff1a5a1a2f5" ], "layout": "IPY_MODEL_6cb639f7f5ae4ba6a7f84dd1ba1e6add" } }, "82d238d6b7ee4b17a8333acf95b3359d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "\\(2\\theta \\) offset (°)", "layout": "IPY_MODEL_cd32332bfc2e4d05a89f928095e1cb46", "placeholder": "2 theta offset", "value": "0." } }, "832a98e2a878414986c41458066ab435": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "k", "layout": "IPY_MODEL_ebe4b3b1450f4ed09ca2d45c3473c60e", "placeholder": "k", "value": "0" } }, "834cf4559d2a4a6a92e377fc34d1d7fa": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "83607d09d3a549719f44cbe4117ec3f7": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "k", "layout": "IPY_MODEL_047cca2f212b41d1b85530a819840547", "placeholder": "k", "value": "0" } }, "8370939114cb4edcbbba66d4c91412dd": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_1b1ce12bf84a4867a826f10b863dc651", "IPY_MODEL_9d07ac877a744eb8b95d29ead14bcc19" ], "layout": "IPY_MODEL_c2a1f50df49f45bc9651dcdf2348f44c" } }, "84a2f63be79845cf927061e3e9157a6d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_03ca75aee06d4886a6eb98f9ba8141d1", "IPY_MODEL_c3ba6b2c36c3478186578320011d0434", "IPY_MODEL_32992b28f23f4eaab9d81c4e7ca639d7" ], "layout": "IPY_MODEL_abf88a8ed1dc44849308fca46a73ac67" } }, "87ca6d7ad0e1449a885dc41abe433033": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_45c04d0ab69045779767991f479cf54b", "IPY_MODEL_b30b864d0dd5486ebe2d4dae5215c72e", "IPY_MODEL_83607d09d3a549719f44cbe4117ec3f7", "IPY_MODEL_63d651dd1b424e52ba4b71eb4cb6fe5c" ], "layout": "IPY_MODEL_290b42d5885c42588fdde167c2b9e76c" } }, "88f215fe6dab4f6a9e70e00e6d9d654c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Shape", "layout": "IPY_MODEL_8be4a912c71e4200ab48ec5f2ee0569e", "placeholder": "eta", "value": "0.1" } }, "88f9b242da304dfa824dab1f71d32a90": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "8997099dbd364b3b9b65782cc2f8c466": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "89c5f864878b40f5ad84532702a48b8c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Number of slices", "layout": "IPY_MODEL_bb11f2fe6bad47228a397d312e1d9324", "placeholder": "Number of slices", "value": "100" } }, "8a7b3dcfc80d490f8458b265c0136724": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Number of slices", "layout": "IPY_MODEL_8997099dbd364b3b9b65782cc2f8c466", "placeholder": "Number of slices", "value": "100" } }, "8aa2c367117c499e90b0465867264afa": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "8ae410fcc74d4b058c396078f62b0d35": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_56c361dfdb70488793df7e8f59d6b2e7", "IPY_MODEL_93af31ba96134e99b22cdcb7335a2cf3", "IPY_MODEL_7a5267fe732440688a40f8beb880d64d", "IPY_MODEL_a2917688e7c6423ca5ce76441654ec9e" ], "layout": "IPY_MODEL_163eb35e5f5542a5a83683bcc16e70f6" } }, "8be4a912c71e4200ab48ec5f2ee0569e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "8cd4a9f087ab43f591ec093f5d22a91c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Pseudo-Voigt", "Gaussian", "Lorentzian" ], "_view_module_version": "~2.1.4", "description": "Resolution", "layout": "IPY_MODEL_a2d650575f5545dc833af80e1c06ef4c", "value": "Pseudo-Voigt" } }, "8d30cc04694047f4badf22b1f2bda928": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "FWHM (°)", "layout": "IPY_MODEL_55c7ce4c507844d086a77e5a6bdc4ae4", "placeholder": "Full width at half-maximum", "value": "0.003" } }, "8e14213cd6cd4b03a46f99b31f96e63e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_1ac2a650bfb144f0bb64b10e41c62ba7", "IPY_MODEL_e0028c2c988b4504bd6d7acf9774a16b" ], "layout": "IPY_MODEL_71f6fb39b3fe4cfdaa985e32dd4731ca" } }, "8e66d4953f6e4a20b6cb62627b9ef706": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "8ee39c78747c4cd3b9cc875ed885c38b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "8fcc9b5c558544b3bc75c504c49e92fd": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "h", "layout": "IPY_MODEL_d1dc62243c4c4f398da4f028352b368b", "placeholder": "h", "value": "0" } }, "90f54ab372c643a7806462b16171386d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "SrTiO3.cif" ], "_view_module_version": "~2.1.4", "description": "Crystal", "layout": "IPY_MODEL_01e1a1e9e1cd4ddc8598627f74707923", "value": "SrTiO3.cif" } }, "9234176593d84c5896b8dddadb8e804f": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_443cdd33a9e04020a5b0ddf8b059a07d", "IPY_MODEL_65ccd66b950645e6b5cdbec9bdd6af12" ], "layout": "IPY_MODEL_ab7c78f70cef49b4a4615928c86c3678" } }, "93af31ba96134e99b22cdcb7335a2cf3": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "h", "layout": "IPY_MODEL_cd2e8442b98a46cd9a660bbd7347f558", "placeholder": "h", "value": "0" } }, "93b59fe3fc044d8db89b95a95c97e309": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "93f6356b283e4432b4d4d08a542a862b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "949a04a4f5354ba2ad293ab1a945dd24": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "96a9cf617e8a4df6a84e0cc747782b0e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "96f47c8f2a5d4de4a9dd7d6b6f639d3b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "9836cc9b18164924808465369960f6f6": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "h", "layout": "IPY_MODEL_52db681b61674c90917253c27daa8b73", "placeholder": "h", "value": "0" } }, "99420b9ab2ba4aaa8070502c34d97a44": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Background", "layout": "IPY_MODEL_8aa2c367117c499e90b0465867264afa", "placeholder": "Background", "value": "0." } }, "9aa303424caa423c8d0434f96e8ec80d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "k", "layout": "IPY_MODEL_9da123c4e64240fb98ffc29e79c192e5", "placeholder": "k", "value": "0" } }, "9bdca68de6d24041ad8c1d9048c119c2": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "9d07ac877a744eb8b95d29ead14bcc19": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_0b87ff2463174c22b66a7abbbfe7817f", "IPY_MODEL_65bff97b2657404b8869f409bddc8c5e" ], "layout": "IPY_MODEL_b9bf9ff0a7dc44bbb65a1bf6b1cad075" } }, "9da123c4e64240fb98ffc29e79c192e5": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "9ed0696f6ec148cfbbd4cc5613c454bb": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "B-splines smooth", "B-spline abrupt" ], "_view_module_version": "~2.1.4", "description": "Model", "layout": "IPY_MODEL_393960dab8c7428e942331ff1fcedbb5", "value": "B-splines smooth" } }, "9fabd08ddbfc40e5b2ac7d239e9edb60": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Wavelength (A)", "layout": "IPY_MODEL_433b2861c5ed4f95bbe6197ef7824d84", "placeholder": "Wavelength", "value": "1.5406" } }, "a0a27febffaf4dbe9872aa9f23e1096f": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_3e485df25eaf40448c6124d5ce70307c", "IPY_MODEL_c1ce105bba11497eb091da8092fe5403" ], "layout": "IPY_MODEL_ea66fe223d05433d9a2c3b5f1af31b16" } }, "a0eec8bf11ba460ba9ed5bc920b6dbc2": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "a2917688e7c6423ca5ce76441654ec9e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "l", "layout": "IPY_MODEL_3ffebd9906a4453e94568ac2f90719f7", "placeholder": "l", "value": "0" } }, "a2d650575f5545dc833af80e1c06ef4c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "a3d9912f017d424a89e0f2b5f9b2cfd8": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "a408be83e26f4cef9c54884e642a9f87": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "k", "layout": "IPY_MODEL_1854f82b447d4428b2419b25e774859f", "placeholder": "k", "value": "0" } }, "a513eff9a588416696ffb490f039873e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Shape", "layout": "IPY_MODEL_128118b6b903448eaea837b7739ee909", "placeholder": "eta", "value": "0.1" } }, "a5b15afae8e04ac89c35bd656c759dbb": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "a6529cfa415f4d089d0041ad80e91360": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "a7418d7a52c046c7989fb2e8c07d3162": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "a780c4552f224cb3897af7918b230146": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Basis functions", "layout": "IPY_MODEL_834cf4559d2a4a6a92e377fc34d1d7fa", "placeholder": "Number of basis functions", "value": "6" } }, "a7a441b41b654eb3bbe8534d2fc4fbbb": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "SrTiO3.cif" ], "_view_module_version": "~2.1.4", "description": "Crystal", "layout": "IPY_MODEL_3feabbddb69e45838f77d79b3e44d1b4", "value": "SrTiO3.cif" } }, "a8792b4122cc406084b2e5dc661f6f44": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_c21bc454f0f04334bdb70e99d19b0b83", "IPY_MODEL_c0e8392eb75a4c149865aa18a46f9cf5" ], "layout": "IPY_MODEL_ff1aa6d62e9d414580229e5ec7f6a377" } }, "a8fc67f127d745f8b30221611298c587": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Pseudo-Voigt", "Gaussian", "Lorentzian" ], "_view_module_version": "~2.1.4", "description": "Resolution", "layout": "IPY_MODEL_d4b08ceba4ae4b839356eb09eade90f2", "value": "Pseudo-Voigt" } }, "a901bed71dbd4fec8c4b81fca39d0c43": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "h", "layout": "IPY_MODEL_a7418d7a52c046c7989fb2e8c07d3162", "placeholder": "h", "value": "0" } }, "aaf893d4c83447559580faa2ff9f4ec8": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "\\(2\\theta \\) offset (°)", "layout": "IPY_MODEL_fc04e521f87b4ea38e348fe476ec5254", "placeholder": "2 theta offset", "value": "0." } }, "ab7c78f70cef49b4a4615928c86c3678": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "abf88a8ed1dc44849308fca46a73ac67": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "acc0da2c68a64d39a10cbd30154a32a5": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "adbcb9bc27984d08b37cde7524cf48a9": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "ae3f8f5af16a4144a5a72f70160638ad": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "k", "layout": "IPY_MODEL_f73353d1a30846feab04a48a2c58881b", "placeholder": "k", "value": "0" } }, "ae6324d5ccb74b1aa22adc63931f88f4": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Shape", "layout": "IPY_MODEL_461dacfe9a99497e93b2b56a0f0e20b5", "placeholder": "eta", "value": "0.1" } }, "afe8d26de46b454cbe62123625ac4f0d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "b237ebca2ab749ec9279082f313ae294": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "b25fa469a7bb422bad3c7ee35abf4407": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "b27589063226437f9c10411e307adc03": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "FWHM (°)", "layout": "IPY_MODEL_3028205d98c04b97bf0bee8558fbb302", "placeholder": "Full width at half-maximum", "value": "0.003" } }, "b29508a4cf0640939358759ec65143ce": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_14039bf021d44b05b0a0bbbae667eb6b", "IPY_MODEL_8d30cc04694047f4badf22b1f2bda928", "IPY_MODEL_5c875f1f60a148418065755db24a5d92" ], "layout": "IPY_MODEL_5bf4607014354c46bac6cd201a15d7b3" } }, "b2f450837656411baf5103d64f99952e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "b30b864d0dd5486ebe2d4dae5215c72e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "h", "layout": "IPY_MODEL_93f6356b283e4432b4d4d08a542a862b", "placeholder": "h", "value": "0" } }, "b381625e59974dda9e3c818f6945cd39": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "AccordionModel", "state": { "_model_module_version": "~2.1.4", "_titles": { "0": "Experimental Parameters", "1": "Material Parameters", "2": "Strain / Disorder" }, "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_a8792b4122cc406084b2e5dc661f6f44", "IPY_MODEL_7efc22f8fcc84989af8b84f5fafa6cc0", "IPY_MODEL_8370939114cb4edcbbba66d4c91412dd" ], "layout": "IPY_MODEL_0fc12402d7624fc78da19033c8b058ae" } }, "b4d0e83bdb764b48910dbb56650562dc": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "b62f03ba28684942ad340b4c8c1d826b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "b7179e50c2b3444f92811e9af0404191": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Basis functions", "layout": "IPY_MODEL_a0eec8bf11ba460ba9ed5bc920b6dbc2", "placeholder": "Number of basis functions", "value": "6" } }, "b78e229eb7bd485cbd10d92f2c5990f1": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "b959ea83b10c4e98bc2dcc6905f83b89": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_6657c896b552436dbdbdf8cd775eabe1", "IPY_MODEL_7c04aa8271c349308325029ed69bd047" ], "layout": "IPY_MODEL_b2f450837656411baf5103d64f99952e" } }, "b9bf9ff0a7dc44bbb65a1bf6b1cad075": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "ba8582d88668463498fe22bdf95e292b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_bcec7600e6624946adc0d96e8a1ba6b6", "IPY_MODEL_523efb61586c4c50bc5a60b8fe6ed224" ], "layout": "IPY_MODEL_0d43bcc78f2b43958b6bd643d2bb2d8d" } }, "ba891412ad8941ed8449b0a71bd9fb30": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "B-splines smooth", "B-spline abrupt" ], "_view_module_version": "~2.1.4", "description": "Model", "layout": "IPY_MODEL_44a63b65700a436c83ed5f5e879b8595", "value": "B-splines smooth" } }, "bb11f2fe6bad47228a397d312e1d9324": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "bb16debbb2c446029ec8f9f1a17a89cc": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "bb435e3e0b8746c58e4e4100d1c7f9fc": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "l", "layout": "IPY_MODEL_72d118cff2194dd9b253bc51f119f40c", "placeholder": "l", "value": "2" } }, "bcec7600e6624946adc0d96e8a1ba6b6": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "B-splines smooth", "B-spline abrupt" ], "_view_module_version": "~2.1.4", "description": "Model", "layout": "IPY_MODEL_5e27a2af440a4f3693852a6dfd18be99", "value": "B-splines smooth" } }, "bd3a93bc2e1f4c809bddd90a28525495": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_1e6b3aefd5f44bce9ef0815b76792a3a", "IPY_MODEL_a780c4552f224cb3897af7918b230146" ], "layout": "IPY_MODEL_e7b1bc15e5314c8b9dd77d2d0b797d47" } }, "bdeb021ac56f4f5885eae1b2c16e6884": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "h", "layout": "IPY_MODEL_c434ddc50fc94e32aef48a265bd61b6f", "placeholder": "h", "value": "0" } }, "be32278fa80d4add960cfd4114b1d8ec": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "\\(2\\theta \\) offset (°)", "layout": "IPY_MODEL_df90f419014a42c9a093a47e34d95191", "placeholder": "2 theta offset", "value": "0." } }, "bf95a749992d4451907616b02074626d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "bf99cdbd44e148ee8256bff1a5a1a2f5": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Single crystal", "Thin film", "Thick film", "Thick film + substrate" ], "_view_module_version": "~2.1.4", "description": "Sample", "layout": "IPY_MODEL_b62f03ba28684942ad340b4c8c1d826b", "value": "Single crystal" } }, "c012b61f57044527b82d53f61ff569aa": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "c06dd3d7156e4ac89dfa683ff1b6de2b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "l", "layout": "IPY_MODEL_1609c69d8cba4076adab750a7a196980", "placeholder": "l", "value": "0" } }, "c0e8392eb75a4c149865aa18a46f9cf5": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_9fabd08ddbfc40e5b2ac7d239e9edb60", "IPY_MODEL_82d238d6b7ee4b17a8333acf95b3359d", "IPY_MODEL_d20add6cdc9a4e08b97188a1527777d2" ], "layout": "IPY_MODEL_3a76248cff414856840e1912be4ecc02" } }, "c1110d16067146799f9106834e43ac57": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_8cd4a9f087ab43f591ec093f5d22a91c", "IPY_MODEL_64cb8c43907e4116afd9a7c8d5904eec", "IPY_MODEL_6e53f4447491472885dc58007d133983" ], "layout": "IPY_MODEL_535016ca7f3a4a1fbc9075ebfbcc797a" } }, "c1ce105bba11497eb091da8092fe5403": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Single crystal", "Thin film", "Thick film", "Thick film + substrate" ], "_view_module_version": "~2.1.4", "description": "Sample", "layout": "IPY_MODEL_181d20882e0e4756b706199a4e7c71d5", "value": "Single crystal" } }, "c21bc454f0f04334bdb70e99d19b0b83": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_a8fc67f127d745f8b30221611298c587", "IPY_MODEL_5efc3c7747d649f7a25c83428ed9bc33", "IPY_MODEL_ae6324d5ccb74b1aa22adc63931f88f4" ], "layout": "IPY_MODEL_a3d9912f017d424a89e0f2b5f9b2cfd8" } }, "c28509d395d74b82a4b347809efa9b62": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "c2a1f50df49f45bc9651dcdf2348f44c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "c3ba6b2c36c3478186578320011d0434": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "\\(2\\theta \\) offset (°)", "layout": "IPY_MODEL_213753488f9e405b94d03aafff67e8e3", "placeholder": "2 theta offset", "value": "0." } }, "c419a061e70849ca897123e42d7d4b49": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Shape", "layout": "IPY_MODEL_263fbe6c98c4490aae23a9cbe48eb852", "placeholder": "eta", "value": "0.1" } }, "c434ddc50fc94e32aef48a265bd61b6f": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "c4f79cf3854445119021b81072e50a0a": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "c756de02a2444424bc08d4bb3938464f": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Number of slices", "layout": "IPY_MODEL_2cece8ae58274107b668274cdc56432e", "placeholder": "Number of slices", "value": "100" } }, "c8b70cd487ce4ae0a7e87d60c8a04082": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Pseudo-Voigt", "Gaussian", "Lorentzian" ], "_view_module_version": "~2.1.4", "description": "Resolution", "layout": "IPY_MODEL_59dfeb9c46314755ab8fbe2ef17a3a40", "value": "Pseudo-Voigt" } }, "ccb40e2fa35e4d069f1adba6fdaa3dad": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Thickness (nm)", "layout": "IPY_MODEL_e5c23d20082b4927ae75718bfdb0ce0f", "placeholder": "Irradiated thickness (nm)", "value": "200" } }, "cd01bf9a7da74b82a752e3d264e46b06": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_eb7bc24914884751bf164586b8b2f689", "IPY_MODEL_e2dc690844834a0084d09425a8f4b38a", "IPY_MODEL_c419a061e70849ca897123e42d7d4b49" ], "layout": "IPY_MODEL_0b43d8eebf11451fb48788f18052543e" } }, "cd2e8442b98a46cd9a660bbd7347f558": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "cd32332bfc2e4d05a89f928095e1cb46": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "ce22a98492db4aa5a450dad9d6e54a2d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "ce5ac740b66541a8b727246fc53feae0": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "cea7f8a1bfbb49b5ae932f3dc79ddb66": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "cf68a6d90a4a480fa8f7813ea9863b70": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "cfd013224b314a9eb7bc3e389deb444a": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "d095f44b59c34d6d896f029664c987ee": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "d17d9bff9b7d428f915196ab1ca2e58e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "d1dc62243c4c4f398da4f028352b368b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "d20add6cdc9a4e08b97188a1527777d2": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Background", "layout": "IPY_MODEL_73d04f721ed34ab1b6d21d458f38b750", "placeholder": "Background", "value": "0." } }, "d4b08ceba4ae4b839356eb09eade90f2": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "d5f328679f0c4427bff0ef3edabe51f3": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "d6e08c4d6f1e4188905b878529acb30f": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "d7355b6686cd4fa3b7a8d9640f62f244": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "da459e706fe24840824cff6df1c2c380": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "db216d66f630478bb51f8f03ecef3c35": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "dc3096bbf1c143e197a724d0915923d8": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "B-splines smooth", "B-spline abrupt" ], "_view_module_version": "~2.1.4", "description": "Model", "layout": "IPY_MODEL_35696efdc2c544909730e175ae2c2e3f", "value": "B-splines smooth" } }, "dc40dfd1dfb246bea46fa8c5f2ed7959": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_a7a441b41b654eb3bbe8534d2fc4fbbb", "IPY_MODEL_9836cc9b18164924808465369960f6f6", "IPY_MODEL_a408be83e26f4cef9c54884e642a9f87", "IPY_MODEL_15a5f6176ebf4e558cc8a46524d2c623" ], "layout": "IPY_MODEL_67859f19990e4ade908c5936f7a0e37c" } }, "dc74953413a544bebbef06e2f20296d9": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Wavelength (A)", "layout": "IPY_MODEL_2ffccff6795541d4bd32e70d54999dff", "placeholder": "Wavelength", "value": "1.5406" } }, "dcdbcef6ce9548f3857cf27b536db516": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "dd5c99cb541e4697ac31b7c4cd1da22d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_c1110d16067146799f9106834e43ac57", "IPY_MODEL_7157f2f346ff4b83b89c95ad8b0e1e8d" ], "layout": "IPY_MODEL_4b7c1a7c7d504f2ab055414ee091f88d" } }, "ddbfe259326b4a34a2b5801077de9eb1": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_ba8582d88668463498fe22bdf95e292b", "IPY_MODEL_b959ea83b10c4e98bc2dcc6905f83b89" ], "layout": "IPY_MODEL_61fbfce41317443fa75ee9614e2538df" } }, "de0ba05a068a467c886d30243206d90b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "df90f419014a42c9a093a47e34d95191": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "e0028c2c988b4504bd6d7acf9774a16b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_eb29103869d54b56b92ab8a6d33aaa05", "IPY_MODEL_784c2bb9b7e94da3949772fd40e1e095" ], "layout": "IPY_MODEL_f174599edb10403a9251c9b764ea5a0a" } }, "e0256ba0689d41acb3781967608716be": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_0c45d415ab7f4eff841937c026ee5779", "IPY_MODEL_84a2f63be79845cf927061e3e9157a6d" ], "layout": "IPY_MODEL_e7d532169ca54758aecd659750695351" } }, "e22d54a1a2bc499ab19b1b70f0266030": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "e2dc690844834a0084d09425a8f4b38a": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "FWHM (°)", "layout": "IPY_MODEL_f5061b571b014fe2860231011fd7fa52", "placeholder": "Full width at half-maximum", "value": "0.003" } }, "e327f224461b4f3fa783989151fa4b12": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "e3cad2050f8b402fb3ebafb71f5c2eec": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "B-splines smooth", "B-spline abrupt" ], "_view_module_version": "~2.1.4", "description": "Model", "layout": "IPY_MODEL_dcdbcef6ce9548f3857cf27b536db516", "value": "B-splines smooth" } }, "e4eed15d6abf41079fe820bdb807ed78": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "k", "layout": "IPY_MODEL_58f7ccc6fea54233912b8f134a341491", "placeholder": "k", "value": "0" } }, "e5c23d20082b4927ae75718bfdb0ce0f": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "e6cc81b70c38436397ae0599f6eafd6c": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "FWHM (°)", "layout": "IPY_MODEL_da459e706fe24840824cff6df1c2c380", "placeholder": "Full width at half-maximum", "value": "0.003" } }, "e6eb2ab31cf94d0195dd175457e4e7b6": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "e75569b679574e69b589425ef4504bee": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Thickness (nm)", "layout": "IPY_MODEL_e327f224461b4f3fa783989151fa4b12", "placeholder": "Irradiated thickness (nm)", "value": "200" } }, "e7b1bc15e5314c8b9dd77d2d0b797d47": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "e7d532169ca54758aecd659750695351": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "ea56a1df1c704d989d21c94712c21f3b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Single crystal", "Thin film", "Thick film", "Thick film + substrate" ], "_view_module_version": "~2.1.4", "description": "Sample", "layout": "IPY_MODEL_2428e093366144bfbd785b555cf59f4e", "value": "Single crystal" } }, "ea66fe223d05433d9a2c3b5f1af31b16": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "ea89874dc7ee44588091f6422cf61217": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "eb29103869d54b56b92ab8a6d33aaa05": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Thickness (nm)", "layout": "IPY_MODEL_8153b9ee13804473814b8a4d75c8ab34", "placeholder": "Irradiated thickness (nm)", "value": "200" } }, "eb7bc24914884751bf164586b8b2f689": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Pseudo-Voigt", "Gaussian", "Lorentzian" ], "_view_module_version": "~2.1.4", "description": "Resolution", "layout": "IPY_MODEL_61b59c32698d4c6da78d741b14b84d16", "value": "Pseudo-Voigt" } }, "ebe4b3b1450f4ed09ca2d45c3473c60e": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "ee4038bcea104f28b8a3c02c6198a9ff": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Wavelength (A)", "layout": "IPY_MODEL_61e1b195fa294450a988a471cd6419a3", "placeholder": "Wavelength", "value": "1.5406" } }, "ef8ab5e48d954ff58fbc9294908162b7": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "DropdownModel", "state": { "_model_module_version": "~2.1.4", "_options_labels": [ "Pseudo-Voigt", "Gaussian", "Lorentzian" ], "_view_module_version": "~2.1.4", "description": "Resolution", "layout": "IPY_MODEL_a5b15afae8e04ac89c35bd656c759dbb", "value": "Pseudo-Voigt" } }, "f025f9010fb944f5abfa5a2e02d7631d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "f174599edb10403a9251c9b764ea5a0a": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "f2248cd3061449fab005d302670c4e9a": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "\\(2\\theta \\) offset (°)", "layout": "IPY_MODEL_1fd88921555041338e10f1c2999406c9", "placeholder": "2 theta offset", "value": "0." } }, "f24b67482c9544dc8ee6138464b2f674": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "\\(2\\theta \\) offset (°)", "layout": "IPY_MODEL_8ee39c78747c4cd3b9cc875ed885c38b", "placeholder": "2 theta offset", "value": "0." } }, "f2adf5a142c342ff91682d5fd86f0135": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "VBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_87ca6d7ad0e1449a885dc41abe433033", "IPY_MODEL_2712adcefff445faabf594a9456a49bd" ], "layout": "IPY_MODEL_ce5ac740b66541a8b727246fc53feae0" } }, "f397182b6e1c4e688fd21150369c2ae5": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "f3c8b209ea0d4588801f671a626bab2b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "f4226babf5df491a9343cee57709f984": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "f434268cbc3f408d9128402992e48816": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "f5061b571b014fe2860231011fd7fa52": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "f612f6b409524fb28ca13d1bf452efd7": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "f73353d1a30846feab04a48a2c58881b": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "f7c6fad43b944446a76fbf596c080409": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "TextModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "description": "Wavelength (A)", "layout": "IPY_MODEL_62465def71b9420e925dba7f23eadb63", "placeholder": "Wavelength", "value": "1.5406" } }, "f8ef29541f6e43f08d73c4def62b2a9d": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "fa5b9cbaf05344bcbaa152eda1f64a24": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "HBoxModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4", "children": [ "IPY_MODEL_ee4038bcea104f28b8a3c02c6198a9ff", "IPY_MODEL_f2248cd3061449fab005d302670c4e9a", "IPY_MODEL_2fd29fc594664da78a80c501471e0827" ], "layout": "IPY_MODEL_f3c8b209ea0d4588801f671a626bab2b" } }, "fc04e521f87b4ea38e348fe476ec5254": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } }, "ff1aa6d62e9d414580229e5ec7f6a377": { "model_module": "jupyter-js-widgets", "model_module_version": "~2.1.4", "model_name": "LayoutModel", "state": { "_model_module_version": "~2.1.4", "_view_module_version": "~2.1.4" } } }, "version_major": 1, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 4 }