2023-08-25 18:48:21 +02:00
|
|
|
{
|
|
|
|
"cells": [
|
|
|
|
{
|
|
|
|
"cell_type": "markdown",
|
|
|
|
"metadata": {},
|
|
|
|
"source": [
|
|
|
|
"# Import supporting package"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
|
|
|
"execution_count": 1,
|
|
|
|
"metadata": {},
|
|
|
|
"outputs": [],
|
|
|
|
"source": [
|
|
|
|
"import copy\n",
|
|
|
|
"import glob\n",
|
|
|
|
"from datetime import datetime\n",
|
|
|
|
"\n",
|
|
|
|
"# The package for data structure\n",
|
|
|
|
"import xarray as xr\n",
|
|
|
|
"import pandas as pd\n",
|
|
|
|
"import numpy as np\n",
|
|
|
|
"\n",
|
|
|
|
"# The packages for working with uncertainties\n",
|
|
|
|
"from uncertainties import ufloat\n",
|
|
|
|
"from uncertainties import unumpy as unp\n",
|
|
|
|
"from uncertainties import umath\n",
|
|
|
|
"\n",
|
|
|
|
"# The package for plotting\n",
|
|
|
|
"import matplotlib.pyplot as plt\n",
|
|
|
|
"plt.rcParams['font.size'] = 18 # Set the global font size\n",
|
|
|
|
"\n",
|
|
|
|
"# -------------- The modules written by us --------------\n",
|
|
|
|
"\n",
|
|
|
|
"# The packages for read data\n",
|
|
|
|
"from DataContainer.ReadData import read_hdf5_file, read_hdf5_global, read_hdf5_run_time, read_csv_file\n",
|
|
|
|
"\n",
|
|
|
|
"# The packages for data analysis\n",
|
|
|
|
"from Analyser.ImagingAnalyser import ImageAnalyser\n",
|
|
|
|
"from Analyser.FitAnalyser import FitAnalyser\n",
|
|
|
|
"from Analyser.FitAnalyser import ThomasFermi2dModel, DensityProfileBEC2dModel, Polylog22dModel\n",
|
|
|
|
"from Analyser.FFTAnalyser import fft, ifft, fft_nutou\n",
|
|
|
|
"from ToolFunction.ToolFunction import *\n",
|
|
|
|
"\n",
|
|
|
|
"# Add errorbar plot to xarray package\n",
|
|
|
|
"from ToolFunction.HomeMadeXarrayFunction import errorbar, dataarray_plot_errorbar\n",
|
|
|
|
"xr.plot.dataarray_plot.errorbar = errorbar\n",
|
|
|
|
"xr.plot.accessor.DataArrayPlotAccessor.errorbar = dataarray_plot_errorbar"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "markdown",
|
|
|
|
"metadata": {},
|
|
|
|
"source": [
|
|
|
|
"## Start a client for parallel computing"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
|
|
|
"execution_count": 2,
|
|
|
|
"metadata": {},
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"data": {
|
|
|
|
"text/html": [
|
|
|
|
"<div>\n",
|
|
|
|
" <div style=\"width: 24px; height: 24px; background-color: #e1e1e1; border: 3px solid #9D9D9D; border-radius: 5px; position: absolute;\"> </div>\n",
|
|
|
|
" <div style=\"margin-left: 48px;\">\n",
|
|
|
|
" <h3 style=\"margin-bottom: 0px;\">Client</h3>\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <p style=\"color: #9D9D9D; margin-bottom: 0px;\">Client-a0f7b9f2-47d6-11ee-9934-80e82ce2fa8e</p>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" <table style=\"width: 100%; text-align: left;\">\n",
|
|
|
|
"\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" \n",
|
|
|
|
" <td style=\"text-align: left;\"><strong>Connection method:</strong> Cluster object</td>\n",
|
|
|
|
" <td style=\"text-align: left;\"><strong>Cluster type:</strong> distributed.LocalCluster</td>\n",
|
|
|
|
" \n",
|
|
|
|
" </tr>\n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:8787/status\" target=\"_blank\">http://127.0.0.1:8787/status</a>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\"></td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" </table>\n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
" <details>\n",
|
|
|
|
" <summary style=\"margin-bottom: 20px;\"><h3 style=\"display: inline;\">Cluster Info</h3></summary>\n",
|
|
|
|
" <div class=\"jp-RenderedHTMLCommon jp-RenderedHTML jp-mod-trusted jp-OutputArea-output\">\n",
|
|
|
|
" <div style=\"width: 24px; height: 24px; background-color: #e1e1e1; border: 3px solid #9D9D9D; border-radius: 5px; position: absolute;\">\n",
|
|
|
|
" </div>\n",
|
|
|
|
" <div style=\"margin-left: 48px;\">\n",
|
|
|
|
" <h3 style=\"margin-bottom: 0px; margin-top: 0px;\">LocalCluster</h3>\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <p style=\"color: #9D9D9D; margin-bottom: 0px;\">87faedbb</p>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" <table style=\"width: 100%; text-align: left;\">\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Dashboard:</strong> <a href=\"http://127.0.0.1:8787/status\" target=\"_blank\">http://127.0.0.1:8787/status</a>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Workers:</strong> 8\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Total threads:</strong> 128\n",
|
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Total memory:</strong> 149.01 GiB\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" \n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\"><strong>Status:</strong> running</td>\n",
|
|
|
|
" <td style=\"text-align: left;\"><strong>Using processes:</strong> True</td>\n",
|
|
|
|
"</tr>\n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
" </table>\n",
|
|
|
|
"\n",
|
|
|
|
" <details>\n",
|
|
|
|
" <summary style=\"margin-bottom: 20px;\">\n",
|
|
|
|
" <h3 style=\"display: inline;\">Scheduler Info</h3>\n",
|
|
|
|
" </summary>\n",
|
|
|
|
"\n",
|
|
|
|
" <div style=\"\">\n",
|
|
|
|
" <div>\n",
|
|
|
|
" <div style=\"width: 24px; height: 24px; background-color: #FFF7E5; border: 3px solid #FF6132; border-radius: 5px; position: absolute;\"> </div>\n",
|
|
|
|
" <div style=\"margin-left: 48px;\">\n",
|
|
|
|
" <h3 style=\"margin-bottom: 0px;\">Scheduler</h3>\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <p style=\"color: #9D9D9D; margin-bottom: 0px;\">Scheduler-a513fd59-1c45-4ed7-9a0d-004b539a3d74</p>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" <table style=\"width: 100%; text-align: left;\">\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Comm:</strong> tcp://127.0.0.1:57821\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Workers:</strong> 8\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Dashboard:</strong> <a href=\"http://127.0.0.1:8787/status\" target=\"_blank\">http://127.0.0.1:8787/status</a>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Total threads:</strong> 128\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Started:</strong> Just now\n",
|
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Total memory:</strong> 149.01 GiB\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" </table>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" </div>\n",
|
|
|
|
"\n",
|
|
|
|
" <details style=\"margin-left: 48px;\">\n",
|
|
|
|
" <summary style=\"margin-bottom: 20px;\">\n",
|
|
|
|
" <h3 style=\"display: inline;\">Workers</h3>\n",
|
|
|
|
" </summary>\n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
" <div style=\"margin-bottom: 20px;\">\n",
|
|
|
|
" <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
|
|
|
|
" <div style=\"margin-left: 48px;\">\n",
|
|
|
|
" <details>\n",
|
|
|
|
" <summary>\n",
|
|
|
|
" <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 0</h4>\n",
|
|
|
|
" </summary>\n",
|
|
|
|
" <table style=\"width: 100%; text-align: left;\">\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Comm: </strong> tcp://127.0.0.1:57860\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Total threads: </strong> 16\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:57862/status\" target=\"_blank\">http://127.0.0.1:57862/status</a>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Memory: </strong> 18.63 GiB\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Nanny: </strong> tcp://127.0.0.1:57824\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\"></td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td colspan=\"2\" style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-u0oiik41\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" </table>\n",
|
|
|
|
" </details>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" \n",
|
|
|
|
" <div style=\"margin-bottom: 20px;\">\n",
|
|
|
|
" <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
|
|
|
|
" <div style=\"margin-left: 48px;\">\n",
|
|
|
|
" <details>\n",
|
|
|
|
" <summary>\n",
|
|
|
|
" <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 1</h4>\n",
|
|
|
|
" </summary>\n",
|
|
|
|
" <table style=\"width: 100%; text-align: left;\">\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Comm: </strong> tcp://127.0.0.1:57865\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Total threads: </strong> 16\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:57867/status\" target=\"_blank\">http://127.0.0.1:57867/status</a>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Memory: </strong> 18.63 GiB\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Nanny: </strong> tcp://127.0.0.1:57825\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\"></td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td colspan=\"2\" style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-6p1lkbjg\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" </table>\n",
|
|
|
|
" </details>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" \n",
|
|
|
|
" <div style=\"margin-bottom: 20px;\">\n",
|
|
|
|
" <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
|
|
|
|
" <div style=\"margin-left: 48px;\">\n",
|
|
|
|
" <details>\n",
|
|
|
|
" <summary>\n",
|
|
|
|
" <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 2</h4>\n",
|
|
|
|
" </summary>\n",
|
|
|
|
" <table style=\"width: 100%; text-align: left;\">\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Comm: </strong> tcp://127.0.0.1:57872\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Total threads: </strong> 16\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:57875/status\" target=\"_blank\">http://127.0.0.1:57875/status</a>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Memory: </strong> 18.63 GiB\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Nanny: </strong> tcp://127.0.0.1:57826\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\"></td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td colspan=\"2\" style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-g2r1nnmm\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" </table>\n",
|
|
|
|
" </details>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" \n",
|
|
|
|
" <div style=\"margin-bottom: 20px;\">\n",
|
|
|
|
" <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
|
|
|
|
" <div style=\"margin-left: 48px;\">\n",
|
|
|
|
" <details>\n",
|
|
|
|
" <summary>\n",
|
|
|
|
" <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 3</h4>\n",
|
|
|
|
" </summary>\n",
|
|
|
|
" <table style=\"width: 100%; text-align: left;\">\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Comm: </strong> tcp://127.0.0.1:57871\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Total threads: </strong> 16\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:57873/status\" target=\"_blank\">http://127.0.0.1:57873/status</a>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Memory: </strong> 18.63 GiB\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Nanny: </strong> tcp://127.0.0.1:57827\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\"></td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td colspan=\"2\" style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-k_l96nv4\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" </table>\n",
|
|
|
|
" </details>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" \n",
|
|
|
|
" <div style=\"margin-bottom: 20px;\">\n",
|
|
|
|
" <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
|
|
|
|
" <div style=\"margin-left: 48px;\">\n",
|
|
|
|
" <details>\n",
|
|
|
|
" <summary>\n",
|
|
|
|
" <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 4</h4>\n",
|
|
|
|
" </summary>\n",
|
|
|
|
" <table style=\"width: 100%; text-align: left;\">\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Comm: </strong> tcp://127.0.0.1:57866\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Total threads: </strong> 16\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:57869/status\" target=\"_blank\">http://127.0.0.1:57869/status</a>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Memory: </strong> 18.63 GiB\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Nanny: </strong> tcp://127.0.0.1:57828\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\"></td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td colspan=\"2\" style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-6kiubqa3\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" </table>\n",
|
|
|
|
" </details>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" \n",
|
|
|
|
" <div style=\"margin-bottom: 20px;\">\n",
|
|
|
|
" <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
|
|
|
|
" <div style=\"margin-left: 48px;\">\n",
|
|
|
|
" <details>\n",
|
|
|
|
" <summary>\n",
|
|
|
|
" <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 5</h4>\n",
|
|
|
|
" </summary>\n",
|
|
|
|
" <table style=\"width: 100%; text-align: left;\">\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Comm: </strong> tcp://127.0.0.1:57859\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Total threads: </strong> 16\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:57861/status\" target=\"_blank\">http://127.0.0.1:57861/status</a>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Memory: </strong> 18.63 GiB\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Nanny: </strong> tcp://127.0.0.1:57829\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\"></td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td colspan=\"2\" style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-kl7vhday\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" </table>\n",
|
|
|
|
" </details>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" \n",
|
|
|
|
" <div style=\"margin-bottom: 20px;\">\n",
|
|
|
|
" <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
|
|
|
|
" <div style=\"margin-left: 48px;\">\n",
|
|
|
|
" <details>\n",
|
|
|
|
" <summary>\n",
|
|
|
|
" <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 6</h4>\n",
|
|
|
|
" </summary>\n",
|
|
|
|
" <table style=\"width: 100%; text-align: left;\">\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Comm: </strong> tcp://127.0.0.1:57852\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Total threads: </strong> 16\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:57857/status\" target=\"_blank\">http://127.0.0.1:57857/status</a>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Memory: </strong> 18.63 GiB\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Nanny: </strong> tcp://127.0.0.1:57830\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\"></td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td colspan=\"2\" style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-6ldt7csc\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" </table>\n",
|
|
|
|
" </details>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" \n",
|
|
|
|
" <div style=\"margin-bottom: 20px;\">\n",
|
|
|
|
" <div style=\"width: 24px; height: 24px; background-color: #DBF5FF; border: 3px solid #4CC9FF; border-radius: 5px; position: absolute;\"> </div>\n",
|
|
|
|
" <div style=\"margin-left: 48px;\">\n",
|
|
|
|
" <details>\n",
|
|
|
|
" <summary>\n",
|
|
|
|
" <h4 style=\"margin-bottom: 0px; display: inline;\">Worker: 7</h4>\n",
|
|
|
|
" </summary>\n",
|
|
|
|
" <table style=\"width: 100%; text-align: left;\">\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Comm: </strong> tcp://127.0.0.1:57877\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Total threads: </strong> 16\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Dashboard: </strong> <a href=\"http://127.0.0.1:57878/status\" target=\"_blank\">http://127.0.0.1:57878/status</a>\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
|
|
|
" <strong>Memory: </strong> 18.63 GiB\n",
|
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Nanny: </strong> tcp://127.0.0.1:57831\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" <td style=\"text-align: left;\"></td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
" <tr>\n",
|
|
|
|
" <td colspan=\"2\" style=\"text-align: left;\">\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
" <strong>Local directory: </strong> C:\\Users\\data\\AppData\\Local\\Temp\\dask-worker-space\\worker-wyfsi6_i\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
" </td>\n",
|
|
|
|
" </tr>\n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" </table>\n",
|
|
|
|
" </details>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" </div>\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" </details>\n",
|
|
|
|
"</div>\n",
|
|
|
|
"\n",
|
|
|
|
" </details>\n",
|
|
|
|
" </div>\n",
|
|
|
|
"</div>\n",
|
|
|
|
" </details>\n",
|
|
|
|
" \n",
|
|
|
|
"\n",
|
|
|
|
" </div>\n",
|
|
|
|
"</div>"
|
|
|
|
],
|
|
|
|
"text/plain": [
|
2023-09-08 14:20:25 +02:00
|
|
|
"<Client: 'tcp://127.0.0.1:57821' processes=8 threads=128, memory=149.01 GiB>"
|
2023-08-25 18:48:21 +02:00
|
|
|
]
|
|
|
|
},
|
|
|
|
"execution_count": 2,
|
|
|
|
"metadata": {},
|
|
|
|
"output_type": "execute_result"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"source": [
|
|
|
|
"from dask.distributed import Client\n",
|
|
|
|
"client = Client(n_workers=8, threads_per_worker=16, processes=True, memory_limit='20GB')\n",
|
|
|
|
"client"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "markdown",
|
|
|
|
"metadata": {},
|
|
|
|
"source": [
|
|
|
|
"## Set global path for experiment"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
|
|
|
"execution_count": 3,
|
|
|
|
"metadata": {},
|
|
|
|
"outputs": [],
|
|
|
|
"source": [
|
|
|
|
"groupList = [\n",
|
|
|
|
" \"images/MOT_3D_Camera/in_situ_absorption\",\n",
|
|
|
|
" \"images/ODT_1_Axis_Camera/in_situ_absorption\",\n",
|
|
|
|
" \"images/ODT_2_Axis_Camera/in_situ_absorption\",\n",
|
|
|
|
"]\n",
|
|
|
|
"\n",
|
|
|
|
"dskey = {\n",
|
|
|
|
" \"images/MOT_3D_Camera/in_situ_absorption\": \"camera_0\",\n",
|
|
|
|
" \"images/ODT_1_Axis_Camera/in_situ_absorption\": \"camera_1\",\n",
|
|
|
|
" \"images/ODT_2_Axis_Camera/in_situ_absorption\": \"camera_2\",\n",
|
|
|
|
"}\n"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
2023-09-08 14:20:25 +02:00
|
|
|
"execution_count": 4,
|
2023-08-25 18:48:21 +02:00
|
|
|
"metadata": {},
|
|
|
|
"outputs": [],
|
|
|
|
"source": [
|
|
|
|
"# img_dir = 'C:/Users/control/DyLab/Experiments/DyBEC/'\n",
|
|
|
|
"img_dir = '//DyLabNAS/Data/'\n",
|
|
|
|
"SequenceName = \"Evaporative_Cooling\"\n",
|
|
|
|
"folderPath = img_dir + SequenceName + \"/\" + '2023/07/03'# get_date()"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "markdown",
|
|
|
|
"metadata": {},
|
|
|
|
"source": [
|
|
|
|
"# Load data"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "markdown",
|
|
|
|
"metadata": {},
|
|
|
|
"source": [
|
|
|
|
"## along x-axis"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
2023-09-08 14:20:25 +02:00
|
|
|
"execution_count": 5,
|
2023-08-25 18:48:21 +02:00
|
|
|
"metadata": {},
|
|
|
|
"outputs": [],
|
|
|
|
"source": [
|
|
|
|
"compX = xr.open_zarr(\"./compX.zarr\")\n",
|
|
|
|
"compY = xr.open_zarr(\"./compY.zarr\")\n",
|
|
|
|
"compZ = xr.open_zarr(\"./compZ.zarr\")"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
2023-09-08 14:20:25 +02:00
|
|
|
"execution_count": 6,
|
2023-08-25 18:48:21 +02:00
|
|
|
"metadata": {},
|
|
|
|
"outputs": [],
|
|
|
|
"source": [
|
|
|
|
"B = np.sqrt((compX['als_final_current'] * 9.52 -0.164)**2 + (0.435**2 - 0.164**2))\n",
|
|
|
|
"compX['als_final_current'] = B\n",
|
|
|
|
"compX['als_final_current'] = B"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
2023-09-08 14:20:25 +02:00
|
|
|
"execution_count": 7,
|
2023-08-25 18:48:21 +02:00
|
|
|
"metadata": {},
|
|
|
|
"outputs": [],
|
|
|
|
"source": [
|
|
|
|
"B = np.sqrt((compY['als_final_current'] * 10.3 + 0.202)**2 + (0.440**2 - 0.202**2))\n",
|
|
|
|
"compY['als_final_current'] = B\n",
|
|
|
|
"compY['als_final_current'] = B"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
2023-09-08 14:20:25 +02:00
|
|
|
"execution_count": 8,
|
2023-08-25 18:48:21 +02:00
|
|
|
"metadata": {},
|
|
|
|
"outputs": [],
|
|
|
|
"source": [
|
|
|
|
"B = np.sqrt((compZ['als_final_current'] * 10.6021 + 0.3254)**2 + (0.4333**2 - 0.3254**2))\n",
|
|
|
|
"compZ['als_final_current'] = B\n",
|
|
|
|
"compZ['als_final_current'] = B"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
|
|
|
"execution_count": 9,
|
|
|
|
"metadata": {},
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"data": {
|
2023-09-08 14:20:25 +02:00
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAACT4AAAI2CAYAAABzQAWFAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdeXxU9b3/8deZIUDIwhL2TCBoXUC9P69bVQyGuoBUiwwRAalS676UuGHrBlhxFxLt4ta6VEFjGKQqIi5EAkrr0tuq4FJNIAkBISBZIBBmzu+PMzOZfU4CCNH3s4+UzDnne853zpwZJ5l3Ph/DNE0TERERERERERERERERERERERGRDsSxvycgIiIiIiIiIiIiIiIiIiIiIiLSVgo+iYiIiIiIiIiIiIiIiIiIiIhIh6Pgk4iIiIiIiIiIiIiIiIiIiIiIdDgKPomIiIiIiIiIiIiIiIiIiIiISIej4JOIiIiIiIiIiIiIiIiIiIiIiHQ4Cj6JiIiIiIiIiIiIiIiIiIiIiEiHo+CTiIiIiIiIiIiIiIiIiIiIiIh0OAo+iYiIiIiIiIiIiIiIiIiIiIhIh6Pgk4iIiIiIiIiIiIiIiIiIiIiIdDgKPomIiIiIiIiIiIiIiIiIiIiISIfT4YNP9957L4ZhBL9imTlzZtg28b7++9//JjzW119/zeWXX86QIUPo2rUrffv2ZdSoUSxYsMDWXD/++GOmTJmCy+WiS5cuDBgwgHHjxvHOO++0+X6LiIiIiIiIiIiIiIiIiIiIiPyYGaZpmvt7Eu31xRdfcPTRR9Pc3BxcFuvuzJw5k1mzZpGSkkKvXr3i7m/VqlXk5ubGXLd48WLOO+88tm/fDkBmZiaNjY34fD4AfvWrX/GXv/wlbvjqySef5Morr2T37t0AdO/enfr6+uB8Z8yYwcyZM5PeZxERERERERERERERERERERER6cAVn3w+H7/+9a9pbm7mpJNOsjXm5JNPZsOGDXG/4oWeKioqmDBhAtu3b2f48OF88cUXbNu2jW3btnHHHXcA8NRTT/HAAw/EHP/+++9zxRVXsHv3bs4991yqqqr47rvv2LRpE5dffjkAs2bNoqSkpO0nQkRERERERERERERERERERETkR6jDBp8eeeQRVq5cyQUXXMCZZ565T491xx130NTURP/+/Xn11Vc59NBDAUhPT2fWrFlcdtllAMyePZutW7dGjZ8+fTper5ejjjqKkpISXC4XAFlZWTz66KOMGjUqbDsREREREREREREREREREREREUmsQwafKioquPXWW8nKymLu3Ln79FhNTU0sWLAAgCuvvJIePXpEbfO73/0OgPr6el5++eWwdd988w0rVqwA4MYbbyQlJSXu+LVr17J8+fK9OHsRERERERERERERERERERERkR+mDhl8uvTSS2lqamLOnDn06dNnnx5rxYoV7NixA4Czzjor5ja5ubkMHToUgKVLl4ate/PNN4Pfjx49Oub4U045hYyMjJjjRUREREREREREREREREREREQkWocLPj3xxBO8/fbbnH766Vx44YVtGvvZZ59x5JFHkpqaSnp6OocddhiXXnop//rXv+KO+fTTT4PfH3HEEXG3O/LII4PHiDW+b9++9O3bN+ZYp9PJ4YcfHnO8iIiIiIiIiIiIiIiIiIiIiIhE61DBp5qaGm666SZSU1N57LHH2jx+8+bNrFmzhm7durFz506+/PJLnnzySY499lhuu+22mGPWr18PQM+ePenWrVvcfWdnZ4dtHzk+sL6t40VEREREREREREREREREREREJFqn/T2Btrj88svZtm0b9913HwcddJDtcYcccgj3338/Y8eOZciQIaSkpLBr1y7Kysq45ZZb+Oijj5g9ezY9e/bkhhtuCBvb0NAAkDD0FLo+sP3eGh9p586d7Ny5M3jb5/OxZcsWsrKyMAwj4VgRERERERERERERERERERERkQOZaZo0NDQwcOBAHI7ENZ06TPDpueee47XXXuPoo4/m+uuvb9PYCy64IGpZ586dOfPMMxkxYgQjRozggw8+YObMmVxyySV07959b017r7vnnnuYNWvW/p6GiIiIiIiIiIiIiIiIiIiIiMg+U1VVhcvlSrhNhwg+ffvttxQWFuJ0OnniiSfo1GnvTbtr167cfffdnHHGGTQ2NvL222/jdruD6zMyMgDYvn17wv0E1ge231vjI/3ud78LC35t27aNQYMGUVFRkXSsiEhH0tLSwrJlyxg5ciQpKSn7ezoiIj8qeg0WEdl/9BosIrL/6DVYRGT/0OuviMj+o9dgOVA1NDQwZMgQWzmYDhF8uvnmm6mrq+PKK6/k8MMPp7GxMWz9rl27gt8H1nXu3JnOnTvb2v9JJ50U/P6bb74JWzdw4EAAtm7dyvbt2+O2rKupqQnbPnJ8YH088cZH6tKlC126dIla3qtXLzIzMxOOFRHpSFpaWujWrRtZWVl6oyUi8j3Ta7CIyP6j12ARkf1Hr8EiIvuHXn9FRPYfvQbLgSpwPRqGkXTbxI3wDhAVFRUA/PnPfyYjIyPq65577gluG1g2ffr0vXLsI488Mvj9Z599Fne7Tz/9FIAjjjgi5vhvv/2WTZs2xRzr9Xr5/PPPY44XEREREREREREREREREREREZFoHSL4tK+tWrUq+P2QIUPC1p1yyimkpqYCsGTJkpjj165dy5o1awA488wzw9adccYZwe/jjV+5ciUNDQ0xx4uIiIiIiIiIiIiIiIiIiIiISLQOEXwqKyvDNM24XzNmzAhuG1hWVFQUvJ3Izp07ufXWWwFIS0vjtNNOC1uflpbG+PHjAavi1LZt26L2cd999wFWtalzzz03bN1BBx3EKaecAsBDDz1ES0tL1Ph7770XgMGDBzNixIiE8xURERERERERERERERERERERkQ4SfNoTy5cv5/TTT+e5556juro6uLylpYW3336bvLw8/vGPfwBwxx130KNHj6h93HnnnaSlpVFbW8s555zDV199BUBTUxN33nknjz76KAC33XYbPXv2jBp///3343Q6+fe//83EiROpqakBYMuWLVx11VW8/vrrYduJiIiIiIiIiIiIiIiIiIiIiEhinfb3BPY10zR5++23efvttwFITU0lLS2Nbdu2BasvORwOfvvb3zJ9+vSY+xgyZAglJSWcd955lJeXc+ihh9K9e3caGxvxer0ATJ06lZtuuinm+JNOOolHH32UK6+8Eo/Hg8fjoUePHmzbti1YkWrGjBlMmDBhb999EREREREREREREREREREREZEfpB988Omoo47iwQcf5P333+eTTz5h8+bNfPfdd3Tr1o1hw4aRl5fHZZddxlFHHZVwP2PGjOE///kP9913H2+++Sbr16+nR48eHHPMMVx++eXBdnjxXHLJJRxzzDE89NBDvPvuu2zatIm+ffty0kknce211/Kzn/1sb95tEREREREREREREREREREREZEftB9E8GnmzJnMnDkz5rqsrCxuuOGGvXKcgw8+mMcff7zd44855hief/75vTIXEREREREREREREREREREREZEfM8f+noCIiIiIiIiIiIiIiIiIiIiIiEhb/SAqPomIiIiIiIiIiIiIiIiIiIiIfaZp4nA4aG5uxuv17u/pyA+Mw+EgJSUFwzD26XEUfBIRERERERERERERERERERH5kfB6vWzevJlt27YxYMAAqqqq9nk4RX6cUlJSyMjIoHfv3jidzn1yDAWfRERERERERERERERERERERH4EvF4vVVVV7Ny5k4yMDDIyMsjMzNxnoRT5cTJNE6/XS2NjI9999x07duwgJydnn1xnCj6JiIiIiIiIiIiIiIiIiIiI/Ahs3ryZnTt3MmjQILp06UJ9fT2pqak4HI79PTX5AUpPT6d79+6sW7eOzZs3069fv71+DF25IiIiIiIiIiIiIiIiIiIiIj9wpmnS0NBA9+7dSU1N3d/TkR+J1NRUMjMzaWhowDTNvb5/BZ9EREREREREREREREREREREfuBaWlpoaWkhPT19f09FfmQyMjKC19/epuCTiIiIiIiIiIiIiIi
|
2023-08-25 18:48:21 +02:00
|
|
|
"text/plain": [
|
|
|
|
"<Figure size 2400x600 with 1 Axes>"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"metadata": {},
|
|
|
|
"output_type": "display_data"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"source": [
|
2023-09-08 14:20:25 +02:00
|
|
|
"import matplotlib.patches as patches\n",
|
|
|
|
"\n",
|
|
|
|
"B0 = [1.2950, 1.3060, 2.1740, 2.3360, 2.5910, 2.7400, 2.8030, 2.7800, 3.3570, 4.9490, 5.0830]# , 7.1720, 7.2040, 7.1340]\n",
|
|
|
|
"B0_width = [0.0090, 0.0100, 0.0005, 0.0005, 0.0010, 0.0005, 0.0210, 0.0150, 0.0430, 0.0005, 0.1300]# , 0.0240, 0.0005, 0.0360]\n",
|
|
|
|
"\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
"fig = plt.figure(figsize=(24,6))\n",
|
|
|
|
"ax = fig.gca()\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
"compX['OD'].plot.errorbar(ax=ax, yerr = compX['std'], fmt='or', label='X coil')\n",
|
|
|
|
"compY['OD'].plot.errorbar(ax=ax, yerr = compY['std'], fmt='og', label='Y coil')\n",
|
|
|
|
"compZ['OD'].plot.errorbar(ax=ax, yerr = compZ['std'], fmt='ob', label='Z coil')\n",
|
|
|
|
"\n",
|
|
|
|
"for i in range(len(B0)):\n",
|
|
|
|
" rect = patches.Rectangle((B0[i] - B0_width[i], 000), B0_width[i]*2, 4000, linewidth=1, edgecolor='r', facecolor='r', alpha=0.4)\n",
|
|
|
|
" ax.add_patch(rect)\n",
|
|
|
|
"\n",
|
|
|
|
"plt.legend()\n",
|
|
|
|
"\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
"plt.ylim([0, 4500])\n",
|
|
|
|
"plt.ylabel('NCount')\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
"plt.xlabel('B (G)')\n",
|
|
|
|
"plt.tight_layout()\n",
|
|
|
|
"plt.grid(visible=1)\n",
|
|
|
|
"plt.show()"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
|
|
|
"execution_count": 24,
|
|
|
|
"metadata": {},
|
|
|
|
"outputs": [],
|
|
|
|
"source": [
|
|
|
|
"# CompX\n",
|
|
|
|
"f = [0.54427 , 0.36366 , 0.30532, 0.29893 , 0.28320 , 0.25629 , 0.23891 , 0.147] \n",
|
|
|
|
"df = [0.00046 , 0.00010 ,0.00013 , 0.00011 , 0.00004 , 0.00407 , 0.01, 0.01]\n",
|
|
|
|
"B = [5.0830, 3.3570, (2.8030 + 2.7800)/2, 2.7400, 2.5910, 2.3360, 2.1740, (1.2950 + 1.3060)/2]\n",
|
|
|
|
"\n",
|
|
|
|
"f = unp.uarray(f, df)\n",
|
|
|
|
"f = unp.sqrt((f * 9.52 -0.164)**2 + (0.435**2 - 0.164**2))\n",
|
|
|
|
"\n",
|
|
|
|
"unp.nominal_values(f)\n",
|
|
|
|
"\n",
|
|
|
|
"CompX_peak_val = xr.DataArray(\n",
|
|
|
|
" data=unp.nominal_values(f),\n",
|
|
|
|
" dims='x',\n",
|
|
|
|
" coords=dict(x=np.arange(7, -1, -1))\n",
|
|
|
|
")\n",
|
|
|
|
"\n",
|
|
|
|
"CompX_peak_std = xr.DataArray(\n",
|
|
|
|
" data=unp.std_devs(f),\n",
|
|
|
|
" dims='x',\n",
|
|
|
|
" coords=dict(x=np.arange(7, -1, -1))\n",
|
|
|
|
")"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
|
|
|
"execution_count": 25,
|
|
|
|
"metadata": {},
|
|
|
|
"outputs": [],
|
|
|
|
"source": [
|
|
|
|
"# CompY\n",
|
|
|
|
"f = [0.47870 , 0.31417 ,0.26099 ,0.25506 ,0.24090 ,0.21583 ,0.20091 ,0.1165] \n",
|
|
|
|
"df = [0.00036 ,0.00010 ,0.00017 ,0.00041 ,0.00003 ,0.00015 ,0.00726 ,0.001]\n",
|
|
|
|
"B = [(1.2950 + 1.3060)/2, 2.1740, 2.3360, 2.5910, 2.7400, (2.8030 + 2.7800)/2, 3.3570, 5.0830]\n",
|
|
|
|
"\n",
|
|
|
|
"f = unp.uarray(f, df)\n",
|
|
|
|
"f = unp.sqrt((f * 10.3 + 0.202)**2 + (0.440**2 - 0.202**2))\n",
|
|
|
|
"\n",
|
|
|
|
"unp.nominal_values(f)\n",
|
|
|
|
"\n",
|
|
|
|
"CompY_peak_val = xr.DataArray(\n",
|
|
|
|
" data=unp.nominal_values(f),\n",
|
|
|
|
" dims='x',\n",
|
|
|
|
" coords=dict(x=np.arange(7, -1, -1))\n",
|
|
|
|
")\n",
|
|
|
|
"\n",
|
|
|
|
"CompY_peak_std = xr.DataArray(\n",
|
|
|
|
" data=unp.std_devs(f),\n",
|
|
|
|
" dims='x',\n",
|
|
|
|
" coords=dict(x=np.arange(7, -1, -1))\n",
|
|
|
|
")"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
|
|
|
"execution_count": 34,
|
|
|
|
"metadata": {},
|
|
|
|
"outputs": [],
|
|
|
|
"source": [
|
|
|
|
"# CompZ\n",
|
|
|
|
"f = [0.44224, 0.28128, 0.22367, 0.22962, 0.21004, 0.18586, 0.17055, 0.0903] \n",
|
|
|
|
"df = [0.00038, 0.00016, 0.01, 0.00013, 0.00012, 0.00021, 0.00175, 0]\n",
|
|
|
|
"B = [(1.2950 + 1.3060)/2, 2.1740, 2.3360, 2.5910, 2.7400, (2.8030 + 2.7800)/2, 3.3570, 5.0830]\n",
|
|
|
|
"\n",
|
|
|
|
"f = unp.uarray(f, df)\n",
|
|
|
|
"f = unp.sqrt((f * 10.6021 + 0.3254)**2 + (0.4333**2 - 0.3254**2))\n",
|
|
|
|
"\n",
|
|
|
|
"unp.nominal_values(f)\n",
|
|
|
|
"\n",
|
|
|
|
"CompZ_peak_val = xr.DataArray(\n",
|
|
|
|
" data=unp.nominal_values(f),\n",
|
|
|
|
" dims='x',\n",
|
|
|
|
" coords=dict(x=np.arange(7, -1, -1))\n",
|
|
|
|
")\n",
|
|
|
|
"\n",
|
|
|
|
"CompZ_peak_std = xr.DataArray(\n",
|
|
|
|
" data=unp.std_devs(f),\n",
|
|
|
|
" dims='x',\n",
|
|
|
|
" coords=dict(x=np.arange(7, -1, -1))\n",
|
|
|
|
")"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
|
|
|
"execution_count": 52,
|
|
|
|
"metadata": {},
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"data": {
|
|
|
|
"image/png": "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XnmFCy64AID33nsPp9NZZ8svKioC0B0IREQkYBS8QpjX6yU3N5cDBw6wbdu243ak74suugiA0tJStm3bVmV6SUkJs2bNok+fPiQkJBAWFkZycjJDhw7lk08+qdL++uuvx2QyMXXqVAC++OKLSv3LKt4/1Jo1axgxYgStW7cmPDyc2NhYevbsyfTp0yksLKy27or1XH/99RiGwWuvvca5555LfHw8JpOJefPmVWq/f/9+7r33Xk499VRiY2MJDw+nffv2jBkzhp9//rnadaxZs8ZXN8Dvv//ODTfcQKtWrbDb7aSkpDB27Fh2795d0+YFyrfta6+9xsUXX0xSUhJ2u53mzZtz1lln8fDDD5OWllbtfHl5eTz66KP06tWLpk2bYrfbadWqFSNGjOCbb7457DpFRBolo5HLy8szACMvL8/veYqLi42ff/7ZKC4uPmJbj8dj5OTkGB6P51jKrGLjxo3GhAkTjJSUFCM5Odm48MILjUmTJhkbN26s0/XUtylTphiAcbhd8cknn/S1+e677ypN++2334wTTjjBN91kMhmxsbG+14Axfvz4SvNMnDjRSEpKMiIjIw3AsNlsRlJSku/x1FNP+dq63W5jzJgxlZYXFRVlWCwW3+tOnToZO3bsqFL3ddddZwDGqFGjjL///e8GYJjNZqNp06aG2Ww2Xn/9dV/bDz/80IiKivIt02az+eoDjLCwMOONN96oso7Vq1f72qxatcq3jOjoaMNqtfqmtWjRwti1a1e123f79u1G165dK23DJk2aVPqMkyZNqjLfN998YyQlJfnaWCwWIzo6utJyHnvssRp/rjWpze9XY1NaWmr897//NUpLS4NdijRg2k8CrzZZQsErBIPXxo0bjaFDhxpnn3220b59e+PEE080hg8fbpx77rnG0KFDQyp8+RO8+vXr5/siz8rK8r2fk5NjtG3b1gCMfv36GV9++aVRUlJiGIZh5ObmGjNmzPAFkeeee67Gdffp06fGdU+aNMkAjKSkJOPFF180Dh48aBhG+R+21atXG927dzcA4/TTT6/yM64IXlFRUYbVajWefvpp335WUFBg7NmzxzAMw1i/fr0RFhZmAMZNN91kbN261SgrKzMMwzB27txp/OMf/zAAw2q1Vgmehwavpk2bGpdeeqmxdetWwzAMw+VyGQsXLvSFoZEjR1b5fHl5eb7g2rRpU+OVV14xcnNzfZ/x119/NZ555hljxowZleZLS0szmjRpYgDG3//+d+P777833G63YRiGsX//fuOBBx7wBb/FixfXuH2ro+BVM32hij+0nwSeglcthFrw8ng8xqRJk4xzzz3XuOGGG4zOnTsbnTt3Nm688UZj7NixxrnnnmvcdtttdX6Erb4cLnjt3LnTGDt2rG/6pZdeWmn6HXfc4QtdFV/6f/XBBx8YgJGQkFClzZGC15YtWwyTyWREREQYmzdvrrZNfn6+kZKSUm3AqAhegDFr1qwatoBhnHnmmQZg3HnnnTX+3CZOnGgAxpAhQyq9f2jw6tu3b7Xzz5o1ywAMh8NRZRv861//MgDDbrfXKrBXHMGrLsxVmDFjhgEYp556qt/LNQwFr8PRF6r4Q/tJ4NUmS6iPV4j5/fff2bp1KykpKVVuJmwymUhJSeHnn3/m999/D1KFRy85Odn3iIyMpE2bNrz
|
|
|
|
"text/plain": [
|
|
|
|
"<Figure size 640x480 with 1 Axes>"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"metadata": {},
|
|
|
|
"output_type": "display_data"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"source": [
|
|
|
|
"B = [(1.2950 + 1.3060)/2, 2.1740, 2.3360, 2.5910, 2.7400, (2.8030 + 2.7800)/2, 3.3570, 5.0830]\n",
|
|
|
|
"B_width = [(0.0090 + 0.0100)/2, 0.0005, 0.0005, 0.0010, 0.0005, (0.0210 + 0.0150)/2, 0.0430, 0.1300]# , 0.0240, 0.0005, 0.0360]\n",
|
|
|
|
"\n",
|
|
|
|
"Ref_peak_val = xr.DataArray(\n",
|
|
|
|
" data=unp.nominal_values(B),\n",
|
|
|
|
" dims='x',\n",
|
|
|
|
" coords=dict(x=np.arange(8))\n",
|
|
|
|
")\n",
|
|
|
|
"\n",
|
|
|
|
"Ref_peak_std = xr.DataArray(\n",
|
|
|
|
" data=unp.std_devs(B_width),\n",
|
|
|
|
" dims='x',\n",
|
|
|
|
" coords=dict(x=np.arange(8))\n",
|
|
|
|
")\n",
|
|
|
|
"\n",
|
|
|
|
"fig = plt.figure()\n",
|
|
|
|
"ax = fig.gca()\n",
|
|
|
|
"\n",
|
|
|
|
"Ref_peak_val.plot.errorbar(ax=ax, yerr=Ref_peak_std, fmt='ok', label='Reference', markersize=6, alpha=0.6)\n",
|
|
|
|
"CompX_peak_val.plot.errorbar(ax=ax, yerr=CompX_peak_std, fmt='Xr', label='X coil', markersize=8, alpha=0.6)\n",
|
|
|
|
"CompY_peak_val.plot.errorbar(ax=ax, yerr=CompY_peak_std, fmt='sg', label='Y coil', markersize=6, alpha=0.6)\n",
|
|
|
|
"CompZ_peak_val.plot.errorbar(ax=ax, yerr=CompZ_peak_std, fmt='db', label='Z coil', markersize=6, alpha=0.6)\n",
|
|
|
|
"\n",
|
|
|
|
"plt.legend()\n",
|
|
|
|
"\n",
|
|
|
|
"plt.ylim([1, 6])\n",
|
|
|
|
"plt.ylabel('B (G)')\n",
|
|
|
|
"plt.xlabel('Peak index')\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
"plt.tight_layout()\n",
|
|
|
|
"plt.grid(visible=1)\n",
|
2023-09-08 14:20:25 +02:00
|
|
|
"\n",
|
2023-08-25 18:48:21 +02:00
|
|
|
"plt.show()"
|
|
|
|
]
|
|
|
|
},
|
2023-09-08 14:20:25 +02:00
|
|
|
{
|
|
|
|
"cell_type": "code",
|
|
|
|
"execution_count": 61,
|
|
|
|
"metadata": {},
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"data": {
|
|
|
|
"text/plain": [
|
|
|
|
"array([5.1475, 3.4601, 2.9165, 2.856 , 2.7116, 2.4564, 2.3048, 1.4554])"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"execution_count": 61,
|
|
|
|
"metadata": {},
|
|
|
|
"output_type": "execute_result"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"source": [
|
|
|
|
"np.round(CompY_peak_val.to_numpy(), 4)"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"cell_type": "code",
|
|
|
|
"execution_count": 62,
|
|
|
|
"metadata": {},
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"data": {
|
|
|
|
"text/plain": [
|
|
|
|
"array([0.0037, 0.001 , 0.0017, 0.0042, 0.0003, 0.0015, 0.0737, 0.0099])"
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"execution_count": 62,
|
|
|
|
"metadata": {},
|
|
|
|
"output_type": "execute_result"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"source": [
|
|
|
|
"np.round(CompY_peak_std.to_numpy(), 4)"
|
|
|
|
]
|
|
|
|
},
|
2023-08-25 18:48:21 +02:00
|
|
|
{
|
|
|
|
"cell_type": "code",
|
|
|
|
"execution_count": null,
|
|
|
|
"metadata": {},
|
|
|
|
"outputs": [],
|
|
|
|
"source": []
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"metadata": {
|
|
|
|
"kernelspec": {
|
|
|
|
"display_name": "base",
|
|
|
|
"language": "python",
|
|
|
|
"name": "python3"
|
|
|
|
},
|
|
|
|
"language_info": {
|
|
|
|
"codemirror_mode": {
|
|
|
|
"name": "ipython",
|
|
|
|
"version": 3
|
|
|
|
},
|
|
|
|
"file_extension": ".py",
|
|
|
|
"mimetype": "text/x-python",
|
|
|
|
"name": "python",
|
|
|
|
"nbconvert_exporter": "python",
|
|
|
|
"pygments_lexer": "ipython3",
|
|
|
|
"version": "3.9.12"
|
|
|
|
},
|
|
|
|
"orig_nbformat": 4
|
|
|
|
},
|
|
|
|
"nbformat": 4,
|
|
|
|
"nbformat_minor": 2
|
|
|
|
}
|