mirror of
https://github.com/c-sooyoung/lemon-sandbox.git
synced 2026-11-16 04:07:59 +09:00
removed dates from directory names
This commit is contained in:
1 parent
464e5a4dd2
commit
b19ce33092
6 files changed
+38
-328
No files matched your search
@@ -0,0 +1,658 @@
|
||||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 1,
|
||||
"id": "11108e19",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import os\n",
|
||||
"\n",
|
||||
"from tqdm.notebook import tqdm\n",
|
||||
"\n",
|
||||
"import numpy as np\n",
|
||||
"from matplotlib import pyplot as plt\n",
|
||||
"from scipy.io import loadmat\n",
|
||||
"from scipy.ndimage import gaussian_filter\n",
|
||||
"from scipy.optimize import curve_fit\n",
|
||||
"from scipy.special import erf\n",
|
||||
"\n",
|
||||
"import kemstem"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 2,
|
||||
"id": "e3adee3c",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"def calculate_R(raw_data, regressed):\n",
|
||||
" sse = np.sum(np.square(raw_data - regressed))\n",
|
||||
" sst = np.sum(np.square(raw_data - raw_data.mean()))\n",
|
||||
" return 1 - sse/sst\n",
|
||||
"\n",
|
||||
"def fit(f, xdata, ydata, plot=False, **kwargs):\n",
|
||||
" xdata = np.array(xdata).flatten()\n",
|
||||
" ydata = np.array(ydata).flatten()\n",
|
||||
" if plot:\n",
|
||||
" plt.plot(xdata, ydata, 'k.')\n",
|
||||
" if 'sigma' in kwargs:\n",
|
||||
" plt.errorbar(xdata, ydata, kwargs['sigma'], fmt='none', c='k')\n",
|
||||
" popt, pcov = curve_fit(f, xdata, ydata, **kwargs)\n",
|
||||
" perr = np.sqrt(np.diag(pcov))\n",
|
||||
" R = calculate_R(ydata, f(xdata, *popt))\n",
|
||||
" if plot:\n",
|
||||
" xlim, ylim = plt.xlim(), plt.ylim()\n",
|
||||
" plt.xlim(*xlim)\n",
|
||||
" plt.ylim(*ylim)\n",
|
||||
" x = np.linspace(*xlim, 100)\n",
|
||||
" plt.plot(x, f(x, *popt), 'r--')\n",
|
||||
" plt.show()\n",
|
||||
" return popt, perr, R"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 3,
|
||||
"id": "89b917f7",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"results = {\n",
|
||||
" '2V': loadmat('./Si2V1-Niter1000.mat'),\n",
|
||||
" '5V': loadmat('./Si5V1-Niter1000.mat'),\n",
|
||||
" '8V': loadmat('./Si8V2-Niter1000.mat'),\n",
|
||||
" '30V': loadmat('./Si30V3-Niter1000.mat'),\n",
|
||||
"}"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 4,
|
||||
"id": "8a9f200f",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"DZ = {}\n",
|
||||
"recons = {}\n",
|
||||
"\n",
|
||||
"for key in results.keys():\n",
|
||||
" result = results[key]\n",
|
||||
" roi = result['p']['object_ROI'][0][0][0]\n",
|
||||
" roix = roi[0].T\n",
|
||||
" roiy = roi[1]\n",
|
||||
"\n",
|
||||
" DZ.update({key: result['outputs']['z_distance'].item().item()})\n",
|
||||
" recons.update({key: result['object'][roix, roiy]})"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 5,
|
||||
"id": "9db949e0",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"column_positions = {}\n",
|
||||
"\n",
|
||||
"for key in results.keys():\n",
|
||||
" recon = recons[key]\n",
|
||||
" image = np.unwrap(np.angle(recon[:,:,recon.shape[-1] // 2]))\n",
|
||||
" blurred_image = gaussian_filter(image, 1)\n",
|
||||
" distance = 2\n",
|
||||
" threshold = 0.5\n",
|
||||
" c0 = kemstem.find_columns(blurred_image, distance=distance, threshold=threshold)\n",
|
||||
"\n",
|
||||
" column_positions.update({key: c0})"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 18,
|
||||
"id": "93d22d50",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "71574260d3a2423992af4f220d1eaab5",
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
},
|
||||
"text/plain": [
|
||||
" 0%| | 0/1464 [00:00<?, ?it/s]"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "ce5ecef4c2094f8ba910f408c0df451b",
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
},
|
||||
"text/plain": [
|
||||
" 0%| | 0/968 [00:00<?, ?it/s]"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "77e9d752fafd4ed8ae1254a1d650de25",
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
},
|
||||
"text/plain": [
|
||||
" 0%| | 0/937 [00:00<?, ?it/s]"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "8ad11bdab7924dd6ab9e25641b882081",
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
},
|
||||
"text/plain": [
|
||||
" 0%| | 0/1014 [00:00<?, ?it/s]"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"WINDOW = 1\n",
|
||||
"\n",
|
||||
"column_lists = {}\n",
|
||||
"\n",
|
||||
"for key in results.keys():\n",
|
||||
"\n",
|
||||
" c0 = column_positions[key]\n",
|
||||
" recon = np.unwrap(np.angle(recons[key]))\n",
|
||||
"\n",
|
||||
" column_list = []\n",
|
||||
" for i, (cx, cy) in enumerate(tqdm(c0)):\n",
|
||||
" wx_start, wx_end = cx-WINDOW, cx+WINDOW+1\n",
|
||||
" wy_start, wy_end = cy-WINDOW, cy+WINDOW+1\n",
|
||||
" column = recon[wx_start:wx_end, wy_start:wy_end, :].mean(axis=(0, 1))\n",
|
||||
" column_list.append(column)\n",
|
||||
"\n",
|
||||
" column_lists.update({key: column_list})"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 19,
|
||||
"id": "4925866a",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"def double_erf(x, p, q, x0, x1):\n",
|
||||
" return p * (erf(q*(x - x0)) - erf(q*(x - x1)))\n",
|
||||
"\n",
|
||||
"def double_erf_plus_const(x, p0, p1, q, x0, x1):\n",
|
||||
" return p0 + double_erf(x, p1, q, x0, x1)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 20,
|
||||
"id": "62a285a5",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "c0d84b75cd0e421f855b2e461de7cc46",
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
},
|
||||
"text/plain": [
|
||||
" 0%| | 0/1464 [00:00<?, ?it/s]"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "684d882b7d994369b24c582d9607c7fa",
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
},
|
||||
"text/plain": [
|
||||
" 0%| | 0/968 [00:00<?, ?it/s]"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "a86516b159e448079c0f4599f5b8ee9b",
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
},
|
||||
"text/plain": [
|
||||
" 0%| | 0/937 [00:00<?, ?it/s]"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"application/vnd.jupyter.widget-view+json": {
|
||||
"model_id": "b6459ae17e304805a0a36a937ff4715d",
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
},
|
||||
"text/plain": [
|
||||
" 0%| | 0/1014 [00:00<?, ?it/s]"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"crystalline_heights = {}\n",
|
||||
"crystalline_height_errs = {}\n",
|
||||
"\n",
|
||||
"for key in results.keys():\n",
|
||||
"\n",
|
||||
" columns = column_lists[key]\n",
|
||||
" dz = DZ[key]\n",
|
||||
"\n",
|
||||
" crystalline = []\n",
|
||||
" crystalline_err = []\n",
|
||||
"\n",
|
||||
" for column in tqdm(columns):\n",
|
||||
" popt, perr, _ = fit(\n",
|
||||
" double_erf, np.arange(len(column)), column, plot=False,\n",
|
||||
" p0=[0.1, 0.3, 3, 12],\n",
|
||||
" # bounds=bounds,\n",
|
||||
" maxfev=10000\n",
|
||||
" )\n",
|
||||
" p1, q, x0, x1 = popt\n",
|
||||
" dp1, dq, dx0, dx1 = perr\n",
|
||||
"\n",
|
||||
" crystalline.append((x1 - x0) * dz)\n",
|
||||
" crystalline_err.append(dz * (dx0 + dx1) / 2)\n",
|
||||
"\n",
|
||||
" crystalline_heights.update({key: np.array(crystalline)})\n",
|
||||
" crystalline_height_errs.update({key: np.array(crystalline_err)})"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 21,
|
||||
"id": "6af86cf4",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"safe_height_indices = {}\n",
|
||||
"\n",
|
||||
"for key in results.keys():\n",
|
||||
" crystalline = crystalline_heights[key]\n",
|
||||
" crystalline_err = crystalline_height_errs[key]\n",
|
||||
"\n",
|
||||
" # safe_height_index = np.where(crystalline_err < crystalline / 10)\n",
|
||||
" safe_height_index = np.where(crystalline)\n",
|
||||
" safe_height_indices.update({key: safe_height_index})"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 22,
|
||||
"id": "8cfc6801",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"2V\n",
|
||||
"(573, 573)\n",
|
||||
"[71, 214, 358, 501]\n",
|
||||
"5V\n",
|
||||
"(580, 580)\n",
|
||||
"[72, 217, 362, 507]\n",
|
||||
"8V\n",
|
||||
"(581, 581)\n",
|
||||
"[72, 217, 363, 508]\n",
|
||||
"30V\n",
|
||||
"(541, 541)\n",
|
||||
"[67, 202, 338, 473]\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"for key, recon in recons.items():\n",
|
||||
" print(key)\n",
|
||||
" print(recon.shape[:-1])\n",
|
||||
" print([(recon.shape[0] * i) // 8 for i in [1, 3, 5, 7]])"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 23,
|
||||
"id": "9f30bf4b",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"thickness_rois = {\n",
|
||||
" '2V' : [[214, 358], [214, 358]],\n",
|
||||
" '5V' : [[217, 362], [ 72, 217]],\n",
|
||||
" '8V' : [[217, 363], [ 72, 217]],\n",
|
||||
" '30V': [[338, 473], [ 202, 338]]\n",
|
||||
"}"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 24,
|
||||
"id": "8f03ee83",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"roi_indices = {}\n",
|
||||
"\n",
|
||||
"for key in results.keys():\n",
|
||||
" c0 = column_positions[key]\n",
|
||||
" indices = []\n",
|
||||
" (x0, x1), (y0, y1) = thickness_rois[key]\n",
|
||||
" idx = np.where(\n",
|
||||
" (c0[:,0] >= y0) & (c0[:,0] <= y1) & (c0[:,1] >= x0) & (c0[:,1] <= x1) \n",
|
||||
" )\n",
|
||||
" indices.append(idx)\n",
|
||||
" roi_indices.update({key: indices})"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 25,
|
||||
"id": "45bba998",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"roi_crystalline_height_means = {}\n",
|
||||
"roi_crystalline_height_stds = {}\n",
|
||||
"roi_amorphous_height_means = {}\n",
|
||||
"roi_amorphous_height_stds = {}\n",
|
||||
"\n",
|
||||
"for key in results.keys():\n",
|
||||
"\n",
|
||||
" safe_idx = safe_height_indices[key]\n",
|
||||
" roi_idx = roi_indices[key]\n",
|
||||
" total_thickness = recons[key].shape[-1] * DZ[key]\n",
|
||||
"\n",
|
||||
" idx = np.intersect1d(safe_idx, roi_idx)\n",
|
||||
"\n",
|
||||
" height = crystalline_heights[key]\n",
|
||||
"\n",
|
||||
" crystalline_mean = height[idx].mean()\n",
|
||||
" crystalline_std = height[idx].std()\n",
|
||||
" amorphous_mean = (total_thickness - crystalline_mean) / 2\n",
|
||||
" amorphous_std = crystalline_std / 2\n",
|
||||
"\n",
|
||||
" roi_crystalline_height_means.update({key: crystalline_mean})\n",
|
||||
" roi_crystalline_height_stds.update({key: crystalline_std})\n",
|
||||
" roi_amorphous_height_means.update({key: amorphous_mean})\n",
|
||||
" roi_amorphous_height_stds.update({key: amorphous_std})"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 26,
|
||||
"id": "f61e53da",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"# idx = np.where(crystalline_height_errs['2V'] > crystalline_heights['2V'] / 10)[0]\n",
|
||||
"\n",
|
||||
"# if input(len(idx)) == 'y': pass\n",
|
||||
"\n",
|
||||
"# for i in idx[::10]:\n",
|
||||
"# c = column_lists['2V'][i]\n",
|
||||
"# z = np.arange(len(c)) * DZ['2V']\n",
|
||||
"\n",
|
||||
"# popt, perr, _ = fit(\n",
|
||||
"# double_erf, np.arange(len(c)), c, plot=True,\n",
|
||||
"# p0=[0.28181914, 0.30406586, 3.74047066, 12.6762897],\n",
|
||||
"# # bounds=bounds,\n",
|
||||
"# maxfev=10000\n",
|
||||
"# )\n",
|
||||
" \n",
|
||||
"# p1, q, x0, x1 = popt\n",
|
||||
"# dp1, dq, dx0, dx1 = perr\n",
|
||||
"\n",
|
||||
"# print((x1 - x0) * dz, dz * (dx0 + dx1) / 2, (dz * (dx0 + dx1) / 2) / (x1 - x0) * dz)\n",
|
||||
"\n",
|
||||
"# plt.show()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 27,
|
||||
"id": "d0926668",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"2V\n",
|
||||
"Crystalline thickness: 151.257 ± 64.435\n",
|
||||
"Amorphous thickness: 46.872 ± 32.217\n",
|
||||
"(# of counted columns = 102/102)\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 640x480 with 2 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"5V\n",
|
||||
"Crystalline thickness: 175.627 ± 8.677\n",
|
||||
"Amorphous thickness: 52.687 ± 4.339\n",
|
||||
"(# of counted columns = 102/102)\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 640x480 with 2 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"8V\n",
|
||||
"Crystalline thickness: 183.862 ± 19.102\n",
|
||||
"Amorphous thickness: 76.069 ± 9.551\n",
|
||||
"(# of counted columns = 118/118)\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 640x480 with 2 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
},
|
||||
{
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"30V\n",
|
||||
"Crystalline thickness: 75.191 ± 77.787\n",
|
||||
"Amorphous thickness: 302.404 ± 38.894\n",
|
||||
"(# of counted columns = 101/101)\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 640x480 with 2 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"for key in results.keys():\n",
|
||||
"\n",
|
||||
" recon = recons[key]\n",
|
||||
" heights = crystalline_heights[key]\n",
|
||||
" c0 = column_positions[key]\n",
|
||||
"\n",
|
||||
" crystalline_mean = roi_crystalline_height_means[key]\n",
|
||||
" crystalline_std = roi_crystalline_height_stds[key]\n",
|
||||
" amorphous_mean = roi_amorphous_height_means[key]\n",
|
||||
" amorphous_std = roi_amorphous_height_stds[key]\n",
|
||||
"\n",
|
||||
"\n",
|
||||
" safe_idx = safe_height_indices[key]\n",
|
||||
" roi_idx = roi_indices[key]\n",
|
||||
" idx = np.intersect1d(safe_idx, roi_idx)\n",
|
||||
"\n",
|
||||
" print(key)\n",
|
||||
" print(f\"Crystalline thickness: {crystalline_mean:.3f} ± {crystalline_std:.3f}\")\n",
|
||||
" print(f\"Amorphous thickness: {amorphous_mean:.3f} ± {amorphous_std:.3f}\")\n",
|
||||
" print(f\"(# of counted columns = {len(idx)}/{len(roi_idx[0][0])})\")\n",
|
||||
"\n",
|
||||
" (x0, x1), (y0, y1) = thickness_rois[key]\n",
|
||||
" plt.imshow(np.unwrap(np.angle(recon)).sum(axis=-1), cmap='gray')\n",
|
||||
" plt.plot([x0, x0, x1, x1, x0], [y0, y1, y1, y0, y0], lw=1, color='white', linestyle='--')\n",
|
||||
"\n",
|
||||
" plt.axis('off')\n",
|
||||
" plt.scatter(\n",
|
||||
" c0[:, 1][idx], c0[:, 0][idx], c=np.array(heights)[idx], s=8, cmap='magma_r',\n",
|
||||
" vmin=heights[safe_idx].min(),\n",
|
||||
" vmax=heights[safe_idx].max()\n",
|
||||
" )\n",
|
||||
" cbar = plt.colorbar()\n",
|
||||
" cbar.ax.set_ylabel('Atomic column thickness [A]')\n",
|
||||
" plt.show()\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 28,
|
||||
"id": "9701672b",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"<matplotlib.legend.Legend at 0x7fb817d810d0>"
|
||||
]
|
||||
},
|
||||
"execution_count": 28,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 900x900 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"voltages = []\n",
|
||||
"damage = []\n",
|
||||
"damage_err = []\n",
|
||||
"\n",
|
||||
"for key in results.keys():\n",
|
||||
" voltages.append(float(key[:-1]))\n",
|
||||
" damage.append(roi_amorphous_height_means[key])\n",
|
||||
" damage_err.append(roi_amorphous_height_stds[key])\n",
|
||||
"\n",
|
||||
"plt.figure(figsize=(3, 3), dpi=300)\n",
|
||||
"\n",
|
||||
"plt.errorbar(voltages, damage, damage_err,\n",
|
||||
" fmt=\"o\", capsize=3, capthick=1, label=\"Current study\",\n",
|
||||
" zorder=100, color='k'\n",
|
||||
" )\n",
|
||||
"plt.plot([30, 8, 5, 2], [220, 70, 40, 10], '*', label='Uzuhashi et al. (2024)\\n(Amorphous)')\n",
|
||||
"plt.plot([30, 8, 5, 2], [290, 100, 70, 70], 'p', label='Uzuhashi et al. (2024)\\n(Total damage)')\n",
|
||||
"plt.plot([30, 5, 2], [220, 66, 31], 's', label='Burnett et al. (2015)')\n",
|
||||
"plt.plot([30, 5, 2], [220, 25, 10], 'v', label='Mayer et al. (2007)')\n",
|
||||
"plt.plot([30, 5, 2], [210, 20, 10], '<', label='Giannuzzi et al. (2005)')\n",
|
||||
"plt.plot([30, 10], [200, 100], '>', label='Kato et al. (1999)')\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"plt.xlabel(\"FIB voltage [keV]\")\n",
|
||||
"plt.ylabel(\"Si damage [Å]\")\n",
|
||||
"plt.legend(fontsize=7)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"id": "fca8df26",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": []
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "lemon",
|
||||
"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.12"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
Reference in new issue
Block a user