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.

2180 lines
534 KiB

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 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": 1,
  14. "metadata": {},
  15. "outputs": [],
  16. "source": [
  17. "import xarray as xr\n",
  18. "import pandas as pd\n",
  19. "import numpy as np\n",
  20. "import copy\n",
  21. "\n",
  22. "import glob\n",
  23. "\n",
  24. "import xrft\n",
  25. "import finufft\n",
  26. "\n",
  27. "from uncertainties import ufloat\n",
  28. "from uncertainties import unumpy as unp\n",
  29. "from uncertainties import umath\n",
  30. "\n",
  31. "from datetime import datetime\n",
  32. "\n",
  33. "import matplotlib.pyplot as plt\n",
  34. "plt.rcParams['font.size'] = 18\n",
  35. "\n",
  36. "from DataContainer.ReadData import read_hdf5_file, read_hdf5_global, read_hdf5_run_time, read_csv_file\n",
  37. "from Analyser.ImagingAnalyser import ImageAnalyser\n",
  38. "from Analyser.FitAnalyser import FitAnalyser\n",
  39. "from Analyser.FitAnalyser import ThomasFermi2dModel, DensityProfileBEC2dModel, Polylog22dModel\n",
  40. "from Analyser.FFTAnalyser import fft, ifft, fft_nutou\n",
  41. "from ToolFunction.ToolFunction import *\n",
  42. "\n",
  43. "from ToolFunction.HomeMadeXarrayFunction import errorbar, dataarray_plot_errorbar\n",
  44. "xr.plot.dataarray_plot.errorbar = errorbar\n",
  45. "xr.plot.accessor.DataArrayPlotAccessor.errorbar = dataarray_plot_errorbar\n",
  46. "\n",
  47. "imageAnalyser = ImageAnalyser()"
  48. ]
  49. },
  50. {
  51. "attachments": {},
  52. "cell_type": "markdown",
  53. "metadata": {},
  54. "source": [
  55. "# Import supporting package"
  56. ]
  57. },
  58. {
  59. "cell_type": "code",
  60. "execution_count": 2,
  61. "metadata": {},
  62. "outputs": [],
  63. "source": [
  64. "import xarray as xr\n",
  65. "import numpy as np\n",
  66. "\n",
  67. "from uncertainties import ufloat\n",
  68. "from uncertainties import unumpy as unp\n",
  69. "from uncertainties import umath\n",
  70. "\n",
  71. "import matplotlib.pyplot as plt\n",
  72. "\n",
  73. "from DataContainer.ReadData import read_hdf5_file\n",
  74. "from Analyser.ImagingAnalyser import ImageAnalyser\n",
  75. "from Analyser.FitAnalyser import FitAnalyser\n",
  76. "from Analyser.FitAnalyser import ThomasFermi2dModel, DensityProfileBEC2dModel, Polylog22dModel\n",
  77. "from Analyser.FitAnalyser import NewFitModel\n",
  78. "from ToolFunction.ToolFunction import *\n",
  79. "\n",
  80. "from ToolFunction.HomeMadeXarrayFunction import errorbar, dataarray_plot_errorbar\n",
  81. "xr.plot.dataarray_plot.errorbar = errorbar\n",
  82. "xr.plot.accessor.DataArrayPlotAccessor.errorbar = dataarray_plot_errorbar\n",
  83. "\n",
  84. "imageAnalyser = ImageAnalyser()"
  85. ]
  86. },
  87. {
  88. "attachments": {},
  89. "cell_type": "markdown",
  90. "metadata": {},
  91. "source": [
  92. "## Start a client for parallel computing"
  93. ]
  94. },
  95. {
  96. "cell_type": "code",
  97. "execution_count": 3,
  98. "metadata": {},
  99. "outputs": [
  100. {
  101. "name": "stderr",
  102. "output_type": "stream",
  103. "text": [
  104. "C:\\Users\\data\\AppData\\Roaming\\Python\\Python39\\site-packages\\distributed\\node.py:182: UserWarning: Port 8787 is already in use.\n",
  105. "Perhaps you already have a cluster running?\n",
  106. "Hosting the HTTP server on port 59239 instead\n",
  107. " warnings.warn(\n"
  108. ]
  109. },
  110. {
  111. "data": {
  112. "text/html": [
  113. "<div>\n",
  114. " <div style=\"width: 24px; height: 24px; background-color: #e1e1e1; border: 3px solid #9D9D9D; border-radius: 5px; position: absolute;\"> </div>\n",
  115. " <div style=\"margin-left: 48px;\">\n",
  116. " <h3 style=\"margin-bottom: 0px;\">Client</h3>\n",
  117. " <p style=\"color: #9D9D9D; margin-bottom: 0px;\">Client-72432ab8-fa4d-11ed-a2d0-80e82ce2fa8e</p>\n",
  118. " <table style=\"width: 100%; text-align: left;\">\n",
  119. "\n",
  120. " <tr>\n",
  121. " \n",
  122. " <td style=\"text-align: left;\"><strong>Connection method:</strong> Cluster object</td>\n",
  123. " <td style=\"text-align: left;\"><strong>Cluster type:</strong> distributed.LocalCluster</td>\n",
  124. " \n",
  125. " </tr>\n",
  126. "\n",
  127. " \n",
  128. " <tr>\n",
  129. " <td style=\"text-align: left;\">\n",
  130. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:59239/status\" target=\"_blank\">http://127.0.0.1:59239/status</a>\n",
  131. " </td>\n",
  132. " <td style=\"text-align: left;\"></td>\n",
  133. " </tr>\n",
  134. " \n",
  135. "\n",
  136. " </table>\n",
  137. "\n",
  138. " \n",
  139. "\n",
  140. " \n",
  141. " <details>\n",
  142. " <summary style=\"margin-bottom: 20px;\"><h3 style=\"display: inline;\">Cluster Info</h3></summary>\n",
  143. " <div class=\"jp-RenderedHTMLCommon jp-RenderedHTML jp-mod-trusted jp-OutputArea-output\">\n",
  144. " <div style=\"width: 24px; height: 24px; background-color: #e1e1e1; border: 3px solid #9D9D9D; border-radius: 5px; position: absolute;\">\n",
  145. " </div>\n",
  146. " <div style=\"margin-left: 48px;\">\n",
  147. " <h3 style=\"margin-bottom: 0px; margin-top: 0px;\">LocalCluster</h3>\n",
  148. " <p style=\"color: #9D9D9D; margin-bottom: 0px;\">b4f1da7c</p>\n",
  149. " <table style=\"width: 100%; text-align: left;\">\n",
  150. " <tr>\n",
  151. " <td style=\"text-align: left;\">\n",
  152. " <strong>Dashboard:</strong> <a href=\"http://127.0.0.1:59239/status\" target=\"_blank\">http://127.0.0.1:59239/status</a>\n",
  153. " </td>\n",
  154. " <td style=\"text-align: left;\">\n",
  155. " <strong>Workers:</strong> 6\n",
  156. " </td>\n",
  157. " </tr>\n",
  158. " <tr>\n",
  159. " <td style=\"text-align: left;\">\n",
  160. " <strong>Total threads:</strong> 60\n",
  161. " </td>\n",
  162. " <td style=\"text-align: left;\">\n",
  163. " <strong>Total memory:</strong> 55.88 GiB\n",
  164. " </td>\n",
  165. " </tr>\n",
  166. " \n",
  167. " <tr>\n",
  168. " <td style=\"text-align: left;\"><strong>Status:</strong> running</td>\n",
  169. " <td style=\"text-align: left;\"><strong>Using processes:</strong> True</td>\n",
  170. "</tr>\n",
  171. "\n",
  172. " \n",
  173. " </table>\n",
  174. "\n",
  175. " <details>\n",
  176. " <summary style=\"margin-bottom: 20px;\">\n",
  177. " <h3 style=\"display: inline;\">Scheduler Info</h3>\n",
  178. " </summary>\n",
  179. "\n",
  180. " <div style=\"\">\n",
  181. " <div>\n",
  182. " <div style=\"width: 24px; height: 24px; background-color: #FFF7E5; border: 3px solid #FF6132; border-radius: 5px; position: absolute;\"> </div>\n",
  183. " <div style=\"margin-left: 48px;\">\n",
  184. " <h3 style=\"margin-bottom: 0px;\">Scheduler</h3>\n",
  185. " <p style=\"color: #9D9D9D; margin-bottom: 0px;\">Scheduler-1c447eb9-c507-4810-aea3-3679987f2f3e</p>\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:59240\n",
  190. " </td>\n",
  191. " <td style=\"text-align: left;\">\n",
  192. " <strong>Workers:</strong> 6\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:59239/status\" target=\"_blank\">http://127.0.0.1:59239/status</a>\n",
  198. " </td>\n",
  199. " <td style=\"text-align: left;\">\n",
  200. " <strong>Total threads:</strong> 60\n",
  201. " </td>\n",
  202. " </tr>\n",
  203. " <tr>\n",
  204. " <td style=\"text-align: left;\">\n",
  205. " <strong>Started:</strong> Just now\n",
  206. " </td>\n",
  207. " <td style=\"text-align: left;\">\n",
  208. " <strong>Total memory:</strong> 55.88 GiB\n",
  209. " </td>\n",
  210. " </tr>\n",
  211. " </table>\n",
  212. " </div>\n",
  213. " </div>\n",
  214. "\n",
  215. " <details style=\"margin-left: 48px;\">\n",
  216. " <summary style=\"margin-bottom: 20px;\">\n",
  217. " <h3 style=\"display: inline;\">Workers</h3>\n",
  218. " </summary>\n",
  219. "\n",
  220. " \n",
  221. " <div style=\"margin-bottom: 20px;\">\n",
  222. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  223. " <div style=\"margin-left: 48px;\">\n",
  224. " <details>\n",
  225. " <summary>\n",
  226. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 0</h4>\n",
  227. " </summary>\n",
  228. " <table style=\"width: 100%; text-align: left;\">\n",
  229. " <tr>\n",
  230. " <td style=\"text-align: left;\">\n",
  231. " <strong>Comm: </strong> tcp://127.0.0.1:59282\n",
  232. " </td>\n",
  233. " <td style=\"text-align: left;\">\n",
  234. " <strong>Total threads: </strong> 10\n",
  235. " </td>\n",
  236. " </tr>\n",
  237. " <tr>\n",
  238. " <td style=\"text-align: left;\">\n",
  239. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:59283/status\" target=\"_blank\">http://127.0.0.1:59283/status</a>\n",
  240. " </td>\n",
  241. " <td style=\"text-align: left;\">\n",
  242. " <strong>Memory: </strong> 9.31 GiB\n",
  243. " </td>\n",
  244. " </tr>\n",
  245. " <tr>\n",
  246. " <td style=\"text-align: left;\">\n",
  247. " <strong>Nanny: </strong> tcp://127.0.0.1:59243\n",
  248. " </td>\n",
  249. " <td style=\"text-align: left;\"></td>\n",
  250. " </tr>\n",
  251. " <tr>\n",
  252. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  253. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-nw1je4oy\n",
  254. " </td>\n",
  255. " </tr>\n",
  256. "\n",
  257. " \n",
  258. "\n",
  259. " \n",
  260. "\n",
  261. " </table>\n",
  262. " </details>\n",
  263. " </div>\n",
  264. " </div>\n",
  265. " \n",
  266. " <div style=\"margin-bottom: 20px;\">\n",
  267. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  268. " <div style=\"margin-left: 48px;\">\n",
  269. " <details>\n",
  270. " <summary>\n",
  271. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 1</h4>\n",
  272. " </summary>\n",
  273. " <table style=\"width: 100%; text-align: left;\">\n",
  274. " <tr>\n",
  275. " <td style=\"text-align: left;\">\n",
  276. " <strong>Comm: </strong> tcp://127.0.0.1:59268\n",
  277. " </td>\n",
  278. " <td style=\"text-align: left;\">\n",
  279. " <strong>Total threads: </strong> 10\n",
  280. " </td>\n",
  281. " </tr>\n",
  282. " <tr>\n",
  283. " <td style=\"text-align: left;\">\n",
  284. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:59271/status\" target=\"_blank\">http://127.0.0.1:59271/status</a>\n",
  285. " </td>\n",
  286. " <td style=\"text-align: left;\">\n",
  287. " <strong>Memory: </strong> 9.31 GiB\n",
  288. " </td>\n",
  289. " </tr>\n",
  290. " <tr>\n",
  291. " <td style=\"text-align: left;\">\n",
  292. " <strong>Nanny: </strong> tcp://127.0.0.1:59244\n",
  293. " </td>\n",
  294. " <td style=\"text-align: left;\"></td>\n",
  295. " </tr>\n",
  296. " <tr>\n",
  297. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  298. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-o2y_ipun\n",
  299. " </td>\n",
  300. " </tr>\n",
  301. "\n",
  302. " \n",
  303. "\n",
  304. " \n",
  305. "\n",
  306. " </table>\n",
  307. " </details>\n",
  308. " </div>\n",
  309. " </div>\n",
  310. " \n",
  311. " <div style=\"margin-bottom: 20px;\">\n",
  312. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  313. " <div style=\"margin-left: 48px;\">\n",
  314. " <details>\n",
  315. " <summary>\n",
  316. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 2</h4>\n",
  317. " </summary>\n",
  318. " <table style=\"width: 100%; text-align: left;\">\n",
  319. " <tr>\n",
  320. " <td style=\"text-align: left;\">\n",
  321. " <strong>Comm: </strong> tcp://127.0.0.1:59274\n",
  322. " </td>\n",
  323. " <td style=\"text-align: left;\">\n",
  324. " <strong>Total threads: </strong> 10\n",
  325. " </td>\n",
  326. " </tr>\n",
  327. " <tr>\n",
  328. " <td style=\"text-align: left;\">\n",
  329. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:59277/status\" target=\"_blank\">http://127.0.0.1:59277/status</a>\n",
  330. " </td>\n",
  331. " <td style=\"text-align: left;\">\n",
  332. " <strong>Memory: </strong> 9.31 GiB\n",
  333. " </td>\n",
  334. " </tr>\n",
  335. " <tr>\n",
  336. " <td style=\"text-align: left;\">\n",
  337. " <strong>Nanny: </strong> tcp://127.0.0.1:59245\n",
  338. " </td>\n",
  339. " <td style=\"text-align: left;\"></td>\n",
  340. " </tr>\n",
  341. " <tr>\n",
  342. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  343. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-vkyen84d\n",
  344. " </td>\n",
  345. " </tr>\n",
  346. "\n",
  347. " \n",
  348. "\n",
  349. " \n",
  350. "\n",
  351. " </table>\n",
  352. " </details>\n",
  353. " </div>\n",
  354. " </div>\n",
  355. " \n",
  356. " <div style=\"margin-bottom: 20px;\">\n",
  357. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  358. " <div style=\"margin-left: 48px;\">\n",
  359. " <details>\n",
  360. " <summary>\n",
  361. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 3</h4>\n",
  362. " </summary>\n",
  363. " <table style=\"width: 100%; text-align: left;\">\n",
  364. " <tr>\n",
  365. " <td style=\"text-align: left;\">\n",
  366. " <strong>Comm: </strong> tcp://127.0.0.1:59275\n",
  367. " </td>\n",
  368. " <td style=\"text-align: left;\">\n",
  369. " <strong>Total threads: </strong> 10\n",
  370. " </td>\n",
  371. " </tr>\n",
  372. " <tr>\n",
  373. " <td style=\"text-align: left;\">\n",
  374. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:59280/status\" target=\"_blank\">http://127.0.0.1:59280/status</a>\n",
  375. " </td>\n",
  376. " <td style=\"text-align: left;\">\n",
  377. " <strong>Memory: </strong> 9.31 GiB\n",
  378. " </td>\n",
  379. " </tr>\n",
  380. " <tr>\n",
  381. " <td style=\"text-align: left;\">\n",
  382. " <strong>Nanny: </strong> tcp://127.0.0.1:59246\n",
  383. " </td>\n",
  384. " <td style=\"text-align: left;\"></td>\n",
  385. " </tr>\n",
  386. " <tr>\n",
  387. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  388. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-3iaj9i2x\n",
  389. " </td>\n",
  390. " </tr>\n",
  391. "\n",
  392. " \n",
  393. "\n",
  394. " \n",
  395. "\n",
  396. " </table>\n",
  397. " </details>\n",
  398. " </div>\n",
  399. " </div>\n",
  400. " \n",
  401. " <div style=\"margin-bottom: 20px;\">\n",
  402. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  403. " <div style=\"margin-left: 48px;\">\n",
  404. " <details>\n",
  405. " <summary>\n",
  406. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 4</h4>\n",
  407. " </summary>\n",
  408. " <table style=\"width: 100%; text-align: left;\">\n",
  409. " <tr>\n",
  410. " <td style=\"text-align: left;\">\n",
  411. " <strong>Comm: </strong> tcp://127.0.0.1:59273\n",
  412. " </td>\n",
  413. " <td style=\"text-align: left;\">\n",
  414. " <strong>Total threads: </strong> 10\n",
  415. " </td>\n",
  416. " </tr>\n",
  417. " <tr>\n",
  418. " <td style=\"text-align: left;\">\n",
  419. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:59276/status\" target=\"_blank\">http://127.0.0.1:59276/status</a>\n",
  420. " </td>\n",
  421. " <td style=\"text-align: left;\">\n",
  422. " <strong>Memory: </strong> 9.31 GiB\n",
  423. " </td>\n",
  424. " </tr>\n",
  425. " <tr>\n",
  426. " <td style=\"text-align: left;\">\n",
  427. " <strong>Nanny: </strong> tcp://127.0.0.1:59247\n",
  428. " </td>\n",
  429. " <td style=\"text-align: left;\"></td>\n",
  430. " </tr>\n",
  431. " <tr>\n",
  432. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  433. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-pkpso9u6\n",
  434. " </td>\n",
  435. " </tr>\n",
  436. "\n",
  437. " \n",
  438. "\n",
  439. " \n",
  440. "\n",
  441. " </table>\n",
  442. " </details>\n",
  443. " </div>\n",
  444. " </div>\n",
  445. " \n",
  446. " <div style=\"margin-bottom: 20px;\">\n",
  447. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  448. " <div style=\"margin-left: 48px;\">\n",
  449. " <details>\n",
  450. " <summary>\n",
  451. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 5</h4>\n",
  452. " </summary>\n",
  453. " <table style=\"width: 100%; text-align: left;\">\n",
  454. " <tr>\n",
  455. " <td style=\"text-align: left;\">\n",
  456. " <strong>Comm: </strong> tcp://127.0.0.1:59267\n",
  457. " </td>\n",
  458. " <td style=\"text-align: left;\">\n",
  459. " <strong>Total threads: </strong> 10\n",
  460. " </td>\n",
  461. " </tr>\n",
  462. " <tr>\n",
  463. " <td style=\"text-align: left;\">\n",
  464. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:59269/status\" target=\"_blank\">http://127.0.0.1:59269/status</a>\n",
  465. " </td>\n",
  466. " <td style=\"text-align: left;\">\n",
  467. " <strong>Memory: </strong> 9.31 GiB\n",
  468. " </td>\n",
  469. " </tr>\n",
  470. " <tr>\n",
  471. " <td style=\"text-align: left;\">\n",
  472. " <strong>Nanny: </strong> tcp://127.0.0.1:59248\n",
  473. " </td>\n",
  474. " <td style=\"text-align: left;\"></td>\n",
  475. " </tr>\n",
  476. " <tr>\n",
  477. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  478. " <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-s2xtac3t\n",
  479. " </td>\n",
  480. " </tr>\n",
  481. "\n",
  482. " \n",
  483. "\n",
  484. " \n",
  485. "\n",
  486. " </table>\n",
  487. " </details>\n",
  488. " </div>\n",
  489. " </div>\n",
  490. " \n",
  491. "\n",
  492. " </details>\n",
  493. "</div>\n",
  494. "\n",
  495. " </details>\n",
  496. " </div>\n",
  497. "</div>\n",
  498. " </details>\n",
  499. " \n",
  500. "\n",
  501. " </div>\n",
  502. "</div>"
  503. ],
  504. "text/plain": [
  505. "<Client: 'tcp://127.0.0.1:59240' processes=6 threads=60, memory=55.88 GiB>"
  506. ]
  507. },
  508. "execution_count": 3,
  509. "metadata": {},
  510. "output_type": "execute_result"
  511. }
  512. ],
  513. "source": [
  514. "from dask.distributed import Client\n",
  515. "client = Client(n_workers=6, threads_per_worker=10, processes=True, memory_limit='10GB')\n",
  516. "client"
  517. ]
  518. },
  519. {
  520. "attachments": {},
  521. "cell_type": "markdown",
  522. "metadata": {},
  523. "source": [
  524. "## Set global path for experiment"
  525. ]
  526. },
  527. {
  528. "cell_type": "code",
  529. "execution_count": 4,
  530. "metadata": {},
  531. "outputs": [],
  532. "source": [
  533. "# filepath = \"//DyLabNAS/Data/Evaporative_Cooling/2023/05/03/0043/*.h5\"\n",
  534. "# filepath = \"//DyLabNAS/Data/Evaporative_Cooling/2023/04/18/0003/2023-04-18_0003_Evaporative_Cooling_000.h5\"\n",
  535. "\n",
  536. "# filepath = \"//DyLabNAS/Data/Repetition_scan/2023/04/21/0002/*.h5\"\n",
  537. "\n",
  538. "# filepath = r\"./testData/0002/*.h5\"\n",
  539. "\n",
  540. "# filepath = r\"./testData/0002/2023-04-21_0002_Evaporative_Cooling_0.h5\"\n",
  541. "\n",
  542. "# filepath = r'd:/Jianshun Gao/Simulations/analyseScripts/testData/0002/2023-04-21_0002_Evaporative_Cooling_0.h5'\n",
  543. "\n",
  544. "# filepath = \"//DyLabNAS/Data/Evaporative_Cooling/2023/04/18/0003/*.h5\"\n",
  545. "\n",
  546. "# filepath = \"//DyLabNAS/Data/Evaporative_Cooling/2023/05/04/0000/*.h5\"\n",
  547. "\n",
  548. "filepath = './result_from_experiment/2023-04-24/0013/2023-04-24_0013_Evaporative_Cooling_08.h5'"
  549. ]
  550. },
  551. {
  552. "cell_type": "code",
  553. "execution_count": 5,
  554. "metadata": {},
  555. "outputs": [],
  556. "source": [
  557. "groupList = [\n",
  558. " \"images/MOT_3D_Camera/in_situ_absorption\",\n",
  559. " \"images/ODT_1_Axis_Camera/in_situ_absorption\",\n",
  560. " \"images/ODT_2_Axis_Camera/in_situ_absorption\",\n",
  561. "]\n",
  562. "\n",
  563. "dskey = {\n",
  564. " \"images/MOT_3D_Camera/in_situ_absorption\": \"camera_1\",\n",
  565. " \"images/ODT_1_Axis_Camera/in_situ_absorption\": \"camera_2\",\n",
  566. " \"images/ODT_2_Axis_Camera/in_situ_absorption\": \"camera_3\",\n",
  567. "}\n"
  568. ]
  569. },
  570. {
  571. "cell_type": "code",
  572. "execution_count": 6,
  573. "metadata": {},
  574. "outputs": [],
  575. "source": [
  576. "img_dir = '//DyLabNAS/Data/'\n",
  577. "SequenceName = \"Evaporative_Cooling\" + \"/\"\n",
  578. "folderPath = img_dir + SequenceName + '2023/05/23'# get_date()"
  579. ]
  580. },
  581. {
  582. "attachments": {},
  583. "cell_type": "markdown",
  584. "metadata": {},
  585. "source": [
  586. "# An example for one experimental run"
  587. ]
  588. },
  589. {
  590. "attachments": {},
  591. "cell_type": "markdown",
  592. "metadata": {},
  593. "source": [
  594. "## Load the data"
  595. ]
  596. },
  597. {
  598. "cell_type": "code",
  599. "execution_count": 7,
  600. "metadata": {},
  601. "outputs": [
  602. {
  603. "name": "stderr",
  604. "output_type": "stream",
  605. "text": [
  606. "f:\\Jianshun\\analyseScript\\DataContainer\\ReadData.py:178: FutureWarning: elementwise comparison failed; returning scalar instead, but in the future will perform elementwise comparison\n",
  607. " if not key in datesetOfGlobal.scanAxis\n"
  608. ]
  609. },
  610. {
  611. "data": {
  612. "text/html": [
  613. "<div><svg style=\"position: absolute; width: 0; height: 0; overflow: hidden\">\n",
  614. "<defs>\n",
  615. "<symbol id=\"icon-database\" viewBox=\"0 0 32 32\">\n",
  616. "<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",
  617. "<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",
  618. "<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",
  619. "</symbol>\n",
  620. "<symbol id=\"icon-file-text2\" viewBox=\"0 0 32 32\">\n",
  621. "<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",
  622. "<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",
  623. "<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",
  624. "<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",
  625. "</symbol>\n",
  626. "</defs>\n",
  627. "</svg>\n",
  628. "<style>/* CSS stylesheet for displaying xarray objects in jupyterlab.\n",
  629. " *\n",
  630. " */\n",
  631. "\n",
  632. ":root {\n",
  633. " --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
  634. " --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));\n",
  635. " --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));\n",
  636. " --xr-border-color: var(--jp-border-color2, #e0e0e0);\n",
  637. " --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);\n",
  638. " --xr-background-color: var(--jp-layout-color0, white);\n",
  639. " --xr-background-color-row-even: var(--jp-layout-color1, white);\n",
  640. " --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
  641. "}\n",
  642. "\n",
  643. "html[theme=dark],\n",
  644. "body[data-theme=dark],\n",
  645. "body.vscode-dark {\n",
  646. " --xr-font-color0: rgba(255, 255, 255, 1);\n",
  647. " --xr-font-color2: rgba(255, 255, 255, 0.54);\n",
  648. " --xr-font-color3: rgba(255, 255, 255, 0.38);\n",
  649. " --xr-border-color: #1F1F1F;\n",
  650. " --xr-disabled-color: #515151;\n",
  651. " --xr-background-color: #111111;\n",
  652. " --xr-background-color-row-even: #111111;\n",
  653. " --xr-background-color-row-odd: #313131;\n",
  654. "}\n",
  655. "\n",
  656. ".xr-wrap {\n",
  657. " display: block !important;\n",
  658. " min-width: 300px;\n",
  659. " max-width: 700px;\n",
  660. "}\n",
  661. "\n",
  662. ".xr-text-repr-fallback {\n",
  663. " /* fallback to plain text repr when CSS is not injected (untrusted notebook) */\n",
  664. " display: none;\n",
  665. "}\n",
  666. "\n",
  667. ".xr-header {\n",
  668. " padding-top: 6px;\n",
  669. " padding-bottom: 6px;\n",
  670. " margin-bottom: 4px;\n",
  671. " border-bottom: solid 1px var(--xr-border-color);\n",
  672. "}\n",
  673. "\n",
  674. ".xr-header > div,\n",
  675. ".xr-header > ul {\n",
  676. " display: inline;\n",
  677. " margin-top: 0;\n",
  678. " margin-bottom: 0;\n",
  679. "}\n",
  680. "\n",
  681. ".xr-obj-type,\n",
  682. ".xr-array-name {\n",
  683. " margin-left: 2px;\n",
  684. " margin-right: 10px;\n",
  685. "}\n",
  686. "\n",
  687. ".xr-obj-type {\n",
  688. " color: var(--xr-font-color2);\n",
  689. "}\n",
  690. "\n",
  691. ".xr-sections {\n",
  692. " padding-left: 0 !important;\n",
  693. " display: grid;\n",
  694. " grid-template-columns: 150px auto auto 1fr 20px 20px;\n",
  695. "}\n",
  696. "\n",
  697. ".xr-section-item {\n",
  698. " display: contents;\n",
  699. "}\n",
  700. "\n",
  701. ".xr-section-item input {\n",
  702. " display: none;\n",
  703. "}\n",
  704. "\n",
  705. ".xr-section-item input + label {\n",
  706. " color: var(--xr-disabled-color);\n",
  707. "}\n",
  708. "\n",
  709. ".xr-section-item input:enabled + label {\n",
  710. " cursor: pointer;\n",
  711. " color: var(--xr-font-color2);\n",
  712. "}\n",
  713. "\n",
  714. ".xr-section-item input:enabled + label:hover {\n",
  715. " color: var(--xr-font-color0);\n",
  716. "}\n",
  717. "\n",
  718. ".xr-section-summary {\n",
  719. " grid-column: 1;\n",
  720. " color: var(--xr-font-color2);\n",
  721. " font-weight: 500;\n",
  722. "}\n",
  723. "\n",
  724. ".xr-section-summary > span {\n",
  725. " display: inline-block;\n",
  726. " padding-left: 0.5em;\n",
  727. "}\n",
  728. "\n",
  729. ".xr-section-summary-in:disabled + label {\n",
  730. " color: var(--xr-font-color2);\n",
  731. "}\n",
  732. "\n",
  733. ".xr-section-summary-in + label:before {\n",
  734. " display: inline-block;\n",
  735. " content: 'â–º';\n",
  736. " font-size: 11px;\n",
  737. " width: 15px;\n",
  738. " text-align: center;\n",
  739. "}\n",
  740. "\n",
  741. ".xr-section-summary-in:disabled + label:before {\n",
  742. " color: var(--xr-disabled-color);\n",
  743. "}\n",
  744. "\n",
  745. ".xr-section-summary-in:checked + label:before {\n",
  746. " content: 'â–¼';\n",
  747. "}\n",
  748. "\n",
  749. ".xr-section-summary-in:checked + label > span {\n",
  750. " display: none;\n",
  751. "}\n",
  752. "\n",
  753. ".xr-section-summary,\n",
  754. ".xr-section-inline-details {\n",
  755. " padding-top: 4px;\n",
  756. " padding-bottom: 4px;\n",
  757. "}\n",
  758. "\n",
  759. ".xr-section-inline-details {\n",
  760. " grid-column: 2 / -1;\n",
  761. "}\n",
  762. "\n",
  763. ".xr-section-details {\n",
  764. " display: none;\n",
  765. " grid-column: 1 / -1;\n",
  766. " margin-bottom: 5px;\n",
  767. "}\n",
  768. "\n",
  769. ".xr-section-summary-in:checked ~ .xr-section-details {\n",
  770. " display: contents;\n",
  771. "}\n",
  772. "\n",
  773. ".xr-array-wrap {\n",
  774. " grid-column: 1 / -1;\n",
  775. " display: grid;\n",
  776. " grid-template-columns: 20px auto;\n",
  777. "}\n",
  778. "\n",
  779. ".xr-array-wrap > label {\n",
  780. " grid-column: 1;\n",
  781. " vertical-align: top;\n",
  782. "}\n",
  783. "\n",
  784. ".xr-preview {\n",
  785. " color: var(--xr-font-color3);\n",
  786. "}\n",
  787. "\n",
  788. ".xr-array-preview,\n",
  789. ".xr-array-data {\n",
  790. " padding: 0 5px !important;\n",
  791. " grid-column: 2;\n",
  792. "}\n",
  793. "\n",
  794. ".xr-array-data,\n",
  795. ".xr-array-in:checked ~ .xr-array-preview {\n",
  796. " display: none;\n",
  797. "}\n",
  798. "\n",
  799. ".xr-array-in:checked ~ .xr-array-data,\n",
  800. ".xr-array-preview {\n",
  801. " display: inline-block;\n",
  802. "}\n",
  803. "\n",
  804. ".xr-dim-list {\n",
  805. " display: inline-block !important;\n",
  806. " list-style: none;\n",
  807. " padding: 0 !important;\n",
  808. " margin: 0;\n",
  809. "}\n",
  810. "\n",
  811. ".xr-dim-list li {\n",
  812. " display: inline-block;\n",
  813. " padding: 0;\n",
  814. " margin: 0;\n",
  815. "}\n",
  816. "\n",
  817. ".xr-dim-list:before {\n",
  818. " content: '(';\n",
  819. "}\n",
  820. "\n",
  821. ".xr-dim-list:after {\n",
  822. " content: ')';\n",
  823. "}\n",
  824. "\n",
  825. ".xr-dim-list li:not(:last-child):after {\n",
  826. " content: ',';\n",
  827. " padding-right: 5px;\n",
  828. "}\n",
  829. "\n",
  830. ".xr-has-index {\n",
  831. " font-weight: bold;\n",
  832. "}\n",
  833. "\n",
  834. ".xr-var-list,\n",
  835. ".xr-var-item {\n",
  836. " display: contents;\n",
  837. "}\n",
  838. "\n",
  839. ".xr-var-item > div,\n",
  840. ".xr-var-item label,\n",
  841. ".xr-var-item > .xr-var-name span {\n",
  842. " background-color: var(--xr-background-color-row-even);\n",
  843. " margin-bottom: 0;\n",
  844. "}\n",
  845. "\n",
  846. ".xr-var-item > .xr-var-name:hover span {\n",
  847. " padding-right: 5px;\n",
  848. "}\n",
  849. "\n",
  850. ".xr-var-list > li:nth-child(odd) > div,\n",
  851. ".xr-var-list > li:nth-child(odd) > label,\n",
  852. ".xr-var-list > li:nth-child(odd) > .xr-var-name span {\n",
  853. " background-color: var(--xr-background-color-row-odd);\n",
  854. "}\n",
  855. "\n",
  856. ".xr-var-name {\n",
  857. " grid-column: 1;\n",
  858. "}\n",
  859. "\n",
  860. ".xr-var-dims {\n",
  861. " grid-column: 2;\n",
  862. "}\n",
  863. "\n",
  864. ".xr-var-dtype {\n",
  865. " grid-column: 3;\n",
  866. " text-align: right;\n",
  867. " color: var(--xr-font-color2);\n",
  868. "}\n",
  869. "\n",
  870. ".xr-var-preview {\n",
  871. " grid-column: 4;\n",
  872. "}\n",
  873. "\n",
  874. ".xr-index-preview {\n",
  875. " grid-column: 2 / 5;\n",
  876. " color: var(--xr-font-color2);\n",
  877. "}\n",
  878. "\n",
  879. ".xr-var-name,\n",
  880. ".xr-var-dims,\n",
  881. ".xr-var-dtype,\n",
  882. ".xr-preview,\n",
  883. ".xr-attrs dt {\n",
  884. " white-space: nowrap;\n",
  885. " overflow: hidden;\n",
  886. " text-overflow: ellipsis;\n",
  887. " padding-right: 10px;\n",
  888. "}\n",
  889. "\n",
  890. ".xr-var-name:hover,\n",
  891. ".xr-var-dims:hover,\n",
  892. ".xr-var-dtype:hover,\n",
  893. ".xr-attrs dt:hover {\n",
  894. " overflow: visible;\n",
  895. " width: auto;\n",
  896. " z-index: 1;\n",
  897. "}\n",
  898. "\n",
  899. ".xr-var-attrs,\n",
  900. ".xr-var-data,\n",
  901. ".xr-index-data {\n",
  902. " display: none;\n",
  903. " background-color: var(--xr-background-color) !important;\n",
  904. " padding-bottom: 5px !important;\n",
  905. "}\n",
  906. "\n",
  907. ".xr-var-attrs-in:checked ~ .xr-var-attrs,\n",
  908. ".xr-var-data-in:checked ~ .xr-var-data,\n",
  909. ".xr-index-data-in:checked ~ .xr-index-data {\n",
  910. " display: block;\n",
  911. "}\n",
  912. "\n",
  913. ".xr-var-data > table {\n",
  914. " float: right;\n",
  915. "}\n",
  916. "\n",
  917. ".xr-var-name span,\n",
  918. ".xr-var-data,\n",
  919. ".xr-index-name div,\n",
  920. ".xr-index-data,\n",
  921. ".xr-attrs {\n",
  922. " padding-left: 25px !important;\n",
  923. "}\n",
  924. "\n",
  925. ".xr-attrs,\n",
  926. ".xr-var-attrs,\n",
  927. ".xr-var-data,\n",
  928. ".xr-index-data {\n",
  929. " grid-column: 1 / -1;\n",
  930. "}\n",
  931. "\n",
  932. "dl.xr-attrs {\n",
  933. " padding: 0;\n",
  934. " margin: 0;\n",
  935. " display: grid;\n",
  936. " grid-template-columns: 125px auto;\n",
  937. "}\n",
  938. "\n",
  939. ".xr-attrs dt,\n",
  940. ".xr-attrs dd {\n",
  941. " padding: 0;\n",
  942. " margin: 0;\n",
  943. " float: left;\n",
  944. " padding-right: 10px;\n",
  945. " width: auto;\n",
  946. "}\n",
  947. "\n",
  948. ".xr-attrs dt {\n",
  949. " font-weight: normal;\n",
  950. " grid-column: 1;\n",
  951. "}\n",
  952. "\n",
  953. ".xr-attrs dt:hover span {\n",
  954. " display: inline-block;\n",
  955. " background: var(--xr-background-color);\n",
  956. " padding-right: 10px;\n",
  957. "}\n",
  958. "\n",
  959. ".xr-attrs dd {\n",
  960. " grid-column: 2;\n",
  961. " white-space: pre-wrap;\n",
  962. " word-break: break-all;\n",
  963. "}\n",
  964. "\n",
  965. ".xr-icon-database,\n",
  966. ".xr-icon-file-text2,\n",
  967. ".xr-no-icon {\n",
  968. " display: inline-block;\n",
  969. " vertical-align: middle;\n",
  970. " width: 1em;\n",
  971. " height: 1.5em !important;\n",
  972. " stroke-width: 0;\n",
  973. " stroke: currentColor;\n",
  974. " fill: currentColor;\n",
  975. "}\n",
  976. "</style><pre class='xr-text-repr-fallback'>&lt;xarray.Dataset&gt;\n",
  977. "Dimensions: (y: 1200, x: 1920)\n",
  978. "Dimensions without coordinates: y, x\n",
  979. "Data variables:\n",
  980. " atoms (y, x) uint16 dask.array&lt;chunksize=(1200, 1920), meta=np.ndarray&gt;\n",
  981. " background (y, x) uint16 dask.array&lt;chunksize=(1200, 1920), meta=np.ndarray&gt;\n",
  982. " dark (y, x) uint16 dask.array&lt;chunksize=(1200, 1920), meta=np.ndarray&gt;\n",
  983. " shotNum int64 0\n",
  984. " OD (y, x) float64 dask.array&lt;chunksize=(1200, 1920), meta=np.ndarray&gt;\n",
  985. "Attributes: (12/96)\n",
  986. " TOF_free: 0.02\n",
  987. " abs_img_freq: 110.858\n",
  988. " absorption_imaging_flag: True\n",
  989. " backup_data: True\n",
  990. " blink_off_time: nan\n",
  991. " blink_on_time: nan\n",
  992. " ... ...\n",
  993. " y_offset: 0\n",
  994. " y_offset_img: 0\n",
  995. " z_offset: 0.189\n",
  996. " z_offset_img: 0.189\n",
  997. " scanAxis: []\n",
  998. " scanAxisLength: []</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.Dataset</div></div><ul class='xr-sections'><li class='xr-section-item'><input id='section-c6409470-b974-4710-947f-9c7221cd6785' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-c6409470-b974-4710-947f-9c7221cd6785' class='xr-section-summary' title='Expand/collapse section'>Dimensions:</label><div class='xr-section-inline-details'><ul class='xr-dim-list'><li><span>y</span>: 1200</li><li><span>x</span>: 1920</li></ul></div><div class='xr-section-details'></div></li><li class='xr-section-item'><input id='section-83d6b4ad-9415-4693-acb9-22158ac310d7' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-83d6b4ad-9415-4693-acb9-22158ac310d7' class='xr-section-summary' title='Expand/collapse section'>Coordinates: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'></ul></div></li><li class='xr-section-item'><input id='section-514c1139-1c51-492a-9bae-2578d4d55911' class='xr-section-summary-in' type='checkbox' checked><label for='section-514c1139-1c51-492a-9bae-2578d4d55911' class='xr-section-summary' >Data variables: <span>(5)</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>atoms</span></div><div class='xr-var-dims'>(y, x)</div><div class='xr-var-dtype'>uint16</div><div class='xr-var-preview xr-preview'>dask.array&lt;chunksize=(1200, 1920), meta=np.ndarray&gt;</div><input id='attrs-fbb285cd-1b5a-47d7-8cf3-38acc14f2812' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-fbb285cd-1b5a-47d7-8cf3-38acc14f2812' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-d8960312-9826-4051-bd0a-5f234daa7481' class='xr-var-data-in' type='checkbox'><label for='data-d8960312-9826-4051-bd0a-5f234daa7481' 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'><dt><span>IMAGE_SUBCLASS :</span></dt><dd>IMAGE_GRAYSCALE</dd><dt><span>IMAGE_VERSION :</span></dt><dd>1.2</dd><dt><span>IMAGE_WHITE_IS_ZERO :</span></dt><dd>0</dd></dl></div><div class='xr-var-data'><table>\n",
  999. " <tr>\n",
  1000. " <td>\n",
  1001. " <table style=\"border-collapse: collapse;\">\n",
  1002. " <thead>\n",
  1003. " <tr>\n",
  1004. " <td> </td>\n",
  1005. " <th> Array </th>\n",
  1006. " <th> Chunk </th>\n",
  1007. " </tr>\n",
  1008. " </thead>\n",
  1009. " <tbody>\n",
  1010. " \n",
  1011. " <tr>\n",
  1012. " <th> Bytes </th>\n",
  1013. " <td> 4.39 MiB </td>\n",
  1014. " <td> 4.39 MiB </td>\n",
  1015. " </tr>\n",
  1016. " \n",
  1017. " <tr>\n",
  1018. " <th> Shape </th>\n",
  1019. " <td> (1200, 1920) </td>\n",
  1020. " <td> (1200, 1920) </td>\n",
  1021. " </tr>\n",
  1022. " <tr>\n",
  1023. " <th> Dask graph </th>\n",
  1024. " <td colspan=\"2\"> 1 chunks in 2 graph layers </td>\n",
  1025. " </tr>\n",
  1026. " <tr>\n",
  1027. " <th> Data type </th>\n",
  1028. " <td colspan=\"2\"> uint16 numpy.ndarray </td>\n",
  1029. " </tr>\n",
  1030. " </tbody>\n",
  1031. " </table>\n",
  1032. " </td>\n",
  1033. " <td>\n",
  1034. " <svg width=\"170\" height=\"125\" style=\"stroke:rgb(0,0,0);stroke-width:1\" >\n",
  1035. "\n",
  1036. " <!-- Horizontal lines -->\n",
  1037. " <line x1=\"0\" y1=\"0\" x2=\"120\" y2=\"0\" style=\"stroke-width:2\" />\n",
  1038. " <line x1=\"0\" y1=\"75\" x2=\"120\" y2=\"75\" style=\"stroke-width:2\" />\n",
  1039. "\n",
  1040. " <!-- Vertical lines -->\n",
  1041. " <line x1=\"0\" y1=\"0\" x2=\"0\" y2=\"75\" style=\"stroke-width:2\" />\n",
  1042. " <line x1=\"120\" y1=\"0\" x2=\"120\" y2=\"75\" style=\"stroke-width:2\" />\n",
  1043. "\n",
  1044. " <!-- Colored Rectangle -->\n",
  1045. " <polygon points=\"0.0,0.0 120.0,0.0 120.0,75.0 0.0,75.0\" style=\"fill:#ECB172A0;stroke-width:0\"/>\n",
  1046. "\n",
  1047. " <!-- Text -->\n",
  1048. " <text x=\"60.000000\" y=\"95.000000\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" >1920</text>\n",
  1049. " <text x=\"140.000000\" y=\"37.500000\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" transform=\"rotate(-90,140.000000,37.500000)\">1200</text>\n",
  1050. "</svg>\n",
  1051. " </td>\n",
  1052. " </tr>\n",
  1053. "</table></div></li><li class='xr-var-item'><div class='xr-var-name'><span>background</span></div><div class='xr-var-dims'>(y, x)</div><div class='xr-var-dtype'>uint16</div><div class='xr-var-preview xr-preview'>dask.array&lt;chunksize=(1200, 1920), meta=np.ndarray&gt;</div><input id='attrs-3dd92625-0949-40dc-8e31-cb51b242f3f8' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-3dd92625-0949-40dc-8e31-cb51b242f3f8' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-62e7efad-494f-49ec-b557-aca60a8e58f2' class='xr-var-data-in' type='checkbox'><label for='data-62e7efad-494f-49ec-b557-aca60a8e58f2' 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'><dt><span>IMAGE_SUBCLASS :</span></dt><dd>IMAGE_GRAYSCALE</dd><dt><span>IMAGE_VERSION :</span></dt><dd>1.2</dd><dt><span>IMAGE_WHITE_IS_ZERO :</span></dt><dd>0</dd></dl></div><div class='xr-var-data'><table>\n",
  1054. " <tr>\n",
  1055. " <td>\n",
  1056. " <table style=\"border-collapse: collapse;\">\n",
  1057. " <thead>\n",
  1058. " <tr>\n",
  1059. " <td> </td>\n",
  1060. " <th> Array </th>\n",
  1061. " <th> Chunk </th>\n",
  1062. " </tr>\n",
  1063. " </thead>\n",
  1064. " <tbody>\n",
  1065. " \n",
  1066. " <tr>\n",
  1067. " <th> Bytes </th>\n",
  1068. " <td> 4.39 MiB </td>\n",
  1069. " <td> 4.39 MiB </td>\n",
  1070. " </tr>\n",
  1071. " \n",
  1072. " <tr>\n",
  1073. " <th> Shape </th>\n",
  1074. " <td> (1200, 1920) </td>\n",
  1075. " <td> (1200, 1920) </td>\n",
  1076. " </tr>\n",
  1077. " <tr>\n",
  1078. " <th> Dask graph </th>\n",
  1079. " <td colspan=\"2\"> 1 chunks in 2 graph layers </td>\n",
  1080. " </tr>\n",
  1081. " <tr>\n",
  1082. " <th> Data type </th>\n",
  1083. " <td colspan=\"2\"> uint16 numpy.ndarray </td>\n",
  1084. " </tr>\n",
  1085. " </tbody>\n",
  1086. " </table>\n",
  1087. " </td>\n",
  1088. " <td>\n",
  1089. " <svg width=\"170\" height=\"125\" style=\"stroke:rgb(0,0,0);stroke-width:1\" >\n",
  1090. "\n",
  1091. " <!-- Horizontal lines -->\n",
  1092. " <line x1=\"0\" y1=\"0\" x2=\"120\" y2=\"0\" style=\"stroke-width:2\" />\n",
  1093. " <line x1=\"0\" y1=\"75\" x2=\"120\" y2=\"75\" style=\"stroke-width:2\" />\n",
  1094. "\n",
  1095. " <!-- Vertical lines -->\n",
  1096. " <line x1=\"0\" y1=\"0\" x2=\"0\" y2=\"75\" style=\"stroke-width:2\" />\n",
  1097. " <line x1=\"120\" y1=\"0\" x2=\"120\" y2=\"75\" style=\"stroke-width:2\" />\n",
  1098. "\n",
  1099. " <!-- Colored Rectangle -->\n",
  1100. " <polygon points=\"0.0,0.0 120.0,0.0 120.0,75.0 0.0,75.0\" style=\"fill:#ECB172A0;stroke-width:0\"/>\n",
  1101. "\n",
  1102. " <!-- Text -->\n",
  1103. " <text x=\"60.000000\" y=\"95.000000\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" >1920</text>\n",
  1104. " <text x=\"140.000000\" y=\"37.500000\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" transform=\"rotate(-90,140.000000,37.500000)\">1200</text>\n",
  1105. "</svg>\n",
  1106. " </td>\n",
  1107. " </tr>\n",
  1108. "</table></div></li><li class='xr-var-item'><div class='xr-var-name'><span>dark</span></div><div class='xr-var-dims'>(y, x)</div><div class='xr-var-dtype'>uint16</div><div class='xr-var-preview xr-preview'>dask.array&lt;chunksize=(1200, 1920), meta=np.ndarray&gt;</div><input id='attrs-c771e47d-2a6d-4dfc-a6d7-c886ccb657f0' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-c771e47d-2a6d-4dfc-a6d7-c886ccb657f0' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-89b302d3-c9f7-4325-8ca3-872d30a4b2e2' class='xr-var-data-in' type='checkbox'><label for='data-89b302d3-c9f7-4325-8ca3-872d30a4b2e2' 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'><dt><span>IMAGE_SUBCLASS :</span></dt><dd>IMAGE_GRAYSCALE</dd><dt><span>IMAGE_VERSION :</span></dt><dd>1.2</dd><dt><span>IMAGE_WHITE_IS_ZERO :</span></dt><dd>0</dd></dl></div><div class='xr-var-data'><table>\n",
  1109. " <tr>\n",
  1110. " <td>\n",
  1111. " <table style=\"border-collapse: collapse;\">\n",
  1112. " <thead>\n",
  1113. " <tr>\n",
  1114. " <td> </td>\n",
  1115. " <th> Array </th>\n",
  1116. " <th> Chunk </th>\n",
  1117. " </tr>\n",
  1118. " </thead>\n",
  1119. " <tbody>\n",
  1120. " \n",
  1121. " <tr>\n",
  1122. " <th> Bytes </th>\n",
  1123. " <td> 4.39 MiB </td>\n",
  1124. " <td> 4.39 MiB </td>\n",
  1125. " </tr>\n",
  1126. " \n",
  1127. " <tr>\n",
  1128. " <th> Shape </th>\n",
  1129. " <td> (1200, 1920) </td>\n",
  1130. " <td> (1200, 1920) </td>\n",
  1131. " </tr>\n",
  1132. " <tr>\n",
  1133. " <th> Dask graph </th>\n",
  1134. " <td colspan=\"2\"> 1 chunks in 2 graph layers </td>\n",
  1135. " </tr>\n",
  1136. " <tr>\n",
  1137. " <th> Data type </th>\n",
  1138. " <td colspan=\"2\"> uint16 numpy.ndarray </td>\n",
  1139. " </tr>\n",
  1140. " </tbody>\n",
  1141. " </table>\n",
  1142. " </td>\n",
  1143. " <td>\n",
  1144. " <svg width=\"170\" height=\"125\" style=\"stroke:rgb(0,0,0);stroke-width:1\" >\n",
  1145. "\n",
  1146. " <!-- Horizontal lines -->\n",
  1147. " <line x1=\"0\" y1=\"0\" x2=\"120\" y2=\"0\" style=\"stroke-width:2\" />\n",
  1148. " <line x1=\"0\" y1=\"75\" x2=\"120\" y2=\"75\" style=\"stroke-width:2\" />\n",
  1149. "\n",
  1150. " <!-- Vertical lines -->\n",
  1151. " <line x1=\"0\" y1=\"0\" x2=\"0\" y2=\"75\" style=\"stroke-width:2\" />\n",
  1152. " <line x1=\"120\" y1=\"0\" x2=\"120\" y2=\"75\" style=\"stroke-width:2\" />\n",
  1153. "\n",
  1154. " <!-- Colored Rectangle -->\n",
  1155. " <polygon points=\"0.0,0.0 120.0,0.0 120.0,75.0 0.0,75.0\" style=\"fill:#ECB172A0;stroke-width:0\"/>\n",
  1156. "\n",
  1157. " <!-- Text -->\n",
  1158. " <text x=\"60.000000\" y=\"95.000000\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" >1920</text>\n",
  1159. " <text x=\"140.000000\" y=\"37.500000\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" transform=\"rotate(-90,140.000000,37.500000)\">1200</text>\n",
  1160. "</svg>\n",
  1161. " </td>\n",
  1162. " </tr>\n",
  1163. "</table></div></li><li class='xr-var-item'><div class='xr-var-name'><span>shotNum</span></div><div class='xr-var-dims'>()</div><div class='xr-var-dtype'>int64</div><div class='xr-var-preview xr-preview'>0</div><input id='attrs-fb0f62b1-bd1f-4126-9fa1-816e88474a57' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-fb0f62b1-bd1f-4126-9fa1-816e88474a57' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-4be39c24-e4d6-4de1-bb57-23a178a9aa56' class='xr-var-data-in' type='checkbox'><label for='data-4be39c24-e4d6-4de1-bb57-23a178a9aa56' 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, dtype=int64)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>OD</span></div><div class='xr-var-dims'>(y, x)</div><div class='xr-var-dtype'>float64</div><div class='xr-var-preview xr-preview'>dask.array&lt;chunksize=(1200, 1920), meta=np.ndarray&gt;</div><input id='attrs-37f08855-30e7-4226-b6a5-93d452d4743f' class='xr-var-attrs-in' type='checkbox' ><label for='attrs-37f08855-30e7-4226-b6a5-93d452d4743f' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-32e72f21-edc9-45dd-a58e-9ff5e858c05e' class='xr-var-data-in' type='checkbox'><label for='data-32e72f21-edc9-45dd-a58e-9ff5e858c05e' 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'><dt><span>IMAGE_SUBCLASS :</span></dt><dd>IMAGE_GRAYSCALE</dd><dt><span>IMAGE_VERSION :</span></dt><dd>1.2</dd><dt><span>IMAGE_WHITE_IS_ZERO :</span></dt><dd>0</dd></dl></div><div class='xr-var-data'><table>\n",
  1164. " <tr>\n",
  1165. " <td>\n",
  1166. " <table style=\"border-collapse: collapse;\">\n",
  1167. " <thead>\n",
  1168. " <tr>\n",
  1169. " <td> </td>\n",
  1170. " <th> Array </th>\n",
  1171. " <th> Chunk </th>\n",
  1172. " </tr>\n",
  1173. " </thead>\n",
  1174. " <tbody>\n",
  1175. " \n",
  1176. " <tr>\n",
  1177. " <th> Bytes </th>\n",
  1178. " <td> 17.58 MiB </td>\n",
  1179. " <td> 17.58 MiB </td>\n",
  1180. " </tr>\n",
  1181. " \n",
  1182. " <tr>\n",
  1183. " <th> Shape </th>\n",
  1184. " <td> (1200, 1920) </td>\n",
  1185. " <td> (1200, 1920) </td>\n",
  1186. " </tr>\n",
  1187. " <tr>\n",
  1188. " <th> Dask graph </th>\n",
  1189. " <td colspan=\"2\"> 1 chunks in 16 graph layers </td>\n",
  1190. " </tr>\n",
  1191. " <tr>\n",
  1192. " <th> Data type </th>\n",
  1193. " <td colspan=\"2\"> float64 numpy.ndarray </td>\n",
  1194. " </tr>\n",
  1195. " </tbody>\n",
  1196. " </table>\n",
  1197. " </td>\n",
  1198. " <td>\n",
  1199. " <svg width=\"170\" height=\"125\" style=\"stroke:rgb(0,0,0);stroke-width:1\" >\n",
  1200. "\n",
  1201. " <!-- Horizontal lines -->\n",
  1202. " <line x1=\"0\" y1=\"0\" x2=\"120\" y2=\"0\" style=\"stroke-width:2\" />\n",
  1203. " <line x1=\"0\" y1=\"75\" x2=\"120\" y2=\"75\" style=\"stroke-width:2\" />\n",
  1204. "\n",
  1205. " <!-- Vertical lines -->\n",
  1206. " <line x1=\"0\" y1=\"0\" x2=\"0\" y2=\"75\" style=\"stroke-width:2\" />\n",
  1207. " <line x1=\"120\" y1=\"0\" x2=\"120\" y2=\"75\" style=\"stroke-width:2\" />\n",
  1208. "\n",
  1209. " <!-- Colored Rectangle -->\n",
  1210. " <polygon points=\"0.0,0.0 120.0,0.0 120.0,75.0 0.0,75.0\" style=\"fill:#ECB172A0;stroke-width:0\"/>\n",
  1211. "\n",
  1212. " <!-- Text -->\n",
  1213. " <text x=\"60.000000\" y=\"95.000000\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" >1920</text>\n",
  1214. " <text x=\"140.000000\" y=\"37.500000\" font-size=\"1.0rem\" font-weight=\"100\" text-anchor=\"middle\" transform=\"rotate(-90,140.000000,37.500000)\">1200</text>\n",
  1215. "</svg>\n",
  1216. " </td>\n",
  1217. " </tr>\n",
  1218. "</table></div></li></ul></div></li><li class='xr-section-item'><input id='section-0af79019-0843-4663-9a2e-6cd3a9028e04' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-0af79019-0843-4663-9a2e-6cd3a9028e04' class='xr-section-summary' title='Expand/collapse section'>Indexes: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'></ul></div></li><li class='xr-section-item'><input id='section-9db6a54c-573c-47c9-b6a3-c845a2466e40' class='xr-section-summary-in' type='checkbox' ><label for='section-9db6a54c-573c-47c9-b6a3-c845a2466e40' class='xr-section-summary' >Attributes: <span>(96)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><dl class='xr-attrs'><dt><span>TOF_free :</span></dt><dd>0.02</dd><dt><span>abs_img_freq :</span></dt><dd>110.858</dd><dt><span>absorption_imaging_flag :</span></dt><dd>True</dd><dt><span>backup_data :</span></dt><dd>True</dd><dt><span>blink_off_time :</span></dt><dd>nan</dd><dt><span>blink_on_time :</span></dt><dd>nan</dd><dt><span>c_duration :</span></dt><dd>0.2</dd><dt><span>cmot_final_current :</span></dt><dd>0.65</dd><dt><span>cmot_hold :</span></dt><dd>0.06</dd><dt><span>cmot_initial_current :</span></dt><dd>0.18</dd><dt><span>compX_current :</span></dt><dd>0.005</dd><dt><span>compX_current_sg :</span></dt><dd>0</dd><dt><span>compX_final_current :</span></dt><dd>0.005</dd><dt><span>compX_initial_current :</span></dt><dd>0.005</dd><dt><span>compY_current :</span></dt><dd>0</dd><dt><span>compY_current_sg :</span></dt><dd>0</dd><dt><span>compY_final_current :</span></dt><dd>0.0</dd><dt><span>compY_initial_current :</span></dt><dd>0</dd><dt><span>compZ_current :</span></dt><dd>0</dd><dt><span>compZ_current_sg :</span></dt><dd>0.189</dd><dt><span>compZ_final_current :</span></dt><dd>0.2812</dd><dt><span>compZ_initial_current :</span></dt><dd>0</dd><dt><span>default_camera :</span></dt><dd>0</dd><dt><span>evap_1_arm_1_final_pow :</span></dt><dd>0.35</dd><dt><span>evap_1_arm_1_mod_depth_final :</span></dt><dd>0</dd><dt><span>evap_1_arm_1_mod_depth_initial :</span></dt><dd>1.0</dd><dt><span>evap_1_arm_1_mod_ramp_duration :</span></dt><dd>1.15</dd><dt><span>evap_1_arm_1_pow_ramp_duration :</span></dt><dd>1.65</dd><dt><span>evap_1_arm_1_start_pow :</span></dt><dd>7</dd><dt><span>evap_1_arm_2_final_pow :</span></dt><dd>5</dd><dt><span>evap_1_arm_2_ramp_duration :</span></dt><dd>0.5</dd><dt><span>evap_1_arm_2_start_pow :</span></dt><dd>0</dd><dt><span>evap_1_mod_ramp_trunc_value :</span></dt><dd>1</dd><dt><span>evap_1_pow_ramp_trunc_value :</span></dt><dd>1.0</dd><dt><span>evap_1_rate_constant_1 :</span></dt><dd>0.525</dd><dt><span>evap_1_rate_constant_2 :</span></dt><dd>0.51</dd><dt><span>evap_2_arm_1_final_pow :</span></dt><dd>0.037</dd><dt><span>evap_2_arm_1_start_pow :</span></dt><dd>0.35</dd><dt><span>evap_2_arm_2_final_pow :</span></dt><dd>0.09</dd><dt><span>evap_2_arm_2_start_pow :</span></dt><dd>5</dd><dt><span>evap_2_ramp_duration :</span></dt><dd>1.0</dd><dt><span>evap_2_ramp_trunc_value :</span></dt><dd>0.7</dd><dt><span>evap_2_rate_constant_1 :</span></dt><dd>0.37</dd><dt><span>evap_2_rate_constant_2 :</span></dt><dd>0.71</dd><dt><span>evap_3_arm_1_final_pow :</span></dt><dd>0.1038</dd><dt><span>evap_3_arm_1_mod_depth_final :</span></dt><dd>0.43</dd><dt><span>evap_3_arm_1_mod_depth_initial :</span></dt><dd>0</dd><dt><span>evap_3_arm_1_start_pow :</span></dt><dd>0.037</dd><dt><span>evap_3_ramp_duration :</span></dt><dd>0.1</dd><dt><span>evap_3_ramp_trunc_value :</span></dt><dd>1</dd><dt><span>evap_3_rate_constant_1 :</span></dt><dd>-0.879</dd><dt><span>evap_3_rate_constant_2 :</span></dt><dd>-0.297</dd><dt><span>final_amp :</span></dt><dd>8e-05</dd><dt><span>final_freq :</span></dt><dd>104.0</dd><dt><span>gradCoil_current :</span></dt><dd>0.18</dd><dt><span>gradCoil_current_sg :</span></dt><dd>0</dd><dt><span>imaging_method :</span></dt><dd>in_situ_absorption</dd><dt><span>imaging_pulse_duration :</span></dt><dd>2.5e-05</dd><dt><span>imaging_wav
  1219. ],
  1220. "text/plain": [
  1221. "<xarray.Dataset>\n",
  1222. "Dimensions: (y: 1200, x: 1920)\n",
  1223. "Dimensions without coordinates: y, x\n",
  1224. "Data variables:\n",
  1225. " atoms (y, x) uint16 dask.array<chunksize=(1200, 1920), meta=np.ndarray>\n",
  1226. " background (y, x) uint16 dask.array<chunksize=(1200, 1920), meta=np.ndarray>\n",
  1227. " dark (y, x) uint16 dask.array<chunksize=(1200, 1920), meta=np.ndarray>\n",
  1228. " shotNum int64 0\n",
  1229. " OD (y, x) float64 dask.array<chunksize=(1200, 1920), meta=np.ndarray>\n",
  1230. "Attributes: (12/96)\n",
  1231. " TOF_free: 0.02\n",
  1232. " abs_img_freq: 110.858\n",
  1233. " absorption_imaging_flag: True\n",
  1234. " backup_data: True\n",
  1235. " blink_off_time: nan\n",
  1236. " blink_on_time: nan\n",
  1237. " ... ...\n",
  1238. " y_offset: 0\n",
  1239. " y_offset_img: 0\n",
  1240. " z_offset: 0.189\n",
  1241. " z_offset_img: 0.189\n",
  1242. " scanAxis: []\n",
  1243. " scanAxisLength: []"
  1244. ]
  1245. },
  1246. "execution_count": 7,
  1247. "metadata": {},
  1248. "output_type": "execute_result"
  1249. }
  1250. ],
  1251. "source": [
  1252. "shotNum = \"0069\"\n",
  1253. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  1254. "# filePath = \"//DyLabNAS/Data/Evaporative_Cooling/2023/05/12/0065/*.h5\"\n",
  1255. "filePath = './result_from_experiment/2023-04-24/0013/2023-04-24_0013_Evaporative_Cooling_08.h5'\n",
  1256. "\n",
  1257. "dataSetDict = {\n",
  1258. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  1259. " for i in [0] # range(len(groupList))\n",
  1260. "}\n",
  1261. "\n",
  1262. "dataSet = dataSetDict[\"camera_1\"]\n",
  1263. "dataSet = swap_xy(dataSet)\n",
  1264. "\n",
  1265. "scanAxis = get_scanAxis(dataSet)\n",
  1266. "\n",
  1267. "dataSet = auto_rechunk(dataSet)\n",
  1268. "\n",
  1269. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  1270. "\n",
  1271. "dataSet"
  1272. ]
  1273. },
  1274. {
  1275. "attachments": {},
  1276. "cell_type": "markdown",
  1277. "metadata": {},
  1278. "source": [
  1279. "## Calculate an plot OD images"
  1280. ]
  1281. },
  1282. {
  1283. "cell_type": "code",
  1284. "execution_count": 8,
  1285. "metadata": {},
  1286. "outputs": [
  1287. {
  1288. "data": {
  1289. "image/png": "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
  1290. "text/plain": [
  1291. "<Figure size 640x480 with 2 Axes>"
  1292. ]
  1293. },
  1294. "metadata": {},
  1295. "output_type": "display_data"
  1296. }
  1297. ],
  1298. "source": [
  1299. "# imageAnalyser.center = (960, 1040)\n",
  1300. "# imageAnalyser.span = (100, 100)\n",
  1301. "# imageAnalyser.fraction = (0.1, 0.1)\n",
  1302. "\n",
  1303. "imageAnalyser.center = (960, 875)\n",
  1304. "imageAnalyser.span = (300, 300)\n",
  1305. "imageAnalyser.fraction = (0.1, 0.1)\n",
  1306. "\n",
  1307. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  1308. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  1309. "\n",
  1310. "dataSet_cropOD.plot.pcolormesh(cmap='jet', vmin=0, col=scanAxis[0], row=scanAxis[1])\n",
  1311. "plt.show()"
  1312. ]
  1313. },
  1314. {
  1315. "attachments": {},
  1316. "cell_type": "markdown",
  1317. "metadata": {},
  1318. "source": [
  1319. "## Do a 2D two-peak gaussian fit to the OD images"
  1320. ]
  1321. },
  1322. {
  1323. "attachments": {},
  1324. "cell_type": "markdown",
  1325. "metadata": {},
  1326. "source": [
  1327. "### Do the fit"
  1328. ]
  1329. },
  1330. {
  1331. "cell_type": "code",
  1332. "execution_count": 9,
  1333. "metadata": {},
  1334. "outputs": [
  1335. {
  1336. "name": "stderr",
  1337. "output_type": "stream",
  1338. "text": [
  1339. "f:\\Jianshun\\analyseScript\\Analyser\\FitAnalyser.py:84: RuntimeWarning: invalid value encountered in power\n",
  1340. " res = (1- ((x-centerx)/(sigmax))**2 - ((y-centery)/(sigmay))**2)**(3 / 2)\n"
  1341. ]
  1342. }
  1343. ],
  1344. "source": [
  1345. "from Analyser.FitAnalyser import ThomasFermi2dModel, DensityProfileBEC2dModel, polylog2_2d\n",
  1346. "\n",
  1347. "fitModel = DensityProfileBEC2dModel()\n",
  1348. "# fitModel = ThomasFermi2dModel()\n",
  1349. "\n",
  1350. "fitAnalyser = FitAnalyser(fitModel, fitDim=2)\n",
  1351. "\n",
  1352. "# fitAnalyser = FitAnalyser(\"Gaussian-2D\", fitDim=2)\n",
  1353. "\n",
  1354. "# dataSet_cropOD = dataSet_cropOD.chunk((1,1,100,100))\n",
  1355. "\n",
  1356. "params = fitAnalyser.guess(dataSet_cropOD, guess_kwargs=dict(pureBECThreshold=0.3), dask=\"parallelized\")\n",
  1357. "fitResult = fitAnalyser.fit(dataSet_cropOD, params).load()"
  1358. ]
  1359. },
  1360. {
  1361. "cell_type": "code",
  1362. "execution_count": 10,
  1363. "metadata": {},
  1364. "outputs": [
  1365. {
  1366. "data": {
  1367. "text/html": [
  1368. "<table><tr><th> name </th><th> value </th><th> initial value </th><th> min </th><th> max </th><th> vary </th><th> expression </th></tr><tr><td> BEC_amplitude </td><td> 0.00000000 </td><td> None </td><td> 0.00000000 </td><td> inf </td><td> True </td><td> </td></tr><tr><td> thermal_amplitude </td><td> 3073.52821 </td><td> None </td><td> 0.00000000 </td><td> inf </td><td> True </td><td> </td></tr><tr><td> BEC_centerx </td><td> 146.943010 </td><td> None </td><td> -inf </td><td> inf </td><td> True </td><td> </td></tr><tr><td> BEC_centery </td><td> 147.472246 </td><td> None </td><td> -inf </td><td> inf </td><td> True </td><td> </td></tr><tr><td> thermal_centerx </td><td> 120.557038 </td><td> None </td><td> -inf </td><td> inf </td><td> True </td><td> </td></tr><tr><td> thermal_centery </td><td> 179.364624 </td><td> None </td><td> -inf </td><td> inf </td><td> True </td><td> </td></tr><tr><td> BEC_sigmax </td><td> 17.1554887 </td><td> None </td><td> 0.00000000 </td><td> inf </td><td> True </td><td> </td></tr><tr><td> BEC_sigmay </td><td> 18.3156015 </td><td> None </td><td> 0.00000000 </td><td> inf </td><td> True </td><td> </td></tr><tr><td> thermal_sigmax </td><td> 71.8465440 </td><td> None </td><td> 0.00000000 </td><td> inf </td><td> True </td><td> </td></tr><tr><td> thermal_sigmay </td><td> 86.2158528 </td><td> None </td><td> -inf </td><td> inf </td><td> False </td><td> thermalAspectRatio * thermal_sigmax </td></tr><tr><td> thermalAspectRatio </td><td> 1.20000000 </td><td> None </td><td> 0.80000000 </td><td> 1.20000000 </td><td> True </td><td> </td></tr><tr><td> condensate_fraction </td><td> 0.00000000 </td><td> None </td><td> -inf </td><td> inf </td><td> False </td><td> BEC_amplitude / (BEC_amplitude + thermal_amplitude) </td></tr></table>"
  1369. ],
  1370. "text/plain": [
  1371. "Parameters([('BEC_amplitude', <Parameter 'BEC_amplitude', value=0, bounds=[0:inf]>), ('thermal_amplitude', <Parameter 'thermal_amplitude', value=3073.528205527723, bounds=[0:inf]>), ('BEC_centerx', <Parameter 'BEC_centerx', value=146.94301032591366, bounds=[-inf:inf]>), ('BEC_centery', <Parameter 'BEC_centery', value=147.47224593536436, bounds=[-inf:inf]>), ('thermal_centerx', <Parameter 'thermal_centerx', value=120.55703835420424, bounds=[-inf:inf]>), ('thermal_centery', <Parameter 'thermal_centery', value=179.3646237177809, bounds=[-inf:inf]>), ('BEC_sigmax', <Parameter 'BEC_sigmax', value=17.155488681677085, bounds=[0:inf]>), ('BEC_sigmay', <Parameter 'BEC_sigmay', value=18.315601451967396, bounds=[0:inf]>), ('thermal_sigmax', <Parameter 'thermal_sigmax', value=71.84654400127174, bounds=[0:inf]>), ('thermal_sigmay', <Parameter 'thermal_sigmay', value=86.21585280152608, bounds=[-inf:inf], expr='thermalAspectRatio * thermal_sigmax'>), ('thermalAspectRatio', <Parameter 'thermalAspectRatio', value=1.2, bounds=[0.8:1.2]>), ('condensate_fraction', <Parameter 'condensate_fraction', value=0.0, bounds=[-inf:inf], expr='BEC_amplitude / (BEC_amplitude + thermal_amplitude)'>)])"
  1372. ]
  1373. },
  1374. "execution_count": 10,
  1375. "metadata": {},
  1376. "output_type": "execute_result"
  1377. }
  1378. ],
  1379. "source": [
  1380. "params.compute().item()"
  1381. ]
  1382. },
  1383. {
  1384. "cell_type": "code",
  1385. "execution_count": 11,
  1386. "metadata": {},
  1387. "outputs": [
  1388. {
  1389. "data": {
  1390. "text/plain": [
  1391. "<matplotlib.collections.QuadMesh at 0x1bdd890dfa0>"
  1392. ]
  1393. },
  1394. "execution_count": 11,
  1395. "metadata": {},
  1396. "output_type": "execute_result"
  1397. },
  1398. {
  1399. "data": {
  1400. "image/png": "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
  1401. "text/plain": [
  1402. "<Figure size 640x480 with 2 Axes>"
  1403. ]
  1404. },
  1405. "metadata": {},
  1406. "output_type": "display_data"
  1407. }
  1408. ],
  1409. "source": [
  1410. "fitCurve = fitAnalyser.eval(fitResult, x=np.arange(300), y=np.arange(300), dask=\"parallelized\").load()\n",
  1411. "\n",
  1412. "fitCurve.plot.pcolormesh(cmap='jet', vmin=0, col=scanAxis[0], row=scanAxis[1])"
  1413. ]
  1414. },
  1415. {
  1416. "cell_type": "code",
  1417. "execution_count": 12,
  1418. "metadata": {},
  1419. "outputs": [],
  1420. "source": [
  1421. "fitModel2 = Polylog22dModel(prefix='thermal_')\n",
  1422. "fitAnalyser2 = FitAnalyser(fitModel2, fitDim=2)\n",
  1423. "fitCurve2 = fitAnalyser2.eval(fitResult, x=np.arange(100), y=np.arange(100), dask=\"parallelized\").load()\n",
  1424. "\n",
  1425. "fitModel3 = ThomasFermi2dModel(prefix='BEC_')\n",
  1426. "fitAnalyser3 = FitAnalyser(fitModel3, fitDim=2)\n",
  1427. "fitCurve3 = fitAnalyser3.eval(fitResult, x=np.arange(100), y=np.arange(100), dask=\"parallelized\").load()"
  1428. ]
  1429. },
  1430. {
  1431. "cell_type": "code",
  1432. "execution_count": 13,
  1433. "metadata": {},
  1434. "outputs": [
  1435. {
  1436. "data": {
  1437. "image/png": "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
  1438. "text/plain": [
  1439. "<Figure size 640x480 with 1 Axes>"
  1440. ]
  1441. },
  1442. "metadata": {},
  1443. "output_type": "display_data"
  1444. },
  1445. {
  1446. "data": {
  1447. "image/png": "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
  1448. "text/plain": [
  1449. "<Figure size 640x480 with 1 Axes>"
  1450. ]
  1451. },
  1452. "metadata": {},
  1453. "output_type": "display_data"
  1454. }
  1455. ],
  1456. "source": [
  1457. "fig = plt.figure()\n",
  1458. "ax = fig.gca()\n",
  1459. "\n",
  1460. "dataSet_cropOD.sum(dim='x').plot(ax=ax, col=scanAxis[0], row=scanAxis[1])\n",
  1461. "fitCurve.sum(dim='x').plot(ax=ax, col=scanAxis[0], row=scanAxis[1])\n",
  1462. "fitCurve2.sum(dim='x').plot(ax=ax, col=scanAxis[0], row=scanAxis[1])\n",
  1463. "fitCurve3.sum(dim='x').plot(ax=ax, col=scanAxis[0], row=scanAxis[1])\n",
  1464. "\n",
  1465. "plt.show()\n",
  1466. "\n",
  1467. "fig = plt.figure()\n",
  1468. "ax = fig.gca()\n",
  1469. "\n",
  1470. "dataSet_cropOD.sum(dim='y').plot(ax=ax, col=scanAxis[0], row=scanAxis[1])\n",
  1471. "fitCurve.sum(dim='y').plot(ax=ax, col=scanAxis[0], row=scanAxis[1])\n",
  1472. "fitCurve2.sum(dim='y').plot(ax=ax, col=scanAxis[0], row=scanAxis[1])\n",
  1473. "fitCurve3.sum(dim='y').plot(ax=ax, col=scanAxis[0], row=scanAxis[1])\n",
  1474. "\n",
  1475. "plt.show()"
  1476. ]
  1477. },
  1478. {
  1479. "cell_type": "code",
  1480. "execution_count": 14,
  1481. "metadata": {},
  1482. "outputs": [
  1483. {
  1484. "name": "stderr",
  1485. "output_type": "stream",
  1486. "text": [
  1487. "C:\\Users\\data\\AppData\\Roaming\\Python\\Python39\\site-packages\\numpy\\lib\\function_base.py:2246: RuntimeWarning: invalid value encountered in _get_fit_full_result_single (vectorized)\n",
  1488. " outputs = ufunc(*inputs)\n"
  1489. ]
  1490. }
  1491. ],
  1492. "source": [
  1493. "value = fitAnalyser.get_fit_full_result(fitResult)"
  1494. ]
  1495. },
  1496. {
  1497. "cell_type": "code",
  1498. "execution_count": 15,
  1499. "metadata": {},
  1500. "outputs": [
  1501. {
  1502. "data": {
  1503. "text/html": [
  1504. "<div><svg style=\"position: absolute; width: 0; height: 0; overflow: hidden\">\n",
  1505. "<defs>\n",
  1506. "<symbol id=\"icon-database\" viewBox=\"0 0 32 32\">\n",
  1507. "<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",
  1508. "<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",
  1509. "<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",
  1510. "</symbol>\n",
  1511. "<symbol id=\"icon-file-text2\" viewBox=\"0 0 32 32\">\n",
  1512. "<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",
  1513. "<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",
  1514. "<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",
  1515. "<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",
  1516. "</symbol>\n",
  1517. "</defs>\n",
  1518. "</svg>\n",
  1519. "<style>/* CSS stylesheet for displaying xarray objects in jupyterlab.\n",
  1520. " *\n",
  1521. " */\n",
  1522. "\n",
  1523. ":root {\n",
  1524. " --xr-font-color0: var(--jp-content-font-color0, rgba(0, 0, 0, 1));\n",
  1525. " --xr-font-color2: var(--jp-content-font-color2, rgba(0, 0, 0, 0.54));\n",
  1526. " --xr-font-color3: var(--jp-content-font-color3, rgba(0, 0, 0, 0.38));\n",
  1527. " --xr-border-color: var(--jp-border-color2, #e0e0e0);\n",
  1528. " --xr-disabled-color: var(--jp-layout-color3, #bdbdbd);\n",
  1529. " --xr-background-color: var(--jp-layout-color0, white);\n",
  1530. " --xr-background-color-row-even: var(--jp-layout-color1, white);\n",
  1531. " --xr-background-color-row-odd: var(--jp-layout-color2, #eeeeee);\n",
  1532. "}\n",
  1533. "\n",
  1534. "html[theme=dark],\n",
  1535. "body[data-theme=dark],\n",
  1536. "body.vscode-dark {\n",
  1537. " --xr-font-color0: rgba(255, 255, 255, 1);\n",
  1538. " --xr-font-color2: rgba(255, 255, 255, 0.54);\n",
  1539. " --xr-font-color3: rgba(255, 255, 255, 0.38);\n",
  1540. " --xr-border-color: #1F1F1F;\n",
  1541. " --xr-disabled-color: #515151;\n",
  1542. " --xr-background-color: #111111;\n",
  1543. " --xr-background-color-row-even: #111111;\n",
  1544. " --xr-background-color-row-odd: #313131;\n",
  1545. "}\n",
  1546. "\n",
  1547. ".xr-wrap {\n",
  1548. " display: block !important;\n",
  1549. " min-width: 300px;\n",
  1550. " max-width: 700px;\n",
  1551. "}\n",
  1552. "\n",
  1553. ".xr-text-repr-fallback {\n",
  1554. " /* fallback to plain text repr when CSS is not injected (untrusted notebook) */\n",
  1555. " display: none;\n",
  1556. "}\n",
  1557. "\n",
  1558. ".xr-header {\n",
  1559. " padding-top: 6px;\n",
  1560. " padding-bottom: 6px;\n",
  1561. " margin-bottom: 4px;\n",
  1562. " border-bottom: solid 1px var(--xr-border-color);\n",
  1563. "}\n",
  1564. "\n",
  1565. ".xr-header > div,\n",
  1566. ".xr-header > ul {\n",
  1567. " display: inline;\n",
  1568. " margin-top: 0;\n",
  1569. " margin-bottom: 0;\n",
  1570. "}\n",
  1571. "\n",
  1572. ".xr-obj-type,\n",
  1573. ".xr-array-name {\n",
  1574. " margin-left: 2px;\n",
  1575. " margin-right: 10px;\n",
  1576. "}\n",
  1577. "\n",
  1578. ".xr-obj-type {\n",
  1579. " color: var(--xr-font-color2);\n",
  1580. "}\n",
  1581. "\n",
  1582. ".xr-sections {\n",
  1583. " padding-left: 0 !important;\n",
  1584. " display: grid;\n",
  1585. " grid-template-columns: 150px auto auto 1fr 20px 20px;\n",
  1586. "}\n",
  1587. "\n",
  1588. ".xr-section-item {\n",
  1589. " display: contents;\n",
  1590. "}\n",
  1591. "\n",
  1592. ".xr-section-item input {\n",
  1593. " display: none;\n",
  1594. "}\n",
  1595. "\n",
  1596. ".xr-section-item input + label {\n",
  1597. " color: var(--xr-disabled-color);\n",
  1598. "}\n",
  1599. "\n",
  1600. ".xr-section-item input:enabled + label {\n",
  1601. " cursor: pointer;\n",
  1602. " color: var(--xr-font-color2);\n",
  1603. "}\n",
  1604. "\n",
  1605. ".xr-section-item input:enabled + label:hover {\n",
  1606. " color: var(--xr-font-color0);\n",
  1607. "}\n",
  1608. "\n",
  1609. ".xr-section-summary {\n",
  1610. " grid-column: 1;\n",
  1611. " color: var(--xr-font-color2);\n",
  1612. " font-weight: 500;\n",
  1613. "}\n",
  1614. "\n",
  1615. ".xr-section-summary > span {\n",
  1616. " display: inline-block;\n",
  1617. " padding-left: 0.5em;\n",
  1618. "}\n",
  1619. "\n",
  1620. ".xr-section-summary-in:disabled + label {\n",
  1621. " color: var(--xr-font-color2);\n",
  1622. "}\n",
  1623. "\n",
  1624. ".xr-section-summary-in + label:before {\n",
  1625. " display: inline-block;\n",
  1626. " content: 'â–º';\n",
  1627. " font-size: 11px;\n",
  1628. " width: 15px;\n",
  1629. " text-align: center;\n",
  1630. "}\n",
  1631. "\n",
  1632. ".xr-section-summary-in:disabled + label:before {\n",
  1633. " color: var(--xr-disabled-color);\n",
  1634. "}\n",
  1635. "\n",
  1636. ".xr-section-summary-in:checked + label:before {\n",
  1637. " content: 'â–¼';\n",
  1638. "}\n",
  1639. "\n",
  1640. ".xr-section-summary-in:checked + label > span {\n",
  1641. " display: none;\n",
  1642. "}\n",
  1643. "\n",
  1644. ".xr-section-summary,\n",
  1645. ".xr-section-inline-details {\n",
  1646. " padding-top: 4px;\n",
  1647. " padding-bottom: 4px;\n",
  1648. "}\n",
  1649. "\n",
  1650. ".xr-section-inline-details {\n",
  1651. " grid-column: 2 / -1;\n",
  1652. "}\n",
  1653. "\n",
  1654. ".xr-section-details {\n",
  1655. " display: none;\n",
  1656. " grid-column: 1 / -1;\n",
  1657. " margin-bottom: 5px;\n",
  1658. "}\n",
  1659. "\n",
  1660. ".xr-section-summary-in:checked ~ .xr-section-details {\n",
  1661. " display: contents;\n",
  1662. "}\n",
  1663. "\n",
  1664. ".xr-array-wrap {\n",
  1665. " grid-column: 1 / -1;\n",
  1666. " display: grid;\n",
  1667. " grid-template-columns: 20px auto;\n",
  1668. "}\n",
  1669. "\n",
  1670. ".xr-array-wrap > label {\n",
  1671. " grid-column: 1;\n",
  1672. " vertical-align: top;\n",
  1673. "}\n",
  1674. "\n",
  1675. ".xr-preview {\n",
  1676. " color: var(--xr-font-color3);\n",
  1677. "}\n",
  1678. "\n",
  1679. ".xr-array-preview,\n",
  1680. ".xr-array-data {\n",
  1681. " padding: 0 5px !important;\n",
  1682. " grid-column: 2;\n",
  1683. "}\n",
  1684. "\n",
  1685. ".xr-array-data,\n",
  1686. ".xr-array-in:checked ~ .xr-array-preview {\n",
  1687. " display: none;\n",
  1688. "}\n",
  1689. "\n",
  1690. ".xr-array-in:checked ~ .xr-array-data,\n",
  1691. ".xr-array-preview {\n",
  1692. " display: inline-block;\n",
  1693. "}\n",
  1694. "\n",
  1695. ".xr-dim-list {\n",
  1696. " display: inline-block !important;\n",
  1697. " list-style: none;\n",
  1698. " padding: 0 !important;\n",
  1699. " margin: 0;\n",
  1700. "}\n",
  1701. "\n",
  1702. ".xr-dim-list li {\n",
  1703. " display: inline-block;\n",
  1704. " padding: 0;\n",
  1705. " margin: 0;\n",
  1706. "}\n",
  1707. "\n",
  1708. ".xr-dim-list:before {\n",
  1709. " content: '(';\n",
  1710. "}\n",
  1711. "\n",
  1712. ".xr-dim-list:after {\n",
  1713. " content: ')';\n",
  1714. "}\n",
  1715. "\n",
  1716. ".xr-dim-list li:not(:last-child):after {\n",
  1717. " content: ',';\n",
  1718. " padding-right: 5px;\n",
  1719. "}\n",
  1720. "\n",
  1721. ".xr-has-index {\n",
  1722. " font-weight: bold;\n",
  1723. "}\n",
  1724. "\n",
  1725. ".xr-var-list,\n",
  1726. ".xr-var-item {\n",
  1727. " display: contents;\n",
  1728. "}\n",
  1729. "\n",
  1730. ".xr-var-item > div,\n",
  1731. ".xr-var-item label,\n",
  1732. ".xr-var-item > .xr-var-name span {\n",
  1733. " background-color: var(--xr-background-color-row-even);\n",
  1734. " margin-bottom: 0;\n",
  1735. "}\n",
  1736. "\n",
  1737. ".xr-var-item > .xr-var-name:hover span {\n",
  1738. " padding-right: 5px;\n",
  1739. "}\n",
  1740. "\n",
  1741. ".xr-var-list > li:nth-child(odd) > div,\n",
  1742. ".xr-var-list > li:nth-child(odd) > label,\n",
  1743. ".xr-var-list > li:nth-child(odd) > .xr-var-name span {\n",
  1744. " background-color: var(--xr-background-color-row-odd);\n",
  1745. "}\n",
  1746. "\n",
  1747. ".xr-var-name {\n",
  1748. " grid-column: 1;\n",
  1749. "}\n",
  1750. "\n",
  1751. ".xr-var-dims {\n",
  1752. " grid-column: 2;\n",
  1753. "}\n",
  1754. "\n",
  1755. ".xr-var-dtype {\n",
  1756. " grid-column: 3;\n",
  1757. " text-align: right;\n",
  1758. " color: var(--xr-font-color2);\n",
  1759. "}\n",
  1760. "\n",
  1761. ".xr-var-preview {\n",
  1762. " grid-column: 4;\n",
  1763. "}\n",
  1764. "\n",
  1765. ".xr-index-preview {\n",
  1766. " grid-column: 2 / 5;\n",
  1767. " color: var(--xr-font-color2);\n",
  1768. "}\n",
  1769. "\n",
  1770. ".xr-var-name,\n",
  1771. ".xr-var-dims,\n",
  1772. ".xr-var-dtype,\n",
  1773. ".xr-preview,\n",
  1774. ".xr-attrs dt {\n",
  1775. " white-space: nowrap;\n",
  1776. " overflow: hidden;\n",
  1777. " text-overflow: ellipsis;\n",
  1778. " padding-right: 10px;\n",
  1779. "}\n",
  1780. "\n",
  1781. ".xr-var-name:hover,\n",
  1782. ".xr-var-dims:hover,\n",
  1783. ".xr-var-dtype:hover,\n",
  1784. ".xr-attrs dt:hover {\n",
  1785. " overflow: visible;\n",
  1786. " width: auto;\n",
  1787. " z-index: 1;\n",
  1788. "}\n",
  1789. "\n",
  1790. ".xr-var-attrs,\n",
  1791. ".xr-var-data,\n",
  1792. ".xr-index-data {\n",
  1793. " display: none;\n",
  1794. " background-color: var(--xr-background-color) !important;\n",
  1795. " padding-bottom: 5px !important;\n",
  1796. "}\n",
  1797. "\n",
  1798. ".xr-var-attrs-in:checked ~ .xr-var-attrs,\n",
  1799. ".xr-var-data-in:checked ~ .xr-var-data,\n",
  1800. ".xr-index-data-in:checked ~ .xr-index-data {\n",
  1801. " display: block;\n",
  1802. "}\n",
  1803. "\n",
  1804. ".xr-var-data > table {\n",
  1805. " float: right;\n",
  1806. "}\n",
  1807. "\n",
  1808. ".xr-var-name span,\n",
  1809. ".xr-var-data,\n",
  1810. ".xr-index-name div,\n",
  1811. ".xr-index-data,\n",
  1812. ".xr-attrs {\n",
  1813. " padding-left: 25px !important;\n",
  1814. "}\n",
  1815. "\n",
  1816. ".xr-attrs,\n",
  1817. ".xr-var-attrs,\n",
  1818. ".xr-var-data,\n",
  1819. ".xr-index-data {\n",
  1820. " grid-column: 1 / -1;\n",
  1821. "}\n",
  1822. "\n",
  1823. "dl.xr-attrs {\n",
  1824. " padding: 0;\n",
  1825. " margin: 0;\n",
  1826. " display: grid;\n",
  1827. " grid-template-columns: 125px auto;\n",
  1828. "}\n",
  1829. "\n",
  1830. ".xr-attrs dt,\n",
  1831. ".xr-attrs dd {\n",
  1832. " padding: 0;\n",
  1833. " margin: 0;\n",
  1834. " float: left;\n",
  1835. " padding-right: 10px;\n",
  1836. " width: auto;\n",
  1837. "}\n",
  1838. "\n",
  1839. ".xr-attrs dt {\n",
  1840. " font-weight: normal;\n",
  1841. " grid-column: 1;\n",
  1842. "}\n",
  1843. "\n",
  1844. ".xr-attrs dt:hover span {\n",
  1845. " display: inline-block;\n",
  1846. " background: var(--xr-background-color);\n",
  1847. " padding-right: 10px;\n",
  1848. "}\n",
  1849. "\n",
  1850. ".xr-attrs dd {\n",
  1851. " grid-column: 2;\n",
  1852. " white-space: pre-wrap;\n",
  1853. " word-break: break-all;\n",
  1854. "}\n",
  1855. "\n",
  1856. ".xr-icon-database,\n",
  1857. ".xr-icon-file-text2,\n",
  1858. ".xr-no-icon {\n",
  1859. " display: inline-block;\n",
  1860. " vertical-align: middle;\n",
  1861. " width: 1em;\n",
  1862. " height: 1.5em !important;\n",
  1863. " stroke-width: 0;\n",
  1864. " stroke: currentColor;\n",
  1865. " fill: currentColor;\n",
  1866. "}\n",
  1867. "</style><pre class='xr-text-repr-fallback'>&lt;xarray.Dataset&gt;\n",
  1868. "Dimensions: ()\n",
  1869. "Data variables:\n",
  1870. " BEC_amplitude object 0.0+/-nan\n",
  1871. " thermal_amplitude object 3066.9094836204504+/-nan\n",
  1872. " BEC_centerx object 146.94301032591366+/-nan\n",
  1873. " BEC_centery object 147.47224593536436+/-nan\n",
  1874. " thermal_centerx object 146.23870549779576+/-nan\n",
  1875. " thermal_centery object 148.7788885260284+/-nan\n",
  1876. " BEC_sigmax object 17.155488681677085+/-nan\n",
  1877. " BEC_sigmay object 18.315601451967396+/-nan\n",
  1878. " thermal_sigmax object 54.3744707945104+/-nan\n",
  1879. " thermal_sigmay object 65.24936495341248+/-nan\n",
  1880. " thermalAspectRatio object 1.2+/-nan\n",
  1881. " condensate_fraction object 0.0+/-nan</pre><div class='xr-wrap' style='display:none'><div class='xr-header'><div class='xr-obj-type'>xarray.Dataset</div></div><ul class='xr-sections'><li class='xr-section-item'><input id='section-778068f2-9916-45b1-88c5-daebb1468087' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-778068f2-9916-45b1-88c5-daebb1468087' class='xr-section-summary' title='Expand/collapse section'>Dimensions:</label><div class='xr-section-inline-details'></div><div class='xr-section-details'></div></li><li class='xr-section-item'><input id='section-e9afc879-eb5f-4b18-b43f-e02b503a70da' class='xr-section-summary-in' type='checkbox' disabled ><label for='section-e9afc879-eb5f-4b18-b43f-e02b503a70da' class='xr-section-summary' title='Expand/collapse section'>Coordinates: <span>(0)</span></label><div class='xr-section-inline-details'></div><div class='xr-section-details'><ul class='xr-var-list'></ul></div></li><li class='xr-section-item'><input id='section-95ca6adb-bf26-4d9f-9f6d-7a09056f366d' class='xr-section-summary-in' type='checkbox' checked><label for='section-95ca6adb-bf26-4d9f-9f6d-7a09056f366d' class='xr-section-summary' >Data variables: <span>(12)</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>BEC_amplitude</span></div><div class='xr-var-dims'>()</div><div class='xr-var-dtype'>object</div><div class='xr-var-preview xr-preview'>0.0+/-nan</div><input id='attrs-6c7a6cca-6c03-4e0f-8256-d2aa49b32534' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-6c7a6cca-6c03-4e0f-8256-d2aa49b32534' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-f2326020-1d64-492a-8fcd-84df392942a4' class='xr-var-data-in' type='checkbox'><label for='data-f2326020-1d64-492a-8fcd-84df392942a4' 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.0+/-nan, dtype=object)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>thermal_amplitude</span></div><div class='xr-var-dims'>()</div><div class='xr-var-dtype'>object</div><div class='xr-var-preview xr-preview'>3066.9094836204504+/-nan</div><input id='attrs-7a553c97-7292-405d-8f12-0fc16ed06209' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-7a553c97-7292-405d-8f12-0fc16ed06209' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-6c2d7a07-027a-4b41-bf82-bfa4018d5acf' class='xr-var-data-in' type='checkbox'><label for='data-6c2d7a07-027a-4b41-bf82-bfa4018d5acf' 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(3066.9094836204504+/-nan, dtype=object)</pre></div></li><li class='xr-var-item'><div class='xr-var-name'><span>BEC_centerx</span></div><div class='xr-var-dims'>()</div><div class='xr-var-dtype'>object</div><div class='xr-var-preview xr-preview'>146.94301032591366+/-nan</div><input id='attrs-e3a1da0b-6e8b-4623-a1e5-e1a81819ab2e' class='xr-var-attrs-in' type='checkbox' disabled><label for='attrs-e3a1da0b-6e8b-4623-a1e5-e1a81819ab2e' title='Show/Hide attributes'><svg class='icon xr-icon-file-text2'><use xlink:href='#icon-file-text2'></use></svg></label><input id='data-26391797-36df-49da-8213-8262d45bdfbb' class='xr-var-data-in' type='checkbox'><label for='data-26391797-36df-49da-8213-8262d45bdfbb' 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(146.94301032591366+/-nan, dtype=object)</pre></div></li><li class='xr-var-item'><div clas
  1882. ],
  1883. "text/plain": [
  1884. "<xarray.Dataset>\n",
  1885. "Dimensions: ()\n",
  1886. "Data variables:\n",
  1887. " BEC_amplitude object 0.0+/-nan\n",
  1888. " thermal_amplitude object 3066.9094836204504+/-nan\n",
  1889. " BEC_centerx object 146.94301032591366+/-nan\n",
  1890. " BEC_centery object 147.47224593536436+/-nan\n",
  1891. " thermal_centerx object 146.23870549779576+/-nan\n",
  1892. " thermal_centery object 148.7788885260284+/-nan\n",
  1893. " BEC_sigmax object 17.155488681677085+/-nan\n",
  1894. " BEC_sigmay object 18.315601451967396+/-nan\n",
  1895. " thermal_sigmax object 54.3744707945104+/-nan\n",
  1896. " thermal_sigmay object 65.24936495341248+/-nan\n",
  1897. " thermalAspectRatio object 1.2+/-nan\n",
  1898. " condensate_fraction object 0.0+/-nan"
  1899. ]
  1900. },
  1901. "execution_count": 15,
  1902. "metadata": {},
  1903. "output_type": "execute_result"
  1904. }
  1905. ],
  1906. "source": [
  1907. "value"
  1908. ]
  1909. },
  1910. {
  1911. "cell_type": "code",
  1912. "execution_count": 17,
  1913. "metadata": {},
  1914. "outputs": [
  1915. {
  1916. "ename": "ValueError",
  1917. "evalue": "unable to infer dtype on variable 'OD'; xarray cannot serialize arbitrary Python objects",
  1918. "output_type": "error",
  1919. "traceback": [
  1920. "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
  1921. "\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)",
  1922. "\u001b[1;32mf:\\Jianshun\\analyseScript\\test.ipynb Cell 25\u001b[0m in \u001b[0;36m1\n\u001b[1;32m----> <a href='vscode-notebook-cell:/f%3A/Jianshun/analyseScript/test.ipynb#Y216sZmlsZQ%3D%3D?line=0'>1</a>\u001b[0m fitResult\u001b[39m.\u001b[39;49mto_netcdf(\u001b[39m\"\u001b[39;49m\u001b[39msaved_on_disk.nc\u001b[39;49m\u001b[39m\"\u001b[39;49m)\n",
  1923. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\core\\dataarray.py:3959\u001b[0m, in \u001b[0;36mDataArray.to_netcdf\u001b[1;34m(self, path, mode, format, group, engine, encoding, unlimited_dims, compute, invalid_netcdf)\u001b[0m\n\u001b[0;32m 3955\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[0;32m 3956\u001b[0m \u001b[39m# No problems with the name - so we're fine!\u001b[39;00m\n\u001b[0;32m 3957\u001b[0m dataset \u001b[39m=\u001b[39m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mto_dataset()\n\u001b[1;32m-> 3959\u001b[0m \u001b[39mreturn\u001b[39;00m to_netcdf( \u001b[39m# type: ignore # mypy cannot resolve the overloads:(\u001b[39;49;00m\n\u001b[0;32m 3960\u001b[0m dataset,\n\u001b[0;32m 3961\u001b[0m path,\n\u001b[0;32m 3962\u001b[0m mode\u001b[39m=\u001b[39;49mmode,\n\u001b[0;32m 3963\u001b[0m \u001b[39mformat\u001b[39;49m\u001b[39m=\u001b[39;49m\u001b[39mformat\u001b[39;49m,\n\u001b[0;32m 3964\u001b[0m group\u001b[39m=\u001b[39;49mgroup,\n\u001b[0;32m 3965\u001b[0m engine\u001b[39m=\u001b[39;49mengine,\n\u001b[0;32m 3966\u001b[0m encoding\u001b[39m=\u001b[39;49mencoding,\n\u001b[0;32m 3967\u001b[0m unlimited_dims\u001b[39m=\u001b[39;49munlimited_dims,\n\u001b[0;32m 3968\u001b[0m compute\u001b[39m=\u001b[39;49mcompute,\n\u001b[0;32m 3969\u001b[0m multifile\u001b[39m=\u001b[39;49m\u001b[39mFalse\u001b[39;49;00m,\n\u001b[0;32m 3970\u001b[0m invalid_netcdf\u001b[39m=\u001b[39;49minvalid_netcdf,\n\u001b[0;32m 3971\u001b[0m )\n",
  1924. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\backends\\api.py:1216\u001b[0m, in \u001b[0;36mto_netcdf\u001b[1;34m(dataset, path_or_file, mode, format, group, engine, encoding, unlimited_dims, compute, multifile, invalid_netcdf)\u001b[0m\n\u001b[0;32m 1211\u001b[0m \u001b[39m# TODO: figure out how to refactor this logic (here and in save_mfdataset)\u001b[39;00m\n\u001b[0;32m 1212\u001b[0m \u001b[39m# to avoid this mess of conditionals\u001b[39;00m\n\u001b[0;32m 1213\u001b[0m \u001b[39mtry\u001b[39;00m:\n\u001b[0;32m 1214\u001b[0m \u001b[39m# TODO: allow this work (setting up the file for writing array data)\u001b[39;00m\n\u001b[0;32m 1215\u001b[0m \u001b[39m# to be parallelized with dask\u001b[39;00m\n\u001b[1;32m-> 1216\u001b[0m dump_to_store(\n\u001b[0;32m 1217\u001b[0m dataset, store, writer, encoding\u001b[39m=\u001b[39;49mencoding, unlimited_dims\u001b[39m=\u001b[39;49munlimited_dims\n\u001b[0;32m 1218\u001b[0m )\n\u001b[0;32m 1219\u001b[0m \u001b[39mif\u001b[39;00m autoclose:\n\u001b[0;32m 1220\u001b[0m store\u001b[39m.\u001b[39mclose()\n",
  1925. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\backends\\api.py:1263\u001b[0m, in \u001b[0;36mdump_to_store\u001b[1;34m(dataset, store, writer, encoder, encoding, unlimited_dims)\u001b[0m\n\u001b[0;32m 1260\u001b[0m \u001b[39mif\u001b[39;00m encoder:\n\u001b[0;32m 1261\u001b[0m variables, attrs \u001b[39m=\u001b[39m encoder(variables, attrs)\n\u001b[1;32m-> 1263\u001b[0m store\u001b[39m.\u001b[39;49mstore(variables, attrs, check_encoding, writer, unlimited_dims\u001b[39m=\u001b[39;49munlimited_dims)\n",
  1926. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\backends\\common.py:269\u001b[0m, in \u001b[0;36mAbstractWritableDataStore.store\u001b[1;34m(self, variables, attributes, check_encoding_set, writer, unlimited_dims)\u001b[0m\n\u001b[0;32m 266\u001b[0m \u001b[39mif\u001b[39;00m writer \u001b[39mis\u001b[39;00m \u001b[39mNone\u001b[39;00m:\n\u001b[0;32m 267\u001b[0m writer \u001b[39m=\u001b[39m ArrayWriter()\n\u001b[1;32m--> 269\u001b[0m variables, attributes \u001b[39m=\u001b[39m \u001b[39mself\u001b[39;49m\u001b[39m.\u001b[39;49mencode(variables, attributes)\n\u001b[0;32m 271\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mset_attributes(attributes)\n\u001b[0;32m 272\u001b[0m \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mset_dimensions(variables, unlimited_dims\u001b[39m=\u001b[39munlimited_dims)\n",
  1927. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\backends\\common.py:358\u001b[0m, in \u001b[0;36mWritableCFDataStore.encode\u001b[1;34m(self, variables, attributes)\u001b[0m\n\u001b[0;32m 355\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mencode\u001b[39m(\u001b[39mself\u001b[39m, variables, attributes):\n\u001b[0;32m 356\u001b[0m \u001b[39m# All NetCDF files get CF encoded by default, without this attempting\u001b[39;00m\n\u001b[0;32m 357\u001b[0m \u001b[39m# to write times, for example, would fail.\u001b[39;00m\n\u001b[1;32m--> 358\u001b[0m variables, attributes \u001b[39m=\u001b[39m cf_encoder(variables, attributes)\n\u001b[0;32m 359\u001b[0m variables \u001b[39m=\u001b[39m {k: \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mencode_variable(v) \u001b[39mfor\u001b[39;00m k, v \u001b[39min\u001b[39;00m variables\u001b[39m.\u001b[39mitems()}\n\u001b[0;32m 360\u001b[0m attributes \u001b[39m=\u001b[39m {k: \u001b[39mself\u001b[39m\u001b[39m.\u001b[39mencode_attribute(v) \u001b[39mfor\u001b[39;00m k, v \u001b[39min\u001b[39;00m attributes\u001b[39m.\u001b[39mitems()}\n",
  1928. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\conventions.py:775\u001b[0m, in \u001b[0;36mcf_encoder\u001b[1;34m(variables, attributes)\u001b[0m\n\u001b[0;32m 772\u001b[0m \u001b[39m# add encoding for time bounds variables if present.\u001b[39;00m\n\u001b[0;32m 773\u001b[0m _update_bounds_encoding(variables)\n\u001b[1;32m--> 775\u001b[0m new_vars \u001b[39m=\u001b[39m {k: encode_cf_variable(v, name\u001b[39m=\u001b[39mk) \u001b[39mfor\u001b[39;00m k, v \u001b[39min\u001b[39;00m variables\u001b[39m.\u001b[39mitems()}\n\u001b[0;32m 777\u001b[0m \u001b[39m# Remove attrs from bounds variables (issue #2921)\u001b[39;00m\n\u001b[0;32m 778\u001b[0m \u001b[39mfor\u001b[39;00m var \u001b[39min\u001b[39;00m new_vars\u001b[39m.\u001b[39mvalues():\n",
  1929. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\conventions.py:775\u001b[0m, in \u001b[0;36m<dictcomp>\u001b[1;34m(.0)\u001b[0m\n\u001b[0;32m 772\u001b[0m \u001b[39m# add encoding for time bounds variables if present.\u001b[39;00m\n\u001b[0;32m 773\u001b[0m _update_bounds_encoding(variables)\n\u001b[1;32m--> 775\u001b[0m new_vars \u001b[39m=\u001b[39m {k: encode_cf_variable(v, name\u001b[39m=\u001b[39;49mk) \u001b[39mfor\u001b[39;00m k, v \u001b[39min\u001b[39;00m variables\u001b[39m.\u001b[39mitems()}\n\u001b[0;32m 777\u001b[0m \u001b[39m# Remove attrs from bounds variables (issue #2921)\u001b[39;00m\n\u001b[0;32m 778\u001b[0m \u001b[39mfor\u001b[39;00m var \u001b[39min\u001b[39;00m new_vars\u001b[39m.\u001b[39mvalues():\n",
  1930. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\conventions.py:189\u001b[0m, in \u001b[0;36mencode_cf_variable\u001b[1;34m(var, needs_copy, name)\u001b[0m\n\u001b[0;32m 186\u001b[0m var \u001b[39m=\u001b[39m coder\u001b[39m.\u001b[39mencode(var, name\u001b[39m=\u001b[39mname)\n\u001b[0;32m 188\u001b[0m \u001b[39m# TODO(kmuehlbauer): check if ensure_dtype_not_object can be moved to backends:\u001b[39;00m\n\u001b[1;32m--> 189\u001b[0m var \u001b[39m=\u001b[39m ensure_dtype_not_object(var, name\u001b[39m=\u001b[39;49mname)\n\u001b[0;32m 191\u001b[0m \u001b[39mfor\u001b[39;00m attr_name \u001b[39min\u001b[39;00m CF_RELATED_DATA:\n\u001b[0;32m 192\u001b[0m pop_to(var\u001b[39m.\u001b[39mencoding, var\u001b[39m.\u001b[39mattrs, attr_name)\n",
  1931. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\conventions.py:145\u001b[0m, in \u001b[0;36mensure_dtype_not_object\u001b[1;34m(var, name)\u001b[0m\n\u001b[0;32m 143\u001b[0m data[missing] \u001b[39m=\u001b[39m fill_value\n\u001b[0;32m 144\u001b[0m \u001b[39melse\u001b[39;00m:\n\u001b[1;32m--> 145\u001b[0m data \u001b[39m=\u001b[39m _copy_with_dtype(data, dtype\u001b[39m=\u001b[39m_infer_dtype(data, name))\n\u001b[0;32m 147\u001b[0m \u001b[39massert\u001b[39;00m data\u001b[39m.\u001b[39mdtype\u001b[39m.\u001b[39mkind \u001b[39m!=\u001b[39m \u001b[39m\"\u001b[39m\u001b[39mO\u001b[39m\u001b[39m\"\u001b[39m \u001b[39mor\u001b[39;00m data\u001b[39m.\u001b[39mdtype\u001b[39m.\u001b[39mmetadata\n\u001b[0;32m 148\u001b[0m var \u001b[39m=\u001b[39m Variable(dims, data, attrs, encoding, fastpath\u001b[39m=\u001b[39m\u001b[39mTrue\u001b[39;00m)\n",
  1932. "File \u001b[1;32m~\\AppData\\Roaming\\Python\\Python39\\site-packages\\xarray\\conventions.py:77\u001b[0m, in \u001b[0;36m_infer_dtype\u001b[1;34m(array, name)\u001b[0m\n\u001b[0;32m 74\u001b[0m \u001b[39mif\u001b[39;00m dtype\u001b[39m.\u001b[39mkind \u001b[39m!=\u001b[39m \u001b[39m\"\u001b[39m\u001b[39mO\u001b[39m\u001b[39m\"\u001b[39m:\n\u001b[0;32m 75\u001b[0m \u001b[39mreturn\u001b[39;00m dtype\n\u001b[1;32m---> 77\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mValueError\u001b[39;00m(\n\u001b[0;32m 78\u001b[0m \u001b[39m\"\u001b[39m\u001b[39munable to infer dtype on variable \u001b[39m\u001b[39m{!r}\u001b[39;00m\u001b[39m; xarray \u001b[39m\u001b[39m\"\u001b[39m\n\u001b[0;32m 79\u001b[0m \u001b[39m\"\u001b[39m\u001b[39mcannot serialize arbitrary Python objects\u001b[39m\u001b[39m\"\u001b[39m\u001b[39m.\u001b[39mformat(name)\n\u001b[0;32m 80\u001b[0m )\n",
  1933. "\u001b[1;31mValueError\u001b[0m: unable to infer dtype on variable 'OD'; xarray cannot serialize arbitrary Python objects"
  1934. ]
  1935. }
  1936. ],
  1937. "source": [
  1938. "fitResult.to_netcdf(\"saved_on_disk.nc\")"
  1939. ]
  1940. },
  1941. {
  1942. "attachments": {},
  1943. "cell_type": "markdown",
  1944. "metadata": {},
  1945. "source": [
  1946. "# Get the Ncount"
  1947. ]
  1948. },
  1949. {
  1950. "cell_type": "code",
  1951. "execution_count": null,
  1952. "metadata": {},
  1953. "outputs": [],
  1954. "source": [
  1955. "Ncount = dataSet_crop.OD.sum(dim=(scanAxis[0], 'x', 'y'))"
  1956. ]
  1957. },
  1958. {
  1959. "cell_type": "code",
  1960. "execution_count": null,
  1961. "metadata": {},
  1962. "outputs": [],
  1963. "source": [
  1964. "Ncount.load()\n",
  1965. "\n",
  1966. "fig = plt.figure()\n",
  1967. "ax = fig.gca()\n",
  1968. "Ncount.plot(ax=ax)"
  1969. ]
  1970. },
  1971. {
  1972. "cell_type": "code",
  1973. "execution_count": null,
  1974. "metadata": {},
  1975. "outputs": [],
  1976. "source": [
  1977. "fitAnalyser = FitAnalyser(\"Lorentzian With Offset\")\n",
  1978. "params = fitAnalyser.guess(Ncount, x='runs', dask=\"parallelized\", guess_kwargs=dict(negative=True))"
  1979. ]
  1980. },
  1981. {
  1982. "cell_type": "code",
  1983. "execution_count": null,
  1984. "metadata": {},
  1985. "outputs": [],
  1986. "source": [
  1987. "fitResult = fitAnalyser.fit(Ncount, params, x='runs', dask=\"parallelized\")\n",
  1988. "fitCurve = fitAnalyser.eval(fitResult, x=np.arange(40), dask=\"parallelized\").load()"
  1989. ]
  1990. },
  1991. {
  1992. "cell_type": "code",
  1993. "execution_count": null,
  1994. "metadata": {},
  1995. "outputs": [],
  1996. "source": [
  1997. "fig = plt.figure()\n",
  1998. "ax = fig.gca()\n",
  1999. "plt.errorbar([1], [1], yerr=[1])"
  2000. ]
  2001. },
  2002. {
  2003. "cell_type": "code",
  2004. "execution_count": null,
  2005. "metadata": {},
  2006. "outputs": [],
  2007. "source": [
  2008. "fitCurve.plot.errorbar(yerr=fitCurve)"
  2009. ]
  2010. },
  2011. {
  2012. "cell_type": "code",
  2013. "execution_count": null,
  2014. "metadata": {},
  2015. "outputs": [],
  2016. "source": [
  2017. "np.ufunc(fitCurve)"
  2018. ]
  2019. },
  2020. {
  2021. "attachments": {},
  2022. "cell_type": "markdown",
  2023. "metadata": {},
  2024. "source": [
  2025. "# Read CSV"
  2026. ]
  2027. },
  2028. {
  2029. "cell_type": "code",
  2030. "execution_count": null,
  2031. "metadata": {},
  2032. "outputs": [],
  2033. "source": [
  2034. "# filePath = 'Z:/Dy_Lab/Data/Measurements/Experiments/DyBEC/BEC Stability Check/20230509-0007/*.csv'\n",
  2035. "\n",
  2036. "# filePath = np.sort(glob.glob(filePath))\n",
  2037. "\n",
  2038. "# read_csv_file(filePath, maxFileNum=5, csvEngine='pandas', csvKwargs=dict(header=[0,1], na_filter=False, index_col=0))\n",
  2039. "# read_csv_file(filePath, csvEngine='dask')"
  2040. ]
  2041. },
  2042. {
  2043. "cell_type": "code",
  2044. "execution_count": null,
  2045. "metadata": {},
  2046. "outputs": [],
  2047. "source": [
  2048. "filePath = 'Z:/Dy_Lab/Data/Measurements/Experiments/DyBEC/BEC Stability Check/20230509-0007/*.csv'\n",
  2049. "\n",
  2050. "filePath = np.sort(glob.glob(filePath))\n",
  2051. "\n",
  2052. "data = np.empty(filePath.shape,dtype=object)\n",
  2053. "\n",
  2054. "i = 0\n",
  2055. "for fp in filePath:\n",
  2056. " data_single = pd.read_csv(fp)\n",
  2057. " data_single = xr.Dataset.from_dataframe(data_single)\n",
  2058. " data_single = data_single.drop_isel(index=0)\n",
  2059. " # data_single = data_single.expand_dims(dim='runs')\n",
  2060. " data[i] = data_single\n",
  2061. " i = i + 1\n",
  2062. "\n",
  2063. "data = xr.concat(data, 'runs')\n",
  2064. "\n",
  2065. "data = data.assign_coords(dict(index=data.Time.isel(runs=0).astype(float))).rename(dict(index='time')).astype(float)"
  2066. ]
  2067. },
  2068. {
  2069. "cell_type": "code",
  2070. "execution_count": null,
  2071. "metadata": {},
  2072. "outputs": [],
  2073. "source": [
  2074. "data"
  2075. ]
  2076. },
  2077. {
  2078. "cell_type": "code",
  2079. "execution_count": null,
  2080. "metadata": {},
  2081. "outputs": [],
  2082. "source": [
  2083. "arm2_mean = data['Channel A'].mean(dim='runs')\n",
  2084. "arm2_std = data['Channel A'].std(dim='runs')"
  2085. ]
  2086. },
  2087. {
  2088. "cell_type": "code",
  2089. "execution_count": null,
  2090. "metadata": {},
  2091. "outputs": [],
  2092. "source": [
  2093. "arm2_mean.plot.errorbar(yerr=arm2_std, fmt='ob')"
  2094. ]
  2095. },
  2096. {
  2097. "cell_type": "code",
  2098. "execution_count": null,
  2099. "metadata": {},
  2100. "outputs": [],
  2101. "source": [
  2102. "arm2_std.plot.errorbar(fmt='ob')"
  2103. ]
  2104. },
  2105. {
  2106. "cell_type": "code",
  2107. "execution_count": null,
  2108. "metadata": {},
  2109. "outputs": [],
  2110. "source": [
  2111. "data['Channel A'].sel(time=4.55, method='nearest').plot.errorbar(fmt='ob')\n",
  2112. "\n",
  2113. "plt.ylim([0, 0.15])\n",
  2114. "plt.show()"
  2115. ]
  2116. },
  2117. {
  2118. "cell_type": "code",
  2119. "execution_count": null,
  2120. "metadata": {},
  2121. "outputs": [],
  2122. "source": []
  2123. },
  2124. {
  2125. "cell_type": "code",
  2126. "execution_count": null,
  2127. "metadata": {},
  2128. "outputs": [],
  2129. "source": []
  2130. },
  2131. {
  2132. "cell_type": "code",
  2133. "execution_count": null,
  2134. "metadata": {},
  2135. "outputs": [],
  2136. "source": []
  2137. },
  2138. {
  2139. "cell_type": "code",
  2140. "execution_count": null,
  2141. "metadata": {},
  2142. "outputs": [],
  2143. "source": []
  2144. },
  2145. {
  2146. "cell_type": "code",
  2147. "execution_count": null,
  2148. "metadata": {},
  2149. "outputs": [],
  2150. "source": []
  2151. }
  2152. ],
  2153. "metadata": {
  2154. "kernelspec": {
  2155. "display_name": "env",
  2156. "language": "python",
  2157. "name": "python3"
  2158. },
  2159. "language_info": {
  2160. "codemirror_mode": {
  2161. "name": "ipython",
  2162. "version": 3
  2163. },
  2164. "file_extension": ".py",
  2165. "mimetype": "text/x-python",
  2166. "name": "python",
  2167. "nbconvert_exporter": "python",
  2168. "pygments_lexer": "ipython3",
  2169. "version": "3.9.13"
  2170. },
  2171. "orig_nbformat": 4,
  2172. "vscode": {
  2173. "interpreter": {
  2174. "hash": "c05913ad4f24fdc6b2418069394dc5835b1981849b107c9ba6df693aafd66650"
  2175. }
  2176. }
  2177. },
  2178. "nbformat": 4,
  2179. "nbformat_minor": 2
  2180. }