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.

779 lines
98 KiB

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 numpy as np\n",
  19. "\n",
  20. "from uncertainties import ufloat\n",
  21. "from uncertainties import unumpy as unp\n",
  22. "from uncertainties import umath\n",
  23. "\n",
  24. "import matplotlib.pyplot as plt\n",
  25. "\n",
  26. "from DataContainer.ReadData import read_hdf5_file\n",
  27. "from Analyser.ImagingAnalyser import ImageAnalyser\n",
  28. "from Analyser.FitAnalyser import FitAnalyser\n",
  29. "from Analyser.FitAnalyser import ThomasFermi2dModel, DensityProfileBEC2dModel, Polylog22dModel\n",
  30. "from Analyser.FitAnalyser import NewFitModel\n",
  31. "from ToolFunction.ToolFunction import *\n",
  32. "\n",
  33. "from ToolFunction.HomeMadeXarrayFunction import errorbar, dataarray_plot_errorbar\n",
  34. "xr.plot.dataarray_plot.errorbar = errorbar\n",
  35. "xr.plot.accessor.DataArrayPlotAccessor.errorbar = dataarray_plot_errorbar\n",
  36. "\n",
  37. "imageAnalyser = ImageAnalyser()"
  38. ]
  39. },
  40. {
  41. "cell_type": "code",
  42. "execution_count": 2,
  43. "metadata": {},
  44. "outputs": [],
  45. "source": [
  46. "import numpy as np\n",
  47. "\n",
  48. "from matplotlib.colors import ListedColormap, LinearSegmentedColormap\n",
  49. "\n",
  50. "import matplotlib.pyplot as plt\n",
  51. "plt.rcParams[\"font.family\"] = \"arial\""
  52. ]
  53. },
  54. {
  55. "cell_type": "code",
  56. "execution_count": 3,
  57. "metadata": {},
  58. "outputs": [],
  59. "source": [
  60. "def Ncount_to_atoms():\n",
  61. " return 1 / 8.4743e-14 / 0.3725 * 5.86e-6**2 / 0.6606**2"
  62. ]
  63. },
  64. {
  65. "cell_type": "code",
  66. "execution_count": 4,
  67. "metadata": {},
  68. "outputs": [],
  69. "source": [
  70. "import csv\n",
  71. "\n",
  72. "colormap = np.zeros((1024, 3))\n",
  73. "\n",
  74. "with open('smooth-cool-warm-table-float-1024.csv', newline='') as csvfile:\n",
  75. " spamreader = csv.reader(csvfile, delimiter=' ', quotechar='|')\n",
  76. " i = 0\n",
  77. " for row in spamreader:\n",
  78. " try:\n",
  79. " a = row[0].split(',')\n",
  80. " colormap[i, 0] = float(a[1])\n",
  81. " colormap[i, 1] = float(a[2])\n",
  82. " colormap[i, 2] = float(a[3])\n",
  83. " i = i + 1\n",
  84. " except:\n",
  85. " pass\n",
  86. "\n",
  87. "colormap = ListedColormap(colormap)"
  88. ]
  89. },
  90. {
  91. "cell_type": "code",
  92. "execution_count": 5,
  93. "metadata": {},
  94. "outputs": [],
  95. "source": [
  96. "data_colors = colormap(np.linspace(0, 1, 7))\n",
  97. "plot_blue = data_colors[-3]\n",
  98. "plot_red = data_colors[-1]\n",
  99. "plot_red_alpha = 1"
  100. ]
  101. },
  102. {
  103. "attachments": {},
  104. "cell_type": "markdown",
  105. "metadata": {},
  106. "source": [
  107. "## Start a client for parallel computing"
  108. ]
  109. },
  110. {
  111. "cell_type": "code",
  112. "execution_count": 6,
  113. "metadata": {},
  114. "outputs": [
  115. {
  116. "data": {
  117. "text/html": [
  118. "<div>\n",
  119. " <div style=\"width: 24px; height: 24px; background-color: #e1e1e1; border: 3px solid #9D9D9D; border-radius: 5px; position: absolute;\"> </div>\n",
  120. " <div style=\"margin-left: 48px;\">\n",
  121. " <h3 style=\"margin-bottom: 0px;\">Client</h3>\n",
  122. " <p style=\"color: #9D9D9D; margin-bottom: 0px;\">Client-65877ea1-1120-11ee-bd28-9c7bef43b4fb</p>\n",
  123. " <table style=\"width: 100%; text-align: left;\">\n",
  124. "\n",
  125. " <tr>\n",
  126. " \n",
  127. " <td style=\"text-align: left;\"><strong>Connection method:</strong> Cluster object</td>\n",
  128. " <td style=\"text-align: left;\"><strong>Cluster type:</strong> distributed.LocalCluster</td>\n",
  129. " \n",
  130. " </tr>\n",
  131. "\n",
  132. " \n",
  133. " <tr>\n",
  134. " <td style=\"text-align: left;\">\n",
  135. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:8787/status\" target=\"_blank\">http://127.0.0.1:8787/status</a>\n",
  136. " </td>\n",
  137. " <td style=\"text-align: left;\"></td>\n",
  138. " </tr>\n",
  139. " \n",
  140. "\n",
  141. " </table>\n",
  142. "\n",
  143. " \n",
  144. " <button style=\"margin-bottom: 12px;\" data-commandlinker-command=\"dask:populate-and-launch-layout\" data-commandlinker-args='{\"url\": \"http://127.0.0.1:8787/status\" }'>\n",
  145. " Launch dashboard in JupyterLab\n",
  146. " </button>\n",
  147. " \n",
  148. "\n",
  149. " \n",
  150. " <details>\n",
  151. " <summary style=\"margin-bottom: 20px;\"><h3 style=\"display: inline;\">Cluster Info</h3></summary>\n",
  152. " <div class=\"jp-RenderedHTMLCommon jp-RenderedHTML jp-mod-trusted jp-OutputArea-output\">\n",
  153. " <div style=\"width: 24px; height: 24px; background-color: #e1e1e1; border: 3px solid #9D9D9D; border-radius: 5px; position: absolute;\">\n",
  154. " </div>\n",
  155. " <div style=\"margin-left: 48px;\">\n",
  156. " <h3 style=\"margin-bottom: 0px; margin-top: 0px;\">LocalCluster</h3>\n",
  157. " <p style=\"color: #9D9D9D; margin-bottom: 0px;\">ee7c3b53</p>\n",
  158. " <table style=\"width: 100%; text-align: left;\">\n",
  159. " <tr>\n",
  160. " <td style=\"text-align: left;\">\n",
  161. " <strong>Dashboard:</strong> <a href=\"http://127.0.0.1:8787/status\" target=\"_blank\">http://127.0.0.1:8787/status</a>\n",
  162. " </td>\n",
  163. " <td style=\"text-align: left;\">\n",
  164. " <strong>Workers:</strong> 6\n",
  165. " </td>\n",
  166. " </tr>\n",
  167. " <tr>\n",
  168. " <td style=\"text-align: left;\">\n",
  169. " <strong>Total threads:</strong> 60\n",
  170. " </td>\n",
  171. " <td style=\"text-align: left;\">\n",
  172. " <strong>Total memory:</strong> 55.88 GiB\n",
  173. " </td>\n",
  174. " </tr>\n",
  175. " \n",
  176. " <tr>\n",
  177. " <td style=\"text-align: left;\"><strong>Status:</strong> running</td>\n",
  178. " <td style=\"text-align: left;\"><strong>Using processes:</strong> True</td>\n",
  179. "</tr>\n",
  180. "\n",
  181. " \n",
  182. " </table>\n",
  183. "\n",
  184. " <details>\n",
  185. " <summary style=\"margin-bottom: 20px;\">\n",
  186. " <h3 style=\"display: inline;\">Scheduler Info</h3>\n",
  187. " </summary>\n",
  188. "\n",
  189. " <div style=\"\">\n",
  190. " <div>\n",
  191. " <div style=\"width: 24px; height: 24px; background-color: #FFF7E5; border: 3px solid #FF6132; border-radius: 5px; position: absolute;\"> </div>\n",
  192. " <div style=\"margin-left: 48px;\">\n",
  193. " <h3 style=\"margin-bottom: 0px;\">Scheduler</h3>\n",
  194. " <p style=\"color: #9D9D9D; margin-bottom: 0px;\">Scheduler-f17926fd-5020-4803-9692-4e5947c8d4dd</p>\n",
  195. " <table style=\"width: 100%; text-align: left;\">\n",
  196. " <tr>\n",
  197. " <td style=\"text-align: left;\">\n",
  198. " <strong>Comm:</strong> tcp://127.0.0.1:63894\n",
  199. " </td>\n",
  200. " <td style=\"text-align: left;\">\n",
  201. " <strong>Workers:</strong> 6\n",
  202. " </td>\n",
  203. " </tr>\n",
  204. " <tr>\n",
  205. " <td style=\"text-align: left;\">\n",
  206. " <strong>Dashboard:</strong> <a href=\"http://127.0.0.1:8787/status\" target=\"_blank\">http://127.0.0.1:8787/status</a>\n",
  207. " </td>\n",
  208. " <td style=\"text-align: left;\">\n",
  209. " <strong>Total threads:</strong> 60\n",
  210. " </td>\n",
  211. " </tr>\n",
  212. " <tr>\n",
  213. " <td style=\"text-align: left;\">\n",
  214. " <strong>Started:</strong> Just now\n",
  215. " </td>\n",
  216. " <td style=\"text-align: left;\">\n",
  217. " <strong>Total memory:</strong> 55.88 GiB\n",
  218. " </td>\n",
  219. " </tr>\n",
  220. " </table>\n",
  221. " </div>\n",
  222. " </div>\n",
  223. "\n",
  224. " <details style=\"margin-left: 48px;\">\n",
  225. " <summary style=\"margin-bottom: 20px;\">\n",
  226. " <h3 style=\"display: inline;\">Workers</h3>\n",
  227. " </summary>\n",
  228. "\n",
  229. " \n",
  230. " <div style=\"margin-bottom: 20px;\">\n",
  231. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  232. " <div style=\"margin-left: 48px;\">\n",
  233. " <details>\n",
  234. " <summary>\n",
  235. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 0</h4>\n",
  236. " </summary>\n",
  237. " <table style=\"width: 100%; text-align: left;\">\n",
  238. " <tr>\n",
  239. " <td style=\"text-align: left;\">\n",
  240. " <strong>Comm: </strong> tcp://127.0.0.1:63924\n",
  241. " </td>\n",
  242. " <td style=\"text-align: left;\">\n",
  243. " <strong>Total threads: </strong> 10\n",
  244. " </td>\n",
  245. " </tr>\n",
  246. " <tr>\n",
  247. " <td style=\"text-align: left;\">\n",
  248. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:63932/status\" target=\"_blank\">http://127.0.0.1:63932/status</a>\n",
  249. " </td>\n",
  250. " <td style=\"text-align: left;\">\n",
  251. " <strong>Memory: </strong> 9.31 GiB\n",
  252. " </td>\n",
  253. " </tr>\n",
  254. " <tr>\n",
  255. " <td style=\"text-align: left;\">\n",
  256. " <strong>Nanny: </strong> tcp://127.0.0.1:63897\n",
  257. " </td>\n",
  258. " <td style=\"text-align: left;\"></td>\n",
  259. " </tr>\n",
  260. " <tr>\n",
  261. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  262. " <strong>Local directory: </strong> C:\\Users\\JIANSH~1\\AppData\\Local\\Temp\\dask-worker-space\\worker-oaisnlk0\n",
  263. " </td>\n",
  264. " </tr>\n",
  265. "\n",
  266. " \n",
  267. "\n",
  268. " \n",
  269. "\n",
  270. " </table>\n",
  271. " </details>\n",
  272. " </div>\n",
  273. " </div>\n",
  274. " \n",
  275. " <div style=\"margin-bottom: 20px;\">\n",
  276. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  277. " <div style=\"margin-left: 48px;\">\n",
  278. " <details>\n",
  279. " <summary>\n",
  280. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 1</h4>\n",
  281. " </summary>\n",
  282. " <table style=\"width: 100%; text-align: left;\">\n",
  283. " <tr>\n",
  284. " <td style=\"text-align: left;\">\n",
  285. " <strong>Comm: </strong> tcp://127.0.0.1:63928\n",
  286. " </td>\n",
  287. " <td style=\"text-align: left;\">\n",
  288. " <strong>Total threads: </strong> 10\n",
  289. " </td>\n",
  290. " </tr>\n",
  291. " <tr>\n",
  292. " <td style=\"text-align: left;\">\n",
  293. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:63941/status\" target=\"_blank\">http://127.0.0.1:63941/status</a>\n",
  294. " </td>\n",
  295. " <td style=\"text-align: left;\">\n",
  296. " <strong>Memory: </strong> 9.31 GiB\n",
  297. " </td>\n",
  298. " </tr>\n",
  299. " <tr>\n",
  300. " <td style=\"text-align: left;\">\n",
  301. " <strong>Nanny: </strong> tcp://127.0.0.1:63898\n",
  302. " </td>\n",
  303. " <td style=\"text-align: left;\"></td>\n",
  304. " </tr>\n",
  305. " <tr>\n",
  306. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  307. " <strong>Local directory: </strong> C:\\Users\\JIANSH~1\\AppData\\Local\\Temp\\dask-worker-space\\worker-lgn_00uq\n",
  308. " </td>\n",
  309. " </tr>\n",
  310. "\n",
  311. " \n",
  312. "\n",
  313. " \n",
  314. "\n",
  315. " </table>\n",
  316. " </details>\n",
  317. " </div>\n",
  318. " </div>\n",
  319. " \n",
  320. " <div style=\"margin-bottom: 20px;\">\n",
  321. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  322. " <div style=\"margin-left: 48px;\">\n",
  323. " <details>\n",
  324. " <summary>\n",
  325. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 2</h4>\n",
  326. " </summary>\n",
  327. " <table style=\"width: 100%; text-align: left;\">\n",
  328. " <tr>\n",
  329. " <td style=\"text-align: left;\">\n",
  330. " <strong>Comm: </strong> tcp://127.0.0.1:63921\n",
  331. " </td>\n",
  332. " <td style=\"text-align: left;\">\n",
  333. " <strong>Total threads: </strong> 10\n",
  334. " </td>\n",
  335. " </tr>\n",
  336. " <tr>\n",
  337. " <td style=\"text-align: left;\">\n",
  338. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:63930/status\" target=\"_blank\">http://127.0.0.1:63930/status</a>\n",
  339. " </td>\n",
  340. " <td style=\"text-align: left;\">\n",
  341. " <strong>Memory: </strong> 9.31 GiB\n",
  342. " </td>\n",
  343. " </tr>\n",
  344. " <tr>\n",
  345. " <td style=\"text-align: left;\">\n",
  346. " <strong>Nanny: </strong> tcp://127.0.0.1:63899\n",
  347. " </td>\n",
  348. " <td style=\"text-align: left;\"></td>\n",
  349. " </tr>\n",
  350. " <tr>\n",
  351. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  352. " <strong>Local directory: </strong> C:\\Users\\JIANSH~1\\AppData\\Local\\Temp\\dask-worker-space\\worker-1ozf7xf0\n",
  353. " </td>\n",
  354. " </tr>\n",
  355. "\n",
  356. " \n",
  357. "\n",
  358. " \n",
  359. "\n",
  360. " </table>\n",
  361. " </details>\n",
  362. " </div>\n",
  363. " </div>\n",
  364. " \n",
  365. " <div style=\"margin-bottom: 20px;\">\n",
  366. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  367. " <div style=\"margin-left: 48px;\">\n",
  368. " <details>\n",
  369. " <summary>\n",
  370. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 3</h4>\n",
  371. " </summary>\n",
  372. " <table style=\"width: 100%; text-align: left;\">\n",
  373. " <tr>\n",
  374. " <td style=\"text-align: left;\">\n",
  375. " <strong>Comm: </strong> tcp://127.0.0.1:63926\n",
  376. " </td>\n",
  377. " <td style=\"text-align: left;\">\n",
  378. " <strong>Total threads: </strong> 10\n",
  379. " </td>\n",
  380. " </tr>\n",
  381. " <tr>\n",
  382. " <td style=\"text-align: left;\">\n",
  383. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:63937/status\" target=\"_blank\">http://127.0.0.1:63937/status</a>\n",
  384. " </td>\n",
  385. " <td style=\"text-align: left;\">\n",
  386. " <strong>Memory: </strong> 9.31 GiB\n",
  387. " </td>\n",
  388. " </tr>\n",
  389. " <tr>\n",
  390. " <td style=\"text-align: left;\">\n",
  391. " <strong>Nanny: </strong> tcp://127.0.0.1:63900\n",
  392. " </td>\n",
  393. " <td style=\"text-align: left;\"></td>\n",
  394. " </tr>\n",
  395. " <tr>\n",
  396. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  397. " <strong>Local directory: </strong> C:\\Users\\JIANSH~1\\AppData\\Local\\Temp\\dask-worker-space\\worker-53pv7g96\n",
  398. " </td>\n",
  399. " </tr>\n",
  400. "\n",
  401. " \n",
  402. "\n",
  403. " \n",
  404. "\n",
  405. " </table>\n",
  406. " </details>\n",
  407. " </div>\n",
  408. " </div>\n",
  409. " \n",
  410. " <div style=\"margin-bottom: 20px;\">\n",
  411. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  412. " <div style=\"margin-left: 48px;\">\n",
  413. " <details>\n",
  414. " <summary>\n",
  415. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 4</h4>\n",
  416. " </summary>\n",
  417. " <table style=\"width: 100%; text-align: left;\">\n",
  418. " <tr>\n",
  419. " <td style=\"text-align: left;\">\n",
  420. " <strong>Comm: </strong> tcp://127.0.0.1:63927\n",
  421. " </td>\n",
  422. " <td style=\"text-align: left;\">\n",
  423. " <strong>Total threads: </strong> 10\n",
  424. " </td>\n",
  425. " </tr>\n",
  426. " <tr>\n",
  427. " <td style=\"text-align: left;\">\n",
  428. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:63938/status\" target=\"_blank\">http://127.0.0.1:63938/status</a>\n",
  429. " </td>\n",
  430. " <td style=\"text-align: left;\">\n",
  431. " <strong>Memory: </strong> 9.31 GiB\n",
  432. " </td>\n",
  433. " </tr>\n",
  434. " <tr>\n",
  435. " <td style=\"text-align: left;\">\n",
  436. " <strong>Nanny: </strong> tcp://127.0.0.1:63901\n",
  437. " </td>\n",
  438. " <td style=\"text-align: left;\"></td>\n",
  439. " </tr>\n",
  440. " <tr>\n",
  441. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  442. " <strong>Local directory: </strong> C:\\Users\\JIANSH~1\\AppData\\Local\\Temp\\dask-worker-space\\worker-tr6dxqb7\n",
  443. " </td>\n",
  444. " </tr>\n",
  445. "\n",
  446. " \n",
  447. "\n",
  448. " \n",
  449. "\n",
  450. " </table>\n",
  451. " </details>\n",
  452. " </div>\n",
  453. " </div>\n",
  454. " \n",
  455. " <div style=\"margin-bottom: 20px;\">\n",
  456. " <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
  457. " <div style=\"margin-left: 48px;\">\n",
  458. " <details>\n",
  459. " <summary>\n",
  460. " <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 5</h4>\n",
  461. " </summary>\n",
  462. " <table style=\"width: 100%; text-align: left;\">\n",
  463. " <tr>\n",
  464. " <td style=\"text-align: left;\">\n",
  465. " <strong>Comm: </strong> tcp://127.0.0.1:63925\n",
  466. " </td>\n",
  467. " <td style=\"text-align: left;\">\n",
  468. " <strong>Total threads: </strong> 10\n",
  469. " </td>\n",
  470. " </tr>\n",
  471. " <tr>\n",
  472. " <td style=\"text-align: left;\">\n",
  473. " <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:63934/status\" target=\"_blank\">http://127.0.0.1:63934/status</a>\n",
  474. " </td>\n",
  475. " <td style=\"text-align: left;\">\n",
  476. " <strong>Memory: </strong> 9.31 GiB\n",
  477. " </td>\n",
  478. " </tr>\n",
  479. " <tr>\n",
  480. " <td style=\"text-align: left;\">\n",
  481. " <strong>Nanny: </strong> tcp://127.0.0.1:63902\n",
  482. " </td>\n",
  483. " <td style=\"text-align: left;\"></td>\n",
  484. " </tr>\n",
  485. " <tr>\n",
  486. " <td colspan=\"2\" style=\"text-align: left;\">\n",
  487. " <strong>Local directory: </strong> C:\\Users\\JIANSH~1\\AppData\\Local\\Temp\\dask-worker-space\\worker-7qa0mcnj\n",
  488. " </td>\n",
  489. " </tr>\n",
  490. "\n",
  491. " \n",
  492. "\n",
  493. " \n",
  494. "\n",
  495. " </table>\n",
  496. " </details>\n",
  497. " </div>\n",
  498. " </div>\n",
  499. " \n",
  500. "\n",
  501. " </details>\n",
  502. "</div>\n",
  503. "\n",
  504. " </details>\n",
  505. " </div>\n",
  506. "</div>\n",
  507. " </details>\n",
  508. " \n",
  509. "\n",
  510. " </div>\n",
  511. "</div>"
  512. ],
  513. "text/plain": [
  514. "<Client: 'tcp://127.0.0.1:63894' processes=6 threads=60, memory=55.88 GiB>"
  515. ]
  516. },
  517. "execution_count": 6,
  518. "metadata": {},
  519. "output_type": "execute_result"
  520. }
  521. ],
  522. "source": [
  523. "from dask.distributed import Client\n",
  524. "client = Client(n_workers=6, threads_per_worker=10, processes=True, memory_limit='10GB')\n",
  525. "client"
  526. ]
  527. },
  528. {
  529. "attachments": {},
  530. "cell_type": "markdown",
  531. "metadata": {},
  532. "source": [
  533. "## Set global path for experiment"
  534. ]
  535. },
  536. {
  537. "cell_type": "code",
  538. "execution_count": 7,
  539. "metadata": {},
  540. "outputs": [],
  541. "source": [
  542. "groupList = [\n",
  543. " \"images/MOT_3D_Camera/in_situ_absorption\",\n",
  544. " \"images/ODT_1_Axis_Camera/in_situ_absorption\",\n",
  545. " \"images/ODT_2_Axis_Camera/in_situ_absorption\",\n",
  546. "]\n",
  547. "\n",
  548. "dskey = {\n",
  549. " \"images/MOT_3D_Camera/in_situ_absorption\": \"camera_0\",\n",
  550. " \"images/ODT_1_Axis_Camera/in_situ_absorption\": \"camera_1\",\n",
  551. " \"images/ODT_2_Axis_Camera/in_situ_absorption\": \"camera_2\",\n",
  552. "}\n"
  553. ]
  554. },
  555. {
  556. "cell_type": "code",
  557. "execution_count": 8,
  558. "metadata": {},
  559. "outputs": [],
  560. "source": [
  561. "img_dir = '//DyLabNAS/Data/'\n",
  562. "SequenceName = \"Repetition_scan\" + \"/\""
  563. ]
  564. },
  565. {
  566. "attachments": {},
  567. "cell_type": "markdown",
  568. "metadata": {},
  569. "source": [
  570. "# MOT optimize"
  571. ]
  572. },
  573. {
  574. "attachments": {},
  575. "cell_type": "markdown",
  576. "metadata": {},
  577. "source": [
  578. "## 09.06.2023"
  579. ]
  580. },
  581. {
  582. "cell_type": "code",
  583. "execution_count": 10,
  584. "metadata": {},
  585. "outputs": [
  586. {
  587. "name": "stdout",
  588. "output_type": "stream",
  589. "text": [
  590. "The detected scaning axes and values are: \n",
  591. "\n",
  592. "{'cmot_initial_current': array([0.1 , 0.12, 0.14, 0.16, 0.18, 0.2 , 0.22, 0.24, 0.26, 0.28]), 'initial_freq': array([100.5, 100.9, 101.3, 101.7, 102.1, 102.5, 102.9, 103.3, 103.7,\n",
  593. " 104.1]), 'runs': array([0., 1., 2.])}\n"
  594. ]
  595. },
  596. {
  597. "data": {
  598. "image/png": "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
  599. "text/plain": [
  600. "<Figure size 432x288 with 2 Axes>"
  601. ]
  602. },
  603. "metadata": {
  604. "needs_background": "light"
  605. },
  606. "output_type": "display_data"
  607. }
  608. ],
  609. "source": [
  610. "folderPath = img_dir + SequenceName + '2023/06/09'# get_date()\n",
  611. "\n",
  612. "shotNum = \"0010\"\n",
  613. "filePath = folderPath + \"/\" + shotNum + \"/*.h5\"\n",
  614. "\n",
  615. "dataSetDict = {\n",
  616. " dskey[groupList[i]]: read_hdf5_file(filePath, groupList[i])\n",
  617. " for i in range(len(groupList))\n",
  618. "}\n",
  619. "\n",
  620. "dataSet = dataSetDict[\"camera_0\"]\n",
  621. "\n",
  622. "print_scanAxis(dataSet)\n",
  623. "\n",
  624. "scanAxis = get_scanAxis(dataSet)\n",
  625. "\n",
  626. "dataSet = auto_rechunk(dataSet)\n",
  627. "\n",
  628. "dataSet = imageAnalyser.get_absorption_images(dataSet)\n",
  629. "\n",
  630. "imageAnalyser.center = (690, 1435)\n",
  631. "imageAnalyser.span = (1000, 700)\n",
  632. "imageAnalyser.fraction = (0.1, 0.1)\n",
  633. "\n",
  634. "dataSet_cropOD = imageAnalyser.crop_image(dataSet.OD)\n",
  635. "dataSet_cropOD = imageAnalyser.substract_offset(dataSet_cropOD).load()\n",
  636. "\n",
  637. "Ncount = imageAnalyser.get_Ncount(dataSet_cropOD)\n",
  638. "Ncount_mean = calculate_mean(Ncount)\n",
  639. "Ncount_std = calculate_std(Ncount)\n",
  640. "\n",
  641. "fig = plt.figure()\n",
  642. "# ax = fig.gca()\n",
  643. "Ncount_mean.plot.pcolormesh()\n",
  644. "plt.xlabel('MOT AOM Frequency (MHz)')\n",
  645. "plt.ylabel('MOT Gradient Coil Current (A)')\n",
  646. "plt.tight_layout()\n",
  647. "# plt.grid(visible=1)\n",
  648. "plt.show()"
  649. ]
  650. },
  651. {
  652. "cell_type": "code",
  653. "execution_count": 31,
  654. "metadata": {},
  655. "outputs": [],
  656. "source": [
  657. "freq = -(Ncount_mean.initial_freq.to_numpy() - 99.969) *2 / 0.136\n",
  658. "current = Ncount_mean.cmot_initial_current.to_numpy() * 5.17\n",
  659. "data = Ncount_mean.to_numpy() * Ncount_to_atoms()\n",
  660. "\n",
  661. "X, Y = np.meshgrid(freq, current)"
  662. ]
  663. },
  664. {
  665. "cell_type": "code",
  666. "execution_count": 39,
  667. "metadata": {},
  668. "outputs": [
  669. {
  670. "data": {
  671. "image/png": "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
  672. "text/plain": [
  673. "<Figure size 816x1615.68 with 2 Axes>"
  674. ]
  675. },
  676. "metadata": {
  677. "needs_background": "light"
  678. },
  679. "output_type": "display_data"
  680. }
  681. ],
  682. "source": [
  683. "from mpl_toolkits.axes_grid1 import make_axes_locatable\n",
  684. "\n",
  685. "fig = plt.figure(figsize=(6.8, 6.8/4*3*2*(1 + 16/50)), dpi=120)\n",
  686. "grid = fig.add_gridspec(4, 1, height_ratios=[2, 50, 10, 50], wspace=0.4, hspace=0.1)\n",
  687. "\n",
  688. "filter = ''\n",
  689. "edgecolor = None\n",
  690. "\n",
  691. "colorbar_ticks = np.linspace(0, 2.5e8, 6)\n",
  692. "\n",
  693. "plot_axes = plt.subplot(grid[1, 0])\n",
  694. "\n",
  695. "im = plot_axes.pcolormesh(X, Y, data, cmap=colormap, edgecolor=edgecolor, vmin=0)\n",
  696. "\n",
  697. "colorbar = fig.colorbar(im, ax=plot_axes, ticks=np.array([0, 0.5, 1, 1.5, 2])*1e8)\n",
  698. "colorbar.formatter.set_powerlimits((0, 0))\n",
  699. "colorbar.formatter.set_useMathText(True)\n",
  700. "colorbar.ax.yaxis.set_offset_position('left')\n",
  701. "colorbar.ax.tick_params(axis='both', labelsize=20)\n",
  702. "colorbar.ax.yaxis.offsetText.set_fontsize(20)\n",
  703. "\n",
  704. "plot_axes.set_xlabel(\"3D-MOT detuning $\\delta_\\mathrm{3D}$ $(\\Gamma_\\mathrm{626})$\", fontsize=20)\n",
  705. "plot_axes.set_ylabel(\"3D-MOT gradient $b'_\\mathrm{3D}$ (G/cm)\", fontsize=20)\n",
  706. "colorbar.set_label(\"Loaded atom number $N_\\mathrm{4s}$\", fontsize=20)\n",
  707. "\n",
  708. "plot_axes.tick_params(axis='both', which='major', labelsize=20)\n",
  709. "plot_axes.tick_params(axis='both', which='minor', labelsize=16)\n",
  710. "plot_axes.xaxis.offsetText.set_fontsize(20)\n",
  711. "plot_axes.yaxis.offsetText.set_fontsize(20)\n",
  712. "\n",
  713. "plt.setp(plot_axes.spines.values(), linewidth=3)\n",
  714. "plot_axes.xaxis.set_tick_params(width=3)\n",
  715. "plot_axes.yaxis.set_tick_params(width=3)\n",
  716. "plot_axes.tick_params(direction='in', length=10)\n",
  717. "\n",
  718. "# # plotting.figure[dataExtractor_key].colorbar_min = 0\n",
  719. "# # plotting.figure[dataExtractor_key].colorbar_max = 2.5e8\n",
  720. "\n",
  721. "# plotting.figure[dataExtractor_key].add_pcolormesh_plot(cmap=colormap, edgecolor=edgecolor, grid=plot_axes)\n",
  722. "# plotting.figure[dataExtractor_key].add_axes_label()\n",
  723. "# # plotting.figure[dataExtractor_key].add_color_bar(ticks=colorbar_ticks)\n",
  724. "# plotting.figure[dataExtractor_key].add_color_bar(ticks=np.linspace(0, 8, 5))\n",
  725. "# plotting.figure[dataExtractor_key].colorbar.ax.set_yticklabels(['{:.1f}'.format(x) for x in np.linspace(0, 8, 5)])\n",
  726. "\n",
  727. "# plotting.figure[dataExtractor_key].colorbar.ax.text(3.3, 7.69, '$\\\\times 10^{7}$', va='bottom', weight='bold', fontsize=20)\n",
  728. "\n",
  729. "# # plotting.figure[dataExtractor_key].set_color_bar_offset_position(0, 1.07)\n",
  730. "\n",
  731. "# # plotting.figure[dataExtractor_key].plot_axes.set_xlim([-30, -55])\n",
  732. "# # plotting.figure[dataExtractor_key].plot_axes.set_ylim([0.15, 0.65])\n",
  733. "\n",
  734. "# # plt.xticks([-40])\n",
  735. "\n",
  736. "# plotting.figure[dataExtractor_key].plot_axes.set_xlabel(\"3D-MOT detuning $\\delta_\\mathrm{3D} / \\Gamma_{626}$\", fontsize=20)\n",
  737. "# plotting.figure[dataExtractor_key].plot_axes.set_ylabel(\"3D-MOT gradient $b'_\\mathrm{3D}$ (G/cm)\", fontsize=20)\n",
  738. "# plotting.figure[dataExtractor_key].colorbar.set_label(\"Loaded atom number $N_\\mathrm{4s}$\", fontsize=20)\n",
  739. "\n",
  740. "# plot_axes = plt.subplot(grid[0, 0])\n",
  741. "# plot_axes.text(-0.17, 1.0, '(a)', va='bottom', weight='bold', fontsize=20)\n",
  742. "# plot_axes.set_axis_off()\n",
  743. "\n",
  744. "fig.savefig('figS3_v1.pdf', bbox_inches = \"tight\")\n",
  745. "\n",
  746. "plt.show()"
  747. ]
  748. },
  749. {
  750. "cell_type": "code",
  751. "execution_count": null,
  752. "metadata": {},
  753. "outputs": [],
  754. "source": []
  755. }
  756. ],
  757. "metadata": {
  758. "kernelspec": {
  759. "display_name": "Python 3",
  760. "language": "python",
  761. "name": "python3"
  762. },
  763. "language_info": {
  764. "codemirror_mode": {
  765. "name": "ipython",
  766. "version": 3
  767. },
  768. "file_extension": ".py",
  769. "mimetype": "text/x-python",
  770. "name": "python",
  771. "nbconvert_exporter": "python",
  772. "pygments_lexer": "ipython3",
  773. "version": "3.8.10"
  774. },
  775. "orig_nbformat": 4
  776. },
  777. "nbformat": 4,
  778. "nbformat_minor": 2
  779. }