You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

4201 lines
1.2 MiB

1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
  1. {
  2. "cells": [
  3. {
  4. "attachments": {},
  5. "cell_type": "markdown",
  6. "metadata": {},
  7. "source": [
  8. "# Import supporting package"
  9. ]
  10. },
  11. {
  12. "cell_type": "code",
  13. "execution_count": 63,
  14. "metadata": {},
  15. "outputs": [],
  16. "source": [
  17. "import xarray as xr\n",
  18. "import numpy as np\n",
  19. "import copy\n",
  20. "\n",
  21. "from uncertainties import ufloat\n",
  22. "from uncertainties import unumpy as unp\n",
  23. "from uncertainties import umath\n",
  24. "import random\n",
  25. "import matplotlib.pyplot as plt\n",
  26. "plt.rcParams['font.size'] = 12\n",
  27. "\n",
  28. "from DataContainer.ReadData import read_hdf5_file\n",
  29. "from Analyser.ImagingAnalyser import ImageAnalyser\n",
  30. "from Analyser.FitAnalyser import FitAnalyser\n",
  31. "from Analyser.FitAnalyser import NewFitModel, DensityProfileBEC2dModel\n",
  32. "from ToolFunction.ToolFunction import *\n",
  33. "\n",
  34. "from scipy.optimize import curve_fit\n",
  35. "\n",
  36. "from ToolFunction.HomeMadeXarrayFunction import errorbar, dataarray_plot_errorbar\n",
  37. "xr.plot.dataarray_plot.errorbar = errorbar\n",
  38. "xr.plot.accessor.DataArrayPlotAccessor.errorbar = dataarray_plot_errorbar\n",
  39. "\n",
  40. "imageAnalyser = ImageAnalyser()\n",
  41. "\n",
  42. "# %matplotlib notebook"
  43. ]
  44. },
  45. {
  46. "attachments": {},
  47. "cell_type": "markdown",
  48. "metadata": {},
  49. "source": [
  50. "## Start a client for parallel computing"
  51. ]
  52. },
  53. {
  54. "cell_type": "code",
  55. "execution_count": 64,
  56. "metadata": {},
  57. "outputs": [
  58. {
  59. "name": "stderr",
  60. "output_type": "stream",
  61. "text": [
  62. "C:\\Users\\data\\AppData\\Roaming\\Python\\Python39\\site-packages\\distributed\\node.py:182: UserWarning: Port 8787 is already in use.\n",
  63. "Perhaps you already have a cluster running?\n",
  64. "Hosting the HTTP server on port 52367 instead\n",
  65. " warnings.warn(\n"
  66. ]
  67. },
  68. {
  69. "data": {
  70. "text/html": [
  71. "<div>\n",
  72. " <div style=\"width: 24px; height: 24px; background-color: #e1e1e1; border: 3px solid #9D9D9D; border-radius: 5px; position: absolute;\"> </div>\n",
  73. " <div style=\"margin-left: 48px;\">\n",
  74. " <h3 style=\"margin-bottom: 0px;\">Client</h3>\n",
  75. " <p style=\"color: #9D9D9D; margin-bottom: 0px;\">Client-b21bc166-4363-11ee-942c-80e82ce2fa8e</p>\n",
  76. " <table style=\"width: 100%; text-align: left;\">\n",
  77. "\n",
  78. " <tr>\n",
  79. " \n",
  80. " <td style=\"text-align: left;\"><strong>Connection method:</strong> Cluster object</td>\n",
  81. " <td style=\"text-align: left;\"><strong>Cluster type:</strong> distributed.LocalCluster</td>\n",
  82. " \n",
  83. " </tr>\n",
  84. "\n",
  85. " \n",
  86. " <tr>\n",
  87. " <td style=\"text-align: left;\">\n",
  88. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:52367/status\" target=\"_blank\">http://127.0.0.1:52367/status</a>\n",
  89. " </td>\n",
  90. " <td style=\"text-align: left;\"></td>\n",
  91. " </tr>\n",
  92. " \n",
  93. "\n",
  94. " </table>\n",
  95. "\n",
  96. " \n",
  97. "\n",
  98. " \n",
  99. " <details>\n",
  100. " <summary style=\"margin-bottom: 20px;\"><h3 style=\"display: inline;\">Cluster Info</h3></summary>\n",
  101. " <div class=\"jp-RenderedHTMLCommon jp-RenderedHTML jp-mod-trusted jp-OutputArea-output\">\n",
  102. " <div style=\"width: 24px; height: 24px; background-color: #e1e1e1; border: 3px solid #9D9D9D; border-radius: 5px; position: absolute;\">\n",
  103. " </div>\n",
  104. " <div style=\"margin-left: 48px;\">\n",
  105. " <h3 style=\"margin-bottom: 0px; margin-top: 0px;\">LocalCluster</h3>\n",
  106. " <p style=\"color: #9D9D9D; margin-bottom: 0px;\">f17f13c5</p>\n",
  107. " <table style=\"width: 100%; text-align: left;\">\n",
  108. " <tr>\n",
  109. " <td style=\"text-align: left;\">\n",
  110. " <strong>Dashboard:</strong> <a href=\"http://127.0.0.1:52367/status\" target=\"_blank\">http://127.0.0.1:52367/status</a>\n",
  111. " </td>\n",
  112. " <td style=\"text-align: left;\">\n",
  113. " <strong>Workers:</strong> 8\n",
  114. " </td>\n",
  115. " </tr>\n",
  116. " <tr>\n",
  117. " <td style=\"text-align: left;\">\n",
  118. " <strong>Total threads:</strong> 128\n",
  119. " </td>\n",
  120. " <td style=\"text-align: left;\">\n",
  121. " <strong>Total memory:</strong> 149.01 GiB\n",
  122. " </td>\n",
  123. " </tr>\n",
  124. " \n",
  125. " <tr>\n",
  126. " <td style=\"text-align: left;\"><strong>Status:</strong> running</td>\n",
  127. " <td style=\"text-align: left;\"><strong>Using processes:</strong> True</td>\n",
  128. "</tr>\n",
  129. "\n",
  130. " \n",
  131. " </table>\n",
  132. "\n",
  133. " <details>\n",
  134. " <summary style=\"margin-bottom: 20px;\">\n",
  135. " <h3 style=\"display: inline;\">Scheduler Info</h3>\n",
  136. " </summary>\n",
  137. "\n",
  138. " <div style=\"\">\n",
  139. " <div>\n",
  140. " <div style=\"width: 24px; height: 24px; background-color: #FFF7E5; border: 3px solid #FF6132; border-radius: 5px; position: absolute;\"> </div>\n",
  141. " <div style=\"margin-left: 48px;\">\n",
  142. " <h3 style=\"margin-bottom: 0px;\">Scheduler</h3>\n",
  143. " <p style=\"color: #9D9D9D; margin-bottom: 0px;\">Scheduler-cfebc6e8-3543-4422-83e0-ad5571cb200d</p>\n",
  144. " <table style=\"width: 100%; text-align: left;\">\n",
  145. " <tr>\n",
  146. " <td style=\"text-align: left;\">\n",
  147. " <strong>Comm:</strong> tcp://127.0.0.1:52370\n",
  148. " </td>\n",
  149. " <td style=\"text-align: left;\">\n",
  150. " <strong>Workers:</strong> 8\n",
  151. " </td>\n",
  152. " </tr>\n",
  153. " <tr>\n",
  154. " <td style=\"text-align: left;\">\n",
  155. " <strong>Dashboard:</strong> <a href=\"http://127.0.0.1:52367/status\" target=\"_blank\">http://127.0.0.1:52367/status</a>\n",
  156. " </td>\n",
  157. " <td style=\"text-align: left;\">\n",
  158. " <strong>Total threads:</strong> 128\n",
  159. " </td>\n",
  160. " </tr>\n",
  161. " <tr>\n",
  162. " <td style=\"text-align: left;\">\n",
  163. " <strong>Started:</strong> Just now\n",
  164. " </td>\n",
  165. " <td style=\"text-align: left;\">\n",
  166. " <strong>Total memory:</strong> 149.01 GiB\n",
  167. " </td>\n",
  168. " </tr>\n",
  169. " </table>\n",
  170. " </div>\n",
  171. " </div>\n",
  172. "\n",
  173. " <details style=\"margin-left: 48px;\">\n",
  174. " <summary style=\"margin-bottom: 20px;\">\n",
  175. " <h3 style=\"display: inline;\">Workers</h3>\n",
  176. " </summary>\n",
  177. "\n",
  178. " \n",
  179. " <div style=\"margin-bottom: 20px;\">\n",
  180. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  181. " <div style=\"margin-left: 48px;\">\n",
  182. " <details>\n",
  183. " <summary>\n",
  184. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 0</h4>\n",
  185. " </summary>\n",
  186. " <table style=\"width: 100%; text-align: left;\">\n",
  187. " <tr>\n",
  188. " <td style=\"text-align: left;\">\n",
  189. " <strong>Comm: </strong> tcp://127.0.0.1:52406\n",
  190. " </td>\n",
  191. " <td style=\"text-align: left;\">\n",
  192. " <strong>Total threads: </strong> 16\n",
  193. " </td>\n",
  194. " </tr>\n",
  195. " <tr>\n",
  196. " <td style=\"text-align: left;\">\n",
  197. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:52410/status\" target=\"_blank\">http://127.0.0.1:52410/status</a>\n",
  198. " </td>\n",
  199. " <td style=\"text-align: left;\">\n",
  200. " <strong>Memory: </strong> 18.63 GiB\n",
  201. " </td>\n",
  202. " </tr>\n",
  203. " <tr>\n",
  204. " <td style=\"text-align: left;\">\n",
  205. " <strong>Nanny: </strong> tcp://127.0.0.1:52373\n",
  206. " </td>\n",
  207. " <td style=\"text-align: left;\"></td>\n",
  208. " </tr>\n",
  209. " <tr>\n",
  210. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  211. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-1_z2lt_0\n",
  212. " </td>\n",
  213. " </tr>\n",
  214. "\n",
  215. " \n",
  216. "\n",
  217. " \n",
  218. "\n",
  219. " </table>\n",
  220. " </details>\n",
  221. " </div>\n",
  222. " </div>\n",
  223. " \n",
  224. " <div style=\"margin-bottom: 20px;\">\n",
  225. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  226. " <div style=\"margin-left: 48px;\">\n",
  227. " <details>\n",
  228. " <summary>\n",
  229. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 1</h4>\n",
  230. " </summary>\n",
  231. " <table style=\"width: 100%; text-align: left;\">\n",
  232. " <tr>\n",
  233. " <td style=\"text-align: left;\">\n",
  234. " <strong>Comm: </strong> tcp://127.0.0.1:52417\n",
  235. " </td>\n",
  236. " <td style=\"text-align: left;\">\n",
  237. " <strong>Total threads: </strong> 16\n",
  238. " </td>\n",
  239. " </tr>\n",
  240. " <tr>\n",
  241. " <td style=\"text-align: left;\">\n",
  242. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:52418/status\" target=\"_blank\">http://127.0.0.1:52418/status</a>\n",
  243. " </td>\n",
  244. " <td style=\"text-align: left;\">\n",
  245. " <strong>Memory: </strong> 18.63 GiB\n",
  246. " </td>\n",
  247. " </tr>\n",
  248. " <tr>\n",
  249. " <td style=\"text-align: left;\">\n",
  250. " <strong>Nanny: </strong> tcp://127.0.0.1:52374\n",
  251. " </td>\n",
  252. " <td style=\"text-align: left;\"></td>\n",
  253. " </tr>\n",
  254. " <tr>\n",
  255. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  256. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-iq7wc4yz\n",
  257. " </td>\n",
  258. " </tr>\n",
  259. "\n",
  260. " \n",
  261. "\n",
  262. " \n",
  263. "\n",
  264. " </table>\n",
  265. " </details>\n",
  266. " </div>\n",
  267. " </div>\n",
  268. " \n",
  269. " <div style=\"margin-bottom: 20px;\">\n",
  270. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  271. " <div style=\"margin-left: 48px;\">\n",
  272. " <details>\n",
  273. " <summary>\n",
  274. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 2</h4>\n",
  275. " </summary>\n",
  276. " <table style=\"width: 100%; text-align: left;\">\n",
  277. " <tr>\n",
  278. " <td style=\"text-align: left;\">\n",
  279. " <strong>Comm: </strong> tcp://127.0.0.1:52412\n",
  280. " </td>\n",
  281. " <td style=\"text-align: left;\">\n",
  282. " <strong>Total threads: </strong> 16\n",
  283. " </td>\n",
  284. " </tr>\n",
  285. " <tr>\n",
  286. " <td style=\"text-align: left;\">\n",
  287. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:52415/status\" target=\"_blank\">http://127.0.0.1:52415/status</a>\n",
  288. " </td>\n",
  289. " <td style=\"text-align: left;\">\n",
  290. " <strong>Memory: </strong> 18.63 GiB\n",
  291. " </td>\n",
  292. " </tr>\n",
  293. " <tr>\n",
  294. " <td style=\"text-align: left;\">\n",
  295. " <strong>Nanny: </strong> tcp://127.0.0.1:52375\n",
  296. " </td>\n",
  297. " <td style=\"text-align: left;\"></td>\n",
  298. " </tr>\n",
  299. " <tr>\n",
  300. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  301. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-4s052vw8\n",
  302. " </td>\n",
  303. " </tr>\n",
  304. "\n",
  305. " \n",
  306. "\n",
  307. " \n",
  308. "\n",
  309. " </table>\n",
  310. " </details>\n",
  311. " </div>\n",
  312. " </div>\n",
  313. " \n",
  314. " <div style=\"margin-bottom: 20px;\">\n",
  315. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  316. " <div style=\"margin-left: 48px;\">\n",
  317. " <details>\n",
  318. " <summary>\n",
  319. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 3</h4>\n",
  320. " </summary>\n",
  321. " <table style=\"width: 100%; text-align: left;\">\n",
  322. " <tr>\n",
  323. " <td style=\"text-align: left;\">\n",
  324. " <strong>Comm: </strong> tcp://127.0.0.1:52420\n",
  325. " </td>\n",
  326. " <td style=\"text-align: left;\">\n",
  327. " <strong>Total threads: </strong> 16\n",
  328. " </td>\n",
  329. " </tr>\n",
  330. " <tr>\n",
  331. " <td style=\"text-align: left;\">\n",
  332. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:52421/status\" target=\"_blank\">http://127.0.0.1:52421/status</a>\n",
  333. " </td>\n",
  334. " <td style=\"text-align: left;\">\n",
  335. " <strong>Memory: </strong> 18.63 GiB\n",
  336. " </td>\n",
  337. " </tr>\n",
  338. " <tr>\n",
  339. " <td style=\"text-align: left;\">\n",
  340. " <strong>Nanny: </strong> tcp://127.0.0.1:52376\n",
  341. " </td>\n",
  342. " <td style=\"text-align: left;\"></td>\n",
  343. " </tr>\n",
  344. " <tr>\n",
  345. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  346. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-u1n0zi10\n",
  347. " </td>\n",
  348. " </tr>\n",
  349. "\n",
  350. " \n",
  351. "\n",
  352. " \n",
  353. "\n",
  354. " </table>\n",
  355. " </details>\n",
  356. " </div>\n",
  357. " </div>\n",
  358. " \n",
  359. " <div style=\"margin-bottom: 20px;\">\n",
  360. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  361. " <div style=\"margin-left: 48px;\">\n",
  362. " <details>\n",
  363. " <summary>\n",
  364. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 4</h4>\n",
  365. " </summary>\n",
  366. " <table style=\"width: 100%; text-align: left;\">\n",
  367. " <tr>\n",
  368. " <td style=\"text-align: left;\">\n",
  369. " <strong>Comm: </strong> tcp://127.0.0.1:52423\n",
  370. " </td>\n",
  371. " <td style=\"text-align: left;\">\n",
  372. " <strong>Total threads: </strong> 16\n",
  373. " </td>\n",
  374. " </tr>\n",
  375. " <tr>\n",
  376. " <td style=\"text-align: left;\">\n",
  377. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:52424/status\" target=\"_blank\">http://127.0.0.1:52424/status</a>\n",
  378. " </td>\n",
  379. " <td style=\"text-align: left;\">\n",
  380. " <strong>Memory: </strong> 18.63 GiB\n",
  381. " </td>\n",
  382. " </tr>\n",
  383. " <tr>\n",
  384. " <td style=\"text-align: left;\">\n",
  385. " <strong>Nanny: </strong> tcp://127.0.0.1:52377\n",
  386. " </td>\n",
  387. " <td style=\"text-align: left;\"></td>\n",
  388. " </tr>\n",
  389. " <tr>\n",
  390. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  391. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-3vuc5miu\n",
  392. " </td>\n",
  393. " </tr>\n",
  394. "\n",
  395. " \n",
  396. "\n",
  397. " \n",
  398. "\n",
  399. " </table>\n",
  400. " </details>\n",
  401. " </div>\n",
  402. " </div>\n",
  403. " \n",
  404. " <div style=\"margin-bottom: 20px;\">\n",
  405. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  406. " <div style=\"margin-left: 48px;\">\n",
  407. " <details>\n",
  408. " <summary>\n",
  409. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 5</h4>\n",
  410. " </summary>\n",
  411. " <table style=\"width: 100%; text-align: left;\">\n",
  412. " <tr>\n",
  413. " <td style=\"text-align: left;\">\n",
  414. " <strong>Comm: </strong> tcp://127.0.0.1:52405\n",
  415. " </td>\n",
  416. " <td style=\"text-align: left;\">\n",
  417. " <strong>Total threads: </strong> 16\n",
  418. " </td>\n",
  419. " </tr>\n",
  420. " <tr>\n",
  421. " <td style=\"text-align: left;\">\n",
  422. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:52407/status\" target=\"_blank\">http://127.0.0.1:52407/status</a>\n",
  423. " </td>\n",
  424. " <td style=\"text-align: left;\">\n",
  425. " <strong>Memory: </strong> 18.63 GiB\n",
  426. " </td>\n",
  427. " </tr>\n",
  428. " <tr>\n",
  429. " <td style=\"text-align: left;\">\n",
  430. " <strong>Nanny: </strong> tcp://127.0.0.1:52378\n",
  431. " </td>\n",
  432. " <td style=\"text-align: left;\"></td>\n",
  433. " </tr>\n",
  434. " <tr>\n",
  435. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  436. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-suw918q8\n",
  437. " </td>\n",
  438. " </tr>\n",
  439. "\n",
  440. " \n",
  441. "\n",
  442. " \n",
  443. "\n",
  444. " </table>\n",
  445. " </details>\n",
  446. " </div>\n",
  447. " </div>\n",
  448. " \n",
  449. " <div style=\"margin-bottom: 20px;\">\n",
  450. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  451. " <div style=\"margin-left: 48px;\">\n",
  452. " <details>\n",
  453. " <summary>\n",
  454. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 6</h4>\n",
  455. " </summary>\n",
  456. " <table style=\"width: 100%; text-align: left;\">\n",
  457. " <tr>\n",
  458. " <td style=\"text-align: left;\">\n",
  459. " <strong>Comm: </strong> tcp://127.0.0.1:52409\n",
  460. " </td>\n",
  461. " <td style=\"text-align: left;\">\n",
  462. " <strong>Total threads: </strong> 16\n",
  463. " </td>\n",
  464. " </tr>\n",
  465. " <tr>\n",
  466. " <td style=\"text-align: left;\">\n",
  467. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:52413/status\" target=\"_blank\">http://127.0.0.1:52413/status</a>\n",
  468. " </td>\n",
  469. " <td style=\"text-align: left;\">\n",
  470. " <strong>Memory: </strong> 18.63 GiB\n",
  471. " </td>\n",
  472. " </tr>\n",
  473. " <tr>\n",
  474. " <td style=\"text-align: left;\">\n",
  475. " <strong>Nanny: </strong> tcp://127.0.0.1:52379\n",
  476. " </td>\n",
  477. " <td style=\"text-align: left;\"></td>\n",
  478. " </tr>\n",
  479. " <tr>\n",
  480. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  481. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-7dc78218\n",
  482. " </td>\n",
  483. " </tr>\n",
  484. "\n",
  485. " \n",
  486. "\n",
  487. " \n",
  488. "\n",
  489. " </table>\n",
  490. " </details>\n",
  491. " </div>\n",
  492. " </div>\n",
  493. " \n",
  494. " <div style=\"margin-bottom: 20px;\">\n",
  495. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  496. " <div style=\"margin-left: 48px;\">\n",
  497. " <details>\n",
  498. " <summary>\n",
  499. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 7</h4>\n",
  500. " </summary>\n",
  501. " <table style=\"width: 100%; text-align: left;\">\n",
  502. " <tr>\n",
  503. " <td style=\"text-align: left;\">\n",
  504. " <strong>Comm: </strong> tcp://127.0.0.1:52435\n",
  505. " </td>\n",
  506. " <td style=\"text-align: left;\">\n",
  507. " <strong>Total threads: </strong> 16\n",
  508. " </td>\n",
  509. " </tr>\n",
  510. " <tr>\n",
  511. " <td style=\"text-align: left;\">\n",
  512. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:52436/status\" target=\"_blank\">http://127.0.0.1:52436/status</a>\n",
  513. " </td>\n",
  514. " <td style=\"text-align: left;\">\n",
  515. " <strong>Memory: </strong> 18.63 GiB\n",
  516. " </td>\n",
  517. " </tr>\n",
  518. " <tr>\n",
  519. " <td style=\"text-align: left;\">\n",
  520. " <strong>Nanny: </strong> tcp://127.0.0.1:52380\n",
  521. " </td>\n",
  522. " <td style=\"text-align: left;\"></td>\n",
  523. " </tr>\n",
  524. " <tr>\n",
  525. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  526. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-kdlokiw6\n",
  527. " </td>\n",
  528. " </tr>\n",
  529. "\n",
  530. " \n",
  531. "\n",
  532. " \n",
  533. "\n",
  534. " </table>\n",
  535. " </details>\n",
  536. " </div>\n",
  537. " </div>\n",
  538. " \n",
  539. "\n",
  540. " </details>\n",
  541. "</div>\n",
  542. "\n",
  543. " </details>\n",
  544. " </div>\n",
  545. "</div>\n",
  546. " </details>\n",
  547. " \n",
  548. "\n",
  549. " </div>\n",
  550. "</div>"
  551. ],
  552. "text/plain": [
  553. "<Client: 'tcp://127.0.0.1:52370' processes=8 threads=128, memory=149.01 GiB>"
  554. ]
  555. },
  556. "execution_count": 64,
  557. "metadata": {},
  558. "output_type": "execute_result"
  559. }
  560. ],
  561. "source": [
  562. "from dask.distributed import Client\n",
  563. "client = Client(n_workers=8, threads_per_worker=16, processes=True, memory_limit='20GB')\n",
  564. "client"
  565. ]
  566. },
  567. {
  568. "attachments": {},
  569. "cell_type": "markdown",
  570. "metadata": {},
  571. "source": [
  572. "## Start a client for Mongo DB"
  573. ]
  574. },
  575. {
  576. "cell_type": "code",
  577. "execution_count": 65,
  578. "metadata": {},
  579. "outputs": [],
  580. "source": [
  581. "import pymongo\n",
  582. "import xarray_mongodb\n",
  583. "\n",
  584. "from DataContainer.MongoDB import MongoDB\n",
  585. "\n",
  586. "mongoClient = pymongo.MongoClient('mongodb://control:DyLab2021@127.0.0.1:27017/?authMechanism=DEFAULT')"
  587. ]
  588. },
  589. {
  590. "attachments": {},
  591. "cell_type": "markdown",
  592. "metadata": {},
  593. "source": [
  594. "## Set global path for experiment"
  595. ]
  596. },
  597. {
  598. "cell_type": "code",
  599. "execution_count": 66,
  600. "metadata": {},
  601. "outputs": [],
  602. "source": [
  603. "groupList = [\n",
  604. " \"images/MOT_3D_Camera/in_situ_absorption\",\n",
  605. " \"images/ODT_1_Axis_Camera/in_situ_absorption\",\n",
  606. " \"images/ODT_2_Axis_Camera/in_situ_absorption\",\n",
  607. "]\n",
  608. "\n",
  609. "dskey = {\n",
  610. " \"images/MOT_3D_Camera/in_situ_absorption\": \"camera_0\",\n",
  611. " \"images/ODT_1_Axis_Camera/in_situ_absorption\": \"camera_1\",\n",
  612. " \"images/ODT_2_Axis_Camera/in_situ_absorption\": \"camera_2\",\n",
  613. "}\n"
  614. ]
  615. },
  616. {
  617. "attachments": {},
  618. "cell_type": "markdown",
  619. "metadata": {},
  620. "source": [
  621. "# Evaporative Cooling"
  622. ]
  623. },
  624. {
  625. "cell_type": "code",
  626. "execution_count": 67,
  627. "metadata": {},
  628. "outputs": [],
  629. "source": [
  630. "# img_dir = 'C:/Users/control/DyLab/Experiments/DyBEC/'\n",
  631. "img_dir = '//DyLabNAS/Data/'\n",
  632. "SequenceName = \"Evaporative_Cooling\"\n",
  633. "folderPath = img_dir + SequenceName + \"/\" + get_date()\n",
  634. "# folderPath = img_dir + SequenceName + \"/\" + '2023/06/30'# get_date()\n",
  635. "\n",
  636. "mongoDB = mongoClient[SequenceName]\n",
  637. "\n",
  638. "DB = MongoDB(mongoClient, mongoDB, date=get_date())"
  639. ]
  640. },
  641. {
  642. "cell_type": "code",
  643. "execution_count": 70,
  644. "metadata": {},
  645. "outputs": [
  646. {
  647. "ename": "ValueError",
  648. "evalue": "Could not find any dimension coordinates to use to order the datasets for concatenation",
  649. "output_type": "error",
  650. "traceback": [
  651. "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
  652. "\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)",
  653. "\u001b[1;32mf:\\Jianshun\\analyseScript\\20230630_Data_Analysis.ipynb Cell 11\u001b[0m in \u001b[0;36m1\n\u001b[1;32m----> <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y504sZmlsZQ%3D%3D?line=0'>1</a>\u001b[0m xr\u001b[39m.\u001b[39;49mopen_mfdataset(filePath)\n",
  654. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\backends\\api.py:1010\u001b[0m, in \u001b[0;36mopen_mfdataset\u001b[1;34m(paths, chunks, concat_dim, compat, preprocess, engine, data_vars, coords, combine, parallel, join, attrs_file, combine_attrs, **kwargs)\u001b[0m\n\u001b[0;32m 997\u001b[0m combined \u001b[39m=\u001b[39m _nested_combine(\n\u001b[0;32m 998\u001b[0m datasets,\n\u001b[0;32m 999\u001b[0m concat_dims\u001b[39m=\u001b[39mconcat_dim,\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 1005\u001b[0m combine_attrs\u001b[39m=\u001b[39mcombine_attrs,\n\u001b[0;32m 1006\u001b[0m )\n\u001b[0;32m 1007\u001b[0m \u001b[39melif\u001b[39;00m combine \u001b[39m==\u001b[39m \u001b[39m\"\u001b[39m\u001b[39mby_coords\u001b[39m\u001b[39m\"\u001b[39m:\n\u001b[0;32m 1008\u001b[0m \u001b[39m# Redo ordering from coordinates, ignoring how they were ordered\u001b[39;00m\n\u001b[0;32m 1009\u001b[0m \u001b[39m# previously\u001b[39;00m\n\u001b[1;32m-> 1010\u001b[0m combined \u001b[39m=\u001b[39m combine_by_coords(\n\u001b[0;32m 1011\u001b[0m datasets,\n\u001b[0;32m 1012\u001b[0m compat\u001b[39m=\u001b[39;49mcompat,\n\u001b[0;32m 1013\u001b[0m data_vars\u001b[39m=\u001b[39;49mdata_vars,\n\u001b[0;32m 1014\u001b[0m coords\u001b[39m=\u001b[39;49mcoords,\n\u001b[0;32m 1015\u001b[0m join\u001b[39m=\u001b[39;49mjoin,\n\u001b[0;32m 1016\u001b[0m combine_attrs\u001b[39m=\u001b[39;49mcombine_attrs,\n\u001b[0;32m 1017\u001b[0m )\n\u001b[0;32m 1018\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[0;32m 1019\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mValueError\u001b[39;00m(\n\u001b[0;32m 1020\u001b[0m \u001b[39m\"\u001b[39m\u001b[39m{}\u001b[39;00m\u001b[39m is an invalid option for the keyword argument\u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m 1021\u001b[0m \u001b[39m\"\u001b[39m\u001b[39m ``combine``\u001b[39m\u001b[39m\"\u001b[39m\u001b[39m.\u001b[39mformat(combine)\n\u001b[0;32m 1022\u001b[0m )\n",
  655. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\combine.py:975\u001b[0m, in \u001b[0;36mcombine_by_coords\u001b[1;34m(data_objects, compat, data_vars, coords, fill_value, join, combine_attrs, datasets)\u001b[0m\n\u001b[0;32m 973\u001b[0m concatenated_grouped_by_data_vars \u001b[39m=\u001b[39m []\n\u001b[0;32m 974\u001b[0m \u001b[39mfor\u001b[39;00m \u001b[39mvars\u001b[39m, datasets_with_same_vars \u001b[39min\u001b[39;00m grouped_by_vars:\n\u001b[1;32m--> 975\u001b[0m concatenated \u001b[39m=\u001b[39m _combine_single_variable_hypercube(\n\u001b[0;32m 976\u001b[0m \u001b[39mlist\u001b[39;49m(datasets_with_same_vars),\n\u001b[0;32m 977\u001b[0m fill_value\u001b[39m=\u001b[39;49mfill_value,\n\u001b[0;32m 978\u001b[0m data_vars\u001b[39m=\u001b[39;49mdata_vars,\n\u001b[0;32m 979\u001b[0m coords\u001b[39m=\u001b[39;49mcoords,\n\u001b[0;32m 980\u001b[0m compat\u001b[39m=\u001b[39;49mcompat,\n\u001b[0;32m 981\u001b[0m join\u001b[39m=\u001b[39;49mjoin,\n\u001b[0;32m 982\u001b[0m combine_attrs\u001b[39m=\u001b[39;49mcombine_attrs,\n\u001b[0;32m 983\u001b[0m )\n\u001b[0;32m 984\u001b[0m concatenated_grouped_by_data_vars\u001b[39m.\u001b[39mappend(concatenated)\n\u001b[0;32m 986\u001b[0m \u001b[39mreturn\u001b[39;00m merge(\n\u001b[0;32m 987\u001b[0m concatenated_grouped_by_data_vars,\n\u001b[0;32m 988\u001b[0m compat\u001b[39m=\u001b[39mcompat,\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 991\u001b[0m combine_attrs\u001b[39m=\u001b[39mcombine_attrs,\n\u001b[0;32m 992\u001b[0m )\n",
  656. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\combine.py:622\u001b[0m, in \u001b[0;36m_combine_single_variable_hypercube\u001b[1;34m(datasets, fill_value, data_vars, coords, compat, join, combine_attrs)\u001b[0m\n\u001b[0;32m 616\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mlen\u001b[39m(datasets) \u001b[39m==\u001b[39m \u001b[39m0\u001b[39m:\n\u001b[0;32m 617\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mValueError\u001b[39;00m(\n\u001b[0;32m 618\u001b[0m \u001b[39m\"\u001b[39m\u001b[39mAt least one Dataset is required to resolve variable names \u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m 619\u001b[0m \u001b[39m\"\u001b[39m\u001b[39mfor combined hypercube.\u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m 620\u001b[0m )\n\u001b[1;32m--> 622\u001b[0m combined_ids, concat_dims \u001b[39m=\u001b[39m _infer_concat_order_from_coords(\u001b[39mlist\u001b[39;49m(datasets))\n\u001b[0;32m 624\u001b[0m \u001b[39mif\u001b[39;00m fill_value \u001b[39mis\u001b[39;00m \u001b[39mNone\u001b[39;00m:\n\u001b[0;32m 625\u001b[0m \u001b[39m# check that datasets form complete hypercube\u001b[39;00m\n\u001b[0;32m 626\u001b[0m _check_shape_tile_ids(combined_ids)\n",
  657. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\combine.py:145\u001b[0m, in \u001b[0;36m_infer_concat_order_from_coords\u001b[1;34m(datasets)\u001b[0m\n\u001b[0;32m 140\u001b[0m tile_ids \u001b[39m=\u001b[39m [\n\u001b[0;32m 141\u001b[0m tile_id \u001b[39m+\u001b[39m (position,) \u001b[39mfor\u001b[39;00m tile_id, position \u001b[39min\u001b[39;00m \u001b[39mzip\u001b[39m(tile_ids, order)\n\u001b[0;32m 142\u001b[0m ]\n\u001b[0;32m 144\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mlen\u001b[39m(datasets) \u001b[39m>\u001b[39m \u001b[39m1\u001b[39m \u001b[39mand\u001b[39;00m \u001b[39mnot\u001b[39;00m concat_dims:\n\u001b[1;32m--> 145\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mValueError\u001b[39;00m(\n\u001b[0;32m 146\u001b[0m \u001b[39m\"\u001b[39m\u001b[39mCould not find any dimension coordinates to use to \u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m 147\u001b[0m \u001b[39m\"\u001b[39m\u001b[39morder the datasets for concatenation\u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m 148\u001b[0m )\n\u001b[0;32m 150\u001b[0m combined_ids \u001b[39m=\u001b[39m \u001b[39mdict\u001b[39m(\u001b[39mzip\u001b[39m(tile_ids, datasets))\n\u001b[0;32m 152\u001b[0m \u001b[39mreturn\u001b[39;00m combined_ids, concat_dims\n",
  658. "\u001b[1;31mValueError\u001b[0m: Could not find any dimension coordinates to use to order the datasets for concatenation"
  659. ]
  660. }
  661. ],
  662. "source": [
  663. "xr.open_mfdataset(filePath)"
  664. ]
  665. },
  666. {
  667. "cell_type": "code",
  668. "execution_count": 69,
  669. "metadata": {},
  670. "outputs": [
  671. {
  672. "ename": "ValueError",
  673. "evalue": "cannot reindex or align along dimension 'phony_dim_2' because of conflicting dimension sizes: {1088, 0}",
  674. "output_type": "error",
  675. "traceback": [
  676. "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
  677. "\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)",
  678. "\u001b[1;32mf:\\Jianshun\\analyseScript\\20230630_Data_Analysis.ipynb Cell 11\u001b[0m in \u001b[0;36m4\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=0'>1</a>\u001b[0m shotNum \u001b[39m=\u001b[39m \u001b[39m\"\u001b[39m\u001b[39m0071\u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=1'>2</a>\u001b[0m filePath \u001b[39m=\u001b[39m folderPath \u001b[39m+\u001b[39m \u001b[39m\"\u001b[39m\u001b[39m/\u001b[39m\u001b[39m\"\u001b[39m \u001b[39m+\u001b[39m shotNum \u001b[39m+\u001b[39m \u001b[39m\"\u001b[39m\u001b[39m/*.h5\u001b[39m\u001b[39m\"\u001b[39m\n\u001b[1;32m----> <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=3'>4</a>\u001b[0m dataSetDict \u001b[39m=\u001b[39m {\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=4'>5</a>\u001b[0m dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=5'>6</a>\u001b[0m \u001b[39mfor\u001b[39;00m i \u001b[39min\u001b[39;00m [\u001b[39m1\u001b[39m]\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=6'>7</a>\u001b[0m }\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=8'>9</a>\u001b[0m dataSet \u001b[39m=\u001b[39m dataSetDict[\u001b[39m\"\u001b[39m\u001b[39mcamera_0\u001b[39m\u001b[39m\"\u001b[39m]\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=10'>11</a>\u001b[0m print_scanAxis(dataSet)\n",
  679. "\u001b[1;32mf:\\Jianshun\\analyseScript\\20230630_Data_Analysis.ipynb Cell 11\u001b[0m in \u001b[0;36m5\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=0'>1</a>\u001b[0m shotNum \u001b[39m=\u001b[39m \u001b[39m\"\u001b[39m\u001b[39m0071\u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=1'>2</a>\u001b[0m filePath \u001b[39m=\u001b[39m folderPath \u001b[39m+\u001b[39m \u001b[39m\"\u001b[39m\u001b[39m/\u001b[39m\u001b[39m\"\u001b[39m \u001b[39m+\u001b[39m shotNum \u001b[39m+\u001b[39m \u001b[39m\"\u001b[39m\u001b[39m/*.h5\u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=3'>4</a>\u001b[0m dataSetDict \u001b[39m=\u001b[39m {\n\u001b[1;32m----> <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=4'>5</a>\u001b[0m dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=5'>6</a>\u001b[0m \u001b[39mfor\u001b[39;00m i \u001b[39min\u001b[39;00m [\u001b[39m1\u001b[39m]\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=6'>7</a>\u001b[0m }\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=8'>9</a>\u001b[0m dataSet \u001b[39m=\u001b[39m dataSetDict[\u001b[39m\"\u001b[39m\u001b[39mcamera_0\u001b[39m\u001b[39m\"\u001b[39m]\n\u001b[0;32m <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/20230630_Data_Analysis.ipynb#Y503sZmlsZQ%3D%3D?line=10'>11</a>\u001b[0m print_scanAxis(dataSet)\n",
  680. "File \u001b[1;32mf:\\Jianshun\\analyseScript\\DataContainer\\ReadData.py:226\u001b[0m, in \u001b[0;36mread_hdf5_file\u001b[1;34m(filePath, group, datesetOfGlobal, preprocess, join, parallel, engine, phony_dims, excludeAxis, maxFileNum, **kwargs)\u001b[0m\n\u001b[0;32m 223\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[0;32m 224\u001b[0m kwargs\u001b[39m.\u001b[39mupdate({\u001b[39m'\u001b[39m\u001b[39mpreprocess\u001b[39m\u001b[39m'\u001b[39m:preprocess})\n\u001b[1;32m--> 226\u001b[0m ds \u001b[39m=\u001b[39m xr\u001b[39m.\u001b[39mopen_mfdataset(fullFilePath, \u001b[39m*\u001b[39m\u001b[39m*\u001b[39mkwargs)\n\u001b[0;32m 228\u001b[0m newDimKey \u001b[39m=\u001b[39m np\u001b[39m.\u001b[39mappend([\u001b[39m'\u001b[39m\u001b[39mx\u001b[39m\u001b[39m'\u001b[39m, \u001b[39m'\u001b[39m\u001b[39my\u001b[39m\u001b[39m'\u001b[39m, \u001b[39m'\u001b[39m\u001b[39mz\u001b[39m\u001b[39m'\u001b[39m], [ \u001b[39mchr\u001b[39m(i) \u001b[39mfor\u001b[39;00m i \u001b[39min\u001b[39;00m \u001b[39mrange\u001b[39m(\u001b[39m97\u001b[39m, \u001b[39m97\u001b[39m\u001b[39m+\u001b[39m\u001b[39m23\u001b[39m)])\n\u001b[0;32m 230\u001b[0m oldDimKey \u001b[39m=\u001b[39m np\u001b[39m.\u001b[39msort(\n\u001b[0;32m 231\u001b[0m [\n\u001b[0;32m 232\u001b[0m key \n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 235\u001b[0m ]\n\u001b[0;32m 236\u001b[0m )\n",
  681. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\backends\\api.py:1010\u001b[0m, in \u001b[0;36mopen_mfdataset\u001b[1;34m(paths, chunks, concat_dim, compat, preprocess, engine, data_vars, coords, combine, parallel, join, attrs_file, combine_attrs, **kwargs)\u001b[0m\n\u001b[0;32m 997\u001b[0m combined \u001b[39m=\u001b[39m _nested_combine(\n\u001b[0;32m 998\u001b[0m datasets,\n\u001b[0;32m 999\u001b[0m concat_dims\u001b[39m=\u001b[39mconcat_dim,\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 1005\u001b[0m combine_attrs\u001b[39m=\u001b[39mcombine_attrs,\n\u001b[0;32m 1006\u001b[0m )\n\u001b[0;32m 1007\u001b[0m \u001b[39melif\u001b[39;00m combine \u001b[39m==\u001b[39m \u001b[39m\"\u001b[39m\u001b[39mby_coords\u001b[39m\u001b[39m\"\u001b[39m:\n\u001b[0;32m 1008\u001b[0m \u001b[39m# Redo ordering from coordinates, ignoring how they were ordered\u001b[39;00m\n\u001b[0;32m 1009\u001b[0m \u001b[39m# previously\u001b[39;00m\n\u001b[1;32m-> 1010\u001b[0m combined \u001b[39m=\u001b[39m combine_by_coords(\n\u001b[0;32m 1011\u001b[0m datasets,\n\u001b[0;32m 1012\u001b[0m compat\u001b[39m=\u001b[39;49mcompat,\n\u001b[0;32m 1013\u001b[0m data_vars\u001b[39m=\u001b[39;49mdata_vars,\n\u001b[0;32m 1014\u001b[0m coords\u001b[39m=\u001b[39;49mcoords,\n\u001b[0;32m 1015\u001b[0m join\u001b[39m=\u001b[39;49mjoin,\n\u001b[0;32m 1016\u001b[0m combine_attrs\u001b[39m=\u001b[39;49mcombine_attrs,\n\u001b[0;32m 1017\u001b[0m )\n\u001b[0;32m 1018\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[0;32m 1019\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mValueError\u001b[39;00m(\n\u001b[0;32m 1020\u001b[0m \u001b[39m\"\u001b[39m\u001b[39m{}\u001b[39;00m\u001b[39m is an invalid option for the keyword argument\u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m 1021\u001b[0m \u001b[39m\"\u001b[39m\u001b[39m ``combine``\u001b[39m\u001b[39m\"\u001b[39m\u001b[39m.\u001b[39mformat(combine)\n\u001b[0;32m 1022\u001b[0m )\n",
  682. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\combine.py:975\u001b[0m, in \u001b[0;36mcombine_by_coords\u001b[1;34m(data_objects, compat, data_vars, coords, fill_value, join, combine_attrs, datasets)\u001b[0m\n\u001b[0;32m 973\u001b[0m concatenated_grouped_by_data_vars \u001b[39m=\u001b[39m []\n\u001b[0;32m 974\u001b[0m \u001b[39mfor\u001b[39;00m \u001b[39mvars\u001b[39m, datasets_with_same_vars \u001b[39min\u001b[39;00m grouped_by_vars:\n\u001b[1;32m--> 975\u001b[0m concatenated \u001b[39m=\u001b[39m _combine_single_variable_hypercube(\n\u001b[0;32m 976\u001b[0m \u001b[39mlist\u001b[39;49m(datasets_with_same_vars),\n\u001b[0;32m 977\u001b[0m fill_value\u001b[39m=\u001b[39;49mfill_value,\n\u001b[0;32m 978\u001b[0m data_vars\u001b[39m=\u001b[39;49mdata_vars,\n\u001b[0;32m 979\u001b[0m coords\u001b[39m=\u001b[39;49mcoords,\n\u001b[0;32m 980\u001b[0m compat\u001b[39m=\u001b[39;49mcompat,\n\u001b[0;32m 981\u001b[0m join\u001b[39m=\u001b[39;49mjoin,\n\u001b[0;32m 982\u001b[0m combine_attrs\u001b[39m=\u001b[39;49mcombine_attrs,\n\u001b[0;32m 983\u001b[0m )\n\u001b[0;32m 984\u001b[0m concatenated_grouped_by_data_vars\u001b[39m.\u001b[39mappend(concatenated)\n\u001b[0;32m 986\u001b[0m \u001b[39mreturn\u001b[39;00m merge(\n\u001b[0;32m 987\u001b[0m concatenated_grouped_by_data_vars,\n\u001b[0;32m 988\u001b[0m compat\u001b[39m=\u001b[39mcompat,\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 991\u001b[0m combine_attrs\u001b[39m=\u001b[39mcombine_attrs,\n\u001b[0;32m 992\u001b[0m )\n",
  683. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\combine.py:633\u001b[0m, in \u001b[0;36m_combine_single_variable_hypercube\u001b[1;34m(datasets, fill_value, data_vars, coords, compat, join, combine_attrs)\u001b[0m\n\u001b[0;32m 630\u001b[0m _check_dimension_depth_tile_ids(combined_ids)\n\u001b[0;32m 632\u001b[0m \u001b[39m# Concatenate along all of concat_dims one by one to create single ds\u001b[39;00m\n\u001b[1;32m--> 633\u001b[0m concatenated \u001b[39m=\u001b[39m _combine_nd(\n\u001b[0;32m 634\u001b[0m combined_ids,\n\u001b[0;32m 635\u001b[0m concat_dims\u001b[39m=\u001b[39;49mconcat_dims,\n\u001b[0;32m 636\u001b[0m data_vars\u001b[39m=\u001b[39;49mdata_vars,\n\u001b[0;32m 637\u001b[0m coords\u001b[39m=\u001b[39;49mcoords,\n\u001b[0;32m 638\u001b[0m compat\u001b[39m=\u001b[39;49mcompat,\n\u001b[0;32m 639\u001b[0m fill_value\u001b[39m=\u001b[39;49mfill_value,\n\u001b[0;32m 640\u001b[0m join\u001b[39m=\u001b[39;49mjoin,\n\u001b[0;32m 641\u001b[0m combine_attrs\u001b[39m=\u001b[39;49mcombine_attrs,\n\u001b[0;32m 642\u001b[0m )\n\u001b[0;32m 644\u001b[0m \u001b[39m# Check the overall coordinates are monotonically increasing\u001b[39;00m\n\u001b[0;32m 645\u001b[0m \u001b[39mfor\u001b[39;00m dim \u001b[39min\u001b[39;00m concat_dims:\n",
  684. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\combine.py:235\u001b[0m, in \u001b[0;36m_combine_nd\u001b[1;34m(combined_ids, concat_dims, data_vars, coords, compat, fill_value, join, combine_attrs)\u001b[0m\n\u001b[0;32m 231\u001b[0m \u001b[39m# Each iteration of this loop reduces the length of the tile_ids tuples\u001b[39;00m\n\u001b[0;32m 232\u001b[0m \u001b[39m# by one. It always combines along the first dimension, removing the first\u001b[39;00m\n\u001b[0;32m 233\u001b[0m \u001b[39m# element of the tuple\u001b[39;00m\n\u001b[0;32m 234\u001b[0m \u001b[39mfor\u001b[39;00m concat_dim \u001b[39min\u001b[39;00m concat_dims:\n\u001b[1;32m--> 235\u001b[0m combined_ids \u001b[39m=\u001b[39m _combine_all_along_first_dim(\n\u001b[0;32m 236\u001b[0m combined_ids,\n\u001b[0;32m 237\u001b[0m dim\u001b[39m=\u001b[39;49mconcat_dim,\n\u001b[0;32m 238\u001b[0m data_vars\u001b[39m=\u001b[39;49mdata_vars,\n\u001b[0;32m 239\u001b[0m coords\u001b[39m=\u001b[39;49mcoords,\n\u001b[0;32m 240\u001b[0m compat\u001b[39m=\u001b[39;49mcompat,\n\u001b[0;32m 241\u001b[0m fill_value\u001b[39m=\u001b[39;49mfill_value,\n\u001b[0;32m 242\u001b[0m join\u001b[39m=\u001b[39;49mjoin,\n\u001b[0;32m 243\u001b[0m combine_attrs\u001b[39m=\u001b[39;49mcombine_attrs,\n\u001b[0;32m 244\u001b[0m )\n\u001b[0;32m 245\u001b[0m (combined_ds,) \u001b[39m=\u001b[39m combined_ids\u001b[39m.\u001b[39mvalues()\n\u001b[0;32m 246\u001b[0m \u001b[39mreturn\u001b[39;00m combined_ds\n",
  685. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\combine.py:270\u001b[0m, in \u001b[0;36m_combine_all_along_first_dim\u001b[1;34m(combined_ids, dim, data_vars, coords, compat, fill_value, join, combine_attrs)\u001b[0m\n\u001b[0;32m 268\u001b[0m combined_ids \u001b[39m=\u001b[39m \u001b[39mdict\u001b[39m(\u001b[39msorted\u001b[39m(group))\n\u001b[0;32m 269\u001b[0m datasets \u001b[39m=\u001b[39m combined_ids\u001b[39m.\u001b[39mvalues()\n\u001b[1;32m--> 270\u001b[0m new_combined_ids[new_id] \u001b[39m=\u001b[39m _combine_1d(\n\u001b[0;32m 271\u001b[0m datasets, dim, compat, data_vars, coords, fill_value, join, combine_attrs\n\u001b[0;32m 272\u001b[0m )\n\u001b[0;32m 273\u001b[0m \u001b[39mreturn\u001b[39;00m new_combined_ids\n",
  686. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\combine.py:293\u001b[0m, in \u001b[0;36m_combine_1d\u001b[1;34m(datasets, concat_dim, compat, data_vars, coords, fill_value, join, combine_attrs)\u001b[0m\n\u001b[0;32m 291\u001b[0m \u001b[39mif\u001b[39;00m concat_dim \u001b[39mis\u001b[39;00m \u001b[39mnot\u001b[39;00m \u001b[39mNone\u001b[39;00m:\n\u001b[0;32m 292\u001b[0m \u001b[39mtry\u001b[39;00m:\n\u001b[1;32m--> 293\u001b[0m combined \u001b[39m=\u001b[39m concat(\n\u001b[0;32m 294\u001b[0m datasets,\n\u001b[0;32m 295\u001b[0m dim\u001b[39m=\u001b[39;49mconcat_dim,\n\u001b[0;32m 296\u001b[0m data_vars\u001b[39m=\u001b[39;49mdata_vars,\n\u001b[0;32m 297\u001b[0m coords\u001b[39m=\u001b[39;49mcoords,\n\u001b[0;32m 298\u001b[0m compat\u001b[39m=\u001b[39;49mcompat,\n\u001b[0;32m 299\u001b[0m fill_value\u001b[39m=\u001b[39;49mfill_value,\n\u001b[0;32m 300\u001b[0m join\u001b[39m=\u001b[39;49mjoin,\n\u001b[0;32m 301\u001b[0m combine_attrs\u001b[39m=\u001b[39;49mcombine_attrs,\n\u001b[0;32m 302\u001b[0m )\n\u001b[0;32m 303\u001b[0m \u001b[39mexcept\u001b[39;00m \u001b[39mValueError\u001b[39;00m \u001b[39mas\u001b[39;00m err:\n\u001b[0;32m 304\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39m\"\u001b[39m\u001b[39mencountered unexpected variable\u001b[39m\u001b[39m\"\u001b[39m \u001b[39min\u001b[39;00m \u001b[39mstr\u001b[39m(err):\n",
  687. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\concat.py:251\u001b[0m, in \u001b[0;36mconcat\u001b[1;34m(objs, dim, data_vars, coords, compat, positions, fill_value, join, combine_attrs)\u001b[0m\n\u001b[0;32m 239\u001b[0m \u001b[39mreturn\u001b[39;00m _dataarray_concat(\n\u001b[0;32m 240\u001b[0m objs,\n\u001b[0;32m 241\u001b[0m dim\u001b[39m=\u001b[39mdim,\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 248\u001b[0m combine_attrs\u001b[39m=\u001b[39mcombine_attrs,\n\u001b[0;32m 249\u001b[0m )\n\u001b[0;32m 250\u001b[0m \u001b[39melif\u001b[39;00m \u001b[39misinstance\u001b[39m(first_obj, Dataset):\n\u001b[1;32m--> 251\u001b[0m \u001b[39mreturn\u001b[39;00m _dataset_concat(\n\u001b[0;32m 252\u001b[0m objs,\n\u001b[0;32m 253\u001b[0m dim\u001b[39m=\u001b[39;49mdim,\n\u001b[0;32m 254\u001b[0m data_vars\u001b[39m=\u001b[39;49mdata_vars,\n\u001b[0;32m 255\u001b[0m coords\u001b[39m=\u001b[39;49mcoords,\n\u001b[0;32m 256\u001b[0m compat\u001b[39m=\u001b[39;49mcompat,\n\u001b[0;32m 257\u001b[0m positions\u001b[39m=\u001b[39;49mpositions,\n\u001b[0;32m 258\u001b[0m fill_value\u001b[39m=\u001b[39;49mfill_value,\n\u001b[0;32m 259\u001b[0m join\u001b[39m=\u001b[39;49mjoin,\n\u001b[0;32m 260\u001b[0m combine_attrs\u001b[39m=\u001b[39;49mcombine_attrs,\n\u001b[0;32m 261\u001b[0m )\n\u001b[0;32m 262\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[0;32m 263\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mTypeError\u001b[39;00m(\n\u001b[0;32m 264\u001b[0m \u001b[39m\"\u001b[39m\u001b[39mcan only concatenate xarray Dataset and DataArray \u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m 265\u001b[0m \u001b[39mf\u001b[39m\u001b[39m\"\u001b[39m\u001b[39mobjects, got \u001b[39m\u001b[39m{\u001b[39;00m\u001b[39mtype\u001b[39m(first_obj)\u001b[39m}\u001b[39;00m\u001b[39m\"\u001b[39m\n\u001b[0;32m 266\u001b[0m )\n",
  688. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\concat.py:483\u001b[0m, in \u001b[0;36m_dataset_concat\u001b[1;34m(datasets, dim, data_vars, coords, compat, positions, fill_value, join, combine_attrs)\u001b[0m\n\u001b[0;32m 480\u001b[0m \u001b[39m# Make sure we're working on a copy (we'll be loading variables)\u001b[39;00m\n\u001b[0;32m 481\u001b[0m datasets \u001b[39m=\u001b[39m [ds\u001b[39m.\u001b[39mcopy() \u001b[39mfor\u001b[39;00m ds \u001b[39min\u001b[39;00m datasets]\n\u001b[0;32m 482\u001b[0m datasets \u001b[39m=\u001b[39m \u001b[39mlist\u001b[39m(\n\u001b[1;32m--> 483\u001b[0m align(\u001b[39m*\u001b[39;49mdatasets, join\u001b[39m=\u001b[39;49mjoin, copy\u001b[39m=\u001b[39;49m\u001b[39mFalse\u001b[39;49;00m, exclude\u001b[39m=\u001b[39;49m[dim], fill_value\u001b[39m=\u001b[39;49mfill_value)\n\u001b[0;32m 484\u001b[0m )\n\u001b[0;32m 486\u001b[0m dim_coords, dims_sizes, coord_names, data_names, vars_order \u001b[39m=\u001b[39m _parse_datasets(\n\u001b[0;32m 487\u001b[0m datasets\n\u001b[0;32m 488\u001b[0m )\n\u001b[0;32m 489\u001b[0m dim_names \u001b[39m=\u001b[39m \u001b[39mset\u001b[39m(dim_coords)\n",
  689. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\alignment.py:787\u001b[0m, in \u001b[0;36malign\u001b[1;34m(join, copy, indexes, exclude, fill_value, *objects)\u001b[0m\n\u001b[0;32m 591\u001b[0m \u001b[39m\"\"\"\u001b[39;00m\n\u001b[0;32m 592\u001b[0m \u001b[39mGiven any number of Dataset and/or DataArray objects, returns new\u001b[39;00m\n\u001b[0;32m 593\u001b[0m \u001b[39mobjects with aligned indexes and dimension sizes.\u001b[39;00m\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 777\u001b[0m \n\u001b[0;32m 778\u001b[0m \u001b[39m\"\"\"\u001b[39;00m\n\u001b[0;32m 779\u001b[0m aligner \u001b[39m=\u001b[39m Aligner(\n\u001b[0;32m 780\u001b[0m objects,\n\u001b[0;32m 781\u001b[0m join\u001b[39m=\u001b[39mjoin,\n\u001b[1;32m (...)\u001b[0m\n\u001b[0;32m 785\u001b[0m fill_value\u001b[39m=\u001b[39mfill_value,\n\u001b[0;32m 786\u001b[0m )\n\u001b[1;32m--> 787\u001b[0m aligner\u001b[39m.\u001b[39;49malign()\n\u001b[0;32m 788\u001b[0m \u001b[39mreturn\u001b[39;00m aligner\u001b[39m.\u001b[39mresults\n",
  690. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\alignment.py:573\u001b[0m, in \u001b[0;36mAligner.align\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 571\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39massert_no_index_conflict()\n\u001b[0;32m 572\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39malign_indexes()\n\u001b[1;32m--> 573\u001b[0m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49massert_unindexed_dim_sizes_equal()\n\u001b[0;32m 575\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mjoin \u001b[39m==\u001b[39m \u001b[39m\"\u001b[39m\u001b[39moverride\u001b[39m\u001b[39m\"\u001b[39m:\n\u001b[0;32m 576\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39moverride_indexes()\n",
  691. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\alignment.py:472\u001b[0m, in \u001b[0;36mAligner.assert_unindexed_dim_sizes_equal\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 470\u001b[0m add_err_msg \u001b[39m=\u001b[39m \u001b[39m\"\u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m 471\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mlen\u001b[39m(sizes) \u001b[39m>\u001b[39m \u001b[39m1\u001b[39m:\n\u001b[1;32m--> 472\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mValueError\u001b[39;00m(\n\u001b[0;32m 473\u001b[0m \u001b[39mf\u001b[39m\u001b[39m\"\u001b[39m\u001b[39mcannot reindex or align along dimension \u001b[39m\u001b[39m{\u001b[39;00mdim\u001b[39m!r}\u001b[39;00m\u001b[39m \u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m 474\u001b[0m \u001b[39mf\u001b[39m\u001b[39m\"\u001b[39m\u001b[39mbecause of conflicting dimension sizes: \u001b[39m\u001b[39m{\u001b[39;00msizes\u001b[39m!r}\u001b[39;00m\u001b[39m\"\u001b[39m \u001b[39m+\u001b[39m add_err_msg\n\u001b[0;32m 475\u001b[0m )\n",
  692. "\u001b[1;31mValueError\u001b[0m: cannot reindex or align along dimension 'phony_dim_2' because of conflicting dimension sizes: {1088, 0}"
  693. ]
  694. }
  695. ],
  696. "source": [
  697. "shotNum = \"0071\"\n",
  698. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  699. "\n",
  700. "dataSetDict = {\n",
  701. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  702. " for i in [1]\n",
  703. "}\n",
  704. "\n",
  705. "dataSet = dataSetDict[\"camera_0\"]\n",
  706. "\n",
  707. "print_scanAxis(dataSet)\n",
  708. "\n",
  709. "scanAxis = get_scanAxis(dataSet)\n",
  710. "\n",
  711. "dataSet = auto_rechunk(dataSet)\n",
  712. "\n",
  713. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  714. "\n",
  715. "imageAnalyser.center = (535, 995)\n",
  716. "imageAnalyser.span = (350, 350)\n",
  717. "imageAnalyser.fraction = (0.1, 0.1)\n",
  718. "\n",
  719. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  720. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  721. "\n",
  722. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  723. "Ncount_mean = calculate_mean(Ncount)\n",
  724. "Ncount_std = calculate_std(Ncount)\n",
  725. "\n",
  726. "fig = plt.figure()\n",
  727. "ax = fig.gca()\n",
  728. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  729. "plt.ylim([0, 3500])\n",
  730. "plt.ylabel('NCount')\n",
  731. "plt.tight_layout()\n",
  732. "plt.grid(visible=1)\n",
  733. "plt.show()"
  734. ]
  735. },
  736. {
  737. "attachments": {},
  738. "cell_type": "markdown",
  739. "metadata": {},
  740. "source": [
  741. "# ALS"
  742. ]
  743. },
  744. {
  745. "attachments": {},
  746. "cell_type": "markdown",
  747. "metadata": {},
  748. "source": [
  749. "# 0 - 0.025 A"
  750. ]
  751. },
  752. {
  753. "cell_type": "code",
  754. "execution_count": 6,
  755. "metadata": {},
  756. "outputs": [
  757. {
  758. "name": "stdout",
  759. "output_type": "stream",
  760. "text": [
  761. "The detected scaning axes and values are: \n",
  762. "\n",
  763. "{'als_final_current': array([0. , 0.0009, 0.0018, 0.0027, 0.0036, 0.0045, 0.0054, 0.0063,\n",
  764. " 0.0072, 0.0081, 0.009 , 0.0099, 0.0108, 0.0117, 0.0126, 0.0135,\n",
  765. " 0.0144, 0.0153, 0.0162, 0.0171, 0.018 , 0.0189, 0.0198, 0.0207,\n",
  766. " 0.0216, 0.0225, 0.0234, 0.0243]), 'runs': array([0., 1.])}\n"
  767. ]
  768. },
  769. {
  770. "data": {
  771. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAm8AAAHPCAYAAAAFwj37AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAABNWElEQVR4nO3df1xUdaL/8fckOAho7oA/EDUtf3BVxOKmsjcTM4ktuwrprrmW4mLtamnprmGiQSnaZj9cF2vdTCyyH7Zqm+svRHT3Zhm3vnsXam13S80sfwCaPxAc8Hz/YJkcGXCAgZmDr+fjwUPncz7zmc85nznwnnM+54zFMAxDAAAAMIVrvN0BAAAAuI/wBgAAYCKENwAAABMhvAEAAJgI4Q0AAMBECG8AAAAmQngDAAAwEcIbAACAiRDeAAAATMTr4e2vf/2r7rrrLnXv3l1t2rSRzWZTTEyMsrOznepNmTJFFoulxk9ERITLdlesWKGIiAhZrVb17NlT6enpstvtNeodP35cU6ZMUWhoqAIDAxUTE6Pc3NwmWVcAAIDG8vN2B06dOqVu3brp3nvvVXh4uM6dO6fXX39d9913nw4ePKjU1FRH3TZt2mjXrl1Oz2/Tpk2NNhcvXqwFCxYoJSVFcXFxys/PV2pqqo4cOaJVq1Y56pWXl2vkyJE6deqUli9fro4dOyozM1Px8fHauXOnhg8f3nQrDgAA0AAWX/1u06FDh+qbb77RV199JanqyNs777yjs2fP1vm84uJide3aVffff79+97vfOcozMjKUmpqqwsJC9evXT5K0cuVKzZgxQ3v37lVMTIwkqaKiQlFRUQoODta+ffuaaO0AAAAaxuunTWsTGhoqP7/6Hxjctm2bysrKlJSU5FSelJQkwzC0adMmR9nGjRvVt29fR3CTJD8/P02aNEkfffSRjhw50uD+AwAANAWvnzatdvHiRV28eFEnT57U+vXrtX37dv32t791qnP+/Hl17txZJ06cUFhYmMaOHasnn3xSNpvNUaewsFCSFBkZ6fTcsLAwhYaGOpZX1x02bFiNvgwcOFCS9Omnnyo8PNxlf8vLy1VeXu7U/5KSEoWEhMhisdRz7QEAQEthGIbOnDmjLl266JprPH+czGfC2/Tp0x2nOVu3bq3f/OY3evDBBx3Lo6KiFBUVpQEDBkiS9uzZo+eff165ubnKz89XcHCwpKrTplarVUFBQTVew2azqbi42PG4uLjYKfhdWq96eW2WLFmi9PT0BqwpAAC4Ghw+fFhdu3b1eLs+E94ef/xxJScn6/jx43rvvff00EMP6dy5c/rlL38pSXr00Ued6o8aNUo33nijxo0bp9///vdOy+s68nX5svrUvdS8efM0e/Zsx+PvvvtO3bt314EDB9S2bdtan9cQdrtdeXl5GjFihPz9/T3aNtzDGHgfY+BdbH/vYwy8z90xOHPmjHr27OnxPFDNZ8Jb9+7d1b17d0nSnXfeKakqIE2ePFkdOnRw+ZyEhAQFBQXpww8/dJSFhISorKxMpaWlCgwMdKpfUlKi6Ohop7qujq6VlJRIksujctWsVqusVmuNcpvNpnbt2tX6vIaw2+0KDAxUSEgIO6yXMAbexxh4F9vf+xgD73N3DKqXNdU0Kp+9YGHw4MGqqKjQl19+WWc9wzCczidXz3UrKChwqnf06FEVFRU5TrtW17283qXPvbQuAACAL/DZ8JaXl6drrrlG119/fa113nnnHZWWlmro0KGOsvj4eAUEBCgrK8upblZWliwWi8aOHesoS0hI0P79+51uCVJRUaHs7GwNGTJEXbp08dj6AAAAeILXT5s+8MADateunQYPHqxOnTqpqKhI69ev11tvvaVf/epX6tChgw4dOqSJEydqwoQJ6tWrlywWi/bs2aMXXnhB/fv3V3JysqM9m82m1NRULViwQDabzXGT3rS0NCUnJzvu8SZJU6dOVWZmpsaPH6+lS5eqY8eOWrlypT7//HPt3LnTG5sDAACgTl4PbzExMVqzZo3Wrl2rU6dOKTg4WFFRUXrttdc0adIkSVK7du3UqVMnPffcczp27JgqKyt13XXXaebMmXr88cdrXFk6f/58tW3bVpmZmVq2bJk6d+6slJQUzZ8/36me1WpVbm6u5s6dq4cfflilpaUaNGiQtm7dyrcrAAAAn+T18JaUlFTjhrqX+8EPfqANGzbUq92ZM2dq5syZV6zXqVMnrV27tl5tAwAAeIvPznkDAABATYQ3AAAAEyG8AQAAmAjhDQAAwEQIbwAAACZCeAMAADARwhsAAICJEN4AAABMhPAGAABgIoQ3AAAAEyG8AQAAmAjhDQAAwEQIbwAAACZCeAMAADARwhsAAICJEN4AAABMhPAGAABgIoQ3AAAAEyG8AQAAmAjhDQAAwEQIbwAAACZCeAMAADARwhsAAICJEN4AAABMhPAGAABgIoQ3AAAAEyG8AQAAmAjhDQAAwEQIbwAAACZCeAMAADARwhsAAICJEN4AAABMhPAGAABgIoQ3AAAAEyG8AQAAmAjhDQAAwEQIbwAAACZCeAMAADARwhsAAICJEN4AAABMhPAGAABgIoQ3AAAAEyG8AQAAmIjXw9tf//pX3XXXXerevbvatGkjm82mmJgYZWdn16j7ySef6Pbbb1dwcLDat2+vxMREffnlly7bXbFihSIiImS1WtWzZ0+lp6fLbrfXqHf8+HFNmTJFoaGhCgwMVExMjHJzcz2+ngAAAJ7g9fB26tQpdevWTRkZGdqyZYteffVV9ejRQ/fdd58WLVrkqLd//37FxsbqwoULevvtt/XKK6/oH//4h4YNG6YTJ044tbl48WLNmjVLiYmJ2r59u6ZPn66MjAzNmDHDqV55eblGjhyp3NxcLV++XO+++646deqk+Ph47dmzp1nWHwAAoD78vN2B2NhYxcbGOpWNHj1aBw4c0KpVq5SamipJWrhwoaxWqzZv3qx27dpJkqKjo9W7d28tW7ZMTz/9tCSpuLhYixYt0rRp05SRkeF4DbvdrtTUVD3yyCPq16+fJGn16tUqLCzU3r17FRMTI0kaMWKEoqKiNHfuXO3bt685NgEAAIDbvH7krTahoaHy86vKlhUVFdq8ebPuueceR3CTpOuuu04jRozQxo0bHWXbtm1TWVmZkpKSnNpLSkqSYRjatGmTo2zjxo3q27evI7hJkp+fnyZNmqSPPvpIR44caaK1AwAAaBivH3mrdvHiRV28eFEnT57U+vXrtX37dv32t7+VJH3xxRc6f/68Bg4cWON5AwcOVE5OjsrKyhQQEKDCwkJJUmRkpFO9sLAwhYaGOpZLUmFhoYYNG+ayTUn69NNPFR4e7rK/5eXlKi8vdzw+ffq0JMlut7ucW9cY1e15ul24jzHwPsbAu9j+3scYeJ+7Y9DUY+Qz4W369On63e9+J0lq3bq1fvOb3+jBBx+UVHUqVJJsNluN59lsNhmGoZMnTyosLEzFxcWyWq0KCgpyWbe6rep2a2vz0td1ZcmSJUpPT69RvmPHDgUGBta1qg2Wk5PTJO3CfYyB9zEG3sX29z7GwPuuNAalpaVN+vo+E94ef/xxJScn6/jx43rvvff00EMP6dy5c/rlL3/pqGOxWGp9/qXL3K1X37qXmjdvnmbPnu14fPr0aXXr1k1xcXFOp3Y9wW63KycnR6NGjZK/v79H24Z7GAPvYwy8i+3vfYyB97k7BtVn45qKz4S37t27q3v37pKkO++8U1JVQJo8ebJCQkIkuT4SVlJSIovFovbt20uSQkJCVFZWptLS0hpHwEpKShQdHe14HBISUmubkusjfdWsVqusVmuNcn9//ybbqZqybbiHMfA+xsC72P7exxh435XGoKnHx2cvWBg8eLAqKir05Zdf6oYbblCbNm1UUFBQo15BQYF69eqlgIAASd/Pdbu87tGjR1VUVKQBAwY4yiIjI2ttU5JTXQAAAF/gs+EtLy9P11xzja6//nr5+fnp7rvv1oYNG3TmzBlHna+++kp5eXlKTEx0lMXHxysgIEBZWVlO7WVlZclisWjs2LGOsoSEBO3fv9/pliAVFRXKzs7
  772. "text/plain": [
  773. "<Figure size 640x480 with 1 Axes>"
  774. ]
  775. },
  776. "metadata": {},
  777. "output_type": "display_data"
  778. }
  779. ],
  780. "source": [
  781. "shotNum = \"0017\"\n",
  782. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  783. "\n",
  784. "dataSetDict = {\n",
  785. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  786. " for i in [0]\n",
  787. "}\n",
  788. "\n",
  789. "dataSet = dataSetDict[\"camera_0\"]\n",
  790. "\n",
  791. "print_scanAxis(dataSet)\n",
  792. "\n",
  793. "scanAxis = get_scanAxis(dataSet)\n",
  794. "\n",
  795. "dataSet = auto_rechunk(dataSet)\n",
  796. "\n",
  797. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  798. "\n",
  799. "imageAnalyser.center = (535, 995)\n",
  800. "imageAnalyser.span = (350, 350)\n",
  801. "imageAnalyser.fraction = (0.1, 0.1)\n",
  802. "\n",
  803. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  804. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  805. "\n",
  806. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  807. "Ncount_mean = calculate_mean(Ncount)\n",
  808. "Ncount_std = calculate_std(Ncount)\n",
  809. "\n",
  810. "fig = plt.figure()\n",
  811. "ax = fig.gca()\n",
  812. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  813. "plt.ylim([0, 3500])\n",
  814. "plt.ylabel('NCount')\n",
  815. "plt.tight_layout()\n",
  816. "plt.grid(visible=1)\n",
  817. "plt.show()"
  818. ]
  819. },
  820. {
  821. "cell_type": "code",
  822. "execution_count": 7,
  823. "metadata": {},
  824. "outputs": [],
  825. "source": [
  826. "Ncount_mean_total = copy.copy(Ncount_mean)\n",
  827. "Ncount_std_total = copy.copy(Ncount_std)"
  828. ]
  829. },
  830. {
  831. "attachments": {},
  832. "cell_type": "markdown",
  833. "metadata": {},
  834. "source": [
  835. "# 0.025 - 0.050 A"
  836. ]
  837. },
  838. {
  839. "cell_type": "code",
  840. "execution_count": 8,
  841. "metadata": {},
  842. "outputs": [
  843. {
  844. "name": "stdout",
  845. "output_type": "stream",
  846. "text": [
  847. "The detected scaning axes and values are: \n",
  848. "\n",
  849. "{'als_final_current': array([0.025 , 0.0259, 0.0268, 0.0277, 0.0286, 0.0295, 0.0304, 0.0313,\n",
  850. " 0.0322, 0.0331, 0.034 , 0.0349, 0.0358, 0.0367, 0.0376, 0.0385,\n",
  851. " 0.0394, 0.0403, 0.0412, 0.0421, 0.043 , 0.0439, 0.0448, 0.0457,\n",
  852. " 0.0466, 0.0475, 0.0484, 0.0493]), 'runs': array([0., 1.])}\n"
  853. ]
  854. },
  855. {
  856. "data": {
  857. "image/png": "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
  858. "text/plain": [
  859. "<Figure size 640x480 with 1 Axes>"
  860. ]
  861. },
  862. "metadata": {},
  863. "output_type": "display_data"
  864. }
  865. ],
  866. "source": [
  867. "shotNum = \"0018\"\n",
  868. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  869. "\n",
  870. "dataSetDict = {\n",
  871. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  872. " for i in [0]\n",
  873. "}\n",
  874. "\n",
  875. "dataSet = dataSetDict[\"camera_0\"]\n",
  876. "\n",
  877. "print_scanAxis(dataSet)\n",
  878. "\n",
  879. "scanAxis = get_scanAxis(dataSet)\n",
  880. "\n",
  881. "dataSet = auto_rechunk(dataSet)\n",
  882. "\n",
  883. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  884. "\n",
  885. "imageAnalyser.center = (535, 995)\n",
  886. "imageAnalyser.span = (350, 350)\n",
  887. "imageAnalyser.fraction = (0.1, 0.1)\n",
  888. "\n",
  889. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  890. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  891. "\n",
  892. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  893. "Ncount_mean = calculate_mean(Ncount)\n",
  894. "Ncount_std = calculate_std(Ncount)\n",
  895. "\n",
  896. "fig = plt.figure()\n",
  897. "ax = fig.gca()\n",
  898. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  899. "plt.ylim([0, 3500])\n",
  900. "plt.ylabel('NCount')\n",
  901. "plt.tight_layout()\n",
  902. "plt.grid(visible=1)\n",
  903. "plt.show()"
  904. ]
  905. },
  906. {
  907. "cell_type": "code",
  908. "execution_count": 9,
  909. "metadata": {},
  910. "outputs": [],
  911. "source": [
  912. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  913. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  914. ]
  915. },
  916. {
  917. "attachments": {},
  918. "cell_type": "markdown",
  919. "metadata": {},
  920. "source": [
  921. "# 0.050 - 0.075 A"
  922. ]
  923. },
  924. {
  925. "cell_type": "code",
  926. "execution_count": 10,
  927. "metadata": {},
  928. "outputs": [
  929. {
  930. "name": "stdout",
  931. "output_type": "stream",
  932. "text": [
  933. "The detected scaning axes and values are: \n",
  934. "\n",
  935. "{'als_final_current': array([0.05 , 0.0509, 0.0518, 0.0527, 0.0536, 0.0545, 0.0554, 0.0563,\n",
  936. " 0.0572, 0.0581, 0.059 , 0.0599, 0.0608, 0.0617, 0.0626, 0.0635,\n",
  937. " 0.0644, 0.0653, 0.0662, 0.0671, 0.068 , 0.0689, 0.0698, 0.0707,\n",
  938. " 0.0716, 0.0725, 0.0734, 0.0743, 0.0752, 0.0761]), 'runs': array([0., 1.])}\n"
  939. ]
  940. },
  941. {
  942. "data": {
  943. "image/png": "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
  944. "text/plain": [
  945. "<Figure size 640x480 with 1 Axes>"
  946. ]
  947. },
  948. "metadata": {},
  949. "output_type": "display_data"
  950. }
  951. ],
  952. "source": [
  953. "shotNum = \"0019\"\n",
  954. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  955. "\n",
  956. "dataSetDict = {\n",
  957. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  958. " for i in [0]\n",
  959. "}\n",
  960. "\n",
  961. "dataSet = dataSetDict[\"camera_0\"]\n",
  962. "\n",
  963. "print_scanAxis(dataSet)\n",
  964. "\n",
  965. "scanAxis = get_scanAxis(dataSet)\n",
  966. "\n",
  967. "dataSet = auto_rechunk(dataSet)\n",
  968. "\n",
  969. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  970. "\n",
  971. "imageAnalyser.center = (535, 995)\n",
  972. "imageAnalyser.span = (350, 350)\n",
  973. "imageAnalyser.fraction = (0.1, 0.1)\n",
  974. "\n",
  975. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  976. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  977. "\n",
  978. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  979. "Ncount_mean = calculate_mean(Ncount)\n",
  980. "Ncount_std = calculate_std(Ncount)\n",
  981. "\n",
  982. "fig = plt.figure()\n",
  983. "ax = fig.gca()\n",
  984. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  985. "plt.ylim([0, 3500])\n",
  986. "plt.ylabel('NCount')\n",
  987. "plt.tight_layout()\n",
  988. "plt.grid(visible=1)\n",
  989. "plt.show()"
  990. ]
  991. },
  992. {
  993. "cell_type": "code",
  994. "execution_count": 11,
  995. "metadata": {},
  996. "outputs": [],
  997. "source": [
  998. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  999. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  1000. ]
  1001. },
  1002. {
  1003. "cell_type": "code",
  1004. "execution_count": 12,
  1005. "metadata": {},
  1006. "outputs": [
  1007. {
  1008. "data": {
  1009. "image/png": "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
  1010. "text/plain": [
  1011. "<Figure size 640x480 with 1 Axes>"
  1012. ]
  1013. },
  1014. "metadata": {},
  1015. "output_type": "display_data"
  1016. }
  1017. ],
  1018. "source": [
  1019. "fig = plt.figure()\n",
  1020. "ax = fig.gca()\n",
  1021. "Ncount_mean_total.plot.errorbar(ax=ax, yerr = Ncount_std_total, fmt='ob')\n",
  1022. "plt.ylim([0, 3500])\n",
  1023. "plt.ylabel('NCount')\n",
  1024. "plt.tight_layout()\n",
  1025. "plt.grid(visible=1)\n",
  1026. "plt.show()"
  1027. ]
  1028. },
  1029. {
  1030. "attachments": {},
  1031. "cell_type": "markdown",
  1032. "metadata": {},
  1033. "source": [
  1034. "# 0.075 - 0.100 A"
  1035. ]
  1036. },
  1037. {
  1038. "cell_type": "code",
  1039. "execution_count": 13,
  1040. "metadata": {},
  1041. "outputs": [
  1042. {
  1043. "name": "stdout",
  1044. "output_type": "stream",
  1045. "text": [
  1046. "The detected scaning axes and values are: \n",
  1047. "\n",
  1048. "{'als_final_current': array([0.075 , 0.0759, 0.0768, 0.0777, 0.0786, 0.0795, 0.0804, 0.0813,\n",
  1049. " 0.0822, 0.0831, 0.084 , 0.0849, 0.0858, 0.0867, 0.0876, 0.0885,\n",
  1050. " 0.0894, 0.0903, 0.0912, 0.0921, 0.093 , 0.0939, 0.0948, 0.0957,\n",
  1051. " 0.0966, 0.0975, 0.0984, 0.0993, 0.1002, 0.1011]), 'runs': array([0., 1.])}\n"
  1052. ]
  1053. },
  1054. {
  1055. "data": {
  1056. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAm8AAAHPCAYAAAAFwj37AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAABffklEQVR4nO3df1xUVf4/8NcVcIYfIg4oAuKPtGRJQGP9wW4opCKZrjLhrpkVuFibJpq2iIIGpmifqDQXay0TN8pKA9tcFZGQ2izjW7sbaNZuqSmmCKgoODDg/f4xzcgwAwwwvy68no8HD5lzzz1z7nvv5ttz7j1HEEVRBBERERFJQi9bd4CIiIiITMfkjYiIiEhCmLwRERERSQiTNyIiIiIJYfJGREREJCFM3oiIiIgkhMkbERERkYQweSMiIiKSECZvRERERBJid8nbG2+8AUEQ4ObmplceFxcHQRAMfgICAoy2s3XrVgQEBEAmk2HYsGFIT0+HWq02qFdRUYG4uDh4eXnBxcUFYWFhKCwstMi1EREREXWVo6070Fx5eTmeeeYZ+Pr64tq1awbHnZ2d8fHHHxuUtbRhwwasWbMGycnJiIqKQklJCVJTU1FeXo7t27fr6tXX12Py5Mm4evUqtmzZggEDBiArKwvR0dE4cuQIJk2aZP6LJCIiIuoCwZ72Np05cyYEQYBCocDevXtx48YN3bG4uDiDMmOqqqowaNAgPProo/jrX/+qK8/IyEBqairKysoQGBgIANi2bRsWL16MY8eOISwsDADQ2NiIkJAQuLm54fjx4xa4SiIiIqLOs5tp05ycHBQXF2Pbtm1daufQoUNQqVSIj4/XK4+Pj4coiti3b5+uLC8vDyNHjtQlbgDg6OiI+fPn48svv0R5eXmX+kJERERkbnYxbVpRUYFly5Zh06ZNGDRoUKv1bt68iYEDB+Ly5cvw8fHB7NmzsW7dOigUCl2dsrIyAEBQUJDeuT4+PvDy8tId19YNDw83+J7g4GAAwIkTJ+Dn52e0L/X19aivr9d9vnXrFqqrq+Hp6QlBEEy4aiIiIqLbRFHE9evX4evri169Wh9fs4vkbdGiRRg5ciSefPLJVuuEhIQgJCQEo0aNAgAUFxfj5ZdfRmFhIUpKSnQvOFRVVUEmk8HV1dWgDYVCgaqqKt3nqqoqvcSveT3t8dZs3LgR6enppl0gERERkYnOnTvX5mCWzZO3Dz74AB999BH+9a9/tTli9fTTT+t9njp1KsaMGYPY2Fi8/vrresfbaqflsY7UbW7VqlVYvny57vO1a9cwePBgnD59Gn369Gn1vM5Sq9UoKipCZGQknJyczN4+6WO8rY8xty7G2/oYc+uTWsyvX7+OYcOGtZtH2DR5u3HjBhYvXowlS5bA19cXV69eBQA0NDQAAK5evQonJyejo2gAEBMTA1dXV3zxxRe6Mk9PT6hUKtTV1cHFxUWvfnV1NUJDQ/XqGhtdq66uBgCjo3JaMpkMMpnMoFyhUMDd3b3V8zpLrVbDxcUFnp6ekrgBpY7xtj7G3LoYb+tjzK1PajHX9rG9x69s+sJCZWUlLl26hBdffBH9+vXT/ezevRu1tbXo168fHn744TbbEEVRb15Y+6xbaWmpXr2LFy+isrJSN+2qrduyXvNzm9clIiIisgc2HXkbOHAgioqKDMo3bdqE4uJiHDx4EF5eXq2ev3fvXtTV1WHChAm6sujoaMjlcmRnZ2P8+PG68uzsbAiCgNmzZ+vKYmJisGjRIhw/flxXt7GxETk5ORg/fjx8fX3NcJVERERE5mPT5E0ulyMiIsKgPDs7Gw4ODrpjZ8+exbx58zB37lyMGDECgiCguLgYmzdvxt13342EhATduQqFAqmpqVizZg0UCoVukd60tDQkJCTo1ngDgAULFiArKwtz5szBpk2bMGDAAGzbtg3fffcdjhw5YunLJyIiIuowm7+wYAp3d3d4e3vjpZdewqVLl9DU1IQhQ4YgMTERq1evNngmLiUlBX369EFWVhYyMzMxcOBAJCcnIyUlRa+eTCZDYWEhkpKSsGTJEtTV1WH06NE4ePAgd1cgIiIiu2SXyVt2djays7N1n/v164fc3NwOtZGYmIjExMR263l7e2PXrl0d7SIRERGRTdjNDgtERERE1D4mb0REREQSwuSNiIiISEKYvBERERFJCJM3IiIiIglh8kZEREQkIUzeiIiIiCSEyRsRERGRhDB5IyIiIpIQJm9EREREEsLkjYiIiEhCmLwRERERSQiTNyIiIiIJYfJGREREJCFM3oiIiIgkhMkbERERkYQweSMiIiKSECZvRERERBLC5I2IiIhIQpi8EREREUkIkzciIiIiCWHyRkRERCQhTN6IiIiIJITJGxEREZGEMHkjIiIikhAmb0REREQSwuSNiIiISEKYvBERERFJCJM3IiIiIglh8kZEREQkIUzeiIiIuqnaWkAQND+1tbbuDZmL3SVvb7zxBgRBgJubm8Gxr7/+GlOmTIGbmxs8PDygVCrx448/Gm1n69atCAgIgEwmw7Bhw5Ceng61Wm1Qr6KiAnFxcfDy8oKLiwvCwsJQWFho9usiIiIiMge7St7Ky8vxzDPPwNfX1+DYqVOnEBERgYaGBrz//vt488038f333yM8PByXL1/Wq7thwwYsXboUSqUS+fn5WLRoETIyMrB48WK9evX19Zg8eTIKCwuxZcsWfPjhh/D29kZ0dDSKi4steq1EREREneFo6w4096c//QkTJ06EQqHA3r179Y6tXbsWMpkM+/fvh7u7OwAgNDQUd955JzIzM/H8888DAKqqqrB+/XosXLgQGRkZAICIiAio1WqkpqZi2bJlCAwMBADs2LEDZWVlOHbsGMLCwgAAkZGRCAkJQVJSEo4fP26tSyciIiIyid2MvOXk5KC4uBjbtm0zONbY2Ij9+/fjwQcf1CVuADBkyBBERkYiLy9PV3bo0CGoVCrEx8frtREfHw9RFLFv3z5dWV5eHkaOHKlL3ADA0dER8+fPx5dffony8nIzXiERERFR19nFyFtFRQWWLVuGTZs2YdCgQQbHf/jhB9y8eRPBwcEGx4KDg1FQUACVSgW5XI6ysjIAQFBQkF49Hx8feHl56Y4DQFlZGcLDw422CQAnTpyAn5+f0T7X19ejvr5e97mmpgYAoFarjT5b11XaNi3RNhlivK2PMbcuxtv6bBFzzVc56b63p/3PLbX73NR+2kXytmjRIowcORJPPvmk0eNVVVUAAIVCYXBMoVBAFEVcuXIFPj4+qKqqgkwmg6urq9G62ra07bbWZvPvNWbjxo1IT083KD98+DBcXFxaPa+rCgoKLNY2GWK8rY8xty7G2/qsGXOVygHADABAfn4+5PImq323PZHKfV5XV2dSPZsnbx988AE++ugj/Otf/4IgCG3Wbet482Om1uto3eZWrVqF5cuX6z7X1NTA398fUVFRelO75qJWq1FQUICpU6fCycnJ7O2TPsbb+hhz62K8rc8WMW++PMi0adNgZFyjW5Pafa6dxWuPTZO3GzduYPHixViyZAl8fX1x9epVAEBDQwMA4OrVq3BycoKnpycA4yNh1dXVEAQBHh4eAABPT0+oVCrU1dUZjIBVV1cjNDRU99nT07PVNgHjI31aMpkMMpnMoNzJycmiN4il2yd9jLf1MebWxXhbnzVj3vxrNN9rla+1O1K5z03to01fWKisrMSlS5fw4osvol+/frqf3bt3o7a2Fv369cPDDz+M4cOHw9nZGaWlpQZtlJaWYsSIEZDL5QBuP+vWsu7FixdRWVmJUaNG6cqCgoJabROAXl0iIiIie2DT5G3gwIEoKioy+Jk2bRrkcjmKioqwfv16ODo6YubMmcjNzcX169d15//0008oKiqCUqnUlUVHR0MulyM7O1vvu7KzsyEIAmbPnq0ri4mJwalTp/SWBGlsbEROTg7Gjx9vdL05IiIiIluy6bSpXC5HRESEQXl2djYcHBz0jqWnp2Ps2LGYMWMGkpOToVKpsHbtWnh5eWHFihW6egqFAqmpqVizZg0UCgWioqJQUlKCtLQ0JCQk6NZ4A4A
  1057. "text/plain": [
  1058. "<Figure size 640x480 with 1 Axes>"
  1059. ]
  1060. },
  1061. "metadata": {},
  1062. "output_type": "display_data"
  1063. }
  1064. ],
  1065. "source": [
  1066. "shotNum = \"0020\"\n",
  1067. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  1068. "\n",
  1069. "dataSetDict = {\n",
  1070. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  1071. " for i in [0]\n",
  1072. "}\n",
  1073. "\n",
  1074. "dataSet = dataSetDict[\"camera_0\"]\n",
  1075. "\n",
  1076. "print_scanAxis(dataSet)\n",
  1077. "\n",
  1078. "scanAxis = get_scanAxis(dataSet)\n",
  1079. "\n",
  1080. "dataSet = auto_rechunk(dataSet)\n",
  1081. "\n",
  1082. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  1083. "\n",
  1084. "imageAnalyser.center = (535, 995)\n",
  1085. "imageAnalyser.span = (350, 350)\n",
  1086. "imageAnalyser.fraction = (0.1, 0.1)\n",
  1087. "\n",
  1088. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  1089. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  1090. "\n",
  1091. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  1092. "Ncount_mean = calculate_mean(Ncount)\n",
  1093. "Ncount_std = calculate_std(Ncount)\n",
  1094. "\n",
  1095. "fig = plt.figure()\n",
  1096. "ax = fig.gca()\n",
  1097. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  1098. "plt.ylim([0, 4500])\n",
  1099. "plt.ylabel('NCount')\n",
  1100. "plt.tight_layout()\n",
  1101. "plt.grid(visible=1)\n",
  1102. "plt.show()"
  1103. ]
  1104. },
  1105. {
  1106. "cell_type": "code",
  1107. "execution_count": 14,
  1108. "metadata": {},
  1109. "outputs": [],
  1110. "source": [
  1111. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  1112. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  1113. ]
  1114. },
  1115. {
  1116. "attachments": {},
  1117. "cell_type": "markdown",
  1118. "metadata": {},
  1119. "source": [
  1120. "# 0.100 - 0.125 A"
  1121. ]
  1122. },
  1123. {
  1124. "cell_type": "code",
  1125. "execution_count": 15,
  1126. "metadata": {},
  1127. "outputs": [
  1128. {
  1129. "name": "stdout",
  1130. "output_type": "stream",
  1131. "text": [
  1132. "The detected scaning axes and values are: \n",
  1133. "\n",
  1134. "{'als_final_current': array([0.1 , 0.1009, 0.1018, 0.1027, 0.1036, 0.1045, 0.1054, 0.1063,\n",
  1135. " 0.1072, 0.1081, 0.109 , 0.1099, 0.1108, 0.1117, 0.1126, 0.1135,\n",
  1136. " 0.1144, 0.1153, 0.1162, 0.1171, 0.118 , 0.1189, 0.1198, 0.1207,\n",
  1137. " 0.1216, 0.1225, 0.1234, 0.1243, 0.1252, 0.1261]), 'runs': array([0., 1.])}\n"
  1138. ]
  1139. },
  1140. {
  1141. "data": {
  1142. "image/png": "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
  1143. "text/plain": [
  1144. "<Figure size 640x480 with 1 Axes>"
  1145. ]
  1146. },
  1147. "metadata": {},
  1148. "output_type": "display_data"
  1149. }
  1150. ],
  1151. "source": [
  1152. "shotNum = \"0021\"\n",
  1153. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  1154. "\n",
  1155. "dataSetDict = {\n",
  1156. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  1157. " for i in [0]\n",
  1158. "}\n",
  1159. "\n",
  1160. "dataSet = dataSetDict[\"camera_0\"]\n",
  1161. "\n",
  1162. "print_scanAxis(dataSet)\n",
  1163. "\n",
  1164. "scanAxis = get_scanAxis(dataSet)\n",
  1165. "\n",
  1166. "dataSet = auto_rechunk(dataSet)\n",
  1167. "\n",
  1168. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  1169. "\n",
  1170. "imageAnalyser.center = (535, 995)\n",
  1171. "imageAnalyser.span = (350, 350)\n",
  1172. "imageAnalyser.fraction = (0.1, 0.1)\n",
  1173. "\n",
  1174. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  1175. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  1176. "\n",
  1177. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  1178. "Ncount_mean = calculate_mean(Ncount)\n",
  1179. "Ncount_std = calculate_std(Ncount)\n",
  1180. "\n",
  1181. "fig = plt.figure()\n",
  1182. "ax = fig.gca()\n",
  1183. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  1184. "plt.ylim([0, 5000])\n",
  1185. "plt.ylabel('NCount')\n",
  1186. "plt.tight_layout()\n",
  1187. "plt.grid(visible=1)\n",
  1188. "plt.show()"
  1189. ]
  1190. },
  1191. {
  1192. "cell_type": "code",
  1193. "execution_count": 16,
  1194. "metadata": {},
  1195. "outputs": [],
  1196. "source": [
  1197. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  1198. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  1199. ]
  1200. },
  1201. {
  1202. "attachments": {},
  1203. "cell_type": "markdown",
  1204. "metadata": {},
  1205. "source": [
  1206. "# 0.125 - 0.150 A"
  1207. ]
  1208. },
  1209. {
  1210. "cell_type": "code",
  1211. "execution_count": 17,
  1212. "metadata": {},
  1213. "outputs": [
  1214. {
  1215. "name": "stdout",
  1216. "output_type": "stream",
  1217. "text": [
  1218. "The detected scaning axes and values are: \n",
  1219. "\n",
  1220. "{'als_final_current': array([0.125 , 0.1259, 0.1268, 0.1277, 0.1286, 0.1295, 0.1304, 0.1313,\n",
  1221. " 0.1322, 0.1331, 0.134 , 0.1349, 0.1358, 0.1367, 0.1376, 0.1385,\n",
  1222. " 0.1394, 0.1403, 0.1412, 0.1421, 0.143 , 0.1439, 0.1448, 0.1457,\n",
  1223. " 0.1466, 0.1475, 0.1484, 0.1493, 0.1502, 0.1511]), 'runs': array([0., 1.])}\n"
  1224. ]
  1225. },
  1226. {
  1227. "data": {
  1228. "image/png": "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
  1229. "text/plain": [
  1230. "<Figure size 640x480 with 1 Axes>"
  1231. ]
  1232. },
  1233. "metadata": {},
  1234. "output_type": "display_data"
  1235. }
  1236. ],
  1237. "source": [
  1238. "shotNum = \"0022\"\n",
  1239. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  1240. "\n",
  1241. "dataSetDict = {\n",
  1242. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  1243. " for i in [0]\n",
  1244. "}\n",
  1245. "\n",
  1246. "dataSet = dataSetDict[\"camera_0\"]\n",
  1247. "\n",
  1248. "print_scanAxis(dataSet)\n",
  1249. "\n",
  1250. "scanAxis = get_scanAxis(dataSet)\n",
  1251. "\n",
  1252. "dataSet = auto_rechunk(dataSet)\n",
  1253. "\n",
  1254. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  1255. "\n",
  1256. "imageAnalyser.center = (535, 995)\n",
  1257. "imageAnalyser.span = (350, 350)\n",
  1258. "imageAnalyser.fraction = (0.1, 0.1)\n",
  1259. "\n",
  1260. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  1261. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  1262. "\n",
  1263. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  1264. "Ncount_mean = calculate_mean(Ncount)\n",
  1265. "Ncount_std = calculate_std(Ncount)\n",
  1266. "\n",
  1267. "fig = plt.figure()\n",
  1268. "ax = fig.gca()\n",
  1269. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  1270. "plt.ylim([0, 5000])\n",
  1271. "plt.ylabel('NCount')\n",
  1272. "plt.tight_layout()\n",
  1273. "plt.grid(visible=1)\n",
  1274. "plt.show()"
  1275. ]
  1276. },
  1277. {
  1278. "cell_type": "code",
  1279. "execution_count": 18,
  1280. "metadata": {},
  1281. "outputs": [],
  1282. "source": [
  1283. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  1284. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  1285. ]
  1286. },
  1287. {
  1288. "attachments": {},
  1289. "cell_type": "markdown",
  1290. "metadata": {},
  1291. "source": [
  1292. "# 0.150 - 0.175 A"
  1293. ]
  1294. },
  1295. {
  1296. "cell_type": "code",
  1297. "execution_count": 19,
  1298. "metadata": {},
  1299. "outputs": [
  1300. {
  1301. "name": "stdout",
  1302. "output_type": "stream",
  1303. "text": [
  1304. "The detected scaning axes and values are: \n",
  1305. "\n",
  1306. "{'als_final_current': array([0.15 , 0.1509, 0.1518, 0.1527, 0.1536, 0.1545, 0.1554, 0.1563,\n",
  1307. " 0.1572, 0.1581, 0.159 , 0.1599, 0.1608, 0.1617, 0.1626, 0.1635,\n",
  1308. " 0.1644, 0.1653, 0.1662, 0.1671, 0.168 , 0.1689, 0.1698, 0.1707,\n",
  1309. " 0.1716, 0.1725, 0.1734, 0.1743, 0.1752, 0.1761]), 'runs': array([0., 1.])}\n"
  1310. ]
  1311. },
  1312. {
  1313. "data": {
  1314. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAm8AAAHPCAYAAAAFwj37AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAABX/klEQVR4nO3de1xUZf4H8M9RcIaLpAPKzWve+KlcjPXCbiR4QTJdBbU1cwtM200TTVtCQQMvaL+odFmsdb3ARllpYOUqiIjUL8vY3HbBVmu9VZgig4o6Mg54fn+wjIwzwABzOUc+79eLV81znnl4ztfDzGfObQRRFEUQERERkSx0svcEiIiIiMh8DG9EREREMsLwRkRERCQjDG9EREREMsLwRkRERCQjDG9EREREMsLwRkRERCQjDG9EREREMsLwRkRERCQjkgtv27ZtgyAIcHV1NWiPiYmBIAhGP35+fibHSU9Ph5+fHxQKBfr374+UlBTodDqjfhUVFYiJiYGHhwecnZ0REhKCwsJCq6wbERERUXs52HsCjZWXl+PFF1+Ej48Prl27ZrTcyckJhw8fNmq71/r167Fq1SokJCQgIiICJSUlSEpKQnl5ObZu3arvp9VqMX78eFy9ehWbN29Gz549kZGRgcjISBw6dAhjx461/EoSERERtYMgpe82nTp1KgRBgEqlwp49e3Djxg39spiYGKM2U9RqNXr16oWnnnoKf/7zn/XtqampSEpKQllZGYYOHQoA2LJlCxYtWoSjR48iJCQEAFBbW4vAwEC4urri2LFjVlhLIiIioraTzGHT7OxsFBcXY8uWLe0aJy8vDzU1NYiNjTVoj42NhSiK2Lt3r74tNzcXQ4YM0Qc3AHBwcMDcuXPx1Vdfoby8vF1zISIiIrI0SRw2raiowNKlS7Fx40b06tWryX63bt2Cl5cXLl++DG9vb0yfPh1r1qyBSqXS9ykrKwMA+Pv7GzzX29sbHh4e+uUNfUNDQ41+T0BAAADgxIkT8PX1NTkXrVYLrVarf3znzh1UVVXB3d0dgiCYsdZEREREd4miiOvXr8PHxwedOjW9f00S4W3hwoUYMmQInnvuuSb7BAYGIjAwEMOHDwcAFBcX44033kBhYSFKSkr0Fzio1WooFAq4uLgYjaFSqaBWq/WP1Wq1QfBr3K9heVM2bNiAlJQU81aQiIiIyEw//vhjszuz7B7ePvzwQ3zyySf4xz/+0eweqxdeeMHg8cSJEzFixAjMnDkTf/nLXwyWNzfOvcta07exFStWYNmyZfrH165dQ58+fXD27Fl07dq1yee1lU6nQ1FREcLDw+Ho6Gjx8ckQ6217rLltsd62x5rbntxqfv36dfTv37/FHGHX8Hbjxg0sWrQIixcvho+PD65evQoAuH37NgDg6tWrcHR0NLkXDQCioqLg4uKCL7/8Ut/m7u6OmpoaaDQaODs7G/SvqqpCcHCwQV9Te9eqqqoAwOReuQYKhQIKhcKoXaVSwc3NrcnntZVOp4OzszPc3d1lsQHKHette6y5bbHetsea257cat4wx5ZOv7LrBQuVlZW4dOkSXnvtNXTv3l3/s2vXLty8eRPdu3fHk08+2ewYoigaHBduONettLTUoN/FixdRWVmpP+za0Pfefo2f27gvERERkRTYdc+bl5cXioqKjNo3btyI4uJiHDhwAB4eHk0+f8+ePdBoNBgzZoy+LTIyEkqlEpmZmRg9erS+PTMzE4IgYPr06fq2qKgoLFy4EMeOHdP3ra2tRXZ2NkaPHg0fHx8LrCURERGR5dg1vCmVSoSFhRm1Z2ZmonPnzvpl58+fx5w5czB79mwMHDgQgiCguLgYmzZtwrBhwzB//nz9c1UqFZKSkrBq1SqoVCr9TXqTk5Mxf/58/T3eAGDevHnIyMjArFmzsHHjRvTs2RNbtmzBqVOncOjQIWuvPhEREVGr2f2CBXO4ubnB09MTr7/+Oi5duoS6ujr07dsXcXFxWLlypdE5cYmJiejatSsyMjKQlpYGLy8vJCQkIDEx0aCfQqFAYWEh4uPjsXjxYmg0GgQFBeHAgQP8dgUiIiKSJEmGt8zMTGRmZuofd+/eHTk5Oa0aIy4uDnFxcS328/T0RFZWVmunSERERGQXkvmGBSIiIiJqGcMbERERkYwwvBERERHJCMMbERERkYwwvBERERHJCMMbERERkYwwvBERERHJCMMbERERkYwwvBERERHJCMMbERERkYwwvBERERHJCMMbERERkYwwvBERERHJCMMbERERkYwwvBERERHJCMMbERERkYwwvBERERHJCMMbERERkYwwvBERERHJCMMbERERkYwwvBERERHJCMMbERERkYwwvBERERHJCMMbERERkYwwvBERERHJCMMbERERmXTzJiAI9T83b9p7NtSA4Y2IiIhIRhjeiIiIiGSE4Y2IiIhIRhjeiIiIiGSE4Y2IiIhIRiQX3rZt2wZBEODq6mq07Pjx45gwYQJcXV3RrVs3REdH48yZMybHSU9Ph5+fHxQKBfr374+UlBTodDqjfhUVFYiJiYGHhwecnZ0REhKCwsJCi68XERERkSVIKryVl5fjxRdfhI+Pj9GykydPIiwsDLdv38YHH3yAHTt24LvvvkNoaCguX75s0Hf9+vVYsmQJoqOjkZ+fj4ULFyI1NRWLFi0y6KfVajF+/HgUFhZi8+bN+Oijj+Dp6YnIyEgUFxdbdV2JiIiI2sLB3hNo7Pe//z0eeeQRqFQq7Nmzx2DZ6tWroVAosG/fPri5uQEAgoODMWjQIKSlpeGVV14BAKjVaqxbtw4LFixAamoqACAsLAw6nQ5JSUlYunQphg4dCgDYvn07ysrKcPToUYSEhAAAwsPDERgYiPj4eBw7dsxWq05ERERkFsnsecvOzkZxcTG2bNlitKy2thb79u3DjBkz9MENAPr27Yvw8HDk5ubq2/Ly8lBTU4PY2FiDMWJjYyGKIvbu3atvy83NxZAhQ/TBDQAcHBwwd+5cfPXVVygvL7fgGhIRWc/9cjNVrgdRyySx562iogJLly7Fxo0b0atXL6Plp0+fxq1btxAQEGC0LCAgAAUFBaipqYFSqURZWRkAwN/f36Cft7c3PDw89MsBoKysDKGhoSbHBIATJ07A19fX5Jy1Wi20Wq3+cXV1NQBAp9OZPLeuvRrGtMbYZIz1to2bN4Hu3R0BABUVrHl71JfN8b//r0NLZZTqNt7a9ZAqU+sh1Zo3R+7/Hg21vnpVh54969fjyhUdXFzsOaummbttSCK8LVy4EEOGDMFzzz1ncrlarQYAqFQqo2UqlQqiKOLKlSvw9vaGWq2GQqGAi4l/GZVKpR+rYdymxmz8e03ZsGEDUlJSjNoPHjwIZ2fnJp/XXgUFBVYbm4xJtd41NZ0xe/YUAMB77+2DUlln5xm1jUbTGUD9eqSn/xNBQdKtudTV1NytZX5+vtnbhNTq3XibeP31vyMoqAKdO9t3Tm3R3L+H1GrenLZuV9aYR3te8w4fPgwprEdLNBqNWf3sHt4+/PBDfPLJJ/jHP/4BQRCa7dvc8sbLzO3X2r6NrVixAsuWLdM/rq6uRu/evREREWFwaNdSdDodCgoKMHHiRDg6Olp8fDIk9Xo3PgwzadIku3yKbLzXrC2fZHNzBbz44t135bVrQ+Dufgvp6Z0wc6ZkzuiQjdZuE1Lcxk1tE76+Il5/vQ5RUaIdZ9Z6pv49pFjzlvz3oBIAwMUlEhMmiHYJ0219zWuo+bhx49r0fFurblzwZtg1vN24cQOLFi3C4sWL4ePjg6tXrwIAbt++DQC4evUqHB0d4e7uDsD0nrCqqioIgoBu3boBANzd3VFTUwONRmO0B6yqqgrBwcH6x+7u7k2OCZje09dAoVBAoVAYtTs6Olr1j9La49/v6uqAzz4Dfv4Z8PYGQkPR7AuRVOvdeEr1c5TXHHJygNmzAfGe92O1WoknnwQUCgHR0ZaZZ0fR1n8PqWzjTW0TFy4ImD3bAXv2QFbbRHP/HlKpeUtycoC4uLuPp051QK9ewObNtv+3aO9rXuN6t/U1s7XvH21h7nZh14+3lZWVuHT
  1315. "text/plain": [
  1316. "<Figure size 640x480 with 1 Axes>"
  1317. ]
  1318. },
  1319. "metadata": {},
  1320. "output_type": "display_data"
  1321. }
  1322. ],
  1323. "source": [
  1324. "shotNum = \"0023\"\n",
  1325. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  1326. "\n",
  1327. "dataSetDict = {\n",
  1328. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  1329. " for i in [0]\n",
  1330. "}\n",
  1331. "\n",
  1332. "dataSet = dataSetDict[\"camera_0\"]\n",
  1333. "\n",
  1334. "print_scanAxis(dataSet)\n",
  1335. "\n",
  1336. "scanAxis = get_scanAxis(dataSet)\n",
  1337. "\n",
  1338. "dataSet = auto_rechunk(dataSet)\n",
  1339. "\n",
  1340. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  1341. "\n",
  1342. "imageAnalyser.center = (535, 995)\n",
  1343. "imageAnalyser.span = (350, 350)\n",
  1344. "imageAnalyser.fraction = (0.1, 0.1)\n",
  1345. "\n",
  1346. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  1347. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  1348. "\n",
  1349. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  1350. "Ncount_mean = calculate_mean(Ncount)\n",
  1351. "Ncount_std = calculate_std(Ncount)\n",
  1352. "\n",
  1353. "fig = plt.figure()\n",
  1354. "ax = fig.gca()\n",
  1355. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  1356. "plt.ylim([0, 4500])\n",
  1357. "plt.ylabel('NCount')\n",
  1358. "plt.tight_layout()\n",
  1359. "plt.grid(visible=1)\n",
  1360. "plt.show()"
  1361. ]
  1362. },
  1363. {
  1364. "cell_type": "code",
  1365. "execution_count": 20,
  1366. "metadata": {},
  1367. "outputs": [],
  1368. "source": [
  1369. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  1370. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  1371. ]
  1372. },
  1373. {
  1374. "attachments": {},
  1375. "cell_type": "markdown",
  1376. "metadata": {},
  1377. "source": [
  1378. "# 0.175 - 0.200 A"
  1379. ]
  1380. },
  1381. {
  1382. "cell_type": "code",
  1383. "execution_count": 21,
  1384. "metadata": {},
  1385. "outputs": [
  1386. {
  1387. "name": "stdout",
  1388. "output_type": "stream",
  1389. "text": [
  1390. "The detected scaning axes and values are: \n",
  1391. "\n",
  1392. "{'als_final_current': array([0.175 , 0.1759, 0.1768, 0.1777, 0.1786, 0.1795, 0.1804, 0.1813,\n",
  1393. " 0.1822, 0.1831, 0.184 , 0.1849, 0.1858, 0.1867, 0.1876, 0.1885,\n",
  1394. " 0.1894, 0.1903, 0.1912, 0.1921, 0.193 , 0.1939, 0.1948, 0.1957,\n",
  1395. " 0.1966, 0.1975, 0.1984, 0.1993, 0.2002, 0.2011, 0.202 ]), 'runs': array([0., 1.])}\n"
  1396. ]
  1397. },
  1398. {
  1399. "data": {
  1400. "image/png": "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
  1401. "text/plain": [
  1402. "<Figure size 640x480 with 1 Axes>"
  1403. ]
  1404. },
  1405. "metadata": {},
  1406. "output_type": "display_data"
  1407. }
  1408. ],
  1409. "source": [
  1410. "shotNum = \"0024\"\n",
  1411. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  1412. "\n",
  1413. "dataSetDict = {\n",
  1414. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  1415. " for i in [0]\n",
  1416. "}\n",
  1417. "\n",
  1418. "dataSet = dataSetDict[\"camera_0\"]\n",
  1419. "\n",
  1420. "print_scanAxis(dataSet)\n",
  1421. "\n",
  1422. "scanAxis = get_scanAxis(dataSet)\n",
  1423. "\n",
  1424. "dataSet = auto_rechunk(dataSet)\n",
  1425. "\n",
  1426. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  1427. "\n",
  1428. "imageAnalyser.center = (535, 995)\n",
  1429. "imageAnalyser.span = (350, 350)\n",
  1430. "imageAnalyser.fraction = (0.1, 0.1)\n",
  1431. "\n",
  1432. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  1433. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  1434. "\n",
  1435. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  1436. "Ncount_mean = calculate_mean(Ncount)\n",
  1437. "Ncount_std = calculate_std(Ncount)\n",
  1438. "\n",
  1439. "fig = plt.figure()\n",
  1440. "ax = fig.gca()\n",
  1441. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  1442. "plt.ylim([0, 4500])\n",
  1443. "plt.ylabel('NCount')\n",
  1444. "plt.tight_layout()\n",
  1445. "plt.grid(visible=1)\n",
  1446. "plt.show()"
  1447. ]
  1448. },
  1449. {
  1450. "cell_type": "code",
  1451. "execution_count": 22,
  1452. "metadata": {},
  1453. "outputs": [],
  1454. "source": [
  1455. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  1456. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  1457. ]
  1458. },
  1459. {
  1460. "attachments": {},
  1461. "cell_type": "markdown",
  1462. "metadata": {},
  1463. "source": [
  1464. "# 0.200 - 0.225 A"
  1465. ]
  1466. },
  1467. {
  1468. "cell_type": "code",
  1469. "execution_count": 23,
  1470. "metadata": {},
  1471. "outputs": [
  1472. {
  1473. "name": "stdout",
  1474. "output_type": "stream",
  1475. "text": [
  1476. "The detected scaning axes and values are: \n",
  1477. "\n",
  1478. "{'als_final_current': array([0.2 , 0.2009, 0.2018, 0.2027, 0.2036, 0.2045, 0.2054, 0.2063,\n",
  1479. " 0.2072, 0.2081, 0.209 , 0.2099, 0.2108, 0.2117, 0.2126, 0.2135,\n",
  1480. " 0.2144, 0.2153, 0.2162, 0.2171, 0.218 , 0.2189, 0.2198, 0.2207,\n",
  1481. " 0.2216, 0.2225, 0.2234, 0.2243, 0.2252, 0.2261]), 'runs': array([0., 1.])}\n"
  1482. ]
  1483. },
  1484. {
  1485. "data": {
  1486. "image/png": "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
  1487. "text/plain": [
  1488. "<Figure size 640x480 with 1 Axes>"
  1489. ]
  1490. },
  1491. "metadata": {},
  1492. "output_type": "display_data"
  1493. }
  1494. ],
  1495. "source": [
  1496. "shotNum = \"0025\"\n",
  1497. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  1498. "\n",
  1499. "dataSetDict = {\n",
  1500. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  1501. " for i in [0]\n",
  1502. "}\n",
  1503. "\n",
  1504. "dataSet = dataSetDict[\"camera_0\"]\n",
  1505. "\n",
  1506. "print_scanAxis(dataSet)\n",
  1507. "\n",
  1508. "scanAxis = get_scanAxis(dataSet)\n",
  1509. "\n",
  1510. "dataSet = auto_rechunk(dataSet)\n",
  1511. "\n",
  1512. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  1513. "\n",
  1514. "imageAnalyser.center = (535, 995)\n",
  1515. "imageAnalyser.span = (350, 350)\n",
  1516. "imageAnalyser.fraction = (0.1, 0.1)\n",
  1517. "\n",
  1518. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  1519. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  1520. "\n",
  1521. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  1522. "Ncount_mean = calculate_mean(Ncount)\n",
  1523. "Ncount_std = calculate_std(Ncount)\n",
  1524. "\n",
  1525. "fig = plt.figure()\n",
  1526. "ax = fig.gca()\n",
  1527. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  1528. "plt.ylim([0, 4500])\n",
  1529. "plt.ylabel('NCount')\n",
  1530. "plt.tight_layout()\n",
  1531. "plt.grid(visible=1)\n",
  1532. "plt.show()"
  1533. ]
  1534. },
  1535. {
  1536. "cell_type": "code",
  1537. "execution_count": 24,
  1538. "metadata": {},
  1539. "outputs": [],
  1540. "source": [
  1541. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  1542. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  1543. ]
  1544. },
  1545. {
  1546. "attachments": {},
  1547. "cell_type": "markdown",
  1548. "metadata": {},
  1549. "source": [
  1550. "# 0.220 - 0.250 A"
  1551. ]
  1552. },
  1553. {
  1554. "cell_type": "code",
  1555. "execution_count": 25,
  1556. "metadata": {},
  1557. "outputs": [
  1558. {
  1559. "name": "stdout",
  1560. "output_type": "stream",
  1561. "text": [
  1562. "The detected scaning axes and values are: \n",
  1563. "\n",
  1564. "{'als_final_current': array([0.22 , 0.2209, 0.2218, 0.2227, 0.2236, 0.2245, 0.2254, 0.2263,\n",
  1565. " 0.2272, 0.2281, 0.229 , 0.2299, 0.2308, 0.2317, 0.2326, 0.2335,\n",
  1566. " 0.2344, 0.2353, 0.2362, 0.2371, 0.238 , 0.2389, 0.2398, 0.2407,\n",
  1567. " 0.2416, 0.2425, 0.2434, 0.2443, 0.2452, 0.2461, 0.247 , 0.2479,\n",
  1568. " 0.2488, 0.2497, 0.2506, 0.2515]), 'runs': array([0., 1.])}\n"
  1569. ]
  1570. },
  1571. {
  1572. "data": {
  1573. "image/png": "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
  1574. "text/plain": [
  1575. "<Figure size 640x480 with 1 Axes>"
  1576. ]
  1577. },
  1578. "metadata": {},
  1579. "output_type": "display_data"
  1580. }
  1581. ],
  1582. "source": [
  1583. "shotNum = \"0026\"\n",
  1584. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  1585. "\n",
  1586. "dataSetDict = {\n",
  1587. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  1588. " for i in [0]\n",
  1589. "}\n",
  1590. "\n",
  1591. "dataSet = dataSetDict[\"camera_0\"]\n",
  1592. "\n",
  1593. "print_scanAxis(dataSet)\n",
  1594. "\n",
  1595. "scanAxis = get_scanAxis(dataSet)\n",
  1596. "\n",
  1597. "dataSet = auto_rechunk(dataSet)\n",
  1598. "\n",
  1599. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  1600. "\n",
  1601. "imageAnalyser.center = (535, 995)\n",
  1602. "imageAnalyser.span = (350, 350)\n",
  1603. "imageAnalyser.fraction = (0.1, 0.1)\n",
  1604. "\n",
  1605. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  1606. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  1607. "\n",
  1608. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  1609. "Ncount_mean = calculate_mean(Ncount)\n",
  1610. "Ncount_std = calculate_std(Ncount)\n",
  1611. "\n",
  1612. "fig = plt.figure()\n",
  1613. "ax = fig.gca()\n",
  1614. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  1615. "plt.ylim([0, 3500])\n",
  1616. "plt.ylabel('NCount')\n",
  1617. "plt.tight_layout()\n",
  1618. "plt.grid(visible=1)\n",
  1619. "plt.show()"
  1620. ]
  1621. },
  1622. {
  1623. "cell_type": "code",
  1624. "execution_count": 26,
  1625. "metadata": {},
  1626. "outputs": [],
  1627. "source": [
  1628. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  1629. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  1630. ]
  1631. },
  1632. {
  1633. "attachments": {},
  1634. "cell_type": "markdown",
  1635. "metadata": {},
  1636. "source": [
  1637. "# 0.250 - 0.275 A"
  1638. ]
  1639. },
  1640. {
  1641. "cell_type": "code",
  1642. "execution_count": 27,
  1643. "metadata": {},
  1644. "outputs": [
  1645. {
  1646. "name": "stdout",
  1647. "output_type": "stream",
  1648. "text": [
  1649. "The detected scaning axes and values are: \n",
  1650. "\n",
  1651. "{'als_final_current': array([0.25 , 0.2509, 0.2518, 0.2527, 0.2536, 0.2545, 0.2554, 0.2563,\n",
  1652. " 0.2572, 0.2581, 0.259 , 0.2599, 0.2608, 0.2617, 0.2626, 0.2635,\n",
  1653. " 0.2644, 0.2653, 0.2662, 0.2671, 0.268 , 0.2689, 0.2698, 0.2707,\n",
  1654. " 0.2716, 0.2725, 0.2734, 0.2743, 0.2752, 0.2761, 0.277 ]), 'runs': array([0., 1.])}\n"
  1655. ]
  1656. },
  1657. {
  1658. "data": {
  1659. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAm8AAAHPCAYAAAAFwj37AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAABSjklEQVR4nO3de1xVVf7/8fcJ8CCg2QEveLe88DUVi0llJhMzkTEdlXTGHCsxq29aWjZjqGhS3pqsdByqcSqx7GqhleMlJLW+XYxv/uY7WGMzU2qGmQrmBQQB9++PMxw5crif24bX8/HgIWfttddZ+8P2nM9Za+91LIZhGAIAAIApXObrDgAAAKD2SN4AAABMhOQNAADAREjeAAAATITkDQAAwERI3gAAAEyE5A0AAMBESN4AAABMhOQNAADARHyevP3tb3/TzTffrM6dO6t58+ay2WyKjY3V+vXrnepNmTJFFoul0k9UVJTLdlevXq2oqChZrVZ169ZNqampKikpqVTv2LFjmjJliiIiIhQSEqLY2FhlZWV55FgBAAAaKtDXHfjpp5/UqVMn3XrrrerQoYMKCgr0yiuv6LbbbtPBgweVkpLiqNu8eXN98MEHTvs3b968UptLlizRggULlJycrPj4eGVnZyslJUW5ublas2aNo15xcbGGDRumn376SatWrVKbNm2UlpamhIQE7dixQ0OGDPHcgQMAANSDxV+/23TQoEE6cuSIvvvuO0n2kbe33npLZ8+erXa/vLw8dezYUbfffrv+/Oc/O8qXLl2qlJQU7du3T71795YkPfPMM5oxY4Y++eQTxcbGSpJKS0sVHR2tsLAw7dmzx0NHBwAAUD8+nzatSkREhAID6z4wuG3bNhUVFSkpKcmpPCkpSYZhaNOmTY6yjRs3qlevXo7ETZICAwM1efJkff7558rNza13/wEAADzB59Om5S5cuKALFy7o5MmT2rBhg7Zv364//elPTnXOnTundu3a6fjx44qMjNTYsWP16KOPymazOers27dPktS3b1+nfSMjIxUREeHYXl538ODBlfrSr18/SdKXX36pDh06uOxvcXGxiouLnfqfn5+v8PBwWSyWOh49AABo6gzD0JkzZ9S+fXtddlnV42t+k7xNnz7dMc3ZrFkz/fGPf9Q999zj2B4dHa3o6Gj16dNHkrR79249/fTTysrKUnZ2tsLC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
  1660. "text/plain": [
  1661. "<Figure size 640x480 with 1 Axes>"
  1662. ]
  1663. },
  1664. "metadata": {},
  1665. "output_type": "display_data"
  1666. }
  1667. ],
  1668. "source": [
  1669. "shotNum = \"0027\"\n",
  1670. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  1671. "\n",
  1672. "dataSetDict = {\n",
  1673. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  1674. " for i in [0]\n",
  1675. "}\n",
  1676. "\n",
  1677. "dataSet = dataSetDict[\"camera_0\"]\n",
  1678. "\n",
  1679. "print_scanAxis(dataSet)\n",
  1680. "\n",
  1681. "scanAxis = get_scanAxis(dataSet)\n",
  1682. "\n",
  1683. "dataSet = auto_rechunk(dataSet)\n",
  1684. "\n",
  1685. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  1686. "\n",
  1687. "imageAnalyser.center = (535, 995)\n",
  1688. "imageAnalyser.span = (350, 350)\n",
  1689. "imageAnalyser.fraction = (0.1, 0.1)\n",
  1690. "\n",
  1691. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  1692. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  1693. "\n",
  1694. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  1695. "Ncount_mean = calculate_mean(Ncount)\n",
  1696. "Ncount_std = calculate_std(Ncount)\n",
  1697. "\n",
  1698. "fig = plt.figure()\n",
  1699. "ax = fig.gca()\n",
  1700. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  1701. "plt.ylim([0, 3500])\n",
  1702. "plt.ylabel('NCount')\n",
  1703. "plt.tight_layout()\n",
  1704. "plt.grid(visible=1)\n",
  1705. "plt.show()"
  1706. ]
  1707. },
  1708. {
  1709. "cell_type": "code",
  1710. "execution_count": 28,
  1711. "metadata": {},
  1712. "outputs": [],
  1713. "source": [
  1714. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  1715. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  1716. ]
  1717. },
  1718. {
  1719. "attachments": {},
  1720. "cell_type": "markdown",
  1721. "metadata": {},
  1722. "source": [
  1723. "# 0.270 - 0.300 A"
  1724. ]
  1725. },
  1726. {
  1727. "cell_type": "code",
  1728. "execution_count": 29,
  1729. "metadata": {},
  1730. "outputs": [
  1731. {
  1732. "name": "stdout",
  1733. "output_type": "stream",
  1734. "text": [
  1735. "The detected scaning axes and values are: \n",
  1736. "\n",
  1737. "{'als_final_current': array([0.27 , 0.2709, 0.2718, 0.2727, 0.2736, 0.2745, 0.2754, 0.2763,\n",
  1738. " 0.2772, 0.2781, 0.279 , 0.2799, 0.2808, 0.2817, 0.2826, 0.2835,\n",
  1739. " 0.2844, 0.2853, 0.2862, 0.2871, 0.288 , 0.2889, 0.2898, 0.2907,\n",
  1740. " 0.2916, 0.2925, 0.2934, 0.2943, 0.2952, 0.2961, 0.297 , 0.2979,\n",
  1741. " 0.2988, 0.2997, 0.3006]), 'runs': array([0., 1.])}\n"
  1742. ]
  1743. },
  1744. {
  1745. "data": {
  1746. "image/png": "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
  1747. "text/plain": [
  1748. "<Figure size 640x480 with 1 Axes>"
  1749. ]
  1750. },
  1751. "metadata": {},
  1752. "output_type": "display_data"
  1753. }
  1754. ],
  1755. "source": [
  1756. "shotNum = \"0028\"\n",
  1757. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  1758. "\n",
  1759. "dataSetDict = {\n",
  1760. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  1761. " for i in [0]\n",
  1762. "}\n",
  1763. "\n",
  1764. "dataSet = dataSetDict[\"camera_0\"]\n",
  1765. "\n",
  1766. "print_scanAxis(dataSet)\n",
  1767. "\n",
  1768. "scanAxis = get_scanAxis(dataSet)\n",
  1769. "\n",
  1770. "dataSet = auto_rechunk(dataSet)\n",
  1771. "\n",
  1772. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  1773. "\n",
  1774. "imageAnalyser.center = (535, 995)\n",
  1775. "imageAnalyser.span = (350, 350)\n",
  1776. "imageAnalyser.fraction = (0.1, 0.1)\n",
  1777. "\n",
  1778. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  1779. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  1780. "\n",
  1781. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  1782. "Ncount_mean = calculate_mean(Ncount)\n",
  1783. "Ncount_std = calculate_std(Ncount)\n",
  1784. "\n",
  1785. "fig = plt.figure()\n",
  1786. "ax = fig.gca()\n",
  1787. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  1788. "plt.ylim([0, 3000])\n",
  1789. "plt.ylabel('NCount')\n",
  1790. "plt.tight_layout()\n",
  1791. "plt.grid(visible=1)\n",
  1792. "plt.show()"
  1793. ]
  1794. },
  1795. {
  1796. "cell_type": "code",
  1797. "execution_count": 30,
  1798. "metadata": {},
  1799. "outputs": [],
  1800. "source": [
  1801. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  1802. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  1803. ]
  1804. },
  1805. {
  1806. "attachments": {},
  1807. "cell_type": "markdown",
  1808. "metadata": {},
  1809. "source": [
  1810. "# 0.300 - 0.325 A"
  1811. ]
  1812. },
  1813. {
  1814. "cell_type": "code",
  1815. "execution_count": 31,
  1816. "metadata": {},
  1817. "outputs": [
  1818. {
  1819. "name": "stdout",
  1820. "output_type": "stream",
  1821. "text": [
  1822. "The detected scaning axes and values are: \n",
  1823. "\n",
  1824. "{'als_final_current': array([0.3 , 0.3009, 0.3018, 0.3027, 0.3036, 0.3045, 0.3054, 0.3063,\n",
  1825. " 0.3072, 0.3081, 0.309 , 0.3099, 0.3108, 0.3117, 0.3126, 0.3135,\n",
  1826. " 0.3144, 0.3153, 0.3162, 0.3171, 0.318 , 0.3189, 0.3198, 0.3207,\n",
  1827. " 0.3216, 0.3225, 0.3234, 0.3243, 0.3252, 0.3261, 0.327 ]), 'runs': array([0., 1.])}\n"
  1828. ]
  1829. },
  1830. {
  1831. "data": {
  1832. "image/png": "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
  1833. "text/plain": [
  1834. "<Figure size 640x480 with 1 Axes>"
  1835. ]
  1836. },
  1837. "metadata": {},
  1838. "output_type": "display_data"
  1839. }
  1840. ],
  1841. "source": [
  1842. "shotNum = \"0029\"\n",
  1843. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  1844. "\n",
  1845. "dataSetDict = {\n",
  1846. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  1847. " for i in [0]\n",
  1848. "}\n",
  1849. "\n",
  1850. "dataSet = dataSetDict[\"camera_0\"]\n",
  1851. "\n",
  1852. "print_scanAxis(dataSet)\n",
  1853. "\n",
  1854. "scanAxis = get_scanAxis(dataSet)\n",
  1855. "\n",
  1856. "dataSet = auto_rechunk(dataSet)\n",
  1857. "\n",
  1858. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  1859. "\n",
  1860. "imageAnalyser.center = (535, 995)\n",
  1861. "imageAnalyser.span = (350, 350)\n",
  1862. "imageAnalyser.fraction = (0.1, 0.1)\n",
  1863. "\n",
  1864. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  1865. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  1866. "\n",
  1867. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  1868. "Ncount_mean = calculate_mean(Ncount)\n",
  1869. "Ncount_std = calculate_std(Ncount)\n",
  1870. "\n",
  1871. "fig = plt.figure()\n",
  1872. "ax = fig.gca()\n",
  1873. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  1874. "plt.ylim([0, 3500])\n",
  1875. "plt.ylabel('NCount')\n",
  1876. "plt.tight_layout()\n",
  1877. "plt.grid(visible=1)\n",
  1878. "plt.show()"
  1879. ]
  1880. },
  1881. {
  1882. "cell_type": "code",
  1883. "execution_count": 32,
  1884. "metadata": {},
  1885. "outputs": [],
  1886. "source": [
  1887. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  1888. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  1889. ]
  1890. },
  1891. {
  1892. "attachments": {},
  1893. "cell_type": "markdown",
  1894. "metadata": {},
  1895. "source": [
  1896. "# 0.325 - 0.350 A"
  1897. ]
  1898. },
  1899. {
  1900. "cell_type": "code",
  1901. "execution_count": 33,
  1902. "metadata": {},
  1903. "outputs": [
  1904. {
  1905. "name": "stdout",
  1906. "output_type": "stream",
  1907. "text": [
  1908. "The detected scaning axes and values are: \n",
  1909. "\n",
  1910. "{'als_final_current': array([0.325 , 0.3259, 0.3268, 0.3277, 0.3286, 0.3295, 0.3304, 0.3313,\n",
  1911. " 0.3322, 0.3331, 0.334 , 0.3349, 0.3358, 0.3367, 0.3376, 0.3385,\n",
  1912. " 0.3394, 0.3403, 0.3412, 0.3421, 0.343 , 0.3439, 0.3448, 0.3457,\n",
  1913. " 0.3466, 0.3475, 0.3484, 0.3493, 0.3502, 0.3511]), 'runs': array([0., 1.])}\n"
  1914. ]
  1915. },
  1916. {
  1917. "data": {
  1918. "image/png": "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
  1919. "text/plain": [
  1920. "<Figure size 640x480 with 1 Axes>"
  1921. ]
  1922. },
  1923. "metadata": {},
  1924. "output_type": "display_data"
  1925. }
  1926. ],
  1927. "source": [
  1928. "shotNum = \"0030\"\n",
  1929. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  1930. "\n",
  1931. "dataSetDict = {\n",
  1932. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  1933. " for i in [0]\n",
  1934. "}\n",
  1935. "\n",
  1936. "dataSet = dataSetDict[\"camera_0\"]\n",
  1937. "\n",
  1938. "print_scanAxis(dataSet)\n",
  1939. "\n",
  1940. "scanAxis = get_scanAxis(dataSet)\n",
  1941. "\n",
  1942. "dataSet = auto_rechunk(dataSet)\n",
  1943. "\n",
  1944. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  1945. "\n",
  1946. "imageAnalyser.center = (535, 995)\n",
  1947. "imageAnalyser.span = (350, 350)\n",
  1948. "imageAnalyser.fraction = (0.1, 0.1)\n",
  1949. "\n",
  1950. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  1951. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  1952. "\n",
  1953. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  1954. "Ncount_mean = calculate_mean(Ncount)\n",
  1955. "Ncount_std = calculate_std(Ncount)\n",
  1956. "\n",
  1957. "fig = plt.figure()\n",
  1958. "ax = fig.gca()\n",
  1959. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  1960. "plt.ylim([0, 3500])\n",
  1961. "plt.ylabel('NCount')\n",
  1962. "plt.tight_layout()\n",
  1963. "plt.grid(visible=1)\n",
  1964. "plt.show()"
  1965. ]
  1966. },
  1967. {
  1968. "cell_type": "code",
  1969. "execution_count": 34,
  1970. "metadata": {},
  1971. "outputs": [],
  1972. "source": [
  1973. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  1974. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  1975. ]
  1976. },
  1977. {
  1978. "attachments": {},
  1979. "cell_type": "markdown",
  1980. "metadata": {},
  1981. "source": [
  1982. "# 0.350 - 0.375 A"
  1983. ]
  1984. },
  1985. {
  1986. "cell_type": "code",
  1987. "execution_count": 35,
  1988. "metadata": {},
  1989. "outputs": [
  1990. {
  1991. "name": "stdout",
  1992. "output_type": "stream",
  1993. "text": [
  1994. "The detected scaning axes and values are: \n",
  1995. "\n",
  1996. "{'als_final_current': array([0.35 , 0.3509, 0.3518, 0.3527, 0.3536, 0.3545, 0.3554, 0.3563,\n",
  1997. " 0.3572, 0.3581, 0.359 , 0.3599, 0.3608, 0.3617, 0.3626, 0.3635,\n",
  1998. " 0.3644, 0.3653, 0.3662, 0.3671, 0.368 , 0.3689, 0.3698, 0.3707,\n",
  1999. " 0.3716, 0.3725, 0.3734, 0.3743, 0.3752, 0.3761, 0.377 ]), 'runs': array([0., 1.])}\n"
  2000. ]
  2001. },
  2002. {
  2003. "data": {
  2004. "image/png": "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
  2005. "text/plain": [
  2006. "<Figure size 640x480 with 1 Axes>"
  2007. ]
  2008. },
  2009. "metadata": {},
  2010. "output_type": "display_data"
  2011. }
  2012. ],
  2013. "source": [
  2014. "shotNum = \"0031\"\n",
  2015. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  2016. "\n",
  2017. "dataSetDict = {\n",
  2018. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  2019. " for i in [0]\n",
  2020. "}\n",
  2021. "\n",
  2022. "dataSet = dataSetDict[\"camera_0\"]\n",
  2023. "\n",
  2024. "print_scanAxis(dataSet)\n",
  2025. "\n",
  2026. "scanAxis = get_scanAxis(dataSet)\n",
  2027. "\n",
  2028. "dataSet = auto_rechunk(dataSet)\n",
  2029. "\n",
  2030. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  2031. "\n",
  2032. "imageAnalyser.center = (535, 995)\n",
  2033. "imageAnalyser.span = (350, 350)\n",
  2034. "imageAnalyser.fraction = (0.1, 0.1)\n",
  2035. "\n",
  2036. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  2037. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  2038. "\n",
  2039. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  2040. "Ncount_mean = calculate_mean(Ncount)\n",
  2041. "Ncount_std = calculate_std(Ncount)\n",
  2042. "\n",
  2043. "fig = plt.figure()\n",
  2044. "ax = fig.gca()\n",
  2045. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  2046. "plt.ylim([0, 3500])\n",
  2047. "plt.ylabel('NCount')\n",
  2048. "plt.tight_layout()\n",
  2049. "plt.grid(visible=1)\n",
  2050. "plt.show()"
  2051. ]
  2052. },
  2053. {
  2054. "cell_type": "code",
  2055. "execution_count": 36,
  2056. "metadata": {},
  2057. "outputs": [],
  2058. "source": [
  2059. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  2060. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  2061. ]
  2062. },
  2063. {
  2064. "attachments": {},
  2065. "cell_type": "markdown",
  2066. "metadata": {},
  2067. "source": [
  2068. "# 0.375 - 0.400 A"
  2069. ]
  2070. },
  2071. {
  2072. "cell_type": "code",
  2073. "execution_count": 37,
  2074. "metadata": {},
  2075. "outputs": [
  2076. {
  2077. "name": "stdout",
  2078. "output_type": "stream",
  2079. "text": [
  2080. "The detected scaning axes and values are: \n",
  2081. "\n",
  2082. "{'als_final_current': array([0.375 , 0.3759, 0.3768, 0.3777, 0.3786, 0.3795, 0.3804, 0.3813,\n",
  2083. " 0.3822, 0.3831, 0.384 , 0.3849, 0.3858, 0.3867, 0.3876, 0.3885,\n",
  2084. " 0.3894, 0.3903, 0.3912, 0.3921, 0.393 , 0.3939, 0.3948, 0.3957,\n",
  2085. " 0.3966, 0.3975, 0.3984, 0.3993, 0.4002, 0.4011, 0.402 ]), 'runs': array([0., 1.])}\n"
  2086. ]
  2087. },
  2088. {
  2089. "data": {
  2090. "image/png": "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
  2091. "text/plain": [
  2092. "<Figure size 640x480 with 1 Axes>"
  2093. ]
  2094. },
  2095. "metadata": {},
  2096. "output_type": "display_data"
  2097. }
  2098. ],
  2099. "source": [
  2100. "shotNum = \"0032\"\n",
  2101. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  2102. "\n",
  2103. "dataSetDict = {\n",
  2104. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  2105. " for i in [0]\n",
  2106. "}\n",
  2107. "\n",
  2108. "dataSet = dataSetDict[\"camera_0\"]\n",
  2109. "\n",
  2110. "print_scanAxis(dataSet)\n",
  2111. "\n",
  2112. "scanAxis = get_scanAxis(dataSet)\n",
  2113. "\n",
  2114. "dataSet = auto_rechunk(dataSet)\n",
  2115. "\n",
  2116. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  2117. "\n",
  2118. "imageAnalyser.center = (535, 995)\n",
  2119. "imageAnalyser.span = (350, 350)\n",
  2120. "imageAnalyser.fraction = (0.1, 0.1)\n",
  2121. "\n",
  2122. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  2123. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  2124. "\n",
  2125. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  2126. "Ncount_mean = calculate_mean(Ncount)\n",
  2127. "Ncount_std = calculate_std(Ncount)\n",
  2128. "\n",
  2129. "fig = plt.figure()\n",
  2130. "ax = fig.gca()\n",
  2131. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  2132. "plt.ylim([0, 3500])\n",
  2133. "plt.ylabel('NCount')\n",
  2134. "plt.tight_layout()\n",
  2135. "plt.grid(visible=1)\n",
  2136. "plt.show()"
  2137. ]
  2138. },
  2139. {
  2140. "cell_type": "code",
  2141. "execution_count": 38,
  2142. "metadata": {},
  2143. "outputs": [],
  2144. "source": [
  2145. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  2146. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  2147. ]
  2148. },
  2149. {
  2150. "attachments": {},
  2151. "cell_type": "markdown",
  2152. "metadata": {},
  2153. "source": [
  2154. "# 0.400 - 0.425 A"
  2155. ]
  2156. },
  2157. {
  2158. "cell_type": "code",
  2159. "execution_count": 39,
  2160. "metadata": {},
  2161. "outputs": [
  2162. {
  2163. "name": "stdout",
  2164. "output_type": "stream",
  2165. "text": [
  2166. "The detected scaning axes and values are: \n",
  2167. "\n",
  2168. "{'als_final_current': array([0.4 , 0.4009, 0.4018, 0.4027, 0.4036, 0.4045, 0.4054, 0.4063,\n",
  2169. " 0.4072, 0.4081, 0.409 , 0.4099, 0.4108, 0.4117, 0.4126, 0.4135,\n",
  2170. " 0.4144, 0.4153, 0.4162, 0.4171, 0.418 , 0.4189, 0.4198, 0.4207,\n",
  2171. " 0.4216, 0.4225, 0.4234, 0.4243, 0.4252, 0.4261]), 'runs': array([0., 1.])}\n"
  2172. ]
  2173. },
  2174. {
  2175. "data": {
  2176. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAm8AAAHPCAYAAAAFwj37AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAABMqklEQVR4nO3de1zUdaL/8fckOAhoBnhB1LS8cEzRYlNpUzGTPK4dhXQzt01xrf1tllaeNcwblLc2t9X1mJ1OJW12tdA21xsiWqfM2Dq7i5XVlpqXvADeERzw+/tjdkbGGWCAYZgvvJ6PBw+cz3zmM5/vh6/wns/3+/18LYZhGAIAAIApXNXQHQAAAID3CG8AAAAmQngDAAAwEcIbAACAiRDeAAAATITwBgAAYCKENwAAABMhvAEAAJgI4Q0AAMBEGjy8/e1vf9PPfvYzde7cWS1atFBERIQSEhK0Zs0at7qff/65br/9doWHh6t169ZKSUnR999/77HdFStWKDY2VlarVV27dlVGRoZsNptbvePHj2vSpEmKiopSaGioEhISlJOT4/PtBAAA8IUGD2+nTp1Sp06dtGjRIm3cuFF/+tOf1KVLF/3yl7/UggULnPX27t2rxMREXbx4UW+//bZefvllffPNNxo0aJBOnDjh0ubChQs1ffp0paSkaMuWLXrwwQe1aNEiTZ061aVeaWmphg0bppycHC1fvlzvvfee2rVrpxEjRmjnzp1+2X4AAICasATqvU0HDhyoI0eO6IcffpAk/fznP1dubq6+++47tWrVSpJ04MABde/eXY8++qiefvppSVJhYaE6duyo++67T//93//tbG/RokWaM2eO9uzZo169ekmSnnvuOU2dOlUff/yxEhISJEllZWXq27evwsPDtXv3bn9uMgAAQLUafOatMlFRUQoKCpJkD1QbNmzQXXfd5QxuknTttddq6NChWrdunbNs8+bNKikpUWpqqkt7qampMgxD69evd5atW7dOPXv2dAY3SQoKCtK9996rTz/9VIcPH66nrQMAAKidoIbugMOlS5d06dIlnTx5UmvXrtWWLVv0X//1X5Kk7777ThcuXFBcXJzb6+Li4pSdna2SkhKFhIRoz549kqQ+ffq41IuOjlZUVJTzeUnas2ePBg0a5LFNSfriiy8UExPjsb+lpaUqLS116X9RUZEiIyNlsVhquPUA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
  2177. "text/plain": [
  2178. "<Figure size 640x480 with 1 Axes>"
  2179. ]
  2180. },
  2181. "metadata": {},
  2182. "output_type": "display_data"
  2183. }
  2184. ],
  2185. "source": [
  2186. "shotNum = \"0033\"\n",
  2187. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  2188. "\n",
  2189. "dataSetDict = {\n",
  2190. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  2191. " for i in [0]\n",
  2192. "}\n",
  2193. "\n",
  2194. "dataSet = dataSetDict[\"camera_0\"]\n",
  2195. "\n",
  2196. "print_scanAxis(dataSet)\n",
  2197. "\n",
  2198. "scanAxis = get_scanAxis(dataSet)\n",
  2199. "\n",
  2200. "dataSet = auto_rechunk(dataSet)\n",
  2201. "\n",
  2202. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  2203. "\n",
  2204. "imageAnalyser.center = (535, 995)\n",
  2205. "imageAnalyser.span = (350, 350)\n",
  2206. "imageAnalyser.fraction = (0.1, 0.1)\n",
  2207. "\n",
  2208. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  2209. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  2210. "\n",
  2211. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  2212. "Ncount_mean = calculate_mean(Ncount)\n",
  2213. "Ncount_std = calculate_std(Ncount)\n",
  2214. "\n",
  2215. "fig = plt.figure()\n",
  2216. "ax = fig.gca()\n",
  2217. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  2218. "plt.ylim([0, 3000])\n",
  2219. "plt.ylabel('NCount')\n",
  2220. "plt.tight_layout()\n",
  2221. "plt.grid(visible=1)\n",
  2222. "plt.show()"
  2223. ]
  2224. },
  2225. {
  2226. "cell_type": "code",
  2227. "execution_count": 40,
  2228. "metadata": {},
  2229. "outputs": [],
  2230. "source": [
  2231. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  2232. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  2233. ]
  2234. },
  2235. {
  2236. "attachments": {},
  2237. "cell_type": "markdown",
  2238. "metadata": {},
  2239. "source": [
  2240. "# 0.425 - 0.450 A"
  2241. ]
  2242. },
  2243. {
  2244. "cell_type": "code",
  2245. "execution_count": 41,
  2246. "metadata": {},
  2247. "outputs": [
  2248. {
  2249. "name": "stdout",
  2250. "output_type": "stream",
  2251. "text": [
  2252. "The detected scaning axes and values are: \n",
  2253. "\n",
  2254. "{'als_final_current': array([0.425 , 0.4259, 0.4268, 0.4277, 0.4286, 0.4295, 0.4304, 0.4313,\n",
  2255. " 0.4322, 0.4331, 0.434 , 0.4349, 0.4358, 0.4367, 0.4376, 0.4385,\n",
  2256. " 0.4394, 0.4403, 0.4412, 0.4421, 0.443 , 0.4439, 0.4448, 0.4457,\n",
  2257. " 0.4466, 0.4475, 0.4484, 0.4493, 0.4502, 0.4511, 0.452 ]), 'runs': array([0., 1.])}\n"
  2258. ]
  2259. },
  2260. {
  2261. "data": {
  2262. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnAAAAHPCAYAAADTZ+eeAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAABLeElEQVR4nO3de3wU1cH/8e+YhA1JuJgEIRA0yMUUuSlVoDUQBGJK8YGsoSqllVC0rSgg9EGQaxQQFS38+KH+qApWvLTSgJdyFQLSVjGPPm1BxFIFhAACCXLJjSTM749tlizZ3HezO7uf9+vFy50zZ2fPHifhy5mZcwzTNE0BAADAMq7ydQMAAABQPwQ4AAAAiyHAAQAAWAwBDgAAwGIIcAAAABZDgAMAALAYAhwAAIDFEOAAAAAshgAHAABgMT4PcNu3b9f48eOVmJioyMhIdejQQSNHjtSnn37qUm/cuHEyDKPKn8TERLfHXb58uRITE2Wz2dSpUydlZmaqtLS0Sr2TJ09q3Lhxio2NVUREhAYMGKBt27Z55bsCAAB4QqivG/DCCy8oLy9PkydPVvfu3XXq1Ck9++yz6t+/vzZv3qzbb7/dWbd58+bavn27y/ubN29e5ZgLFy7UnDlzNGPGDKWkpCgnJ0ezZ89Wbm6uVq5c6axXUlKiIUOG6LvvvtOyZct0zTXXaMWKFUpNTdUHH3ygQYMGee+LAwAANJDh67VQT548qWuuucal7MKFC+rSpYt69OihDz74QJJjBG7t2rW6cOFCjcfLy8tTfHy8fv7zn+v//b//5yxftGiRZs+erb1796p79+6SpOeff14TJ07U3/72Nw0YMECSVFZWpt69eysqKkq7d+/25FcFAADwCJ9fQr0yvElSVFSUunfvriNHjtT7eJs2bVJxcbEyMjJcyjMyMmSaptavX+8sW7dunW644QZneJOk0NBQjR07Vp988olyc3Pr/fkAAADe5vNLqO6cPXtWn332mcvlU0kqKipSu3btdOrUKcXFxWnUqFF6/PHHFR0d7ayzd+9eSVLPnj1d3hsXF6fY2Fjn/oq6SUlJVT6/V69ekqTPP/9cHTp0cNvGkpISlZSUOLcvXbqk/Px8xcTEyDCMen5jAAAQ7EzT1Pnz59W+fXtddVXNY2x+GeAmTpyogoICzZo1y1nWu3dv9e7dWz169JAk7dy5U7/97W+1bds25eTkKCoqSpLjEqrNZlNkZGSV40ZHRysvL8+5nZeX5xL+Kter2F+dJ598UpmZmQ37ggAAANU4cuSI4uPja6zjdwFuzpw5ev3117V8+XL17dvXWf7II4+41Bs2bJhuuukmpaen63e/+53L/ppGwK7cV5+6lc2cOVNTp051bp89e1bXXnutDh48qBYtWlT7voYqLS1Vdna2Bg8erLCwMI8fH/RxU6GfvY8+bhr0s/cFWx+fP39enTp1qlOO8KsAl5mZqQULFmjhwoV66KGHaq2flpamyMhIffzxx86ymJgYFRcXq7CwUBERES718/PzXUJhTEyM21G2/Px8SXI7OlfBZrPJZrNVKY+OjlbLli1rbXt9lZaWKiIiQjExMUFxEvsCfdw06Gfvo4+bBv3sfcHWxxXfsS63Yvn8IYYKmZmZmj9/vubPn6/HHnuszu8zTdPlOnHFvW979uxxqXfixAmdPn3aeQm2ou6V9Sq/t3JdAAAAf+EXAe6JJ57Q/PnzNXv2bM2bN6/O71u7dq0KCwvVv39/Z1lqaqrCw8O1evVql7qrV6+WYRgaNWqUsywtLU379+93mS6krKxMa9asUb9+/dS+ffsGfycAAABv8fkl1GeffVZz585VamqqfvzjH7tcDpWk/v376/DhwxozZozuuecedenSRYZhaOfOnVq6dKluvPFGTZgwwVk/Ojpas2fP1pw5cxQdHe2cyHf+/PmaMGGCcw44SRo/frxWrFih0aNHa/Hixbrmmmv0/PPP68svv3TOPwcAAOBvfB7g3nvvPUmO+ds2bdpUZb9pmmrZsqXatm2r5557Tt9++63Ky8t13XXXadKkSXrssceqPHE6a9YstWjRQitWrNCSJUvUrl07zZgxw+WpVslxH9u2bds0ffp0PfzwwyosLFSfPn20ceNGVmEAAAB+y+cBbseOHbXWufrqq5WVlVWv406aNEmTJk2qtV7btm316quv1uvYAAAAvuQX98ABAACg7ghwAAAAFkOAAwAAsBgCHAAAgMUQ4AAAACyGAAcAAGAxBDgAAACLIcABAABYDAEOAADAYghwAAAAFkOAAwAAsBgCHAAAgMUQ4AAAACyGAAcAAGAxBDgAAACLIcABAABYDAEOAADAYghwAAAAFkOAAwAAsBgCHAAAgMUQ4AAAACyGAAcAAGAxBDgAAACLIcABAABYDAEOAADAYghwAAAAFkOAAwAAsBgCHAAAgMUQ4AAAACyGAAcAAGAxBDgAAACLIcABAABYDAEOAADAYghwAAAAFkOAAwAAsBgCHAAAgMUQ4AAAACyGAAcAAGAxBDgAAACLIcABAABYTKivG4DaFRRIUVFhkkbqzJlStW7t6xYBAABfYgQOAADAYghwAAAAFkOAAwAAsBgCHAAAgMUQ4IJAQYFkGI4/BQW+bg0AAGgsAhwAAIDFEOAAAAAshgAHAABgMQQ4AAAAiyHAAQAAWAwBDgAAwGIIcEGgvPzy6w8/dN0GAADWQ4ALcFlZUvful7eHD5cSEhzlAADAmghwASwrS0pPl3JzXctzcx3lhDgAAKyJABegysulyZMl06y6r6JsyhQupwIAYEUEuAC1a5d09Gj1+01TOnLEUQ8AAFgLAc4CKo+S/eUvRp1GzY4fr9ux61oPAAD4DwKcn7vyIYQ77wyt00MIcXF1O35d6wEAAP9BgPNjjXkIISlJio+XDMP9fsOQOnZ01AMAANZCgPNTjX0IISREWrbM8frKEFexvXSpox4AALAWApyf8sRDCHa7tHat1L69a3l8vKPcbvdMWwEAQNMK9XUD4J6nHkKw26WhQ6VWrRzbGzZIKSmMvAEAYGWMwPkpTz6EUDmsDRxIeAMAwOoIcH6KhxAAAEB1fB7gtm/frvHjxysxMVGRkZHq0KGDRo4cqU8//bRK3c8++0xDhw5VVFSUWrduLbvdrq+//trtcZcvX67ExETZbDZ16tRJmZmZKi0trVLv5MmTGjdunGJjYxUREaEBAwZo27ZtHv+e9cVDCAAAoDo+D3AvvPCCDh06pMmTJ2vDhg1atmyZTp48qf79+2v79u3Oevv371dycrIuXryoP/7xj3rllVf0r3/9S0lJSTp16pTLMRcuXKjJkyfLbrdr8+bNevDBB7Vo0SJNnDjRpV5JSYmGDBmibdu2admyZXrnnXfUtm1bpaamaufOnU3y/WvCQwgAAMAt08e+/fbbKmXnz58327Ztaw4ZMsRZNnr0aDM2NtY8e/ass+zQoUNmWFiYOX36dGfZ6dOnzfDwcPOBBx5wOebChQtNwzDMzz//3Fm2YsUKU5L5t7/9zVlWWlpqdu/e3bz11lvr9T3Onj1rSnJpn6ecPWuajudOTfO990rNsrL6vf/Chcvvv3DB480LGBcvXjTXr19vXrx40ddNCWj0s/fRx02Dfva+YOvj+mQJn4/AXXPNNVXKoqKi1L17dx05ckSSVFZWpvfff1933XWXWrZs6ax33XXXafDgwVq3bp2zbNOmTSouLlZGRobLMTMyMmSaptavX+8sW7dunW644QYNGDDAWRYaGqqxY8fqk08+Ue6VM+j6SOXLpLfdZnLZFACAIOeX04icPXtWn332mW6//XZJ0ldffaWioiL16tWrSt1evXpp69atKi4uVnh4uPbu3StJ6tmzp0u9uLg4xcbGOvdL0t69e5Xk5imAis/5/PPP1aFDB7dtLCkpUUlJiXP73LlzkqTS0lK399o1huNwYZWOX7/3N2smXbx45fFwpYr/b57+/wdX9LP30cdNg372vmDr4/p8T78McBMnTlRBQYFmzZolScrLy5MkRUdHV6kbHR0t0zR15swZxcXFKS8vTzabTZGRkW7rVhyr4rjVHbPy57rz5JN
  2263. "text/plain": [
  2264. "<Figure size 640x480 with 1 Axes>"
  2265. ]
  2266. },
  2267. "metadata": {},
  2268. "output_type": "display_data"
  2269. }
  2270. ],
  2271. "source": [
  2272. "shotNum = \"0034\"\n",
  2273. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  2274. "\n",
  2275. "dataSetDict = {\n",
  2276. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  2277. " for i in [0]\n",
  2278. "}\n",
  2279. "\n",
  2280. "dataSet = dataSetDict[\"camera_0\"]\n",
  2281. "\n",
  2282. "print_scanAxis(dataSet)\n",
  2283. "\n",
  2284. "scanAxis = get_scanAxis(dataSet)\n",
  2285. "\n",
  2286. "dataSet = auto_rechunk(dataSet)\n",
  2287. "\n",
  2288. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  2289. "\n",
  2290. "imageAnalyser.center = (535, 995)\n",
  2291. "imageAnalyser.span = (350, 350)\n",
  2292. "imageAnalyser.fraction = (0.1, 0.1)\n",
  2293. "\n",
  2294. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  2295. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  2296. "\n",
  2297. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  2298. "Ncount_mean = calculate_mean(Ncount)\n",
  2299. "Ncount_std = calculate_std(Ncount)\n",
  2300. "\n",
  2301. "fig = plt.figure()\n",
  2302. "ax = fig.gca()\n",
  2303. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  2304. "plt.ylim([0, 2500])\n",
  2305. "plt.ylabel('NCount')\n",
  2306. "plt.tight_layout()\n",
  2307. "plt.grid(visible=1)\n",
  2308. "plt.show()"
  2309. ]
  2310. },
  2311. {
  2312. "cell_type": "code",
  2313. "execution_count": 42,
  2314. "metadata": {},
  2315. "outputs": [],
  2316. "source": [
  2317. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  2318. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  2319. ]
  2320. },
  2321. {
  2322. "attachments": {},
  2323. "cell_type": "markdown",
  2324. "metadata": {},
  2325. "source": [
  2326. "# 0.450 - 0.475 A"
  2327. ]
  2328. },
  2329. {
  2330. "cell_type": "code",
  2331. "execution_count": 43,
  2332. "metadata": {},
  2333. "outputs": [
  2334. {
  2335. "name": "stdout",
  2336. "output_type": "stream",
  2337. "text": [
  2338. "The detected scaning axes and values are: \n",
  2339. "\n",
  2340. "{'als_final_current': array([0.45 , 0.4509, 0.4518, 0.4527, 0.4536, 0.4545, 0.4554, 0.4563,\n",
  2341. " 0.4572, 0.4581, 0.459 , 0.4599, 0.4608, 0.4617, 0.4626, 0.4635,\n",
  2342. " 0.4644, 0.4653, 0.4662, 0.4671, 0.468 , 0.4689, 0.4698, 0.4707,\n",
  2343. " 0.4716, 0.4725, 0.4734, 0.4743, 0.4752, 0.4761]), 'runs': array([0., 1.])}\n"
  2344. ]
  2345. },
  2346. {
  2347. "data": {
  2348. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAm8AAAHPCAYAAAAFwj37AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAABOdUlEQVR4nO3de1xVVcL/8e8O8CDgJcAL3k0tHlO0mFRmIiEVGUdHJe3iOCWONb+y0HLG8JqUt56s0fGxeppMLbvaoJV5yQytp4vx5NMMVjZNqXnJVDAvIAi4f3+cOHLkAAc4nHM2fN6vFy/Za6+zWGexhS9r7722YZqmKQAAAFjCZb7uAAAAANxHeAMAALAQwhsAAICFEN4AAAAshPAGAABgIYQ3AAAACyG8AQAAWAjhDQAAwEIIbwAAABbi8/D2+eef6ze/+Y06deqkpk2bKjw8XHFxcVq7dm2Furt379bgwYMVFhamli1bKiUlRd99953LdpcvX67o6GjZbDZ17dpVGRkZKi4urlDv2LFjmjBhgiIjIxUSEqK4uDht377d4+8TAADAE3we3n766Sd17NhRCxcu1KZNm/T888+rS5cu+v3vf6/58+c76u3du1cJCQk6f/68XnvtNT333HP617/+pfj4eB0/ftypzQULFmjKlClKSUnR1q1bdc8992jhwoWaPHmyU72ioiINGjRI27dv17Jly/TGG2+oTZs2Sk5O1s6dO73y/gEAAGrC8Ndnmw4YMEBHjhzR999/L0m6+eablZWVpW+//VbNmzeXJB04cEA9evTQ/fffr0cffVSSlJubqw4dOuj222/Xf//3fzvaW7hwoWbPnq09e/aoZ8+ekqQnn3xSkydP1kcffaS4uDhJUklJifr06aOwsDDt2rXLm28ZAACgWj6featMZGSkAgMDJdkD1caNG3XTTTc5gpskde7cWYmJiVq/fr2jbMuWLSosLFRqaqpTe6mpqTJNUxs2bHCUrV+/XldddZUjuElSYGCgxo8fr08//VSHDx+up3cHAABQO4G+7kCZCxcu6MKFCzp58qTWrVunrVu36r/+678kSd9++63OnTunmJiYCq+LiYnRtm3bVFhYqODgYO3Zs0eS1Lt3b6d6UVFRioyMdOyXpD179ig+Pt5lm5L0xRdfqH379i77W1RUpKKiIqf+5+XlKSIiQoZh1PDdAwCAxs40TZ05c0bt2rXTZZdVPr/mN+HtnnvucZzmbNKkif7617/qj3/8oyT7qVBJCg8Pr/C68PBwmaapkydPKioqSrm5ubLZbAoNDXVZt6ytsnYra7P813Vl0aJFysjIqME7BAAAqN7BgwfVoUOHSvf7TXibOXOmJk2apGPHjumtt97Svffeq/z8fP3pT39y1KlqRqv8Pnfr1bRueTNmzNADDzzg2D516pQ6deqkffv2qVmzZpW+rraKi4uVlZWlxMREBQUFebx9OGO8vY8x9y7G2/sYc++z2pifOXNGXbt2rTZH+E1469Spkzp16iRJGjZsmCR7QLrjjjsUEREhyfVMWF5engzDUMuWLSVJERERKiwsVEFBgUJCQirUjY2NdWxHRERU2qbkeqavjM1mk81mq1AeHh7udF2epxQXFyskJEQRERGWOACtjvH2Psbcuxhv72PMvc9qY17Wx+ouv/LbGxb69eunkpISfffdd+rWrZuaNm2qnJycCvVycnLUvXt3BQcHS7p4rduldY8ePaoTJ06oV69ejrLevXtX2qYkp7oAAAD+wG/DW1ZWli677DJdccUVCgwM1IgRI5SZmakzZ8446nz//ffKyspSSkqKoyw5OVnBwcFavXq1U3urV6+WYRgaNWqUo2z06NHau3ev05IgJSUlWrt2rfr376927drV2/sDAACoDZ+fNr3rrrvUvHlz9evXT23atNGJEye0bt06vfrqq/rzn/+sVq1aSZIyMjJ03XXXafjw4UpPT1dhYaHmzp2ryMhITZs2zdFeeHi4Zs+erTlz5ig8PFxJSUnKzs7WvHnzNGnSJMcab5I0ceJErVixQmPHjtXixYvVunVrPfnkk/r666/17rvven0sAAAAquPz8BYXF6dVq1ZpzZo1+umnnxQWFqY+ffrohRde0Pjx4x31oqOjtWPHDj344IMaM2aMAgMDdeONN2rJkiWOgFdm1qxZatasmVasWKElS5aobdu2Sk9P16xZs5zq2Ww2bd++XdOnT9d9992ngoIC9e3bV5s3b9bAgQO98v4BAABqwufhLTU1tcKCupWJjY11e0YsLS1NaWlp1dZr06aN1qxZ41abAAAAvua317wBAACgIsIbAACAhRDeAAAALITwBgAAYCGENwAAAAshvAEAAFgI4Q0AAMBCCG8AAAAWQngDAACwEMIbAACAhRDeAAAALITwBgAAYCGENwAAAAshvAEAAFgI4Q0AAMBCCG8AAAAWQngDAACwEMIbAACAhRDeAAAALITwBgAAYCGENwAAAAshvAEAAFgI4Q0AAMBCCG8AAAAWQngDAACwEMIbAACAhRDeAAAALITwBgAAYCGENwAAAAshvAEAAFgI4Q0AAMBCCG8AAAAWQngDAACwEMIbAACAhRDeAAAAqpGfLxmG/SM/37d9IbwBAABYCOENAADUG3+asWooCG8AAAAWQngDAACwEMIbAABANUpLL37+/vvO295GeAMAAKhCZqbUs+fF7WHDpC5d7OW+QHgDAACoRGamNGaMdPiwc/nhw/ZyXwQ4whsAAJfgDklI9lOjU6ZIpllxX1nZ1KneP4VKeAMA4BL+cH2TJwIkIbRuPvhAOnSo8v2mKR08aK/nTYQ3AADK8Zfrm/whQDZ2P/zg2XqeQngDAOBn/nJ9k78EyMYuKsqz9TyF8AYADQCnx+rOX65v8pcA6U9KS6UdO6SXX7b/661ZyPh4qUMH+/8rVwxD6tjRXs+bCG8AAMiz1zfVNkz7S4D0J5mZ9lnHxERp3Dj7v96ahQwIkJYts39+aYAr21661F7PmwhvAADIP65v8tcL5H2lbBby0jHx5ixkSor0+utSu3bO5R062MtTUuq/D5civAEAIP+4vskfAqS/8KdZyJQU6csvL25v2iTt2+eb4CYR3gAAkOTZ65tqe6eoPwRIf+Fvs5DlT43ecIP3T5WWR3gDgAaAZSUuOn364vVmmze7Pxaeur6psjtF16+vJBWW468XyPsCs5CV83l4e++99zRx4kRFR0crNDRU7du318iRI/XZZ5851ZswYYIMw6jwER0d7bLd5cuXKzo6WjabTV27dlVGRoaKi4sr1Dt27JgmTJigyMhIhYSEKC4uTtu3b6+X9wrA/zSEuzQb0rISdf1+1HUs6np9U1V3it56a4A+/rjqKTN/vUDeF5iFrJzPw9tTTz2l/fv3a8qUKdq0aZOWLVumY8eOacCAAXrvvfec6jZt2lQff/yx08err75aoc0FCxZoypQpSklJ0datW3XPPfdo4cKFmjx5slO9oqIiDRo0SNu3b9eyZcv0xhtvqE2bNkpOTtbOnTvr9X0DgCewrMRFnhqL2l7f5M41WitX9qp2JtAfL5Cvi9rOCvvbLGRoqP37aJr2z33K9LEff/yxQtmZM2fMNm3amIMGDXKU3XHHHWZoaGi17Z04ccIMDg4277rrLqfyBQsWmIZhmF988YWjbMWKFaYk86OPPnKUFRcXmz179jT79etXo/dx6tQpU5J56tSpGr3OXefPnzc3bNhgnj9/vl7ahzPG2/t8NeZnz5b9OLZ/biUlJabZocPF/l/6YRim2bGjvd6l/PUYr+33oy5j4SlZWZV//fIf27YVu9XeqVMXX7NpU+367uvj++9/N8327Z3ff4cO9nJ3X28Y9o9Lv5+GUX07/nqcV8bdLOHzmbfWrVtXKAsLC1PPnj118ODBGre3ZcsWFRYWKjU11ak8NTVVpmlqw4YNjrL169frqquuUlxcnKMsMDBQ48eP16effqrDl/75BgB+xNMXdFv5FLI/XNzu6Wu0mje/GFd+/WvrnSr1xExo2Sxk+/bO5VadhfSUQF93wJVTp05p9+7duvHGG53Kz507p7Zt2+r48eO
  2349. "text/plain": [
  2350. "<Figure size 640x480 with 1 Axes>"
  2351. ]
  2352. },
  2353. "metadata": {},
  2354. "output_type": "display_data"
  2355. }
  2356. ],
  2357. "source": [
  2358. "shotNum = \"0035\"\n",
  2359. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  2360. "\n",
  2361. "dataSetDict = {\n",
  2362. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  2363. " for i in [0]\n",
  2364. "}\n",
  2365. "\n",
  2366. "dataSet = dataSetDict[\"camera_0\"]\n",
  2367. "\n",
  2368. "print_scanAxis(dataSet)\n",
  2369. "\n",
  2370. "scanAxis = get_scanAxis(dataSet)\n",
  2371. "\n",
  2372. "dataSet = auto_rechunk(dataSet)\n",
  2373. "\n",
  2374. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  2375. "\n",
  2376. "imageAnalyser.center = (535, 995)\n",
  2377. "imageAnalyser.span = (350, 350)\n",
  2378. "imageAnalyser.fraction = (0.1, 0.1)\n",
  2379. "\n",
  2380. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  2381. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  2382. "\n",
  2383. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  2384. "Ncount_mean = calculate_mean(Ncount)\n",
  2385. "Ncount_std = calculate_std(Ncount)\n",
  2386. "\n",
  2387. "fig = plt.figure()\n",
  2388. "ax = fig.gca()\n",
  2389. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  2390. "plt.ylim([0, 3000])\n",
  2391. "plt.ylabel('NCount')\n",
  2392. "plt.tight_layout()\n",
  2393. "plt.grid(visible=1)\n",
  2394. "plt.show()"
  2395. ]
  2396. },
  2397. {
  2398. "cell_type": "code",
  2399. "execution_count": 44,
  2400. "metadata": {},
  2401. "outputs": [],
  2402. "source": [
  2403. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  2404. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  2405. ]
  2406. },
  2407. {
  2408. "attachments": {},
  2409. "cell_type": "markdown",
  2410. "metadata": {},
  2411. "source": [
  2412. "# 0.475 - 0.500 A"
  2413. ]
  2414. },
  2415. {
  2416. "cell_type": "code",
  2417. "execution_count": 45,
  2418. "metadata": {},
  2419. "outputs": [
  2420. {
  2421. "name": "stdout",
  2422. "output_type": "stream",
  2423. "text": [
  2424. "The detected scaning axes and values are: \n",
  2425. "\n",
  2426. "{'als_final_current': array([0.475 , 0.4759, 0.4768, 0.4777, 0.4786, 0.4795, 0.4804, 0.4813,\n",
  2427. " 0.4822, 0.4831, 0.484 , 0.4849, 0.4858, 0.4867, 0.4876, 0.4885,\n",
  2428. " 0.4894, 0.4903, 0.4912, 0.4921, 0.493 , 0.4939, 0.4948, 0.4957,\n",
  2429. " 0.4966, 0.4975, 0.4984, 0.4993, 0.5002, 0.5011, 0.502 ]), 'runs': array([0., 1.])}\n"
  2430. ]
  2431. },
  2432. {
  2433. "data": {
  2434. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAm8AAAHPCAYAAAAFwj37AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAABMMElEQVR4nO3de1xVZaL/8e9WcCPgpQ1e0LylJmMqFscLTSZmEpWOSlrmWImjzW+y0PKM4TUoRZvs4nGsjicT08qyxCbzhojOTJkxdWbCyqYpL6ljCnhHEHT9/uCwY8vmvm8LPu/Xi5futZ/97Gc9LNb+rmc9a22LYRiGAAAAYAqNvN0AAAAAVB/hDQAAwEQIbwAAACZCeAMAADARwhsAAICJEN4AAABMhPAGAABgIoQ3AAAAEyG8AQAAmIjXw9vf//533X333erYsaOaNm0qm82mqKgorV27tlzZL774QrfffruCg4PVsmVLxcXF6YcffnBa77JlyxQeHi6r1aouXbooOTlZRUVF5cqdOHFCEydOVGhoqAIDAxUVFaWMjAyXrycAAIAreD28nT59Wh06dFBKSoo2b96sN954Q507d9YDDzygBQsW2Mvt379f0dHRunTpkt599129/vrr+uc//6lBgwbp5MmTDnUuXLhQ06ZNU1xcnLZt26ZHHnlEKSkpmjp1qkO5wsJCDR06VBkZGVq6dKk++OADtWnTRrGxsdq9e7dH1h8AAKAmLL763aYDBw7UsWPHdPjwYUnSvffeq8zMTH3//fdq3ry5JOnQoUPq3r27Hn/8cT377LOSpNzcXF177bV68MEH9d///d/2+lJSUjR37lzt27dPPXv2lCS9/PLLmjp1qj755BNFRUVJkoqLixUREaHg4GDt3bvXk6sMAABQJa+PvFUkNDRUfn5+kkoC1aZNm3TPPffYg5skderUSUOGDFFaWpp92datW1VQUKD4+HiH+uLj42UYhjZu3GhflpaWph49etiDmyT5+flpwoQJ+uyzz3T06FE3rR0AAEDt+Hm7AaWuXLmiK1eu6NSpU1q/fr22bdumP/7xj5Kk77//XhcvXlSfPn3Kva5Pnz5KT09XQUGBAgICtG/fPklS7969HcqFhYUpNDTU/rwk7du3T4MGDXJapyR99dVXat++vdP2FhYWqrCw0KH9eXl5CgkJkcViqeHaAwCAhs4wDJ07d07t2rVTo0YVj6/5THh75JFH7Kc5mzRpov/6r//Sb3/7W0klp0IlyWazlXudzWaTYRg6deqUwsLClJubK6vVqqCgIKdlS+sqrbeiOsu+rzOLFi1ScnJyDdYQAACgaj/++KOuvfbaCp/3mfA2e/ZsTZ48WSdOnNCHH36oRx99VBcuXNB//ud/2stUNqJV9rnqlqtp2bJmzZqlJ554wv74zJkz6tixow4cOKBmzZpV+LraKioqUmZmpoYMGSJ/f3+X1w/62FPoZ/ejjz2Dfna/htbH586dU5cuXarMET4T3jp27KiOHTtKku666y5JJQHpoYceUkhIiCTnI2F5eXmyWCxq2bKlJCkkJEQFBQXKz89XYGBgubKRkZH2xyEhIRXWKTkf6StltVpltVrLLbfZbA7z8lylqKhIgYGBCgkJaRAbsDfQx55BP7sffewZ9LP7NbQ+Ll3HqqZf+ewFC/3791dxcbF++OEHde3aVU2bNlV2dna5ctnZ2erWrZsCAgIk/TzX7eqyx48fV05Ojnr16mVf1rt37wrrlORQFgAAwBf4bHjLzMxUo0aNdN1118nPz08jRozQhg0bdO7cOXuZw4cPKzMzU3FxcfZlsbGxCggIUGpqqkN9qampslgsGjVqlH3Z6NGjtX//fodbghQXF2vt2rUaMGCA2rVr57b1AwAAqA2vnzZ9+OGH1bx5c/Xv319t2rRRTk6O1q9fr3feeUe///3v1apVK0lScnKy+vXrp+HDhysxMVEFBQWaP3++QkNDNWPGDHt9NptNc+fO1bx582Sz2RQTE6OsrCwlJSVp8uTJ9nu8SdKkSZO0fPlyjR07VosXL1br1q318ssv69tvv9WOHTs83hcAAABV8Xp4i4qK0qpVq7R69WqdPn1awcHBioiI0Jo1azRhwgR7ufDwcO3atUtPPvmkxowZIz8/P912221asmSJPeCVmjNnjpo1a6bly5dryZIlatu2rRITEzVnzhyHclarVRkZGZo5c6Yee+wx5efnq2/fvtqyZYsGDx7skfUHAACoCa+Ht/j4+HI31K1IZGRktUfEEhISlJCQUGW5Nm3aaPXq1dWqEwAAwNt8ds4bAAAAyiO8AQAAmAjhDQAAwEQIbwAAACZCeAMAADARwhsAAEAVLlyQLJaSnwsXvNsWwhsAAICJEN4AAABMhPAGAADczpdOO9bG5cs////Pf3Z87GmENwAAgEps2CCV+Wp03XWX1LlzyXJvILwBAABUYMMGacwY6ehRx+VHj5Ys90aAI7wBAAA4cfmyNG2aZBjlnytdNn2650+hEt4AAIDb+dKcser6y1+kI0cqft4wpB9/LCnnSYQ3oBrMPtEWYBuGN/nanLHq+ve/XVvOVQhvAAD4ODOHb1+cM1ZdYWGuLecqhDcAAOAWvjpnrLoGDZKuvbYkNDtjsUgdOpSU8yTCGwAAcAtfnTNWXY0bS0uXlvz/6gBX+vill0rKeRLhDQAAuIWvzhmribg46b33pHbtHJdfe23J8rg4z7fJz/NvCQAAGgJfnTNWU3Fx0u23Sy1alDzevFmKifH8iFspRt4AAIBb+OqcsdooG9RuvdV7wU0ivAEAADfx1TljZkd4M4ELF6QmTfw1atRI010iDgBo2HxxzlhtBAWVXGBhGCX/9ybmvAEAALfytTljZsfIG9zOzDeXdBX6AEBD50tzxsyO8AZUgxm/kw+uQ/gG4EsIb0AVzPqdfADgS3xpzpjZEd6ASpj5O/kAAPUT4Q2ogNm/kw8AXIWpA76F8AZUwOzfyQeUxbxNoP4gvKHeq+0RY334Tr5Sly9Lu3ZJb79d8i8f3A0L8zaB+oXwBlSgvnwn34YNJR/UQ4ZI48eX/MsHd8PBvE2g/iG8ARWoD9/JV/rBffXpXz64a8aspxyZtwnUT4Q3oAJm/04+Prhdw8ynHP/6VwvzNusJsx5AuBIXTfyM8AZUwszfyccFF3Vn9lOO9WneZkNm5gMIuAfhDahCXJz09dc/P968WTpwoGbBzRtHzXxw1019GLn0pXmbjJrUjtkPIOAehLcGgJ1m3dXlO/m8ddTsyg/uhni1an0YubzlFsP08zYbsvpwAOFKnDr+GeENcCNvHjW76oKLDRukTp0a3tWq9WHk0pfmbfLBW3P14QDCVdLSLJw6LoPwBriJt4+aXfHBXV9O2dRm5NCXTjnWhS/M22TOVu3UhwMIV9izJ0zjxjU2/X7IlQhvqPe8dcTvC0fNpR/c7ds7Lq/OB7crw2fZ8LR7t8Wjoy61vc9dfbhVTClXzNusrfpyAOAN9eUAoi4uX5Zee603p46vQngzgbIb5V//6tkPPrPz5hG/rxw1x8VJBw9KmZnSW2+V/FudD25Xhc+rw9OwYX56+OEYpaVVkIpcqC73ufOlU46uUJd5m7Xl7dHnsrw997c271+fDiBq669/tSg3t6kk553QkE4dl0V483FXh48RI/w43VBN3j7i96Wj5saNpeho6f77S/6tzge3K8JnReEpNzdA48Y1duvvwBXBwRdOOZqZL4w+m1l9O4CoDV85CPY1hDcf5qrw0RAnCvvCEb/Zj5rrGj4r+x2UHkW783fgquDgzVOOZudLH7xm3Q829AMIXzoI9iWENx/lqvDhCxOF67rTrM3pBl844jf7UXNdw2fVvwOLW38HrgwO3jjlWB/4ygevL+wH66IhH0DccouhkJCLslicHgX6/EGwuxDefJQrwoe3TxuWtsEbO01fOeI381FzXcOnt38HvhIcGjJfGH32hf2gKzTUA4jGjaXJk7MlmfMg2F0Ibz6qrh98vnDa0Js7TVd/cAcFlfSbYZT8vybMfNRcl6tVvR2efCE4NHTeHn125X7Q2xc81FVd2+/N085RUf/
  2435. "text/plain": [
  2436. "<Figure size 640x480 with 1 Axes>"
  2437. ]
  2438. },
  2439. "metadata": {},
  2440. "output_type": "display_data"
  2441. }
  2442. ],
  2443. "source": [
  2444. "shotNum = \"0036\"\n",
  2445. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  2446. "\n",
  2447. "dataSetDict = {\n",
  2448. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  2449. " for i in [0]\n",
  2450. "}\n",
  2451. "\n",
  2452. "dataSet = dataSetDict[\"camera_0\"]\n",
  2453. "\n",
  2454. "print_scanAxis(dataSet)\n",
  2455. "\n",
  2456. "scanAxis = get_scanAxis(dataSet)\n",
  2457. "\n",
  2458. "dataSet = auto_rechunk(dataSet)\n",
  2459. "\n",
  2460. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  2461. "\n",
  2462. "imageAnalyser.center = (535, 995)\n",
  2463. "imageAnalyser.span = (350, 350)\n",
  2464. "imageAnalyser.fraction = (0.1, 0.1)\n",
  2465. "\n",
  2466. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  2467. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  2468. "\n",
  2469. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  2470. "Ncount_mean = calculate_mean(Ncount)\n",
  2471. "Ncount_std = calculate_std(Ncount)\n",
  2472. "\n",
  2473. "fig = plt.figure()\n",
  2474. "ax = fig.gca()\n",
  2475. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  2476. "plt.ylim([0, 3000])\n",
  2477. "plt.ylabel('NCount')\n",
  2478. "plt.tight_layout()\n",
  2479. "plt.grid(visible=1)\n",
  2480. "plt.show()"
  2481. ]
  2482. },
  2483. {
  2484. "cell_type": "code",
  2485. "execution_count": 46,
  2486. "metadata": {},
  2487. "outputs": [],
  2488. "source": [
  2489. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  2490. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  2491. ]
  2492. },
  2493. {
  2494. "attachments": {},
  2495. "cell_type": "markdown",
  2496. "metadata": {},
  2497. "source": [
  2498. "# 0.500 - 0.525 A"
  2499. ]
  2500. },
  2501. {
  2502. "cell_type": "code",
  2503. "execution_count": 47,
  2504. "metadata": {},
  2505. "outputs": [
  2506. {
  2507. "name": "stdout",
  2508. "output_type": "stream",
  2509. "text": [
  2510. "The detected scaning axes and values are: \n",
  2511. "\n",
  2512. "{'als_final_current': array([0.5 , 0.5009, 0.5018, 0.5027, 0.5036, 0.5045, 0.5054, 0.5063,\n",
  2513. " 0.5072, 0.5081, 0.509 , 0.5099, 0.5108, 0.5117, 0.5126, 0.5135,\n",
  2514. " 0.5144, 0.5153, 0.5162, 0.5171, 0.518 , 0.5189, 0.5198, 0.5207,\n",
  2515. " 0.5216, 0.5225, 0.5234, 0.5243, 0.5252, 0.5261, 0.527 ]), 'runs': array([0., 1.])}\n"
  2516. ]
  2517. },
  2518. {
  2519. "data": {
  2520. "image/png": "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
  2521. "text/plain": [
  2522. "<Figure size 640x480 with 1 Axes>"
  2523. ]
  2524. },
  2525. "metadata": {},
  2526. "output_type": "display_data"
  2527. }
  2528. ],
  2529. "source": [
  2530. "shotNum = \"0037\"\n",
  2531. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  2532. "\n",
  2533. "dataSetDict = {\n",
  2534. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  2535. " for i in [0]\n",
  2536. "}\n",
  2537. "\n",
  2538. "dataSet = dataSetDict[\"camera_0\"]\n",
  2539. "\n",
  2540. "print_scanAxis(dataSet)\n",
  2541. "\n",
  2542. "scanAxis = get_scanAxis(dataSet)\n",
  2543. "\n",
  2544. "dataSet = auto_rechunk(dataSet)\n",
  2545. "\n",
  2546. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  2547. "\n",
  2548. "imageAnalyser.center = (535, 995)\n",
  2549. "imageAnalyser.span = (350, 350)\n",
  2550. "imageAnalyser.fraction = (0.1, 0.1)\n",
  2551. "\n",
  2552. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  2553. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  2554. "\n",
  2555. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  2556. "Ncount_mean = calculate_mean(Ncount)\n",
  2557. "Ncount_std = calculate_std(Ncount)\n",
  2558. "\n",
  2559. "fig = plt.figure()\n",
  2560. "ax = fig.gca()\n",
  2561. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  2562. "plt.ylim([0, 3000])\n",
  2563. "plt.ylabel('NCount')\n",
  2564. "plt.tight_layout()\n",
  2565. "plt.grid(visible=1)\n",
  2566. "plt.show()"
  2567. ]
  2568. },
  2569. {
  2570. "cell_type": "code",
  2571. "execution_count": 48,
  2572. "metadata": {},
  2573. "outputs": [],
  2574. "source": [
  2575. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  2576. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  2577. ]
  2578. },
  2579. {
  2580. "attachments": {},
  2581. "cell_type": "markdown",
  2582. "metadata": {},
  2583. "source": [
  2584. "# 0.525 - 0.550 A"
  2585. ]
  2586. },
  2587. {
  2588. "cell_type": "code",
  2589. "execution_count": 49,
  2590. "metadata": {},
  2591. "outputs": [
  2592. {
  2593. "name": "stdout",
  2594. "output_type": "stream",
  2595. "text": [
  2596. "The detected scaning axes and values are: \n",
  2597. "\n",
  2598. "{'als_final_current': array([0.525 , 0.5259, 0.5268, 0.5277, 0.5286, 0.5295, 0.5304, 0.5313,\n",
  2599. " 0.5322, 0.5331, 0.534 , 0.5349, 0.5358, 0.5367, 0.5376, 0.5385,\n",
  2600. " 0.5394, 0.5403, 0.5412, 0.5421, 0.543 , 0.5439, 0.5448, 0.5457,\n",
  2601. " 0.5466, 0.5475, 0.5484, 0.5493, 0.5502, 0.5511, 0.552 ]), 'runs': array([0., 1.])}\n"
  2602. ]
  2603. },
  2604. {
  2605. "data": {
  2606. "image/png": "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
  2607. "text/plain": [
  2608. "<Figure size 640x480 with 1 Axes>"
  2609. ]
  2610. },
  2611. "metadata": {},
  2612. "output_type": "display_data"
  2613. }
  2614. ],
  2615. "source": [
  2616. "shotNum = \"0038\"\n",
  2617. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  2618. "\n",
  2619. "dataSetDict = {\n",
  2620. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  2621. " for i in [0]\n",
  2622. "}\n",
  2623. "\n",
  2624. "dataSet = dataSetDict[\"camera_0\"]\n",
  2625. "\n",
  2626. "print_scanAxis(dataSet)\n",
  2627. "\n",
  2628. "scanAxis = get_scanAxis(dataSet)\n",
  2629. "\n",
  2630. "dataSet = auto_rechunk(dataSet)\n",
  2631. "\n",
  2632. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  2633. "\n",
  2634. "imageAnalyser.center = (535, 995)\n",
  2635. "imageAnalyser.span = (350, 350)\n",
  2636. "imageAnalyser.fraction = (0.1, 0.1)\n",
  2637. "\n",
  2638. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  2639. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  2640. "\n",
  2641. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  2642. "Ncount_mean = calculate_mean(Ncount)\n",
  2643. "Ncount_std = calculate_std(Ncount)\n",
  2644. "\n",
  2645. "fig = plt.figure()\n",
  2646. "ax = fig.gca()\n",
  2647. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  2648. "plt.ylim([0, 3000])\n",
  2649. "plt.ylabel('NCount')\n",
  2650. "plt.tight_layout()\n",
  2651. "plt.grid(visible=1)\n",
  2652. "plt.show()"
  2653. ]
  2654. },
  2655. {
  2656. "cell_type": "code",
  2657. "execution_count": 50,
  2658. "metadata": {},
  2659. "outputs": [],
  2660. "source": [
  2661. "Ncount_mean_total = xr.concat((Ncount_mean_total, Ncount_mean), dim='als_final_current')\n",
  2662. "Ncount_std_total = xr.concat((Ncount_std_total, Ncount_std), dim='als_final_current')"
  2663. ]
  2664. },
  2665. {
  2666. "attachments": {},
  2667. "cell_type": "markdown",
  2668. "metadata": {},
  2669. "source": [
  2670. "# Summary"
  2671. ]
  2672. },
  2673. {
  2674. "cell_type": "code",
  2675. "execution_count": 51,
  2676. "metadata": {},
  2677. "outputs": [
  2678. {
  2679. "data": {
  2680. "image/png": "iVBORw0KGgoAAAANSUhEUgAACVAAAAJICAYAAACNRl33AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdeZwU9b3v/3c7bAohMjPINrhEEz0kaHK5UYiCcIPEoPzQAT1oSCI5xJxoVEgUSCSJnOMCRiPEh2bRk4MJ4gaDXHNGEcmwuMboOTcux+SYKGEAWQYEHQVmhv79UdZ0dU0t36qu3mZez8djHtNdXV397epavlX1qc8nlU6n0wIAAAAAAAAAAAAAAACALuiIYjcAAAAAAAAAAAAAAAAAAIqFACoAAAAAAAAAAAAAAAAAXRYBVAAAAAAAAAAAAAAAAAC6LAKoAAAAAAAAAAAAAAAAAHRZBFABAAAAAAAAAAAAAAAA6LIIoAIAAAAAAAAAAAAAAADQZRFABQAAAAAAAAAAAAAAAKDLIoAKAAAAAAAAAAAAAAAAQJdFABUAAAAAAAAAAAAAAACALqvkAqjuvfdepVIp9enTJ2v4ZZddplQq1eHvlFNO8ZzOnXfeqVNOOUU9e/bUCSecoAULFqilpaXDeDt37tRll12m6upqHXXUURo1apTWrVuXl+8GAAAAAAAAAAAAAAAAoLR0K3YDnLZu3aprr71WgwcP1r59+zq8fuSRR+r3v/99h2FuN910k374wx9q3rx5mjBhgl588UXNnz9fW7du1a9+9av28Q4ePKgvfvGLevfdd7VkyRIdc8wxuuuuu3Tuuefqqaee0tlnn538lwQAAAAAAAAAAAAAAABQMlLpdDpd7EbYJk2apFQqpcrKSq1YsULvv/9++2uXXXZZh2FempqaVFNTo6997Wv65S9/2T785ptv1vz58/Xqq69q2LBhkqS7775bV155pZ599lmNGjVKktTa2qrTTjtNffr00QsvvJCHbwkAAAAAAAAAAAAAAACgVJRMCb9ly5Zpw4YNuvvuu3OazhNPPKEDBw5oxowZWcNnzJihdDqtRx99tH3YqlWrdPLJJ7cHT0lSt27dNH36dP3hD3/Q1q1bc2oLAAAAAAAAAAAAAAAAgNJWEgFUO3fu1KxZs7Rw4ULV1NT4jvfhhx9q4MCBqqioUE1Njb7zne9oz549WeO8+uqrkqThw4dnDR80aJCqq6vbX7fHPfXUUzt8jj3stddei/2dAAAAAAAAAAAAAAAAAJS+bsVugCRdccUVOvnkk/Xtb3/bd5zTTjtNp512mj7zmc9IkjZs2KA77rhD69at04svvqg+ffpIskr49ezZU7179+4wjcrKSjU1NbU/b2pqUmVlped49ut+Dh48qIMHD7Y/P3z4sPbs2aOqqiqlUqmQbwwAAAAAAAAAAAAAAAAgX9LptN577z0NHjxYRxwRnGOq6AFUK1eu1GOPPab//M//DAw8mj17dtbzc845R5/73Oc0depU3XPPPVmvB03H/VqUcZ1uueUWLViwwPd1AAAAAAAAAAAAAAAAAMW1ZcuWwIp4UpEDqN5//31deeWVuuqqqzR48GC9++67kqRDhw5Jkt599111797dM5uUJF144YXq3bu3nn/++fZhVVVVOnDggD744AMdddRRWePv2bNHI0aMyBrXK8uUXRbQKzuV7fvf/76++93vtj/ft2+fjj32WL311lv62Mc+FvLNUWgtLS1qaGjQuHHj1L1792I3BwCQILbxANC5sZ0HgM6LbTwAdF5s4wGgc2M7D6BcvPfeezrhhBOM4niKGkC1e/du7dixQ7fffrtuv/32Dq/369dPkydP1qOPPuo7jXQ6nZVma/jw4ZKkV155RWeccUb78HfeeUe7d+9uLwFoj/vKK690mKY9zDmuW8+ePdWzZ88OwysrK9W3b1/f96E4WlpadNRRR6mqqoqdOAB0MmzjAaBzYzsPAJ0X23gA6LzYxgNA58Z2HkC5sLdRQRXobEUNoBo4cKAaGho6DF+4cKE2bNigxx9/XNXV1b7vX7FihT744AONHDmyfdi5556rXr16aenSpVkBVEuXLlUqldIFF1zQPuzCCy/UFVdcoRdeeKF93NbWVi1btkxnnHGGBg8enMC3BAAAAAAAAAAAAAAAAFCqihpA1atXL40dO7bD8KVLl6qioqL9tc2bN+vSSy/VtGnTdNJJJymVSmnDhg1avHixPv3pT2vmzJnt762srNT8+fP1wx/+UJWVlZowYYJefPFF3XDDDZo5c6aGDRvWPu43vvEN3XXXXbrooou0cOFCHXPMMbr77rv15z//WU899VS+vz4AAAAAAAAAAAAAAACAIitqAJWpvn37asCAAfrpT3+qHTt2qK2tTccdd5yuvvpq/eAHP1Dv3r2zxr/++uv1sY99THfddZduu+02DRw4UPPmzdP111+fNV7Pnj21bt06zZkzR1dddZU++OADffazn9Xjjz+us88+u5BfEQAAAAAAAAAAAAAAAEARlGQA1dKlS7V06dL25/369VNdXV2kaVx99dW6+uqrQ8cbMGCA7rvvvqhNBAAAAAAAAAAAAAAAANAJHFHsBgAAAAAAAAAAAAAAAABAsRBABQAAAAAAAAAAAAAAAKDLIoAKAAAAAAAAAAAAAAAAQJdFABUAAAAAAAAAAAAAAACALosAKgAAAAAAAAAAAAAAAABdFgFUAAAAAAAAAAAAAAAAALosAqgAAAAAAAAAAAAAAAAAdFkEUAEAAAAAAAAAAAAAAADosgigAgAAAAAAAAAAAAAAANBlEUAFAAAAAAAAAAAAAAAAoMsigAoAAAAAAAAAAAAAAABAl0UAFQAAAAAAAAAAAAAAAIAuiwAqAAAAAAAAAAAAAAAAAF0WAVQAAAAAAAAAAAAAAAAAuiwCqAAAAAAAAAAAAAAAAAB0WQRQAQAAAAAAAAAAAAAAAOiyCKACAAAAAAAAAAAAAAAA0GURQAUAAAAAAAAAAAAAAACgyyKACgAAAAAAAAAAAAAAAECXRQAVAAAAAAAAAAAAAAAAgC6LACoAAAAAAAAAAAAAAAAAXRYBVAAAAAAAAAAAAAAAAAC6LAKoAAAAAAAAAAAAAAAAAHRZBFABAAAAAAAAAAAAAAAA6LIIoAIAAAAAAAAAAAAAAADQZRFABQAA0AU0N0uplPXX3Fzs1gAAAAAAAAAAAAClgwAqAAAAAAAAAAAAAAAAAF0WAVQAAAAAAAAAAAAAAAAAuiwCqAAAAAAAAAAAAAAAAAB0WQRQAQAAAAAAAAAAAAAAAOiyCKACAAAAAAAAAAAAAAAA0GURQAUAAAAAAAAAAAAAAACgyyKACgAAAAAAAAAAAAAAAECXRQAVAAAAAAAAAAAAAAAAgC6LACoAAAAAAAAAAAAAAAAAXRYBVAAAAEARNDdLqZT119xc7NYAAAAAAAAAAAB0XQRQAQAAAOiyCGQDAAAAAAAAAAAEUAEAAAAAAAAAAAAAAADosgigAgAAAAAAAAAAAAAAANBlEUAFAAAAAAAAAAAAAAAAoMsigAoAAAAAkIjmZimVsv6am4vdGgAAAAAAAAAAzBBABQAAgLJFsAbQObAuAwAAAAAAAACKiQAqAAAAAAAAAAAAAAAAAF0WAVQAAKAkdMXsI13xOwPlKB/rKus/AAAAAAAAAAClo+QCqO69916lUin16dOnw2svv/yyxo8frz59+ujoo49WbW2t/va3v3lO584779Qpp5yinj176oQTTtCCBQvU0tLSYbydO3fqsssuU3V1tY466iiNGjVK69atS/x7AQCA4iFQQWpryzzeuDH7OcoXyzYAAAAAAAAAAEDuSiqAauvWrbr22ms1ePDgDq+98cYbGjt2rA4dOqSHH35Yv/71r/WXv/xFo0eP1q5du7LGvemmm3TNNdeotrZWa9as0RVXXKGbb75ZV155ZdZ4Bw8e1Be/+EWtW7dOS5Ys0erVqzVgwACde+652rBhQ16/KwAAQKHU1UnDhmWeT5woHX+8NbwUFTooiCAkAAAAAAAAAACArq1bsRvg9M///M8aM2aMKisrtWL
  2681. "text/plain": [
  2682. "<Figure size 2400x600 with 1 Axes>"
  2683. ]
  2684. },
  2685. "metadata": {},
  2686. "output_type": "display_data"
  2687. }
  2688. ],
  2689. "source": [
  2690. "fig = plt.figure(figsize=(24,6))\n",
  2691. "ax = fig.gca()\n",
  2692. "Ncount_mean_total.plot.errorbar(ax=ax, yerr = Ncount_std_total, fmt='ob')\n",
  2693. "plt.ylim([0, 4500])\n",
  2694. "plt.ylabel('NCount')\n",
  2695. "plt.tight_layout()\n",
  2696. "plt.grid(visible=1)\n",
  2697. "plt.show()"
  2698. ]
  2699. },
  2700. {
  2701. "cell_type": "code",
  2702. "execution_count": 52,
  2703. "metadata": {
  2704. "scrolled": false
  2705. },
  2706. "outputs": [
  2707. {
  2708. "data": {
  2709. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAm8AAAHPCAYAAAAFwj37AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAACW4UlEQVR4nOzdeVyU1f4H8M8DAzMsIg4oAuK+kBsapVKpmKlkelPUMrNSr/a76U1tuaaBJqWmZZbXbF+0zBYN9GruiGRp5m27uGbu4oKA7IvDcH5/PM4wAwMMMCvzeb9eKPM8Z86cLwMz3znPWSQhhAAREREROQU3ezeAiIiIiMzH5I2IiIjIiTB5IyIiInIiTN6IiIiInAiTNyIiIiInwuSNiIiIyIkweSMiIiJyIkzeiIiIiJwIkzciIiIiJ+JwydtHH30ESZLg6+trdHzSpEmQJKnKV3h4uMl6Vq1ahfDwcCiVSrRr1w4JCQnQaDRVymVkZGDSpEkIDAyEt7c3oqKikJycbJXYiIiIiBpKYe8GGEpPT8fzzz+PkJAQ5ObmVjnv5eWFvXv3VjlW2eLFizF//nzMnTsXQ4cOxeHDhxEfH4/09HR88MEH+nKlpaUYPHgwcnJysHLlSrRo0QKrV69GTEwM9uzZg4EDB1o+SCIiIqIGkBxpb9ORI0dCkiSo1Wps3LgRBQUF+nOTJk2qcsyUrKwstGrVCo8//jjef/99/fElS5YgPj4eR44cQdeuXQEA77zzDmbMmIEDBw4gKioKAFBWVoaIiAj4+vri0KFDVoiSiIiIqP4c5rLpunXrkJqainfeeadB9ezYsQMlJSWYPHmy0fHJkydDCIFNmzbpjyUlJaFLly76xA0AFAoFJk6ciJ9//hnp6ekNagsRERGRpTnEZdOMjAzMnj0bS5cuRatWraotV1xcjJYtW+L69esIDg7GqFGj8PLLL0OtVuvLHDlyBADQo0cPo/sGBwcjMDBQf15Xtn///lUep2fPngCAo0ePIjQ01GRbSktLUVpaqr9dXl6O7OxsBAQEQJIkM6ImIiIiqiCEQH5+PkJCQuDmVn3/mkMkb9OnT0eXLl3w1FNPVVsmIiICERER6N69OwAgNTUVb775JpKTk3H48GH9BIesrCwolUr4+PhUqUOtViMrK0t/OysryyjxMyynO1+dV199FQkJCeYFSERERGSmixcv1tiZZffk7dtvv8WWLVvw22+/1dhj9cwzzxjdHjJkCHr37o2xY8fiww8/NDpfUz2Vz9WlrKF58+bh2Wef1d/Ozc1F69atcfbsWTRp0qTa+9WXRqNBSkoKBg0aBA8PD4vX72hcLV7A9WJmvI2fq8XMeBs/a8ecn5+Pdu3a1ZpH2DV5KygowIwZM/D0008jJCQEOTk5AICbN28CAHJycuDh4WGyFw0ARo8eDR8fH/z000/6YwEBASgpKUFRURG8vb2NymdnZyMyMtKorKnetezsbAAw2Suno1QqoVQqqxxXq9Xw8/Or9n71pdFo4O3tjYCAAJf4I3G1eAHXi5nxNn6uFjPjbfysHbOuztqGX9l1wkJmZiauXbuGN954A82aNdN/ffnllygsLESzZs3w6KOP1liHEMLourBurFtaWppRuatXryIzM1N/2VVXtnI5w/saliUiIiJyBHbteWvZsiVSUlKqHF+6dClSU1Oxfft2BAYGVnv/jRs3oqioCP369dMfi4mJgUqlwpo1a9C3b1/98TVr1kCSJIwaNUp/bPTo0Zg+fToOHTqkL1tWVoZ169ahb9++CAkJsUCURERERJZj1+RNpVIhOjq6yvE1a9bA3d1df+78+fOYMGECxo8fj44dO0KSJKSmpuKtt95Ct27dMHXqVP191Wo14uPjMX/+fKjVav0ivQsXLsTUqVP1a7wBwJQpU7B69WqMGzcOS5cuRYsWLfDOO+/g5MmT2LNnj7XDJyIiIqozu09YMIefnx+CgoKwYsUKXLt2DVqtFm3atMHMmTPx4osvVhkTFxcXhyZNmmD16tVYvnw5WrZsiblz5yIuLs6onFKpRHJyMubMmYOnn34aRUVF6NWrF7Zv387dFYiIiMghOWTytmbNGqxZs0Z/u1mzZkhMTKxTHTNnzsTMmTNrLRcUFIS1a9fWtYlEREREduEwOywQERERUe2YvBERERE5ESZvRERERE6EyRsRERGRE2HyRkREROREmLwREREROREmb0REREROhMkbERERkRNh8kZERETkRJi8ERERETkRJm9EREREToTJGxEREZETYfJGRERE5ESYvBERERE5ESZvRERERE6EyRsRERGRE2HyRkREROREmLwREREROREmb0REREROhMkbERERkRNh8kZERETkRJi8ERERETkRJm9EREREToTJGxEREZETYfJGRERE5ESYvBERERE5ESZvRERERE6EyRsRERGRE2HyRkREROREmLwREREROREmb0REREROxOGSt48++giSJMHX17fKuV9//RX33XcffH194e/vj9jYWJw5c8ZkPatWrUJ4eDiUSiXatWuHhIQEaDSaKuUyMjIwadIkBAYGwtvbG1FRUUhOTrZ4XERERESW4FDJW3p6Op5//nmEhIRUOXfixAlER0fj5s2b+Oabb/DJJ5/gzz//RP/+/XH9+nWjsosXL8asWbMQGxuLnTt3Yvr06ViyZAlmzJhhVK60tBSDBw9GcnIyVq5cic2bNyMoKAgxMTFITU21aqxERERE9aGwdwMM/eMf/8CAAQOgVquxceNGo3MLFiyAUqnE1q1b4efnBwCIjIxEp06dsHz5cixbtgwAkJWVhUWLFmHatGlYsmQJACA6OhoajQbx8fGYPXs2unbtCgD4+OOPceTIERw4cABRUVEAgEGDBiEiIgJz5szBoUOHbBU6ERERkVkcpudt3bp1SE1NxTvvvFPlXFlZGbZu3YoxY8boEzcAaNOmDQYNGoSkpCT9sR07dqCkpASTJ082qmPy5MkQQmDTpk36Y0lJSejSpYs+cQMAhUKBiRMn4ueff0Z6eroFIyQiIiJqOIfoecvIyMDs2bOxdOlStGrVqsr506dPo7i4GD179qxyrmfPnti9ezdKSkqgUqlw5MgRAECPHj2MygUHByMwMFB/HgCOHDmC/v37m6wTAI4ePYrQ0FCTbS4tLUVpaan+dl5eHgBAo9GYHFvXULo6rVG3I3K1eAHXi5nxNn6uFjPjbfysHbO59TpE8jZ9+nR06dIFTz31lMnzWVlZAAC1Wl3lnFqthhACN27cQHBwMLKysqBUKuHj42OyrK4uXb3V1Wn4uKa8+uqrSEhIqHJ8165d8Pb2rvZ+DbV7926r1e2IXC1ewPViZryNn6vFzHgbP2vFXFRUZFY5uydv3377LbZs2YLffvsNkiTVWLam84bnzC1X17KG5s2bh2effVZ/Oy8vD2FhYRg6dKjRpV1L0Wg02L17N4YMGQIPDw+L1+9oXC1ewPViZryNn6vFzHgbP2vHrLuKVxu7Jm8FBQWYMWMGnn76aYSEhCAnJwcAcPPmTQBATk4OPDw8EBAQAMB0T1h2djYkSYK/vz8AICAgACUlJSgqKqrSA5adnY3IyEj97YCAgGrrBEz39OkolUoolcoqxz08PKz6S2zt+h2Nq8ULuF7MjLfxc7WYGW/jZ62Yza3TrhMWMjMzce3aNbzxxhto1qyZ/uvLL79EYWEhmjVrhkcffRQdOnSAl5cX0tLSqtSRlpaGjh07QqVSAagY61a57NWrV5GZmYnu3bvrj/Xo0aPaOgEYlSUiIiJyBHZN3lq2bImUlJQqX8OGDYNKpUJKSgoWLVoEhUKBkSNHIjExEfn5+fr7X7hwASkpKYiNjdUfi4mJgUqlwpo1a4wea82aNZAkCaNGjdIfGz16NE6cOGG0JEhZWRnWrVuHvn37mlxvjoiIiMie7HrZVKVSITo6usrxNWvWwN3d3ehcQkIC7rzzTowYMQJz585FSUkJFixYgMDAQDz33HP6cmq1GvHx8Zg/fz7UajWGDh2Kw4cPY+HChZg6dap+jTcAmDJlClavXo1x48Zh6dKlaNGiBd555x2cPHk
  2710. "text/plain": [
  2711. "<Figure size 640x480 with 1 Axes>"
  2712. ]
  2713. },
  2714. "metadata": {},
  2715. "output_type": "display_data"
  2716. },
  2717. {
  2718. "name": "stdout",
  2719. "output_type": "stream",
  2720. "text": [
  2721. "f = 0.44224 ± 0.00038 A\n",
  2722. "fwhm = 0.02101 ± 0.00111 A\n"
  2723. ]
  2724. }
  2725. ],
  2726. "source": [
  2727. "Brange=(0.4, 0.48)\n",
  2728. "\n",
  2729. "data = Ncount_mean_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  2730. "data = data.dropna(dim='als_final_current')\n",
  2731. "data_std = Ncount_std_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  2732. "data_std = data_std.dropna(dim='als_final_current')\n",
  2733. "\n",
  2734. "fitAnalyser = FitAnalyser(\"Gaussian With Offset\", fitDim=1)\n",
  2735. "params = fitAnalyser.guess(data, x='als_final_current', guess_kwargs=dict(negative=True), dask=\"parallelized\")\n",
  2736. "fitResult = fitAnalyser.fit(data, params, x='als_final_current', dask=\"parallelized\").load()\n",
  2737. "fitCurve = fitAnalyser.eval(fitResult, x=np.linspace(Brange[0], Brange[1], 500), dask=\"parallelized\").load()\n",
  2738. "\n",
  2739. "fig = plt.figure()\n",
  2740. "ax = fig.gca()\n",
  2741. "\n",
  2742. "data.plot.errorbar(ax=ax, yerr = data_std, fmt='ob')\n",
  2743. "fitCurve.plot.errorbar(ax=ax)\n",
  2744. "\n",
  2745. "plt.ylim([0, 4500])\n",
  2746. "plt.ylabel('NCount')\n",
  2747. "plt.xlabel('Z_offset current (A)')\n",
  2748. "plt.tight_layout()\n",
  2749. "plt.grid(visible=1)\n",
  2750. "plt.show()\n",
  2751. "\n",
  2752. "f_1 = fitAnalyser.get_fit_value(fitResult).center\n",
  2753. "df_1 = fitAnalyser.get_fit_std(fitResult).center\n",
  2754. "\n",
  2755. "print('f = %.5f \\u00B1 %.5f A'% tuple([np.abs(f_1),df_1]))\n",
  2756. "\n",
  2757. "s_1 = fitAnalyser.get_fit_value(fitResult).sigma\n",
  2758. "ds_1 = fitAnalyser.get_fit_std(fitResult).sigma\n",
  2759. "\n",
  2760. "fwhm_1 = 2.3548200*s_1\n",
  2761. "dfwhm_1 = 2.3548200*ds_1\n",
  2762. "\n",
  2763. "print('fwhm = %.5f \\u00B1 %.5f A'% tuple([np.abs(fwhm_1),dfwhm_1]))"
  2764. ]
  2765. },
  2766. {
  2767. "cell_type": "code",
  2768. "execution_count": 53,
  2769. "metadata": {},
  2770. "outputs": [
  2771. {
  2772. "data": {
  2773. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAm4AAAHPCAYAAADqAFbFAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAACGVElEQVR4nO3deVyU1f4H8M/DNsMi4IAiIK6oZAoaudCNxEwk01TSm5WVmt1701yye9016ebSLyvNtG43S8vSyvVmbohKlkuWeQNN7bqLIrIoyDIMM+f3xzgjwwwwAzPMwuf9evHSOc+ZM+fLA8N3znnOeSQhhAAREREROTw3e3eAiIiIiMzDxI2IiIjISTBxIyIiInISTNyIiIiInAQTNyIiIiInwcSNiIiIyEkwcSMiIiJyEkzciIiIiJwEEzciIiIiJ+FwidvHH38MSZLg5+dnUD569GhIkmT0FRUVZbKd5cuXIyoqCjKZDG3btkVKSgpUKpVRvZycHIwePRrBwcHw8fFBXFwc0tLSbBIbERERUX142LsDlWVlZeHvf/87wsLCcOvWLaPj3t7e2Lt3r1FZVQsWLMDcuXMxY8YMJCYm4ujRo5gzZw6ysrLw0Ucf6esplUr069cPN2/exLJly9C8eXOsWLECSUlJ2LNnD/r06WP9IImIiIjqSHKke5UOHjwYkiRBoVBgw4YNuH37tv7Y6NGjjcpMycvLQ8uWLfHcc8/hX//6l7584cKFmDNnDjIzM9G5c2cAwMqVKzFhwgQcPHgQcXFxAICKigrExMTAz88PR44csUGURERERHXjMFOla9euRXp6OlauXFmvdnbu3ImysjKMGTPGoHzMmDEQQmDLli36ss2bN6NTp076pA0APDw8MGrUKPz000/IysqqV1+IiIiIrMkhpkpzcnIwZcoULF68GC1btqy2XmlpKVq0aIEbN24gNDQUQ4cOxeuvvw6FQqGvk5mZCQDo2rWrwXNDQ0MRHBysP66rGx8fb/Q60dHRAIATJ04gPDzcZF+USiWUSqX+sUajQX5+PoKCgiBJkhlRExEREWkJIVBUVISwsDC4uVU/ruYQidv48ePRqVMnvPTSS9XWiYmJQUxMDLp06QIASE9Px7vvvou0tDQcPXpUv5ghLy8PMpkMvr6+Rm0oFArk5eXpH+fl5RkkfZXr6Y5XZ9GiRUhJSTEvQCIiIiIzXL58ucZBLLsnbhs3bsS3336LX3/9tcaRqldeecXgcf/+/dG9e3cMHz4c//73vw2O19RO1WOW1K1s5syZmDp1qv7xrVu30KpVK5w/fx5NmjSp9nl1pVKpsG/fPvTt2xeenp5Wb9/RMF7X19hiZryujfG6PlvHXFRUhLZt29aaQ9g1cbt9+zYmTJiAiRMnIiwsDDdv3gQAlJeXAwBu3rwJT09Pk6NnADBs2DD4+vri8OHD+rKgoCCUlZWhpKQEPj4+BvXz8/MRGxtrUNfUqFp+fj4AmByN05HJZJDJZEblCoUC/v7+1T6vrlQqFXx8fBAUFNQofkkYr+trbDEzXtfGeF2frWPWtVnb5VZ2XZyQm5uL69ev4+2330bTpk31X+vWrUNxcTGaNm2KZ555psY2hBAGc8G6a9syMjIM6mVnZyM3N1c/1aqrW7Ve5edWrktERERkb3YdcWvRogX27dtnVL548WKkp6djx44dCA4Orvb5GzZsQElJCXr37q0vS0pKglwux+rVq9GrVy99+erVqyFJEoYOHaovGzZsGMaPH48jR47o61ZUVGDt2rXo1asXwsLCrBAlERERkXXYNXGTy+VISEgwKl+9ejXc3d31xy5evIinn34aI0eORGRkJCRJQnp6OpYuXYp7770X48aN0z9XoVBgzpw5mDt3LhQKhX4D3vnz52PcuHH6PdwAYOzYsVixYgVGjBiBxYsXo3nz5li5ciVOnz6NPXv22Dp8IiIiIovYfXGCOfz9/RESEoJ33nkH169fh1qtRuvWrTFp0iTMmjXL6Bq42bNno0mTJlixYgWWLFmCFi1aYMaMGZg9e7ZBPZlMhrS0NEybNg0TJ05ESUkJunXrhh07dvCuCURERORwHDJxW716NVavXq1/3LRpU2zatMmiNiZNmoRJkybVWi8kJARr1qyxtItEREREDc5h7pxARERERDVj4kZERETkJJi4ERERETkJJm5EREREToKJGxEREZGTYOJGRERE5CSYuBERERE5CSZuRERERE6CiRsRERGRk2DiRkREROQkmLgREREROQkmbkREREROgokbERERkZNg4kZERETkJJi4ERERETkJJm5EREREToKJGxEREZGTYOJGRERE5CSYuBERERE5CSZuRERERE6CiRsRERGRk2DiRkREROQkmLgREREROQkmbkREREROgokbERERkZNg4kZERETkJJi4ERERETkJJm5EREREToKJGxEREZGTYOJGRERE5CSYuBERERE5CYdL3D7++GNIkgQ/Pz+jY8eOHcMjjzwCPz8/BAYGIjk5GefOnTPZzvLlyxEVFQWZTIa2bdsiJSUFKpXKqF5OTg5Gjx6N4OBg+Pj4IC4uDmlpaVaPi4iIiKi+HCpxy8rKwt///neEhYUZHTt16hQSEhJQXl6Or7/+Gp988gnOnDmD+Ph43Lhxw6DuggULMHnyZCQnJ2PXrl0YP348Fi5ciAkTJhjUUyqV6NevH9LS0rBs2TJs3boVISEhSEpKQnp6uk1jJSIiIrKUh707UNnf/vY3PPTQQ1AoFNiwYYPBsXnz5kEmk2Hbtm3w9/cHAMTGxqJDhw5YsmQJ3nzzTQBAXl4e3njjDbz44otYuHAhACAhIQEqlQpz5szBlClT0LlzZwDAqlWrkJmZiYMHDyIuLg4A0LdvX8TExGDatGk4cuRIQ4VOREREVCuHGXFbu3Yt0tPTsXLlSqNjFRUV2LZtG5544gl90gYArVu3Rt++fbF582Z92c6dO1FWVoYxY8YYtDFmzBgIIbBlyxZ92ebNm9GpUyd90gYAHh4eGDVqFH766SdkZWVZMUIiIiKi+nGIEbecnBxMmTIFixcvRsuWLY2Onz17FqWlpYiOjjY6Fh0djdTUVJSVlUEulyMzMxMA0LVrV4N6oaGhCA4O1h8HgMzMTMTHx5tsEwBOnDiB8PBwk31WKpVQKpX6x4WFhQAAlUpl8lq6+tK1aYu2HRHjdX2NLWbG69oYr+uzdczmtusQidv48ePRqVMnvPTSSyaP5+XlAQAUCoXRMYVCASEECgoKEBoairy8PMhkMvj6+pqsq2tL1251bVZ+XVMWLVqElJQUo/Ldu3fDx8en2ufVV2pqqs3adkSM1/U1tpgZr2tjvK7PVjGXlJSYVc/uidvGjRvx7bff4tdff4UkSTXWrel45WPm1rO0bmUzZ87E1KlT9Y8LCwsRERGBxMREg+lca1GpVEhNTUX//v3h6elp9fYdDeN1fY0tZsbr2hiv67N1zLqZu9rYNXG7ffs2JkyYgIkTJyIsLAw3b94EAJSXlwMAbt68CU9PTwQFBQEwPQKWn58PSZIQGBgIAAgKCkJZWRlKSkqMRr7y8/MRGxurfxwUFFRtm4DpET4dmUwGmUxmVO7p6WnTH2Jbt+9oGK/ra2wxM17Xxnhdn61iNrdNuy5OyM3NxfXr1/H222+jadOm+q9169ahuLgYTZs2xTPPPIP27dvD29sbGRkZRm1kZGQgMjIScrkcwN1r26rWzc7ORm5uLrp06aIv69q1a7VtAjCoS0RERGRvdk3cWrRogX379hl9DRgwAHK5HPv27cMbb7wBDw8PDB48GJs2bUJRUZH++ZcuXcK+ffuQnJysL0tKSoJcLsfq1asNXmv16tWQJAlDhw7Vlw0bNgynTp0y2PajoqICa9euRa9evUzuJ0dERERkL3adKpXL5UhISDAqX716Ndzd3Q2OpaSkoEePHhg0aBBmzJiBsrIyzJs3D8HBwXj11Vf19RQKBebMmYO5c+dCoVAgMTERR48exfz58zFu3Dj9Hm4AMHbsWKxYsQIjRozA4sWL0bx5c6xcuRKnT5/Gnj17bBk6ERERkcUcZh+32kRFRWH
  2774. "text/plain": [
  2775. "<Figure size 640x480 with 1 Axes>"
  2776. ]
  2777. },
  2778. "metadata": {},
  2779. "output_type": "display_data"
  2780. },
  2781. {
  2782. "name": "stdout",
  2783. "output_type": "stream",
  2784. "text": [
  2785. "f = 0.28128 ± 0.00016 A\n",
  2786. "fwhm = 0.00680 ± 0.00039 A\n"
  2787. ]
  2788. }
  2789. ],
  2790. "source": [
  2791. "Brange=(0.26, 0.3)\n",
  2792. "\n",
  2793. "data = Ncount_mean_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  2794. "data = data.dropna(dim='als_final_current')\n",
  2795. "data_std = Ncount_std_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  2796. "data_std = data_std.dropna(dim='als_final_current')\n",
  2797. "\n",
  2798. "fitAnalyser = FitAnalyser(\"Gaussian With Offset\", fitDim=1)\n",
  2799. "params = fitAnalyser.guess(data, x='als_final_current', guess_kwargs=dict(negative=True), dask=\"parallelized\")\n",
  2800. "fitResult = fitAnalyser.fit(data, params, x='als_final_current', dask=\"parallelized\").load()\n",
  2801. "fitCurve = fitAnalyser.eval(fitResult, x=np.linspace(Brange[0], Brange[1], 500), dask=\"parallelized\").load()\n",
  2802. "\n",
  2803. "fig = plt.figure()\n",
  2804. "ax = fig.gca()\n",
  2805. "\n",
  2806. "data.plot.errorbar(ax=ax, yerr = data_std, fmt='ob')\n",
  2807. "fitCurve.plot.errorbar(ax=ax)\n",
  2808. "\n",
  2809. "plt.ylim([0, 4500])\n",
  2810. "plt.ylabel('NCount')\n",
  2811. "plt.xlabel('Z_offset current (A)')\n",
  2812. "plt.tight_layout()\n",
  2813. "plt.grid(visible=1)\n",
  2814. "plt.show()\n",
  2815. "\n",
  2816. "f_1 = fitAnalyser.get_fit_value(fitResult).center\n",
  2817. "df_1 = fitAnalyser.get_fit_std(fitResult).center\n",
  2818. "\n",
  2819. "print('f = %.5f \\u00B1 %.5f A'% tuple([np.abs(f_1),df_1]))\n",
  2820. "\n",
  2821. "s_1 = fitAnalyser.get_fit_value(fitResult).sigma\n",
  2822. "ds_1 = fitAnalyser.get_fit_std(fitResult).sigma\n",
  2823. "\n",
  2824. "fwhm_1 = 2.3548200*s_1\n",
  2825. "dfwhm_1 = 2.3548200*ds_1\n",
  2826. "\n",
  2827. "print('fwhm = %.5f \\u00B1 %.5f A'% tuple([np.abs(fwhm_1),dfwhm_1]))"
  2828. ]
  2829. },
  2830. {
  2831. "cell_type": "code",
  2832. "execution_count": 54,
  2833. "metadata": {},
  2834. "outputs": [
  2835. {
  2836. "name": "stdout",
  2837. "output_type": "stream",
  2838. "text": [
  2839. "params.add(name=\"A_amplitude\", value= 1, max=np.inf, min=-np.inf, vary=True)\n",
  2840. "params.add(name=\"A_center\", value= 0, max=np.inf, min=-np.inf, vary=True)\n",
  2841. "params.add(name=\"A_sigma\", value= 1, max=np.inf, min= 0, vary=True)\n",
  2842. "params.add(name=\"B_amplitude\", value= 1, max=np.inf, min=-np.inf, vary=True)\n",
  2843. "params.add(name=\"B_center\", value= 0, max=np.inf, min=-np.inf, vary=True)\n",
  2844. "params.add(name=\"B_sigma\", value= 1, max=np.inf, min= 0, vary=True)\n",
  2845. "params.add(name=\"B_offset\", value= 0, max=np.inf, min=-np.inf, vary=True)\n",
  2846. "params.add(name=\"A_fwhm\", expr=\"2.3548200*A_sigma\")\n",
  2847. "params.add(name=\"A_height\", expr=\"0.3989423*A_amplitude/max(1e-15, A_sigma)\")\n",
  2848. "params.add(name=\"B_fwhm\", expr=\"2.3548200*B_sigma\")\n",
  2849. "params.add(name=\"B_height\", expr=\"0.3989423*B_amplitude/max(1e-15, B_sigma)\")\n"
  2850. ]
  2851. }
  2852. ],
  2853. "source": [
  2854. "from Analyser.FitAnalyser import GaussianModel, GaussianWithOffsetModel\n",
  2855. "\n",
  2856. "fitModel = GaussianModel(prefix='A_') + GaussianWithOffsetModel(prefix='B_')\n",
  2857. "fitAnalyser = FitAnalyser(fitModel, fitDim=1)\n",
  2858. "fitAnalyser.print_params_set_template()"
  2859. ]
  2860. },
  2861. {
  2862. "cell_type": "code",
  2863. "execution_count": 55,
  2864. "metadata": {},
  2865. "outputs": [
  2866. {
  2867. "data": {
  2868. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAm4AAAHPCAYAAADqAFbFAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAACOzklEQVR4nOzdd3yT1f4H8M+TJk06KG1a6ICyRwVKwcq6P4EyrQgXqKDoRQUEB8hQr8goShUQFQciXOWKgOIECyqyS0GuDFFEKVM2FAp00Z0m6fn9ERIaku6kSZrP+/XqC/I85zk5p+nT59szJSGEABERERE5PZmjC0BERERElcPAjYiIiMhFMHAjIiIichEM3IiIiIhcBAM3IiIiIhfBwI2IiIjIRTBwIyIiInIRDNyIiIiIXAQDNyIiIiIX4XSB2yeffAJJkuDr62t2fMyYMZAkyeIrIiLCaj5LlixBREQElEolmjdvjoSEBGi1Wot0169fx5gxYxAUFARvb2/06NEDSUlJdqkbERERUU3IHV2A0lJTU/Hvf/8bYWFhuHnzpsV5Ly8v7Ny50+LYnebPn485c+ZgxowZGDhwIA4ePIj4+HikpqZi+fLlpnQajQb9+vVDdnY2Fi9ejIYNG2Lp0qWIjY3Fjh070Lt3b9tXkoiIiKiaJGfaq3TIkCGQJAlqtRrr1q1DXl6e6dyYMWMsjlmTkZGBxo0b4/HHH8fHH39sOr5gwQLEx8cjJSUF7dq1AwAsW7YMkyZNwt69e9GjRw8AgE6nQ1RUFHx9fXHgwAE71JKIiIioepymq3TNmjXYvXs3li1bVqN8tmzZgqKiIowdO9bs+NixYyGEwIYNG0zH1q9fj7Zt25qCNgCQy+UYPXo0fv31V6SmptaoLERERES25BRdpdevX8e0adOwcOFCNG7cuMx0hYWFCAkJwY0bNxAaGophw4bhtddeg1qtNqVJSUkBAERGRppdGxoaiqCgINN5Y9qePXtavE/Hjh0BAEePHkWjRo2slkWj0UCj0Zhel5SUIDMzE4GBgZAkqRK1JiIiIncjhEBubi7CwsIgk1W9/cwpAreJEyeibdu2ePbZZ8tMExUVhaioKHTo0AEAsHv3brz33ntISkrCwYMHTZMZMjIyoFQq4ePjY5GHWq1GRkaG6XVGRoZZ0Fc6nfF8Wd544w0kJCRUroJEREREpVy6dKncxqqyODxw++677/Djjz/ijz/+KLel6vnnnzd7PWDAAHTu3BkjRozAf//7X7Pz5eVz57mqpC1t5syZeOGFF0yvb968iSZNmuDcuXOoV69emddVl1arRXJyMvr06QOFQmHz/J2JO9UVcK/6ulNdAda3LnOnugKsry3l5uaiefPm1Y4VHBq45eXlYdKkSZg8eTLCwsKQnZ0NACguLgYAZGdnQ6FQWG09A4Dhw4fDx8cH+/fvNx0LDAxEUVERCgoK4O3tbZY+MzMT0dHRZmmttaplZmYCgNXWOCOlUgmlUmlxXK1Ww8/Pr8zrqkur1cLb2xuBgYF1/qZxp7oC7lVfd6orwPrWZe5UV4D1tSVjftUdVuXQyQnp6em4du0a3nnnHQQEBJi+vvrqK+Tn5yMgIAD/+te/ys1DCGHWR2wc23bkyBGzdGlpaUhPTzd1tRrT3pmu9LWl0xIRERE5mkNb3EJCQpCcnGxxfOHChdi9ezc2b96MoKCgMq9ft24dCgoK0L17d9Ox2NhYqFQqrFq1Ct26dTMdX7VqFSRJwrBhw0zHhg8fjokTJ+LAgQOmtDqdDmvWrEG3bt0QFhZmg1oSERER2YZDAzeVSoWYmBiL46tWrYKHh4fp3IULF/Doo49i1KhRaNWqFSRJwu7du/H++++jffv2GD9+vOlatVqN+Ph4zJkzB2q12rQA79y5czF+/HjTGm4AMG7cOCxduhQjR47EwoUL0bBhQyxbtgwnT57Ejh077F19IiIioipx+OSEyvDz80NwcDDeffddXLt2DXq9Hk2bNsWUKVMwa9YsizFws2fPRr169bB06VIsWrQIISEhmDFjBmbPnm2WTqlUIikpCdOnT8fkyZNRUFCATp06YfPmzdw1gYiIiJyOUwZuq1atwqpVq0yvAwICkJiYWKU8pkyZgilTplSYLjg4GKtXr65qEYmIiIhqndPsnEBERERE5WPgRkREROQiGLgRERERuQgGbkREREQugoEbERERkYtg4EZERETkIhi4EREREbkIBm5ERERELoKBGxEREZGLYOBGRERE5CIYuBERERG5CAZuRERERC6CgRsRERGRi2DgRkREROQiGLgRERERuQgGbkREREQugoEbERERkYtg4EZERETkIhi4EREREbkIBm5ERERELoKBGxEREZGLYOBGRERE5CIYuBERERG5CAZuRERERC6CgRsRERGRi2DgRkREROQiGLgRERERuQgGbkREREQugoEbERERkYtg4EZERETkIhi4EREREbkIpwvcPvnkE0iSBF9fX4tzhw4dQv/+/eHr6wt/f3/ExcXh7NmzVvNZsmQJIiIioFQq0bx5cyQkJECr1Vqku379OsaMGYOgoCB4e3ujR48eSEpKsnm9iIiIiGrKqQK31NRU/Pvf/0ZYWJjFuRMnTiAmJgbFxcX49ttv8emnn+LUqVPo2bMnbty4YZZ2/vz5mDp1KuLi4rB161ZMnDgRCxYswKRJk8zSaTQa9OvXD0lJSVi8eDG+//57BAcHIzY2Frt377ZrXYmIiIiqSu7oApT2zDPPoFevXlCr1Vi3bp3ZuVdeeQVKpRIbN26En58fACA6OhqtW7fGokWL8OabbwIAMjIyMG/ePEyYMAELFiwAAMTExECr1SI+Ph7Tpk1Du3btAAArVqxASkoK9u7dix49egAA+vTpg6ioKEyfPh0HDhyoraoTERERVchpWtzWrFmD3bt3Y9myZRbndDodNm7ciAcffNAUtAFA06ZN0adPH6xfv950bMuWLSgqKsLYsWPN8hg7diyEENiwYYPp2Pr169G2bVtT0AYAcrkco0ePxq+//orU1FQb1pCIiIioZpyixe369euYNm0aFi5ciMaNG1ucP3PmDAoLC9GxY0eLcx07dsT27dtRVFQElUqFlJQUAEBkZKRZutDQUAQFBZnOA0BKSgp69uxpNU8AOHr0KBo1amS1zBqNBhqNxvQ6JycHAKDVaq2OpaspY572yNvZuFNdAfeqrzvVFWB96zJ3qivA+toj7+pyisBt4sSJaNu2LZ599lmr5zMyMgAAarXa4pxarYYQAllZWQgNDUVGRgaUSiV8fHyspjXmZcy3rDxLv681b7zxBhISEiyOb9u2Dd7e3mVeV1Pbt2+3W97Oxp3qCrhXfd2prgDrW5e5U10B1tcWCgoKanS9wwO37777Dj/++CP++OMPSJJUbtryzpc+V9l0VU1b2syZM/HCCy+YXufk5CA8PBwDBw406861Fa1Wi+3bt2PAgAFQKBQ2z9+ZuFNdAfeqrzvVFWB96zJ3qivA+tqSsYeuuhwauOXl5WHSpEmYPHkywsLCkJ2dDQAoLi4GAGRnZ0OhUCAwMBCA9RawzMxMSJIEf39/AEBgYCCKiopQUFBg0fKVmZmJ6Oho0+vAwMAy8wSst/AZKZVKKJVKi+MKhcKuP9T2zt+ZuFNdAfeqrzvVFWB96zJ3qivA+toqz5pw6OSE9PR0XLt2De+88w4CAgJMX1999RXy8/MREBCAf/3rX2jZsiW8vLxw5MgRizyOHDmCVq1aQaVSAbg9tu3OtGlpaUhPT0eHDh1MxyIjI8vME4BZWiIiIiJHc2jgFhISguTkZIuv++67DyqVCsnJyZg3bx7kcjmGDBmCxMRE5Obmmq6/ePEikpOTERcXZzoWGxsLlUqFVatWmb3XqlWrIEkShg0bZjo2fPhwnDhxwmzZD51OhzVr1qBbt25W15MjIiIichSHdpWqVCrExMRYHF+1ahU8PDzMziUkJKBLly4YPHgwZsyYgaKiIrzyyisICgrCiy++aEqnVqsRHx+POXPmQK1WY+DAgTh48CDmzp2L8ePHm9ZwA4Bx48Zh6dKlGDlyJBYuXIiGDRt
  2869. "text/plain": [
  2870. "<Figure size 640x480 with 1 Axes>"
  2871. ]
  2872. },
  2873. "metadata": {},
  2874. "output_type": "display_data"
  2875. },
  2876. {
  2877. "name": "stdout",
  2878. "output_type": "stream",
  2879. "text": [
  2880. "f = 0.22367 ± 0.07911 A\n",
  2881. "fwhm = 0.00031 ± 0.07203 A\n",
  2882. "f = 0.22962 ± 0.00013 A\n",
  2883. "fwhm = 0.00583 ± 0.00038 A\n"
  2884. ]
  2885. }
  2886. ],
  2887. "source": [
  2888. "Brange=(0.22, 0.240)\n",
  2889. "\n",
  2890. "from Analyser.FitAnalyser import GaussianModel, GaussianWithOffsetModel\n",
  2891. "\n",
  2892. "data = Ncount_mean_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  2893. "data = data.dropna(dim='als_final_current')\n",
  2894. "data_std = Ncount_std_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  2895. "data_std = data_std.dropna(dim='als_final_current')\n",
  2896. "\n",
  2897. "fitModel = GaussianModel(prefix='A_') + GaussianWithOffsetModel(prefix='B_')\n",
  2898. "fitAnalyser = FitAnalyser(fitModel, fitDim=1)\n",
  2899. "# params = fitAnalyser.guess(data, x='als_final_current', guess_kwargs=dict(negative=True), dask=\"parallelized\")\n",
  2900. "params = fitAnalyser.fitModel.make_params()\n",
  2901. "params.add(name=\"A_amplitude\", value= -0.65, max=np.inf, min=-0.7, vary=True)\n",
  2902. "params.add(name=\"A_center\", value= 0.22321, max=np.inf, min=-np.inf, vary=True)\n",
  2903. "params.add(name=\"A_sigma\", value= 0.00005, max=np.inf, min= 0, vary=True)\n",
  2904. "params.add(name=\"B_amplitude\", value= -11, max=np.inf, min=-np.inf, vary=True)\n",
  2905. "params.add(name=\"B_center\", value= 0.2280, max=np.inf, min=-np.inf, vary=True)\n",
  2906. "params.add(name=\"B_sigma\", value= 0.0025, max=np.inf, min= 0, vary=True)\n",
  2907. "params.add(name=\"B_offset\", value= 2500, max=np.inf, min=-np.inf, vary=True)\n",
  2908. "\n",
  2909. "fitResult = fitAnalyser.fit(data, params, x='als_final_current', dask=\"parallelized\").load()\n",
  2910. "fitCurve = fitAnalyser.eval(fitResult, x=np.linspace(Brange[0], Brange[1], 500), dask=\"parallelized\").load()\n",
  2911. "\n",
  2912. "fig = plt.figure()\n",
  2913. "ax = fig.gca()\n",
  2914. "\n",
  2915. "data.plot.errorbar(ax=ax, yerr = data_std, fmt='ob')\n",
  2916. "fitCurve.plot.errorbar(ax=ax)\n",
  2917. "\n",
  2918. "plt.ylim([0, 4500])\n",
  2919. "plt.ylabel('NCount')\n",
  2920. "plt.xlabel('Z_offset current (A)')\n",
  2921. "plt.tight_layout()\n",
  2922. "plt.grid(visible=1)\n",
  2923. "plt.show()\n",
  2924. "\n",
  2925. "f_1 = fitAnalyser.get_fit_value(fitResult).A_center\n",
  2926. "df_1 = fitAnalyser.get_fit_std(fitResult).A_center\n",
  2927. "\n",
  2928. "print('f = %.5f \\u00B1 %.5f A'% tuple([np.abs(f_1),df_1]))\n",
  2929. "\n",
  2930. "s_1 = fitAnalyser.get_fit_value(fitResult).A_sigma\n",
  2931. "ds_1 = fitAnalyser.get_fit_std(fitResult).A_sigma\n",
  2932. "\n",
  2933. "fwhm_1 = 2.3548200*s_1\n",
  2934. "dfwhm_1 = 2.3548200*ds_1\n",
  2935. "\n",
  2936. "print('fwhm = %.5f \\u00B1 %.5f A'% tuple([np.abs(fwhm_1),dfwhm_1]))\n",
  2937. "\n",
  2938. "f_1 = fitAnalyser.get_fit_value(fitResult).B_center\n",
  2939. "df_1 = fitAnalyser.get_fit_std(fitResult).B_center\n",
  2940. "\n",
  2941. "print('f = %.5f \\u00B1 %.5f A'% tuple([np.abs(f_1),df_1]))\n",
  2942. "\n",
  2943. "s_1 = fitAnalyser.get_fit_value(fitResult).B_sigma\n",
  2944. "ds_1 = fitAnalyser.get_fit_std(fitResult).B_sigma\n",
  2945. "\n",
  2946. "fwhm_1 = 2.3548200*s_1\n",
  2947. "dfwhm_1 = 2.3548200*ds_1\n",
  2948. "\n",
  2949. "print('fwhm = %.5f \\u00B1 %.5f A'% tuple([np.abs(fwhm_1),dfwhm_1]))"
  2950. ]
  2951. },
  2952. {
  2953. "cell_type": "code",
  2954. "execution_count": 56,
  2955. "metadata": {},
  2956. "outputs": [
  2957. {
  2958. "data": {
  2959. "image/png": "iVBORw0KGgoAAAANSUhEUgAAAm4AAAHPCAYAAADqAFbFAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAACBqElEQVR4nO3deVxU5f4H8M8ZGGZYxQHZFHBBxQXQyIXK1FQi01TSX2aaYlg3zSW7mQuWdHPpXlvM9LaLpWVpLmluiEveXNNMcFdcUWSXTYYZeH5/IJMjoOxnhvm8X6956TznOc98vxyFL8855zmSEEKAiIiIiEyeQu4AiIiIiKhyWLgRERERmQkWbkRERERmgoUbERERkZlg4UZERERkJli4EREREZkJFm5EREREZoKFGxEREZGZYOFGREREZCZMrnD76quvIEkSHBwcjNrHjBkDSZLKvPz9/csdZ/HixfD394dKpUKLFi0QHR0NnU5Xpl9KSgrGjBkDV1dX2NnZISQkBHFxcXWSGxEREVFNWMsdwN2SkpLwz3/+E15eXrh161aZ7ba2tti5c2eZtnvNnTsXs2fPxvTp0xEaGorDhw8jKioKSUlJ+OKLLwz9tFot+vTpg6ysLCxatAhubm5YsmQJwsLCsGPHDvTs2bP2kyQiIiKqJsmUnlU6cOBASJIEjUaDNWvWIDc317BtzJgxZdrKk56ejmbNmuHFF1/E559/bmifN28eoqKikJCQgPbt2wMAli5digkTJmDfvn0ICQkBAOj1egQFBcHBwQEHDx6sgyyJiIiIqsdkTpWuWLECe/bswdKlS2s0ztatW1FQUICIiAij9oiICAghsH79ekPbunXr0LZtW0PRBgDW1tYYOXIkDh06hKSkpBrFQkRERFSbTOJUaUpKCqZMmYIFCxagWbNmFfa7ffs2PDw8kJqaCk9PTwwePBjvvvsuNBqNoU9CQgIAICAgwGhfT09PuLq6GraX9u3Ro0eZzwkMDAQAnDhxAk2bNi03Fq1WC61Wa3hfXFyMjIwMuLi4QJKkSmRNRERElkYIgZycHHh5eUGhqPr8mUkUbuPHj0fbtm3x6quvVtgnKCgIQUFB6NixIwBgz549+OijjxAXF4fDhw8bbmZIT0+HSqWCvb19mTE0Gg3S09MN79PT042Kvrv7lW6vyPz58xEdHV25BImIiIjucvXq1ftOVlVE9sLt559/xsaNG/Hnn3/ed6bq9ddfN3rfr18/dO7cGUOHDsWXX35ptP1+49y7rSp97zZjxgxMnTrV8P7WrVvw8fHBxYsX4ejoWOF+1aXT6bBr1y707t0bSqWy1sc3JZaUK2BZ+VpSrgDzbcgsKVeA+damnJwctGjRotq1gqyFW25uLiZMmICJEyfCy8sLWVlZAIDCwkIAQFZWFpRKZbmzZwAwZMgQ2Nvb48CBA4Y2FxcXFBQUID8/H3Z2dkb9MzIyEBwcbNS3vFm1jIwMACh3Nq6USqWCSqUq067RaODk5FThftWl0+lgZ2cHFxeXBv+fxpJyBSwrX0vKFWC+DZkl5Qow39pUOl51L6uS9eaEtLQ03Lx5Ex988AEaN25seP3www/Iy8tD48aN8cILL9x3DCGE0Tni0mvb4uPjjfolJycjLS3NcKq1tO+9/e7e9+6+RERERHKTdcbNw8MDu3btKtO+YMEC7NmzB1u2bIGrq2uF+69Zswb5+fno3r27oS0sLAxqtRoxMTHo1q2boT0mJgaSJGHw4MGGtiFDhmD8+PE4ePCgoa9er8eKFSvQrVs3eHl51UKWRERERLVD1sJNrVajV69eZdpjYmJgZWVl2Hb58mWMGDECw4cPh5+fHyRJwp49e/Dxxx+jQ4cOiIyMNOyr0WgQFRWF2bNnQ6PRGBbgnTNnDiIjIw1ruAHA2LFjsWTJEgwbNgwLFiyAm5sbli5dijNnzmDHjh11nT4RERFRlch+c0JlODk5wd3dHR9++CFu3ryJoqIi+Pr6YtKkSZg5c2aZa+BmzZoFR0dHLFmyBAsXLoSHhwemT5+OWbNmGfVTqVSIi4vDtGnTMHHiROTn56NTp07YsmULn5pAREREJsckC7eYmBjExMQY3jdu3Bhr166t0hiTJk3CpEmTHtjP3d0dy5cvr2qIRERERPXOZJ6cQERERET3x8KNiIiIyEywcCMiIiIyEyzciIiIiMwECzciIiIiM8HCjYiIiMhMsHAjIiIiMhMs3IiIiIjMBAs3IiIiIjPBwo2IiIjITLBwIyIiIjITLNyIiIiIzAQLNyIiIiIzwcKNiIiIyEywcCMiIiIyEyzciIiIiMwECzciIiIiM8HCjYiIiMhMsHAjIiIiMhMs3IiIiIjMBAs3IiIiIjPBwo2IiIjITLBwIyIiIjITLNyIiIiIzAQLNyIiIiIzwcKNiIiIyEywcCMiIiIyEyzciIiIiMwECzciIiIiM8HCjYiIiMhMsHAjIiIiMhMmV7h99dVXkCQJDg4OZbYdPXoUffv2hYODA5ydnREeHo7ExMRyx1m8eDH8/f2hUqnQokULREdHQ6fTlemXkpKCMWPGwNXVFXZ2dggJCUFcXFyt50VERERUUyZVuCUlJeGf//wnvLy8ymw7ffo0evXqhcLCQvz000/45ptvcPbsWfTo0QOpqalGfefOnYvJkycjPDwc27Ztw/jx4zFv3jxMmDDBqJ9Wq0WfPn0QFxeHRYsWYcOGDXB3d0dYWBj27NlTp7kSERERVZW13AHc7R//+Acef/xxaDQarFmzxmjb22+/DZVKhU2bNsHJyQkAEBwcjNatW2PhwoV4//33AQDp6el47733MG7cOMybNw8A0KtXL+h0OkRFRWHKlClo3749AODrr79GQkIC9u3bh5CQEABA7969ERQUhGnTpuHgwYP1lToRERHRA5nMjNuKFSuwZ88eLF26tMw2vV6PTZs24dlnnzUUbQDg6+uL3r17Y926dYa2rVu3oqCgABEREUZjREREQAiB9evXG9rWrVuHtm3bGoo2ALC2tsbIkSNx6NAhJCUl1WKGRERERDVjEjNuKSkpmDJlChYsWIBmzZqV2X7hwgXcvn0bgYGBZbYFBgYiNjYWBQUFUKvVSEhIAAAEBAQY9fP09ISrq6thOwAkJCSgR48e5Y4JACdOnEDTpk3LjVmr1UKr1RreZ2dnAwB0Ol2519LVVOmYdTG2qbGkXAHLyteScgWYb0NmSbkCzLcuxq4ukyjcxo8fj7Zt2+LVV18td3t6ejoAQKPRlNmm0WgghEBmZiY8PT2Rnp4OlUoFe3v7cvuWjlU6bkVj3v255Zk/fz6io6PLtG/fvh12dnYV7ldTsbGxdTa2qbGkXAHLyteScgWYb0NmSbkCzLc25Ofn12h/2Qu3n3/+GRs3bsSff/4JSZLu2/d+2+/eVtl+Ve17txkzZmDq1KmG99nZ2fD29kZoaKjR6dzaotPpEBsbi379+kGpVNb6+KbEknIFLCtfS8oVYL4NmSXlCjDf2lR6hq66ZC3ccnNzMWHCBEycOBFeXl7IysoCABQWFgIAsrKyoFQq4eLiAqD8GbCMjAxIkgRnZ2cAgIuLCwoKCpCfn19m5isjIwPBwcGG9y4uLhWOCZQ/w1dKpVJBpVKVaVcqlXX6j7quxzcllpQrYFn5WlKuAPNtyCwpV4D51taYNSHrzQlpaWm4efMmPvjgAzRu3Njw+uGHH5CXl4fGjRvjhRdeQKtWrWBra4v4+PgyY8THx8PPzw9qtRrA39e23ds3OTkZaWlp6Nixo6EtICCgwjEBGPUlIiIikpushZuHhwd27dpV5vXkk09CrVZj165deO+992BtbY2BAwdi7dq1yMnJMex/5coV7Nq1C+Hh4Ya2sLAwqNVqxMTEGH1WTEwMJEnC4MGDDW1DhgzB6dOnjZb90Ov1WLFiBbp161buenJEREREcpH1VKlarUavXr3KtMfExMDKyspoW3R0NLp06YIBAwZg+vTpKCgowNtvvw1XV1e88cYbhn4ajQZRUVGYPXs2NBoNQkNDcfjwYcyZMweRkZGGNdwAYOzYsViyZAmGDRuGBQsWwM3NDUuXLsWZM2e
  2960. "text/plain": [
  2961. "<Figure size 640x480 with 1 Axes>"
  2962. ]
  2963. },
  2964. "metadata": {},
  2965. "output_type": "display_data"
  2966. },
  2967. {
  2968. "name": "stdout",
  2969. "output_type": "stream",
  2970. "text": [
  2971. "f = 0.21004 ± 0.00012 A\n",
  2972. "fwhm = 0.00118 ± 0.00025 A\n"
  2973. ]
  2974. }
  2975. ],
  2976. "source": [
  2977. "Brange=(0.208, 0.212)\n",
  2978. "\n",
  2979. "data = Ncount_mean_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  2980. "data = data.dropna(dim='als_final_current')\n",
  2981. "data_std = Ncount_std_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  2982. "data_std = data_std.dropna(dim='als_final_current')\n",
  2983. "\n",
  2984. "fitAnalyser = FitAnalyser(\"Gaussian With Offset\", fitDim=1)\n",
  2985. "params = fitAnalyser.guess(data, x='als_final_current', guess_kwargs=dict(negative=True), dask=\"parallelized\")\n",
  2986. "fitResult = fitAnalyser.fit(data, params, x='als_final_current', dask=\"parallelized\").load()\n",
  2987. "fitCurve = fitAnalyser.eval(fitResult, x=np.linspace(Brange[0], Brange[1], 500), dask=\"parallelized\").load()\n",
  2988. "\n",
  2989. "fig = plt.figure()\n",
  2990. "ax = fig.gca()\n",
  2991. "\n",
  2992. "data.plot.errorbar(ax=ax, yerr = data_std, fmt='ob')\n",
  2993. "fitCurve.plot.errorbar(ax=ax)\n",
  2994. "\n",
  2995. "plt.ylim([0, 4500])\n",
  2996. "plt.ylabel('NCount')\n",
  2997. "plt.xlabel('Z_offset current (A)')\n",
  2998. "plt.tight_layout()\n",
  2999. "plt.grid(visible=1)\n",
  3000. "plt.show()\n",
  3001. "\n",
  3002. "f_1 = fitAnalyser.get_fit_value(fitResult).center\n",
  3003. "df_1 = fitAnalyser.get_fit_std(fitResult).center\n",
  3004. "\n",
  3005. "print('f = %.5f \\u00B1 %.5f A'% tuple([np.abs(f_1),df_1]))\n",
  3006. "\n",
  3007. "s_1 = fitAnalyser.get_fit_value(fitResult).sigma\n",
  3008. "ds_1 = fitAnalyser.get_fit_std(fitResult).sigma\n",
  3009. "\n",
  3010. "fwhm_1 = 2.3548200*s_1\n",
  3011. "dfwhm_1 = 2.3548200*ds_1\n",
  3012. "\n",
  3013. "print('fwhm = %.5f \\u00B1 %.5f A'% tuple([np.abs(fwhm_1),dfwhm_1]))"
  3014. ]
  3015. },
  3016. {
  3017. "cell_type": "code",
  3018. "execution_count": 57,
  3019. "metadata": {},
  3020. "outputs": [
  3021. {
  3022. "data": {
  3023. "image/png": "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
  3024. "text/plain": [
  3025. "<Figure size 640x480 with 1 Axes>"
  3026. ]
  3027. },
  3028. "metadata": {},
  3029. "output_type": "display_data"
  3030. },
  3031. {
  3032. "name": "stdout",
  3033. "output_type": "stream",
  3034. "text": [
  3035. "f = 0.18586 ± 0.00021 A\n",
  3036. "fwhm = 0.00085 ± 0.00025 A\n"
  3037. ]
  3038. }
  3039. ],
  3040. "source": [
  3041. "Brange=(0.183, 0.189)\n",
  3042. "\n",
  3043. "data = Ncount_mean_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  3044. "data = data.dropna(dim='als_final_current')\n",
  3045. "data_std = Ncount_std_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  3046. "data_std = data_std.dropna(dim='als_final_current')\n",
  3047. "\n",
  3048. "fitAnalyser = FitAnalyser(\"Gaussian With Offset\", fitDim=1)\n",
  3049. "# params = fitAnalyser.guess(data, x='als_final_current', guess_kwargs=dict(negative=True), dask=\"parallelized\")\n",
  3050. "params = fitAnalyser.fitModel.make_params()\n",
  3051. "params.add(name=\"amplitude\", value= -1500, max=np.inf, min=-np.inf, vary=True)\n",
  3052. "params.add(name=\"center\", value= 0.1858, max=np.inf, min=-np.inf, vary=True)\n",
  3053. "params.add(name=\"sigma\", value= 0.001, max=np.inf, min= 0, vary=True)\n",
  3054. "params.add(name=\"offset\", value= 3700, max=np.inf, min=-np.inf, vary=True)\n",
  3055. "fitResult = fitAnalyser.fit(data, params, x='als_final_current', dask=\"parallelized\").load()\n",
  3056. "fitCurve = fitAnalyser.eval(fitResult, x=np.linspace(Brange[0], Brange[1], 500), dask=\"parallelized\").load()\n",
  3057. "\n",
  3058. "fig = plt.figure()\n",
  3059. "ax = fig.gca()\n",
  3060. "\n",
  3061. "data.plot.errorbar(ax=ax, yerr = data_std, fmt='ob')\n",
  3062. "fitCurve.plot.errorbar(ax=ax)\n",
  3063. "\n",
  3064. "plt.ylim([0, 4500])\n",
  3065. "plt.ylabel('NCount')\n",
  3066. "plt.xlabel('Z_offset current (A)')\n",
  3067. "plt.tight_layout()\n",
  3068. "plt.grid(visible=1)\n",
  3069. "plt.show()\n",
  3070. "\n",
  3071. "f_1 = fitAnalyser.get_fit_value(fitResult).center\n",
  3072. "df_1 = fitAnalyser.get_fit_std(fitResult).center\n",
  3073. "\n",
  3074. "print('f = %.5f \\u00B1 %.5f A'% tuple([np.abs(f_1),df_1]))\n",
  3075. "\n",
  3076. "s_1 = fitAnalyser.get_fit_value(fitResult).sigma\n",
  3077. "ds_1 = fitAnalyser.get_fit_std(fitResult).sigma\n",
  3078. "\n",
  3079. "fwhm_1 = 2.3548200*s_1\n",
  3080. "dfwhm_1 = 2.3548200*ds_1\n",
  3081. "\n",
  3082. "print('fwhm = %.5f \\u00B1 %.5f A'% tuple([np.abs(fwhm_1),dfwhm_1]))"
  3083. ]
  3084. },
  3085. {
  3086. "cell_type": "code",
  3087. "execution_count": 58,
  3088. "metadata": {},
  3089. "outputs": [
  3090. {
  3091. "data": {
  3092. "image/png": "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
  3093. "text/plain": [
  3094. "<Figure size 640x480 with 1 Axes>"
  3095. ]
  3096. },
  3097. "metadata": {},
  3098. "output_type": "display_data"
  3099. },
  3100. {
  3101. "name": "stdout",
  3102. "output_type": "stream",
  3103. "text": [
  3104. "f = 0.17055 ± 0.00175 A\n",
  3105. "fwhm = 0.00069 ± 0.00203 A\n"
  3106. ]
  3107. }
  3108. ],
  3109. "source": [
  3110. "Brange=(0.167, 0.173)\n",
  3111. "\n",
  3112. "data = Ncount_mean_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  3113. "data = data.dropna(dim='als_final_current')\n",
  3114. "data_std = Ncount_std_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  3115. "data_std = data_std.dropna(dim='als_final_current')\n",
  3116. "\n",
  3117. "fitAnalyser = FitAnalyser(\"Gaussian With Offset\", fitDim=1)\n",
  3118. "# params = fitAnalyser.guess(data, x='als_final_current', guess_kwargs=dict(negative=True), dask=\"parallelized\")\n",
  3119. "params = fitAnalyser.fitModel.make_params()\n",
  3120. "params.add(name=\"amplitude\", value= -10, max=np.inf, min=-np.inf, vary=True)\n",
  3121. "params.add(name=\"center\", value= 0.1708, max=np.inf, min=-np.inf, vary=True)\n",
  3122. "params.add(name=\"sigma\", value= 0.001, max=np.inf, min= 0, vary=True)\n",
  3123. "params.add(name=\"offset\", value= 3700, max=np.inf, min=-np.inf, vary=True)\n",
  3124. "fitResult = fitAnalyser.fit(data, params, x='als_final_current', dask=\"parallelized\").load()\n",
  3125. "fitCurve = fitAnalyser.eval(fitResult, x=np.linspace(Brange[0], Brange[1], 500), dask=\"parallelized\").load()\n",
  3126. "\n",
  3127. "fig = plt.figure()\n",
  3128. "ax = fig.gca()\n",
  3129. "\n",
  3130. "data.plot.errorbar(ax=ax, yerr = data_std, fmt='ob')\n",
  3131. "fitCurve.plot.errorbar(ax=ax)\n",
  3132. "\n",
  3133. "plt.ylim([0, 4500])\n",
  3134. "plt.ylabel('NCount')\n",
  3135. "plt.xlabel('Z_offset current (A)')\n",
  3136. "plt.tight_layout()\n",
  3137. "plt.grid(visible=1)\n",
  3138. "plt.show()\n",
  3139. "\n",
  3140. "f_1 = fitAnalyser.get_fit_value(fitResult).center\n",
  3141. "df_1 = fitAnalyser.get_fit_std(fitResult).center\n",
  3142. "\n",
  3143. "print('f = %.5f \\u00B1 %.5f A'% tuple([np.abs(f_1),df_1]))\n",
  3144. "\n",
  3145. "s_1 = fitAnalyser.get_fit_value(fitResult).sigma\n",
  3146. "ds_1 = fitAnalyser.get_fit_std(fitResult).sigma\n",
  3147. "\n",
  3148. "fwhm_1 = 2.3548200*s_1\n",
  3149. "dfwhm_1 = 2.3548200*ds_1\n",
  3150. "\n",
  3151. "print('fwhm = %.5f \\u00B1 %.5f A'% tuple([np.abs(fwhm_1),dfwhm_1]))"
  3152. ]
  3153. },
  3154. {
  3155. "cell_type": "code",
  3156. "execution_count": 59,
  3157. "metadata": {},
  3158. "outputs": [
  3159. {
  3160. "data": {
  3161. "image/png": "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
  3162. "text/plain": [
  3163. "<Figure size 640x480 with 1 Axes>"
  3164. ]
  3165. },
  3166. "metadata": {},
  3167. "output_type": "display_data"
  3168. }
  3169. ],
  3170. "source": [
  3171. "Brange=(0.07, 0.095)\n",
  3172. "\n",
  3173. "from Analyser.FitAnalyser import GaussianModel, GaussianWithOffsetModel\n",
  3174. "\n",
  3175. "data = Ncount_mean_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  3176. "data = data.dropna(dim='als_final_current')\n",
  3177. "data_std = Ncount_std_total.where(Brange[0]<Ncount_mean_total.als_final_current).where(Ncount_mean_total.als_final_current<Brange[1])\n",
  3178. "data_std = data_std.dropna(dim='als_final_current')\n",
  3179. "\n",
  3180. "# fitModel = GaussianModel(prefix='A_') + GaussianWithOffsetModel(prefix='B_')\n",
  3181. "# fitAnalyser = FitAnalyser(fitModel, fitDim=1)\n",
  3182. "# # fitAnalyser = FitAnalyser(\"Gaussian With Offset\", fitDim=1)\n",
  3183. "# # params = fitAnalyser.guess(data, x='als_final_current', guess_kwargs=dict(negative=True), dask=\"parallelized\")\n",
  3184. "# params = fitAnalyser.fitModel.make_params()\n",
  3185. "# params.add(name=\"A_amplitude\", value= -1, max=np.inf, min=-0.7, vary=True)\n",
  3186. "# params.add(name=\"A_center\", value= 0.09, max=np.inf, min=-np.inf, vary=True)\n",
  3187. "# params.add(name=\"A_sigma\", value= 0.0005, max=np.inf, min= 0, vary=True)\n",
  3188. "# params.add(name=\"B_amplitude\", value= -11, max=np.inf, min=-np.inf, vary=True)\n",
  3189. "# params.add(name=\"B_center\", value= 0.085, max=np.inf, min=-np.inf, vary=True)\n",
  3190. "# params.add(name=\"B_sigma\", value= 0.01, max=np.inf, min= 0, vary=True)\n",
  3191. "# params.add(name=\"B_offset\", value= 3500, max=np.inf, min=-np.inf, vary=True)\n",
  3192. "\n",
  3193. "# fitResult = fitAnalyser.fit(data, params, x='als_final_current', dask=\"parallelized\").load()\n",
  3194. "# fitCurve = fitAnalyser.eval(fitResult, x=np.linspace(Brange[0], Brange[1], 500), dask=\"parallelized\").load()\n",
  3195. "\n",
  3196. "fig = plt.figure()\n",
  3197. "ax = fig.gca()\n",
  3198. "\n",
  3199. "data.plot.errorbar(ax=ax, yerr = data_std, fmt='ob')\n",
  3200. "# fitCurve.plot.errorbar(ax=ax)\n",
  3201. "\n",
  3202. "plt.ylim([0, 4500])\n",
  3203. "plt.ylabel('NCount')\n",
  3204. "plt.xlabel('Z_offset current (A)')\n",
  3205. "plt.tight_layout()\n",
  3206. "plt.grid(visible=1)\n",
  3207. "plt.show()\n",
  3208. "\n",
  3209. "# f_1 = fitAnalyser.get_fit_value(fitResult).A_center\n",
  3210. "# df_1 = fitAnalyser.get_fit_std(fitResult).A_center\n",
  3211. "\n",
  3212. "# print('f = %.5f \\u00B1 %.5f A'% tuple([np.abs(f_1),df_1]))\n",
  3213. "\n",
  3214. "# s_1 = fitAnalyser.get_fit_value(fitResult).A_sigma\n",
  3215. "# ds_1 = fitAnalyser.get_fit_std(fitResult).A_sigma\n",
  3216. "\n",
  3217. "# fwhm_1 = 2.3548200*s_1\n",
  3218. "# dfwhm_1 = 2.3548200*ds_1\n",
  3219. "\n",
  3220. "# print('fwhm = %.5f \\u00B1 %.5f A'% tuple([np.abs(fwhm_1),dfwhm_1]))\n",
  3221. "\n",
  3222. "# f_1 = fitAnalyser.get_fit_value(fitResult).B_center\n",
  3223. "# df_1 = fitAnalyser.get_fit_std(fitResult).B_center\n",
  3224. "\n",
  3225. "# print('f = %.5f \\u00B1 %.5f A'% tuple([np.abs(f_1),df_1]))\n",
  3226. "\n",
  3227. "# s_1 = fitAnalyser.get_fit_value(fitResult).B_sigma\n",
  3228. "# ds_1 = fitAnalyser.get_fit_std(fitResult).B_sigma\n",
  3229. "\n",
  3230. "# fwhm_1 = 2.3548200*s_1\n",
  3231. "# dfwhm_1 = 2.3548200*ds_1\n",
  3232. "\n",
  3233. "# print('fwhm = %.5f \\u00B1 %.5f A'% tuple([np.abs(fwhm_1),dfwhm_1]))"
  3234. ]
  3235. },
  3236. {
  3237. "cell_type": "code",
  3238. "execution_count": 60,
  3239. "metadata": {},
  3240. "outputs": [
  3241. {
  3242. "data": {
  3243. "text/html": [
  3244. "<div><svg style=\"position: absolute; width: 0; height: 0; overflow: hidden\">\n",
  3245. "<defs>\n",
  3246. "<symbol id=\"icon-database\" viewBox=\"0 0 32 32\">\n",
  3247. "<path d=\"M16 0c-8.837 0-16 2.239-16 5v4c0 2.761 7.163 5 16 5s16-2.239 16-5v-4c0-2.761-7.163-5-16-5z\"></path>\n",
  3248. "<path d=\"M16 17c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
  3249. "<path d=\"M16 26c-8.837 0-16-2.239-16-5v6c0 2.761 7.163 5 16 5s16-2.239 16-5v-6c0 2.761-7.163 5-16 5z\"></path>\n",
  3250. "</symbol>\n",
  3251. "<symbol id=\"icon-file-text2\" viewBox=\"0 0 32 32\">\n",
  3252. "<path d=\"M28.681 7.159c-0.694-0.947-1.662-2.053-2.724-3.116s-2.169-2.030-3.116-2.724c-1.612-1.182-2.393-1.319-2.841-1.319h-15.5c-1.378 0-2.5 1.121-2.5 2.5v27c0 1.378 1.122 2.5 2.5 2.5h23c1.378 0 2.5-1.122 2.5-2.5v-19.5c0-0.448-0.137-1.23-1.319-2.841zM24.543 5.457c0.959 0.959 1.712 1.825 2.268 2.543h-4.811v-4.811c0.718 0.556 1.584 1.309 2.543 2.268zM28 29.5c0 0.271-0.229 0.5-0.5 0.5h-23c-0.271 0-0.5-0.229-0.5-0.5v-27c0-0.271 0.229-0.5 0.5-0.5 0 0 15.499-0 15.5 0v7c0 0.552 0.448 1 1 1h7v19.5z\"></path>\n",
  3253. "<path d=\"M23 26h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
  3254. "<path d=\"M23 22h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
  3255. "<path d=\"M23 18h-14c-0.552 0-1-0.448-1-1s0.448-1 1-1h14c0.552 0 1 0.448 1 1s-0.448 1-1 1z\"></path>\n",
  3256. "</symbol>\n",
  3257. "</defs>\n",
  3258. "</svg>\n",
  3259. "<style>/* CSS stylesheet for displaying xarray objects in jupyterlab.\n",
  3260. " *\n",
  3261. " */\n",
  3262. "\n",
  3263. ":root {\n",
  3264. " --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
  3265. " --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));\n",
  3266. " --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));\n",
  3267. " --xr-border-color: var(--jp-border-color2, #e0e0e0);\n",
  3268. " --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);\n",
  3269. " --xr-background-color: var(--jp-layout-color0, white);\n",
  3270. " --xr-background-color-row-even: var(--jp-layout-color1, white);\n",
  3271. " --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
  3272. "}\n",
  3273. "\n",
  3274. "html[theme=dark],\n",
  3275. "body[data-theme=dark],\n",
  3276. "body.vscode-dark {\n",
  3277. " --xr-font-color0: rgba(255, 255, 255, 1);\n",
  3278. " --xr-font-color2: rgba(255, 255, 255, 0.54);\n",
  3279. " --xr-font-color3: rgba(255, 255, 255, 0.38);\n",
  3280. " --xr-border-color: #1F1F1F;\n",
  3281. " --xr-disabled-color: #515151;\n",
  3282. " --xr-background-color: #111111;\n",
  3283. " --xr-background-color-row-even: #111111;\n",
  3284. " --xr-background-color-row-odd: #313131;\n",
  3285. "}\n",
  3286. "\n",
  3287. ".xr-wrap {\n",
  3288. " display: block !important;\n",
  3289. " min-width: 300px;\n",
  3290. " max-width: 700px;\n",
  3291. "}\n",
  3292. "\n",
  3293. ".xr-text-repr-fallback {\n",
  3294. " /* fallback to plain text repr when CSS is not injected (untrusted notebook) */\n",
  3295. " display: none;\n",
  3296. "}\n",
  3297. "\n",
  3298. ".xr-header {\n",
  3299. " padding-top: 6px;\n",
  3300. " padding-bottom: 6px;\n",
  3301. " margin-bottom: 4px;\n",
  3302. " border-bottom: solid 1px var(--xr-border-color);\n",
  3303. "}\n",
  3304. "\n",
  3305. ".xr-header > div,\n",
  3306. ".xr-header > ul {\n",
  3307. " display: inline;\n",
  3308. " margin-top: 0;\n",
  3309. " margin-bottom: 0;\n",
  3310. "}\n",
  3311. "\n",
  3312. ".xr-obj-type,\n",
  3313. ".xr-array-name {\n",
  3314. " margin-left: 2px;\n",
  3315. " margin-right: 10px;\n",
  3316. "}\n",
  3317. "\n",
  3318. ".xr-obj-type {\n",
  3319. " color: var(--xr-font-color2);\n",
  3320. "}\n",
  3321. "\n",
  3322. ".xr-sections {\n",
  3323. " padding-left: 0 !important;\n",
  3324. " display: grid;\n",
  3325. " grid-template-columns: 150px auto auto 1fr 20px 20px;\n",
  3326. "}\n",
  3327. "\n",
  3328. ".xr-section-item {\n",
  3329. " display: contents;\n",
  3330. "}\n",
  3331. "\n",
  3332. ".xr-section-item input {\n",
  3333. " display: none;\n",
  3334. "}\n",
  3335. "\n",
  3336. ".xr-section-item input + label {\n",
  3337. " color: var(--xr-disabled-color);\n",
  3338. "}\n",
  3339. "\n",
  3340. ".xr-section-item input:enabled + label {\n",
  3341. " cursor: pointer;\n",
  3342. " color: var(--xr-font-color2);\n",
  3343. "}\n",
  3344. "\n",
  3345. ".xr-section-item input:enabled + label:hover {\n",
  3346. " color: var(--xr-font-color0);\n",
  3347. "}\n",
  3348. "\n",
  3349. ".xr-section-summary {\n",
  3350. " grid-column: 1;\n",
  3351. " color: var(--xr-font-color2);\n",
  3352. " font-weight: 500;\n",
  3353. "}\n",
  3354. "\n",
  3355. ".xr-section-summary > span {\n",
  3356. " display: inline-block;\n",
  3357. " padding-left: 0.5em;\n",
  3358. "}\n",
  3359. "\n",
  3360. ".xr-section-summary-in:disabled + label {\n",
  3361. " color: var(--xr-font-color2);\n",
  3362. "}\n",
  3363. "\n",
  3364. ".xr-section-summary-in + label:before {\n",
  3365. " display: inline-block;\n",
  3366. " content: 'â–º';\n",
  3367. " font-size: 11px;\n",
  3368. " width: 15px;\n",
  3369. " text-align: center;\n",
  3370. "}\n",
  3371. "\n",
  3372. ".xr-section-summary-in:disabled + label:before {\n",
  3373. " color: var(--xr-disabled-color);\n",
  3374. "}\n",
  3375. "\n",
  3376. ".xr-section-summary-in:checked + label:before {\n",
  3377. " content: 'â–¼';\n",
  3378. "}\n",
  3379. "\n",
  3380. ".xr-section-summary-in:checked + label > span {\n",
  3381. " display: none;\n",
  3382. "}\n",
  3383. "\n",
  3384. ".xr-section-summary,\n",
  3385. ".xr-section-inline-details {\n",
  3386. " padding-top: 4px;\n",
  3387. " padding-bottom: 4px;\n",
  3388. "}\n",
  3389. "\n",
  3390. ".xr-section-inline-details {\n",
  3391. " grid-column: 2 / -1;\n",
  3392. "}\n",
  3393. "\n",
  3394. ".xr-section-details {\n",
  3395. " display: none;\n",
  3396. " grid-column: 1 / -1;\n",
  3397. " margin-bottom: 5px;\n",
  3398. "}\n",
  3399. "\n",
  3400. ".xr-section-summary-in:checked ~ .xr-section-details {\n",
  3401. " display: contents;\n",
  3402. "}\n",
  3403. "\n",
  3404. ".xr-array-wrap {\n",
  3405. " grid-column: 1 / -1;\n",
  3406. " display: grid;\n",
  3407. " grid-template-columns: 20px auto;\n",
  3408. "}\n",
  3409. "\n",
  3410. ".xr-array-wrap > label {\n",
  3411. " grid-column: 1;\n",
  3412. " vertical-align: top;\n",
  3413. "}\n",
  3414. "\n",
  3415. ".xr-preview {\n",
  3416. " color: var(--xr-font-color3);\n",
  3417. "}\n",
  3418. "\n",
  3419. ".xr-array-preview,\n",
  3420. ".xr-array-data {\n",
  3421. " padding: 0 5px !important;\n",
  3422. " grid-column: 2;\n",
  3423. "}\n",
  3424. "\n",
  3425. ".xr-array-data,\n",
  3426. ".xr-array-in:checked ~ .xr-array-preview {\n",
  3427. " display: none;\n",
  3428. "}\n",
  3429. "\n",
  3430. ".xr-array-in:checked ~ .xr-array-data,\n",
  3431. ".xr-array-preview {\n",
  3432. " display: inline-block;\n",
  3433. "}\n",
  3434. "\n",
  3435. ".xr-dim-list {\n",
  3436. " display: inline-block !important;\n",
  3437. " list-style: none;\n",
  3438. " padding: 0 !important;\n",
  3439. " margin: 0;\n",
  3440. "}\n",
  3441. "\n",
  3442. ".xr-dim-list li {\n",
  3443. " display: inline-block;\n",
  3444. " padding: 0;\n",
  3445. " margin: 0;\n",
  3446. "}\n",
  3447. "\n",
  3448. ".xr-dim-list:before {\n",
  3449. " content: '(';\n",
  3450. "}\n",
  3451. "\n",
  3452. ".xr-dim-list:after {\n",
  3453. " content: ')';\n",
  3454. "}\n",
  3455. "\n",
  3456. ".xr-dim-list li:not(:last-child):after {\n",
  3457. " content: ',';\n",
  3458. " padding-right: 5px;\n",
  3459. "}\n",
  3460. "\n",
  3461. ".xr-has-index {\n",
  3462. " font-weight: bold;\n",
  3463. "}\n",
  3464. "\n",
  3465. ".xr-var-list,\n",
  3466. ".xr-var-item {\n",
  3467. " display: contents;\n",
  3468. "}\n",
  3469. "\n",
  3470. ".xr-var-item > div,\n",
  3471. ".xr-var-item label,\n",
  3472. ".xr-var-item > .xr-var-name span {\n",
  3473. " background-color: var(--xr-background-color-row-even);\n",
  3474. " margin-bottom: 0;\n",
  3475. "}\n",
  3476. "\n",
  3477. ".xr-var-item > .xr-var-name:hover span {\n",
  3478. " padding-right: 5px;\n",
  3479. "}\n",
  3480. "\n",
  3481. ".xr-var-list > li:nth-child(odd) > div,\n",
  3482. ".xr-var-list > li:nth-child(odd) > label,\n",
  3483. ".xr-var-list > li:nth-child(odd) > .xr-var-name span {\n",
  3484. " background-color: var(--xr-background-color-row-odd);\n",
  3485. "}\n",
  3486. "\n",
  3487. ".xr-var-name {\n",
  3488. " grid-column: 1;\n",
  3489. "}\n",
  3490. "\n",
  3491. ".xr-var-dims {\n",
  3492. " grid-column: 2;\n",
  3493. "}\n",
  3494. "\n",
  3495. ".xr-var-dtype {\n",
  3496. " grid-column: 3;\n",
  3497. " text-align: right;\n",
  3498. " color: var(--xr-font-color2);\n",
  3499. "}\n",
  3500. "\n",
  3501. ".xr-var-preview {\n",
  3502. " grid-column: 4;\n",
  3503. "}\n",
  3504. "\n",
  3505. ".xr-index-preview {\n",
  3506. " grid-column: 2 / 5;\n",
  3507. " color: var(--xr-font-color2);\n",
  3508. "}\n",
  3509. "\n",
  3510. ".xr-var-name,\n",
  3511. ".xr-var-dims,\n",
  3512. ".xr-var-dtype,\n",
  3513. ".xr-preview,\n",
  3514. ".xr-attrs dt {\n",
  3515. " white-space: nowrap;\n",
  3516. " overflow: hidden;\n",
  3517. " text-overflow: ellipsis;\n",
  3518. " padding-right: 10px;\n",
  3519. "}\n",
  3520. "\n",
  3521. ".xr-var-name:hover,\n",
  3522. ".xr-var-dims:hover,\n",
  3523. ".xr-var-dtype:hover,\n",
  3524. ".xr-attrs dt:hover {\n",
  3525. " overflow: visible;\n",
  3526. " width: auto;\n",
  3527. " z-index: 1;\n",
  3528. "}\n",
  3529. "\n",
  3530. ".xr-var-attrs,\n",
  3531. ".xr-var-data,\n",
  3532. ".xr-index-data {\n",
  3533. " display: none;\n",
  3534. " background-color: var(--xr-background-color) !important;\n",
  3535. " padding-bottom: 5px !important;\n",
  3536. "}\n",
  3537. "\n",
  3538. ".xr-var-attrs-in:checked ~ .xr-var-attrs,\n",
  3539. ".xr-var-data-in:checked ~ .xr-var-data,\n",
  3540. ".xr-index-data-in:checked ~ .xr-index-data {\n",
  3541. " display: block;\n",
  3542. "}\n",
  3543. "\n",
  3544. ".xr-var-data > table {\n",
  3545. " float: right;\n",
  3546. "}\n",
  3547. "\n",
  3548. ".xr-var-name span,\n",
  3549. ".xr-var-data,\n",
  3550. ".xr-index-name div,\n",
  3551. ".xr-index-data,\n",
  3552. ".xr-attrs {\n",
  3553. " padding-left: 25px !important;\n",
  3554. "}\n",
  3555. "\n",
  3556. ".xr-attrs,\n",
  3557. ".xr-var-attrs,\n",
  3558. ".xr-var-data,\n",
  3559. ".xr-index-data {\n",
  3560. " grid-column: 1 / -1;\n",
  3561. "}\n",
  3562. "\n",
  3563. "dl.xr-attrs {\n",
  3564. " padding: 0;\n",
  3565. " margin: 0;\n",
  3566. " display: grid;\n",
  3567. " grid-template-columns: 125px auto;\n",
  3568. "}\n",
  3569. "\n",
  3570. ".xr-attrs dt,\n",
  3571. ".xr-attrs dd {\n",
  3572. " padding: 0;\n",
  3573. " margin: 0;\n",
  3574. " float: left;\n",
  3575. " padding-right: 10px;\n",
  3576. " width: auto;\n",
  3577. "}\n",
  3578. "\n",
  3579. ".xr-attrs dt {\n",
  3580. " font-weight: normal;\n",
  3581. " grid-column: 1;\n",
  3582. "}\n",
  3583. "\n",
  3584. ".xr-attrs dt:hover span {\n",
  3585. " display: inline-block;\n",
  3586. " background: var(--xr-background-color);\n",
  3587. " padding-right: 10px;\n",
  3588. "}\n",
  3589. "\n",
  3590. ".xr-attrs dd {\n",
  3591. " grid-column: 2;\n",
  3592. " white-space: pre-wrap;\n",
  3593. " word-break: break-all;\n",
  3594. "}\n",
  3595. "\n",
  3596. ".xr-icon-database,\n",
  3597. ".xr-icon-file-text2,\n",
  3598. ".xr-no-icon {\n",
  3599. " display: inline-block;\n",
  3600. " vertical-align: middle;\n",
  3601. " width: 1em;\n",
  3602. " height: 1.5em !important;\n",
  3603. " stroke-width: 0;\n",
  3604. " stroke: currentColor;\n",
  3605. " fill: currentColor;\n",
  3606. "}\n",
  3607. "</style><pre class='xr-text-repr-fallback'>&lt;xarray.DataArray &#x27;OD&#x27; (als_final_current: 1)&gt;\n",
  3608. "array([332.40889692])\n",
  3609. "Coordinates:\n",
  3610. " * als_final_current (als_final_current) float64 0.0903</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.DataArray</div><div class='xr-array-name'>'OD'</div><ul class='xr-dim-list'><li><span class='xr-has-index'>als_final_current</span>: 1</li></ul></div><ul class='xr-sections'><li class='xr-section-item'><div class='xr-array-wrap'><input id='section-003831ed-ef8c-4353-a89a-07d86978ba42' class='xr-array-in' type='checkbox' checked><label for='section-003831ed-ef8c-4353-a89a-07d86978ba42' title='Show/hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-array-preview xr-preview'><span>332.4</span></div><div class='xr-array-data'><pre>array([332.40889692])</pre></div></div></li><li class='xr-section-item'><input id='section-4cc78a1f-a9a6-41c2-925f-7a400b6a7c67' class='xr-section-summary-in' type='checkbox' checked><label for='section-4cc78a1f-a9a6-41c2-925f-7a400b6a7c67' class='xr-section-summary' >Coordinates: <span>(1)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-var-name'><span class='xr-has-index'>als_final_current</span></div><div class='xr-var-dims'>(als_final_current)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>0.0903</div><input id='attrs-77640650-a651-4b7f-9a87-bfb5fff7b00a' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-77640650-a651-4b7f-9a87-bfb5fff7b00a' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-159832ff-7ba7-40e1-bdef-5e2129e28470' class='xr-var-data-in' type='checkbox'><label for='data-159832ff-7ba7-40e1-bdef-5e2129e28470' title='Show/Hide data repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-var-attrs'><dl class='xr-attrs'></dl></div><div class='xr-var-data'><pre>array([0.0903])</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-ab676435-7c40-4818-b13d-724fa314ba5f' class='xr-section-summary-in' type='checkbox' ><label for='section-ab676435-7c40-4818-b13d-724fa314ba5f' class='xr-section-summary' >Indexes: <span>(1)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'><li class='xr-var-item'><div class='xr-index-name'><div>als_final_current</div></div><div class='xr-index-preview'>PandasIndex</div><div></div><input id='index-84aad126-830b-4d0d-b08c-642b0b846989' class='xr-index-data-in' type='checkbox'/><label for='index-84aad126-830b-4d0d-b08c-642b0b846989' title='Show/Hide index repr'><svg class='icon xr-icon-database'><use xlink:href='#icon-database'></use></svg></label><div class='xr-index-data'><pre>PandasIndex(Float64Index([0.0903], dtype=&#x27;float64&#x27;, name=&#x27;als_final_current&#x27;))</pre></div></li></ul></div></li><li class='xr-section-item'><input id='section-733a1cca-031d-4106-9c7c-717e605f3e7c' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-733a1cca-031d-4106-9c7c-717e605f3e7c' class='xr-section-summary' title='Expand/collapse section'>Attributes: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><dl class='xr-attrs'></dl></div></li></ul></div></div>"
  3611. ],
  3612. "text/plain": [
  3613. "<xarray.DataArray 'OD' (als_final_current: 1)>\n",
  3614. "array([332.40889692])\n",
  3615. "Coordinates:\n",
  3616. " * als_final_current (als_final_current) float64 0.0903"
  3617. ]
  3618. },
  3619. "execution_count": 60,
  3620. "metadata": {},
  3621. "output_type": "execute_result"
  3622. }
  3623. ],
  3624. "source": [
  3625. "data.where(data==data.min(), drop='True')"
  3626. ]
  3627. },
  3628. {
  3629. "cell_type": "code",
  3630. "execution_count": 61,
  3631. "metadata": {},
  3632. "outputs": [],
  3633. "source": [
  3634. "Ncount_mean_total_origin = copy.deepcopy(Ncount_mean_total)\n",
  3635. "Ncount_mean_std_origin = copy.deepcopy(Ncount_std_total)"
  3636. ]
  3637. },
  3638. {
  3639. "cell_type": "code",
  3640. "execution_count": 62,
  3641. "metadata": {},
  3642. "outputs": [
  3643. {
  3644. "data": {
  3645. "text/plain": [
  3646. "<xarray.backends.zarr.ZarrStore at 0x29546678dd0>"
  3647. ]
  3648. },
  3649. "execution_count": 62,
  3650. "metadata": {},
  3651. "output_type": "execute_result"
  3652. }
  3653. ],
  3654. "source": [
  3655. "res = Ncount_mean_total_origin.to_dataset()\n",
  3656. "res = res.assign(std = Ncount_mean_std_origin)\n",
  3657. "res.to_zarr('./CompZ.zarr')"
  3658. ]
  3659. },
  3660. {
  3661. "cell_type": "code",
  3662. "execution_count": null,
  3663. "metadata": {},
  3664. "outputs": [],
  3665. "source": [
  3666. "Ncount_mean_total = copy.deepcopy(Ncount_mean_total_origin)\n",
  3667. "Ncount_mean_std = copy.deepcopy(Ncount_mean_std_origin)\n",
  3668. "\n",
  3669. "B = np.sqrt((Ncount_mean_total['als_final_current'] * 10.6021 + 0.3254)**2 + (0.4333**2 - 0.3254**2))\n",
  3670. "Ncount_mean_total['als_final_current'] = B\n",
  3671. "Ncount_std_total['als_final_current'] = B"
  3672. ]
  3673. },
  3674. {
  3675. "cell_type": "code",
  3676. "execution_count": null,
  3677. "metadata": {},
  3678. "outputs": [],
  3679. "source": [
  3680. "import matplotlib.patches as patches\n",
  3681. "\n",
  3682. "B0 = [1.2950, 1.3060, 2.1740, 2.3360, 2.5910, 2.7400, 2.8030, 2.7800, 3.3570, 4.9490, 5.0830]# , 7.1720, 7.2040, 7.1340]\n",
  3683. "B0_width = [0.0090, 0.0100, 0.0005, 0.0005, 0.0010, 0.0005, 0.0210, 0.0150, 0.0430, 0.0005, 0.1300]# , 0.0240, 0.0005, 0.0360]\n",
  3684. "\n",
  3685. "fig = plt.figure(figsize=(24,6))\n",
  3686. "ax = fig.gca()\n",
  3687. "Ncount_mean_total.plot.errorbar(ax=ax, yerr = Ncount_std_total, fmt='ob')\n",
  3688. "\n",
  3689. "for i in range(len(B0)):\n",
  3690. " rect = patches.Rectangle((B0[i] - B0_width[i], 000), B0_width[i]*2, 4000, linewidth=1, edgecolor='r', facecolor='r', alpha=0.4)\n",
  3691. " ax.add_patch(rect)\n",
  3692. "\n",
  3693. "plt.ylim([0, 4500])\n",
  3694. "plt.ylabel('NCount')\n",
  3695. "plt.xlabel('Magnetic Field (G)')\n",
  3696. "plt.tight_layout()\n",
  3697. "plt.grid(visible=1)\n",
  3698. "plt.show()"
  3699. ]
  3700. },
  3701. {
  3702. "cell_type": "code",
  3703. "execution_count": null,
  3704. "metadata": {},
  3705. "outputs": [],
  3706. "source": [
  3707. "f = [0.44224, 0.28128, 0.22367, 0.22962, 0.21004, 0.18586, 0.17055, 0.0903] \n",
  3708. "df = [0.00038, 0.00016, 0.01, 0.00013, 0.00012, 0.00021, 0.00175, 0]\n",
  3709. "B = [(1.2950 + 1.3060)/2, 2.1740, 2.3360, 2.5910, 2.7400, (2.8030 + 2.7800)/2, 3.3570, 5.0830]# , 7.1720, 7.2040, 7.1340]\n",
  3710. "\n",
  3711. "# f = [0.44224, 0.28128, 0.21004, 0.18586, 0.17055, 0.0903] \n",
  3712. "# df = [0.00038, 0.00016, 0.00012, 0.00021, 0.00175, 0]\n",
  3713. "# B = [(1.2950 + 1.3060)/2, 2.1740, 2.3360, 2.5910, 3.3570, 5.0830]# , 7.1720, 7.2040, 7.1340]\n",
  3714. "B = np.flip(B)\n",
  3715. "\n",
  3716. "data = xr.DataArray(\n",
  3717. " data=B,\n",
  3718. " dims='x',\n",
  3719. " coords=dict(x=f)\n",
  3720. ")\n",
  3721. "\n",
  3722. "data_std = xr.DataArray(\n",
  3723. " data=df,\n",
  3724. " dims='x',\n",
  3725. " coords=dict(x=f)\n",
  3726. ")\n",
  3727. "\n",
  3728. "fitAnalyser = FitAnalyser(\"Linear\", fitDim=1)\n",
  3729. "params = fitAnalyser.guess(data, dask=\"parallelized\")\n",
  3730. "# params = fitAnalyser.fitModel.make_params()\n",
  3731. "fitResult = fitAnalyser.fit(data, params, dask=\"parallelized\").load()\n",
  3732. "fitCurve = fitAnalyser.eval(fitResult, x=np.linspace(f[-1], f[0], 500), dask=\"parallelized\").load()\n",
  3733. "\n",
  3734. "fig = plt.figure()\n",
  3735. "ax = fig.gca()\n",
  3736. "data.plot.errorbar(ax=ax, xerr = df, fmt='ob')\n",
  3737. "fitCurve.plot.errorbar(ax=ax)\n",
  3738. "\n",
  3739. "# plt.ylim([0, 4500])\n",
  3740. "plt.ylabel('Magnetic Field (G)')\n",
  3741. "plt.xlabel('Z_offset current (A)')\n",
  3742. "plt.tight_layout()\n",
  3743. "plt.grid(visible=1)\n",
  3744. "plt.show()\n",
  3745. "\n",
  3746. "slope = fitAnalyser.get_fit_value(fitResult).slope\n",
  3747. "dslope = fitAnalyser.get_fit_std(fitResult).slope\n",
  3748. "\n",
  3749. "print('slope = %.5f \\u00B1 %.5f A'% tuple([np.abs(slope),dslope]))\n",
  3750. "\n",
  3751. "intercept = fitAnalyser.get_fit_value(fitResult).intercept\n",
  3752. "dintercept = fitAnalyser.get_fit_std(fitResult).intercept\n",
  3753. "\n",
  3754. "print('intercept = %.5f \\u00B1 %.5f A'% tuple([np.abs(intercept),dintercept]))"
  3755. ]
  3756. },
  3757. {
  3758. "cell_type": "code",
  3759. "execution_count": null,
  3760. "metadata": {},
  3761. "outputs": [],
  3762. "source": [
  3763. "def magnetic_field_func(x, b0=0, by0=0, alpha=1):\n",
  3764. " return np.sqrt( (b0**2 - by0**2) + (alpha * x + by0)**2 )\n",
  3765. "\n",
  3766. "data_quadratic = data\n",
  3767. "\n",
  3768. "fitModel_quadratic = NewFitModel(magnetic_field_func)\n",
  3769. "fitAnalyser_quadratic = FitAnalyser(fitModel_quadratic, fitDim=1)\n",
  3770. "params_quadratic = fitAnalyser_quadratic.fitModel.make_params()\n",
  3771. "params_quadratic.add(name=\"b0\", value= 0.4333, max=np.inf, min=-np.inf, vary=True)\n",
  3772. "params_quadratic.add(name=\"by0\", value= 0.33732, max=np.inf, min=-np.inf, vary=True)\n",
  3773. "params_quadratic.add(name=\"alpha\", value= 10.6021, max=np.inf, min=-np.inf, vary=True)\n",
  3774. "fitResult_quadratic = fitAnalyser_quadratic.fit(data_quadratic, params_quadratic).load()\n",
  3775. "\n",
  3776. "fitCurve_quadratic = fitAnalyser_quadratic.eval(fitResult_quadratic, x=np.linspace(0, 0.6, 100), dask=\"parallelized\").load()"
  3777. ]
  3778. },
  3779. {
  3780. "cell_type": "code",
  3781. "execution_count": null,
  3782. "metadata": {},
  3783. "outputs": [],
  3784. "source": [
  3785. "data_linear = data[3:]\n",
  3786. "\n",
  3787. "fitAnalyser_linear = FitAnalyser('Linear', fitDim=1)\n",
  3788. "params_linear = fitAnalyser_linear.guess(data_linear, dask=\"parallelized\")\n",
  3789. "fitResult_linear = fitAnalyser_linear.fit(data_linear, params_linear).load()\n",
  3790. "\n",
  3791. "fitCurve_linear = fitAnalyser_linear.eval(fitResult_linear, x=np.linspace(0, 0.5, 100), dask=\"parallelized\").load()\n",
  3792. "\n",
  3793. "fig = plt.figure()\n",
  3794. "ax = fig.gca()\n",
  3795. "\n",
  3796. "data.plot.errorbar(ax=ax, fmt='ob', yerr=data_std)\n",
  3797. "# fitCurve_linear.plot.errorbar(ax=ax)\n",
  3798. "fitCurve_quadratic.plot.errorbar(ax=ax)\n",
  3799. "\n",
  3800. "plt.ylabel('Magnetic Field (G)')\n",
  3801. "plt.xlabel('Z_offset current (A)')\n",
  3802. "plt.xticks(fontsize=12)\n",
  3803. "plt.yticks(fontsize=12)\n",
  3804. "# plt.legend(fontsize=12)\n",
  3805. "#plt.xlim(-0.01, 0.04)\n",
  3806. "# plt.ylim(0, 10000)\n",
  3807. "plt.grid(visible=1)\n",
  3808. "plt.tight_layout()\n",
  3809. "plt.show()"
  3810. ]
  3811. },
  3812. {
  3813. "cell_type": "code",
  3814. "execution_count": null,
  3815. "metadata": {},
  3816. "outputs": [],
  3817. "source": [
  3818. "alpha = fitAnalyser.get_fit_value(fitResult_quadratic).alpha\n",
  3819. "dalpha = fitAnalyser.get_fit_std(fitResult_quadratic).alpha\n",
  3820. "\n",
  3821. "print('alpha = %.5f \\u00B1 %.5f G/A'% tuple([np.abs(alpha),dalpha]))\n",
  3822. "\n",
  3823. "beta = fitAnalyser.get_fit_value(fitResult_quadratic).by0\n",
  3824. "dbeta = fitAnalyser.get_fit_std(fitResult_quadratic).by0\n",
  3825. "\n",
  3826. "print('beta = %.5f \\u00B1 %.5f A'% tuple([beta,dbeta]))\n",
  3827. "\n",
  3828. "b0 = fitAnalyser.get_fit_value(fitResult_quadratic).b0\n",
  3829. "db0 = fitAnalyser.get_fit_std(fitResult_quadratic).b0\n",
  3830. "\n",
  3831. "print('b0 = %.5f \\u00B1 %.5f A'% tuple([b0,db0]))"
  3832. ]
  3833. },
  3834. {
  3835. "cell_type": "code",
  3836. "execution_count": null,
  3837. "metadata": {},
  3838. "outputs": [],
  3839. "source": [
  3840. "fig = plt.figure()\n",
  3841. "ax = fig.gca()\n",
  3842. "\n",
  3843. "ax.errorbar([0], [9.46], fmt='ob', label='Theory')\n",
  3844. "ax.errorbar([1], [9.52], yerr=[0.05], fmt='or', label='RF')\n",
  3845. "ax.errorbar([2], [9.523], yerr=[0.019], fmt='og', label='ALS Linear')\n",
  3846. "ax.errorbar([3], [9.576], yerr=[0.032], fmt='ok', label='ALS Quadratic')\n",
  3847. "\n",
  3848. "plt.ylabel('Alpha X (G/A)')\n",
  3849. "\n",
  3850. "plt.legend()\n",
  3851. "plt.show()"
  3852. ]
  3853. },
  3854. {
  3855. "cell_type": "code",
  3856. "execution_count": null,
  3857. "metadata": {},
  3858. "outputs": [],
  3859. "source": [
  3860. "fig = plt.figure()\n",
  3861. "ax = fig.gca()\n",
  3862. "\n",
  3863. "ax.errorbar([1], [-0.164], yerr=[0.017], fmt='or', label='RF')\n",
  3864. "ax.errorbar([2], [0.105], yerr=[0.006], fmt='og', label='ALS Linear')\n",
  3865. "ax.errorbar([3], [ -0.138], yerr=[0.018], fmt='ok', label='ALS Quadratic')\n",
  3866. "\n",
  3867. "plt.xlim([-0.1, 3.1])\n",
  3868. "plt.ylabel('Beta X (G)')\n",
  3869. "\n",
  3870. "plt.legend()\n",
  3871. "plt.show()"
  3872. ]
  3873. },
  3874. {
  3875. "cell_type": "code",
  3876. "execution_count": null,
  3877. "metadata": {},
  3878. "outputs": [],
  3879. "source": [
  3880. "fig = plt.figure()\n",
  3881. "ax = fig.gca()\n",
  3882. "\n",
  3883. "ax.errorbar([0], [10.75], fmt='ob', label='Theory')\n",
  3884. "ax.errorbar([1], [10.6021], yerr=[0.0022], fmt='or', label='RF')\n",
  3885. "ax.errorbar([2], [10.73], yerr=[0.12], fmt='og', label='ALS Linear')\n",
  3886. "ax.errorbar([3], [10.683], yerr=[0.028], fmt='ok', label='ALS Quadratic')\n",
  3887. "\n",
  3888. "plt.ylabel('Alpha Z (G/A)')\n",
  3889. "\n",
  3890. "plt.legend()\n",
  3891. "plt.show()"
  3892. ]
  3893. },
  3894. {
  3895. "cell_type": "code",
  3896. "execution_count": null,
  3897. "metadata": {},
  3898. "outputs": [],
  3899. "source": [
  3900. "fig = plt.figure()\n",
  3901. "ax = fig.gca()\n",
  3902. "\n",
  3903. "ax.errorbar([1], [0.3254], yerr=[0.0008], fmt='or', label='RF')\n",
  3904. "ax.errorbar([2], [0.337], yerr=[0.031], fmt='og', label='ALS Linear')\n",
  3905. "ax.errorbar([3], [0.365], yerr=[0.014], fmt='ok', label='ALS Quadratic')\n",
  3906. "\n",
  3907. "plt.xlim([-0.1, 3.1])\n",
  3908. "plt.ylabel('Beta Z (G)')\n",
  3909. "\n",
  3910. "plt.legend()\n",
  3911. "plt.show()"
  3912. ]
  3913. },
  3914. {
  3915. "cell_type": "code",
  3916. "execution_count": null,
  3917. "metadata": {},
  3918. "outputs": [],
  3919. "source": [
  3920. "fig = plt.figure()\n",
  3921. "ax = fig.gca()\n",
  3922. "\n",
  3923. "ax.errorbar([0], [10.18], fmt='ob', label='Theory')\n",
  3924. "ax.errorbar([1], [10.30], yerr=[0.05], fmt='or', label='RF')\n",
  3925. "ax.errorbar([2], [10.447], yerr=[0.023], fmt='og', label='ALS Linear')\n",
  3926. "ax.errorbar([3], [10.516], yerr=[0.038], fmt='ok', label='ALS Quadratic')\n",
  3927. "\n",
  3928. "plt.ylabel('Alpha Y (G/A)')\n",
  3929. "\n",
  3930. "plt.legend()\n",
  3931. "plt.show()"
  3932. ]
  3933. },
  3934. {
  3935. "cell_type": "code",
  3936. "execution_count": null,
  3937. "metadata": {},
  3938. "outputs": [],
  3939. "source": [
  3940. "fig = plt.figure()\n",
  3941. "ax = fig.gca()\n",
  3942. "\n",
  3943. "ax.errorbar([1], [0.202], yerr=[0.015], fmt='or', label='RF')\n",
  3944. "ax.errorbar([2], [0.0762 ], yerr=[0.0064], fmt='og', label='ALS Linear')\n",
  3945. "ax.errorbar([3], [0.039 ], yerr=[0.019], fmt='ok', label='ALS Quadratic')\n",
  3946. "\n",
  3947. "plt.xlim([-0.1, 3.1])\n",
  3948. "plt.ylabel('Beta Y (G)')\n",
  3949. "\n",
  3950. "plt.legend()\n",
  3951. "plt.show()"
  3952. ]
  3953. },
  3954. {
  3955. "cell_type": "code",
  3956. "execution_count": null,
  3957. "metadata": {},
  3958. "outputs": [],
  3959. "source": [
  3960. "fig = plt.figure()\n",
  3961. "ax = fig.gca()\n",
  3962. "\n",
  3963. "ax.errorbar([1], [-0.164], yerr=[0.017], fmt='or', label='RF')\n",
  3964. "ax.errorbar([3], [-0.138], yerr=[0.018], fmt='ok', label='ALS Quadratic')\n",
  3965. "ax.errorbar([4], [0.417], yerr=[0.01], fmt='ob', label='RF average')\n",
  3966. "\n",
  3967. "plt.xlim([-0.1, 4.1])\n",
  3968. "plt.ylabel('B0 X (G)')\n",
  3969. "\n",
  3970. "plt.legend()\n",
  3971. "plt.show()"
  3972. ]
  3973. },
  3974. {
  3975. "cell_type": "code",
  3976. "execution_count": null,
  3977. "metadata": {},
  3978. "outputs": [],
  3979. "source": [
  3980. "fig = plt.figure()\n",
  3981. "ax = fig.gca()\n",
  3982. "\n",
  3983. "ax.errorbar([1], [0.440], yerr=[0.009], fmt='or', label='RF')\n",
  3984. "ax.errorbar([3], [0.313], yerr=[0.071], fmt='ok', label='ALS Quadratic')\n",
  3985. "ax.errorbar([4], [0.417], yerr=[0.01], fmt='ob', label='RF average')\n",
  3986. "\n",
  3987. "plt.xlim([-0.1, 4.1])\n",
  3988. "plt.ylabel('B0 Y (G)')\n",
  3989. "\n",
  3990. "plt.legend()\n",
  3991. "plt.show()"
  3992. ]
  3993. },
  3994. {
  3995. "cell_type": "code",
  3996. "execution_count": null,
  3997. "metadata": {},
  3998. "outputs": [],
  3999. "source": [
  4000. "fig = plt.figure()\n",
  4001. "ax = fig.gca()\n",
  4002. "\n",
  4003. "ax.errorbar([1], [0.4333], yerr=[0.0007], fmt='or', label='RF')\n",
  4004. "ax.errorbar([3], [0.243 ], yerr=[0.054], fmt='ok', label='ALS Quadratic')\n",
  4005. "ax.errorbar([4], [0.417], yerr=[0.01], fmt='ob', label='RF average')\n",
  4006. "\n",
  4007. "plt.xlim([-0.1, 4.1])\n",
  4008. "plt.ylabel('B0 Z (G)')\n",
  4009. "\n",
  4010. "plt.legend()\n",
  4011. "plt.show()"
  4012. ]
  4013. },
  4014. {
  4015. "attachments": {},
  4016. "cell_type": "markdown",
  4017. "metadata": {},
  4018. "source": [
  4019. "# Test"
  4020. ]
  4021. },
  4022. {
  4023. "cell_type": "code",
  4024. "execution_count": null,
  4025. "metadata": {},
  4026. "outputs": [],
  4027. "source": [
  4028. "%matplotlib notebook\n",
  4029. "shotNum = \"0024\"\n",
  4030. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  4031. "\n",
  4032. "dataSetDict = {\n",
  4033. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i], excludeAxis = ['sweep_start_freq', 'sweep_stop_freq'])\n",
  4034. " for i in [0]\n",
  4035. "}\n",
  4036. "\n",
  4037. "dataSet = dataSetDict[\"camera_0\"]\n",
  4038. "\n",
  4039. "print_scanAxis(dataSet)\n",
  4040. "\n",
  4041. "scanAxis = get_scanAxis(dataSet)\n",
  4042. "\n",
  4043. "dataSet = auto_rechunk(dataSet)\n",
  4044. "\n",
  4045. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  4046. "\n",
  4047. "imageAnalyser.center = (135, 990)\n",
  4048. "imageAnalyser.span = (250, 250)\n",
  4049. "imageAnalyser.fraction = (0.1, 0.1)\n",
  4050. "\n",
  4051. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  4052. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  4053. "\n",
  4054. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  4055. "Ncount_mean = calculate_mean(Ncount)\n",
  4056. "Ncount_std = calculate_std(Ncount)\n",
  4057. "\n",
  4058. "fig = plt.figure()\n",
  4059. "ax = fig.gca()\n",
  4060. "Ncount_mean.plot.errorbar(ax=ax, yerr = Ncount_std, fmt='ob')\n",
  4061. "\n",
  4062. "plt.ylabel('NCount')\n",
  4063. "plt.tight_layout()\n",
  4064. "#plt.ylim([0, 3500])\n",
  4065. "plt.grid(visible=1)\n",
  4066. "plt.show()"
  4067. ]
  4068. },
  4069. {
  4070. "cell_type": "code",
  4071. "execution_count": null,
  4072. "metadata": {
  4073. "scrolled": false
  4074. },
  4075. "outputs": [],
  4076. "source": [
  4077. "l = list(np.arange(525e-3, 552e-3, 0.9e-3))\n",
  4078. "# l = np.logspace(np.log10(250e-6), np.log10(500e-3), num=15)\n",
  4079. "\n",
  4080. "l = [round(item, 7) for item in l]\n",
  4081. "#random.shuffle(l)\n",
  4082. "\n",
  4083. "print(l)\n",
  4084. "print(len(l))\n",
  4085. "np.mean(l)"
  4086. ]
  4087. },
  4088. {
  4089. "cell_type": "code",
  4090. "execution_count": null,
  4091. "metadata": {},
  4092. "outputs": [],
  4093. "source": [
  4094. "pixel = 5.86e-6\n",
  4095. "M = 0.6827\n",
  4096. "F = (1/(0.3725*8.4743e-14)) * (pixel / M)**2\n",
  4097. "NCount = 85000\n",
  4098. "AtomNumber = NCount * F / 1e8\n",
  4099. "print(AtomNumber)\n"
  4100. ]
  4101. },
  4102. {
  4103. "cell_type": "code",
  4104. "execution_count": null,
  4105. "metadata": {},
  4106. "outputs": [],
  4107. "source": [
  4108. "muB = 9.274e-24\n",
  4109. "hbar = 6.626e-34 / (2 * np.pi)\n",
  4110. "gJ = 1.24\n",
  4111. "Delta = 2 * np.pi * 100 * 1e3\n",
  4112. "\n",
  4113. "Bz = (Delta*hbar) / (muB*gJ)\n",
  4114. "print(Bz * 1e4)"
  4115. ]
  4116. },
  4117. {
  4118. "attachments": {},
  4119. "cell_type": "markdown",
  4120. "metadata": {},
  4121. "source": [
  4122. "## ODT 1 Calibration"
  4123. ]
  4124. },
  4125. {
  4126. "cell_type": "code",
  4127. "execution_count": null,
  4128. "metadata": {},
  4129. "outputs": [],
  4130. "source": [
  4131. "v_high = 2.7\n",
  4132. "\"\"\"High Power\"\"\"\n",
  4133. "P_arm1_high = 5.776 * v_high - 0.683\n",
  4134. "\n",
  4135. "v_mid = 0.2076\n",
  4136. "\"\"\"Intermediate Power\"\"\"\n",
  4137. "P_arm1_mid = 5.815 * v_mid - 0.03651\n",
  4138. "\n",
  4139. "v_low = 0.062\n",
  4140. "\"\"\"Low Power\"\"\"\n",
  4141. "P_arm1_low = 5271 * v_low - 27.5\n",
  4142. "\n",
  4143. "print(round(P_arm1_high, 3))\n",
  4144. "print(round(P_arm1_mid, 3))\n",
  4145. "print(round(P_arm1_low, 3))"
  4146. ]
  4147. },
  4148. {
  4149. "attachments": {},
  4150. "cell_type": "markdown",
  4151. "metadata": {},
  4152. "source": [
  4153. "## ODT 2 Power Calibration"
  4154. ]
  4155. },
  4156. {
  4157. "cell_type": "code",
  4158. "execution_count": null,
  4159. "metadata": {},
  4160. "outputs": [],
  4161. "source": [
  4162. "v = 0.842\n",
  4163. "P_arm2 = 2.302 * v - 0.06452\n",
  4164. "print(round(P_arm2, 3))"
  4165. ]
  4166. },
  4167. {
  4168. "cell_type": "code",
  4169. "execution_count": null,
  4170. "metadata": {},
  4171. "outputs": [],
  4172. "source": []
  4173. }
  4174. ],
  4175. "metadata": {
  4176. "kernelspec": {
  4177. "display_name": "Python 3 (ipykernel)",
  4178. "language": "python",
  4179. "name": "python3"
  4180. },
  4181. "language_info": {
  4182. "codemirror_mode": {
  4183. "name": "ipython",
  4184. "version": 3
  4185. },
  4186. "file_extension": ".py",
  4187. "mimetype": "text/x-python",
  4188. "name": "python",
  4189. "nbconvert_exporter": "python",
  4190. "pygments_lexer": "ipython3",
  4191. "version": "3.9.12"
  4192. },
  4193. "vscode": {
  4194. "interpreter": {
  4195. "hash": "c05913ad4f24fdc6b2418069394dc5835b1981849b107c9ba6df693aafd66650"
  4196. }
  4197. }
  4198. },
  4199. "nbformat": 4,
  4200. "nbformat_minor": 2
  4201. }