{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Basic analysis of PES spectra" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import toolbox_scs as tb" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "First, we load the raw traces of PES (W and E channels), the pressure and the XGM pulse energy. In this run, 100 pulses per train were recorded." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
<xarray.Dataset>\n", "Dimensions: (PESsampleId: 600000, pulse_slot: 2700, sa3_pId: 100, trainId: 4044)\n", "Coordinates:\n", " * trainId (trainId) uint64 1044495172 1044495174 ... 1044501582\n", " * sa3_pId (sa3_pId) int64 1032 1036 1040 1044 ... 1420 1424 1428\n", "Dimensions without coordinates: PESsampleId, pulse_slot\n", "Data variables:\n", " bunchPatternTable (trainId, pulse_slot) uint32 2113321 0 2097193 ... 0 0 0\n", " PES_W_raw (trainId, PESsampleId) int16 1 5 -1 2 3 3 ... 4 -1 4 1 4\n", " PES_E_raw (trainId, PESsampleId) int16 -5 -8 -5 -5 ... -5 -3 -7 -3\n", " PES_pressure (trainId) float32 6.28733e-07 ... 6.7894194e-07\n", " XTD10_SA3 (trainId, sa3_pId) float64 2.661e+03 ... 2.11e+03\n", "Attributes:\n", " runFolder: /gpfs/exfel/exp/SCS/202121/p002927/raw/r0100
array([1044495172, 1044495174, 1044495175, ..., 1044501578, 1044501580,\n", " 1044501582], dtype=uint64)
array([1032, 1036, 1040, 1044, 1048, 1052, 1056, 1060, 1064, 1068, 1072, 1076,\n", " 1080, 1084, 1088, 1092, 1096, 1100, 1104, 1108, 1112, 1116, 1120, 1124,\n", " 1128, 1132, 1136, 1140, 1144, 1148, 1152, 1156, 1160, 1164, 1168, 1172,\n", " 1176, 1180, 1184, 1188, 1192, 1196, 1200, 1204, 1208, 1212, 1216, 1220,\n", " 1224, 1228, 1232, 1236, 1240, 1244, 1248, 1252, 1256, 1260, 1264, 1268,\n", " 1272, 1276, 1280, 1284, 1288, 1292, 1296, 1300, 1304, 1308, 1312, 1316,\n", " 1320, 1324, 1328, 1332, 1336, 1340, 1344, 1348, 1352, 1356, 1360, 1364,\n", " 1368, 1372, 1376, 1380, 1384, 1388, 1392, 1396, 1400, 1404, 1408, 1412,\n", " 1416, 1420, 1424, 1428])
array([[2113321, 0, 2097193, ..., 0, 0, 0],\n", " [2113321, 0, 2097193, ..., 0, 0, 0],\n", " [2113321, 0, 2097193, ..., 0, 0, 0],\n", " ...,\n", " [2113321, 0, 2097193, ..., 0, 0, 0],\n", " [2113321, 0, 2097193, ..., 0, 0, 0],\n", " [2113321, 0, 2097193, ..., 0, 0, 0]],\n", " dtype=uint32)
array([[ 1, 5, -1, ..., 4, 3, 5],\n", " [ 4, 2, 2, ..., 3, 1, 5],\n", " [ 1, 2, 2, ..., 2, 1, 3],\n", " ...,\n", " [ 1, 5, 0, ..., 2, 4, 1],\n", " [ 1, 5, -1, ..., 2, 1, 2],\n", " [ 2, 3, 1, ..., 4, 1, 4]], dtype=int16)
array([[-5, -8, -5, ..., -3, -2, -6],\n", " [-2, -6, -7, ..., -5, -6, -4],\n", " [-2, -5, -6, ..., -4, -4, 0],\n", " ...,\n", " [-4, -6, -8, ..., -5, -6, -4],\n", " [-6, -7, -7, ..., -3, -3, -4],\n", " [-5, -5, -7, ..., -3, -7, -3]], dtype=int16)
array([6.2873301e-07, 6.2873301e-07, 6.2873301e-07, ..., 6.4182740e-07,\n", " 6.7894194e-07, 6.7894194e-07], dtype=float32)
array([[2661.23291016, 2444.58691406, 2480.74072266, ..., 2380.93359375,\n", " 2479.30371094, 2232.07226562],\n", " [2404.85668945, 2658.734375 , 2217.1796875 , ..., 2488.41577148,\n", " 2629.03076172, 2302.22460938],\n", " [2401.78662109, 2247.9284668 , 2280.03271484, ..., 2320.97119141,\n", " 2199.11914062, 2297.96264648],\n", " ...,\n", " [2248.18920898, 2398.20703125, 2354.68212891, ..., 2307.03833008,\n", " 2568.10595703, 2465.97509766],\n", " [2123.55004883, 2414.68261719, 2608.14404297, ..., 2427.31542969,\n", " 2626.33886719, 2505.59179688],\n", " [1932.66723633, 1922.01318359, 2103.00415039, ..., 2199.97802734,\n", " 2235.63769531, 2109.60400391]])
<xarray.Dataset>\n", "Dimensions: (pulse_slot: 2700, sa3_pId: 100, time_ns: 300, trainId: 4044)\n", "Coordinates:\n", " * trainId (trainId) uint64 1044495172 1044495174 ... 1044501582\n", " * sa3_pId (sa3_pId) int64 1032 1036 1040 1044 ... 1420 1424 1428\n", " * time_ns (time_ns) float64 0.0 0.5 1.0 1.5 ... 148.5 149.0 149.5\n", "Dimensions without coordinates: pulse_slot\n", "Data variables:\n", " bunchPatternTable (trainId, pulse_slot) uint32 2113321 0 2097193 ... 0 0 0\n", " PES_pressure (trainId) float32 6.28733e-07 ... 6.7894194e-07\n", " XTD10_SA3 (trainId, sa3_pId) float64 2.661e+03 ... 2.11e+03\n", " PES_E_tof (sa3_pId, trainId, time_ns) float64 -3.6 -0.6 ... 0.4125\n", " PES_W_tof (sa3_pId, trainId, time_ns) float64 -1.337 ... 0.0375\n", "Attributes:\n", " runFolder: /gpfs/exfel/exp/SCS/202121/p002927/raw/r0100
array([1044495172, 1044495174, 1044495175, ..., 1044501578, 1044501580,\n", " 1044501582], dtype=uint64)
array([1032, 1036, 1040, 1044, 1048, 1052, 1056, 1060, 1064, 1068, 1072, 1076,\n", " 1080, 1084, 1088, 1092, 1096, 1100, 1104, 1108, 1112, 1116, 1120, 1124,\n", " 1128, 1132, 1136, 1140, 1144, 1148, 1152, 1156, 1160, 1164, 1168, 1172,\n", " 1176, 1180, 1184, 1188, 1192, 1196, 1200, 1204, 1208, 1212, 1216, 1220,\n", " 1224, 1228, 1232, 1236, 1240, 1244, 1248, 1252, 1256, 1260, 1264, 1268,\n", " 1272, 1276, 1280, 1284, 1288, 1292, 1296, 1300, 1304, 1308, 1312, 1316,\n", " 1320, 1324, 1328, 1332, 1336, 1340, 1344, 1348, 1352, 1356, 1360, 1364,\n", " 1368, 1372, 1376, 1380, 1384, 1388, 1392, 1396, 1400, 1404, 1408, 1412,\n", " 1416, 1420, 1424, 1428])
array([ 0. , 0.5, 1. , ..., 148.5, 149. , 149.5])
array([[2113321, 0, 2097193, ..., 0, 0, 0],\n", " [2113321, 0, 2097193, ..., 0, 0, 0],\n", " [2113321, 0, 2097193, ..., 0, 0, 0],\n", " ...,\n", " [2113321, 0, 2097193, ..., 0, 0, 0],\n", " [2113321, 0, 2097193, ..., 0, 0, 0],\n", " [2113321, 0, 2097193, ..., 0, 0, 0]],\n", " dtype=uint32)
array([6.2873301e-07, 6.2873301e-07, 6.2873301e-07, ..., 6.4182740e-07,\n", " 6.7894194e-07, 6.7894194e-07], dtype=float32)
array([[2661.23291016, 2444.58691406, 2480.74072266, ..., 2380.93359375,\n", " 2479.30371094, 2232.07226562],\n", " [2404.85668945, 2658.734375 , 2217.1796875 , ..., 2488.41577148,\n", " 2629.03076172, 2302.22460938],\n", " [2401.78662109, 2247.9284668 , 2280.03271484, ..., 2320.97119141,\n", " 2199.11914062, 2297.96264648],\n", " ...,\n", " [2248.18920898, 2398.20703125, 2354.68212891, ..., 2307.03833008,\n", " 2568.10595703, 2465.97509766],\n", " [2123.55004883, 2414.68261719, 2608.14404297, ..., 2427.31542969,\n", " 2626.33886719, 2505.59179688],\n", " [1932.66723633, 1922.01318359, 2103.00415039, ..., 2199.97802734,\n", " 2235.63769531, 2109.60400391]])
array([[[-3.6 , -0.6 , -1.6 , ..., 0.4 , -1.6 , 1.4 ],\n", " [ 0.45 , 0.45 , -0.55 , ..., 0.45 , -2.55 , 1.45 ],\n", " [-0.5875, -0.5875, 0.4125, ..., 0.4125, 0.4125, 1.4125],\n", " ...,\n", " [ 0.65 , 1.65 , -3.35 , ..., 0.65 , -0.35 , 1.65 ],\n", " [ 0.85 , 0.85 , 2.85 , ..., 0.85 , -1.15 , -0.15 ],\n", " [ 0.1625, 2.1625, -1.8375, ..., 4.1625, 1.1625, 0.1625]],\n", "\n", " [[ 0.3125, -1.6875, -3.6875, ..., 1.3125, -5.6875, 0.3125],\n", " [-1.25 , 0.75 , 1.75 , ..., 1.75 , -1.25 , 1.75 ],\n", " [-0.475 , -0.475 , -0.475 , ..., 2.525 , -1.475 , -0.475 ],\n", " ...,\n", " [ 0.4625, 2.4625, -2.5375, ..., 1.4625, 0.4625, 1.4625],\n", " [ 0.95 , 0.95 , -3.05 , ..., 2.95 , 0.95 , -1.05 ],\n", " [-0.325 , 1.675 , -1.325 , ..., -0.325 , -2.325 , -1.325 ]],\n", "\n", " [[-1.875 , 0.125 , -2.875 , ..., 2.125 , -0.875 , -0.875 ],\n", " [-0.7 , 1.3 , -0.7 , ..., 3.3 , -0.7 , 3.3 ],\n", " [-1.4625, -0.4625, 0.5375, ..., 2.5375, -2.4625, -0.4625],\n", " ...,\n", "...\n", " ...,\n", " [-1.7125, 1.2875, -2.7125, ..., -0.7125, -0.7125, 4.2875],\n", " [-2.925 , 2.075 , -3.925 , ..., 3.075 , -2.925 , 2.075 ],\n", " [-0.65 , 0.35 , -0.65 , ..., -0.65 , 1.35 , 0.35 ]],\n", "\n", " [[ 1.5125, 0.5125, -1.4875, ..., 0.5125, 1.5125, -0.4875],\n", " [ 0.375 , -0.625 , -1.625 , ..., 1.375 , -1.625 , -0.625 ],\n", " [ 0.5625, 1.5625, -1.4375, ..., 4.5625, 0.5625, 2.5625],\n", " ...,\n", " [-3.5375, 1.4625, -1.5375, ..., 2.4625, -1.5375, 2.4625],\n", " [-1.7125, -1.7125, -1.7125, ..., 2.2875, -1.7125, 2.2875],\n", " [ 0.6375, 3.6375, -1.3625, ..., 2.6375, 1.6375, 1.6375]],\n", "\n", " [[-2.2375, 1.7625, -0.2375, ..., 1.7625, 1.7625, -0.2375],\n", " [-1.575 , 2.425 , -2.575 , ..., 3.425 , 0.425 , 2.425 ],\n", " [ 2.55 , 2.55 , 2.55 , ..., 2.55 , -0.45 , -3.45 ],\n", " ...,\n", " [-1.75 , 0.25 , -2.75 , ..., 3.25 , -1.75 , 1.25 ],\n", " [-2.475 , 4.525 , -2.475 , ..., -0.475 , -1.475 , 3.525 ],\n", " [ 0.4125, 0.4125, 0.4125, ..., 2.4125, -2.5875, 0.4125]]])
array([[[ -1.3375, 2.6625, 1.6625, ..., 1.6625, 0.6625,\n", " 1.6625],\n", " [ -0.55 , -1.55 , 0.45 , ..., 1.45 , -1.55 ,\n", " -0.55 ],\n", " [ -0.9 , 1.1 , 1.1 , ..., 1.1 , 2.1 ,\n", " 1.1 ],\n", " ...,\n", " [ -0.45 , -3.45 , -0.45 , ..., -0.45 , 0.55 ,\n", " 0.55 ],\n", " [ 0.05 , 2.05 , -0.95 , ..., 0.05 , 0.05 ,\n", " 1.05 ],\n", " [ -0.825 , 0.175 , -1.825 , ..., 1.175 , 3.175 ,\n", " 0.175 ]],\n", "\n", " [[ -2.65 , 1.35 , -3.65 , ..., -0.65 , -0.65 ,\n", " 2.35 ],\n", " [ -3.4875, 1.5125, 1.5125, ..., -0.4875, 3.5125,\n", " 1.5125],\n", " [ -2.025 , 0.975 , -2.025 , ..., -1.025 , -3.025 ,\n", " 0.975 ],\n", "...\n", " [ -1.05 , 0.95 , 0.95 , ..., 0.95 , -0.05 ,\n", " -0.05 ],\n", " [ -3.025 , 2.975 , 0.975 , ..., -0.025 , -2.025 ,\n", " -1.025 ],\n", " [ -1.5125, 1.4875, 0.4875, ..., 3.4875, 2.4875,\n", " -1.5125]],\n", "\n", " [[ 0.7625, 1.7625, -1.2375, ..., -2.2375, -10.2375,\n", " -0.2375],\n", " [ -1.5 , -0.5 , -1.5 , ..., 1.5 , -2.5 ,\n", " 0.5 ],\n", " [ -5.3375, 1.6625, -1.3375, ..., 0.6625, -12.3375,\n", " -11.3375],\n", " ...,\n", " [ -1.35 , -0.35 , 0.65 , ..., 1.65 , -1.35 ,\n", " 3.65 ],\n", " [ -1.7875, 2.2125, 0.2125, ..., 0.2125, -10.7875,\n", " -0.7875],\n", " [ -3.9625, 2.0375, -2.9625, ..., 4.0375, 1.0375,\n", " 0.0375]]])