{ "cells": [ { "cell_type": "code", "id": "a853eaac-8442-45f9-a83a-65680038469c", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:07.412161Z", "start_time": "2025-11-20T13:26:07.256191Z" } }, "source": [ "from experiment_loader import load_2d_experiment, load_3d_experiment\n", "from modeling import *\n", "import plotly.graph_objects as go\n", "import pandas as pd\n", "from plotly.subplots import make_subplots\n", "PLOT_WIDTH = 2000\n", "PLOT_HEIGHT = 1000\n", "import scipy" ], "outputs": [], "execution_count": 1 }, { "cell_type": "code", "id": "dd678982", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:07.419831Z", "start_time": "2025-11-20T13:26:07.417132Z" } }, "source": [ "def calculate_complexity(\n", " input_shape: tuple, kernel_size: tuple, stride: tuple, filters: int, padding: str\n", "):\n", " if padding == \"valid\":\n", " out_x = np.floor((input_shape[0] - kernel_size[0]) / stride[0]) + 1\n", " out_y = np.floor((input_shape[1] - kernel_size[1]) / stride[1]) + 1\n", " else:\n", " out_x = np.floor((input_shape[0] - 1) / stride[0]) + 1\n", " out_y = np.floor((input_shape[1] - 1) / stride[1]) + 1\n", " return kernel_size[0] * kernel_size[1] * input_shape[2] * out_x * out_y * filters\n" ], "outputs": [], "execution_count": 2 }, { "cell_type": "code", "id": "81811eea-db29-4f40-989c-20e6a5ad0a52", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:08.091566Z", "start_time": "2025-11-20T13:26:07.472362Z" } }, "source": [ "# lut_channel_sweep(channels: Union[range,list], base_path: str, lut_config: dict = {\"f\": 128, \"kernel_shape\": [3, 3], \"pads\": [1, 1], \"stride\": [1, 1], \"dilation\":[1, 1]}):\n", "filters, filter_meas = load_2d_experiment(\"./lut_filter_sweep.csv\")\n", "ops_cost = []\n", "for filter, meas in zip(filters, filter_meas):\n", "\n", " ops_cost.append(calculate_complexity((256, 256, 128), kernel_size=(3, 3), stride=(1, 1), filters=filter, padding=\"zeros\") / meas )\n", "\n", "fig = go.Figure()\n", "fig.add_trace(go.Scatter(x=filters, y=ops_cost, name=\"Channel Measurements by ops\", mode=\"markers\"))\n", "\n", "fig.update_layout(\n", " autosize=False,\n", " width=PLOT_WIDTH,\n", " height=PLOT_HEIGHT,\n", ")" ], "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "data": [ { "mode": "markers", "name": "Channel Measurements by ops", "x": [ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529 ], "y": [ 2.702607621492876E8, 3.426130841643607E8, 3.242169955655779E8, 4.048351577812784E8, 3.7808195317059815E8, 4.0542179994138587E8, 4.3223512227542853E8, 4.424758137914583E8, 4.8614595124378914E8, 5.132180991773767E8, 5.401847321791915E8, 5.452960945703926E8, 5.714672383971406E8, 5.963362186217318E8, 6.485227403855615E8, 6.75005665061577E8, 7.012559297416873E8, 7.289564749969164E8, 7.553701105344425E8, 7.820772902159699E8, 8.09847929960983E8, 8.35862473591046E8, 8.637958026518663E8, 8.888129188467114E8, 9.158412698214258E8, 9.428219122520645E8, 9.69670269047585E8, 9.95498305501458E8, 1.0233927434244336E9, 1.049471188622721E9, 1.0773161630100007E9, 1.100612603895237E9, 1.1279470651181006E9, 1.153805450735504E9, 1.1820498634079852E9, 1.206002277135309E9, 1.234713244132758E9, 1.259571039339561E9, 1.288286813545812E9, 1.3079531083107247E9, 1.3346494680920312E9, 1.3591719733804557E9, 1.388420867409285E9, 1.4148173328890169E9, 1.4394674420561457E9, 1.467516450036226E9, 1.492735229841544E9, 1.5152987616270118E9, 1.5401031827323003E9, 1.5675419786108024E9, 1.5937022337558362E9, 1.622915373088981E9, 1.6507949658613853E9, 1.6750984881684313E9, 1.7038530316432562E9, 1.0964541197774124E9, 1.1132108207511792E9, 1.1304235446749408E9, 1.1469690842181344E9, 1.1632441547128901E9, 1.1805280595262008E9, 1.1972736402655258E9, 1.2143721118363197E9, 1.229209142045577E9, 1.2461647804700134E9, 1.2630797239018555E9, 1.2797027910021667E9, 1.2970846999377577E9, 1.313247263274688E9, 1.3308342260944269E9, 1.346806894063507E9, 1.3607426979418292E9, 1.3772007436969965E9, 1.3945510335410738E9, 1.4112286737958987E9, 1.4269334670131304E9, 1.4439262335951529E9, 1.4608638751468124E9, 1.4775433852875004E9, 1.4913989840758107E9, 1.507711357427797E9, 1.5246793814478753E9, 1.541109336566611E9, 1.5613379961277192E9, 1.5778863814208646E9, 1.5945901015899925E9, 1.611585640529578E9, 1.6195842640911827E9, 1.636168077225719E9, 1.652764297202827E9, 1.6689953911040585E9, 1.6859309560820715E9, 1.701799705010163E9, 1.7188920924630063E9, 1.735801115303456E9, 1.7484438331960676E9, 1.7646367699664075E9, 1.7821250056657174E9, 1.7975518885379753E9, 1.8155983847858815E9, 1.8312720086209207E9, 1.8488279549427412E9, 1.8649994779774203E9, 1.876190287483955E9, 1.8929665628381958E9, 1.909372336809902E9, 1.9255094557475889E9, 1.9394580392215586E9, 1.9557900125956967E9, 1.9729570281497858E9, 1.9898788028633988E9, 2.0034157086360435E9, 2.018454665566804E9, 2.0364245408262012E9, 2.0523827990005713E9, 2.0747584041637452E9, 2.0889178946211274E9, 2.1065658987035806E9, 2.1237469575597658E9, 1.1591844663832798E9, 1.168336330353468E9, 1.177074844892462E9, 1.1859029615238233E9, 1.1973255281816297E9, 1.2060234692493145E9, 1.215534699012694E9, 1.2236374528305905E9, 1.230102204447395E9, 1.2379735509635286E9, 1.2480130964368696E9, 1.2569927769331784E9, 1.2701002655672271E9, 1.2793628462340245E9, 1.287969616235691E9, 1.2971721280608578E9, 1.3008000282374778E9, 1.3098517291789646E9, 1.318889799309768E9, 1.3272182992218115E9, 1.3397420734289467E9, 1.3488461510260754E9, 1.3578014275447474E9, 1.365825249424339E9, 1.369201679002836E9, 1.3778629753032486E9, 1.3872123144091902E9, 1.3958803852266815E9, 1.4175415309686863E9, 1.4264257336640806E9, 1.435443041248048E9, 1.445019784353823E9, 1.4381651072135134E9, 1.4469786769978309E9, 1.4556540719792628E9, 1.464928808064687E9, 1.4768986455019693E9, 1.486235283759644E9, 1.4968811553768878E9, 1.5044569826054208E9, 1.50788857473746E9, 1.5153977350266867E9, 1.5247517562603247E9, 1.5329562105961652E9, 1.5507592336644132E9, 1.5599003809056427E9, 1.5697591589507532E9, 1.5784129728309019E9, 1.5751597992794015E9, 1.584395958748776E9, 1.5931258646334872E9, 1.6012494097337413E9, 1.6134123513055744E9, 1.624570849869413E9, 1.6324922869819229E9, 1.642434786496597E9, 1.644546208158358E9, 1.6526649101445742E9, 1.661810239561593E9, 1.6701549746328478E9, 1.7000849233519871E9, 1.7094985295084975E9, 1.7171056640501196E9, 1.7279050943446245E9, 1.631303742667799E9, 1.641884629494381E9, 1.6486296720935209E9, 1.6561684339352777E9, 1.6655962806987848E9, 1.6750612144243693E9, 1.6833578620112617E9, 1.6898643596923907E9, 1.6986445365014932E9, 1.7049732180355175E9, 1.7145153430175042E9, 1.7261299530531917E9, 1.7340353978957052E9, 1.7428784142600102E9, 1.7511508840653517E9, 1.7575617519794688E9, 1.7634675487167547E9, 1.7716758478867073E9, 1.7815157991349535E9, 1.785968832510347E9, 1.7929789673813128E9, 1.8064551786607802E9, 1.8137311615305076E9, 1.8225643212651832E9, 1.8289292787005265E9, 1.837042953074839E9, 1.8458217024250174E9, 1.854533348062591E9, 1.8688172425991185E9, 1.8774711303996117E9, 1.885316947360685E9, 1.8935665702542794E9, 1.891375913878475E9, 1.8998080725293868E9, 1.9087976449507399E9, 1.9177373841023893E9, 1.9247730200900133E9, 1.9320555160317566E9, 1.9418195226578681E9, 1.951646458728663E9, 1.9600466789580517E9, 1.9669864518774056E9, 1.973452450260614E9, 1.9792698424960275E9, 1.99184182360103E9, 2.0015489530715287E9, 2.0084581571347563E9, 2.0166100789761796E9, 2.0225782690860684E9, 2.031735311150626E9, 2.038956618714923E9, 2.049123394114259E9, 2.05374343577875E9, 2.0618557195075076E9, 2.0703324980751164E9, 2.0763473180784934E9, 2.0799455162252984E9, 2.0894270737944937E9, 2.100858225360641E9, 2.1077699542387025E9, 2.1233744392504225E9, 2.1321081239902015E9, 2.1378040311891074E9, 2.1470710439126272E9, 1.4355218006107032E9, 1.44227853593934E9, 1.4471839884230072E9, 1.4531527215943828E9, 1.4610533034759946E9, 1.467330620042045E9, 1.4725248447766676E9, 1.4769512993039923E9, 1.4798888202090542E9, 1.4862988775750306E9, 1.4922256956186857E9, 1.4981321675278935E9, 1.5075710468030813E9, 1.5136636740023117E9, 1.5179489681038299E9, 1.5248852629802947E9, 1.523819882672927E9, 1.5305154604442563E9, 1.5362646551895912E9, 1.5417697783196187E9, 1.5510860895212476E9, 1.5558062904343972E9, 1.5603428072842152E9, 1.5663600729305737E9, 1.5687859097955358E9, 1.5743603841494193E9, 1.5802618204594455E9, 1.5860894062409039E9, 1.60030501592602E9, 1.6061764124973843E9, 1.6103961480983179E9, 1.6175645139561667E9, 1.6132900387451007E9, 1.6199375300464463E9, 1.6250348883681397E9, 1.6270301727773619E9, 1.639316543137438E9, 1.6443920813474572E9, 1.650643444150918E9, 1.654263444176107E9, 1.657021531806257E9, 1.6631969838360279E9, 1.6690391595822954E9, 1.6751155801771057E9, 1.6845502463019462E9, 1.6905020532269254E9, 1.6951169938528578E9, 1.7020901682706132E9, 1.6999231185859363E9, 1.7061860847551506E9, 1.7109757934956572E9, 1.7164839197972677E9, 1.724566500920483E9, 1.7328227331270714E9, 1.7350579261437626E9, 1.7429069198214486E9, 1.7435132567726328E9, 1.749770844932316E9, 1.7543638063895626E9, 1.7596627831741643E9, 1.7784937866992278E9, 1.7849333445860093E9, 1.7871232864996197E9, 1.791991959614951E9, 1.7851664530061176E9, 1.7939541689392054E9, 1.7960546472899182E9, 1.8022089951815526E9, 1.8118178635915987E9, 1.8186797105991175E9, 1.8201929659620194E9, 1.828163306014135E9, 1.827543854403997E9, 1.8333822370046802E9, 1.8403234181093478E9, 1.8413205939604301E9, 1.8579414036142297E9, 1.8658684680138729E9, 1.868122519962998E9, 1.875046092070584E9, 1.8694272977023807E9, 1.8755210060910387E9, 1.8832228214111183E9, 1.8858624459185808E9, 1.897222449659896E9, 1.8995805623827324E9, 1.9061149558351302E9, 1.9124964946521811E9, 1.9124660487561684E9, 1.9190956530617666E9, 1.922781183304838E9, 1.926709089154336E9, 1.9487755423241088E9, 1.954938032350159E9, 1.960152774701079E9, 1.961689652505922E9, 1.9524158785979826E9, 1.957340502913313E9, 1.9633550438172853E9, 1.9694948097380147E9, 1.9787650640654778E9, 1.983740406158881E9, 1.989779768682401E9, 1.9953424893889115E9, 1.9954437148598022E9, 1.9998437096563363E9, 2.0060060040948973E9, 2.0116726114015625E9, 2.0249120057755723E9, 2.0293481207546942E9, 2.0355844560372043E9, 2.0395262595292125E9, 2.0365147926127417E9, 2.042343266568976E9, 2.0463096242916584E9, 2.0533008885948527E9, 2.0621278153838363E9, 2.0662621739837675E9, 2.07319215534788E9, 2.0774970526563957E9, 2.0772034897011983E9, 2.0833635839298754E9, 2.084659187153636E9, 2.0931977055034237E9, 2.1196973231482553E9, 2.1250606524374683E9, 2.1306916962406993E9, 2.1362031986059935E9, 1.6218205208320982E9, 1.6270220598275309E9, 1.6306670313528545E9, 1.6356214198393009E9, 1.6414625037183394E9, 1.6449615614587495E9, 1.6495040744842334E9, 1.653108080185178E9, 1.6544325484737842E9, 1.660424560546462E9, 1.6637373110116844E9, 1.669350337475852E9, 1.676484108971753E9, 1.680489196254586E9, 1.684506766928538E9, 1.688499705256341E9, 1.6878147166235075E9, 1.693379557908829E9, 1.696672690654608E9, 1.7015638756583102E9, 1.7050962485961666E9, 1.7114053669209416E9, 1.7151061400704112E9, 1.7196581680091069E9, 1.7206283539818645E9, 1.7251530589099033E9, 1.7285574073541622E9, 1.733995839236065E9, 1.7463495259785786E9, 1.7498150999728377E9, 1.753213461081411E9, 1.7573511011638372E9, 1.752322543291755E9, 1.7580155991729877E9, 1.760671478236115E9, 1.7663852405846124E9, 1.7719702303652697E9, 1.7756086564194643E9, 1.780416665224712E9, 1.7840893069941952E9, 1.785901239978657E9, 1.7898462295221727E9, 1.7944929852727304E9, 1.7989155427195082E9, 1.8081617544719615E9, 1.81138348121446E9, 1.8152064117147794E9, 1.8189352111602395E9, 1.8194840046631837E9, 1.8229862818758435E9, 1.8263235536462276E9, 1.8277284984319046E9, 1.8369307027766657E9, 1.839714334129933E9, 1.8441789924300468E9, 1.8498244837796974E9, 1.848896425754148E9, 1.8538261601486619E9, 1.8587297948951733E9, 1.862002345421928E9, 1.8774724864307852E9, 1.8828873190308154E9, 1.885588505697456E9, 1.8906228474244447E9, 1.8819695084296963E9, 1.8849787578682134E9, 1.891326636431105E9, 1.8951130023833187E9, 1.8998908674045E9, 1.904926436534157E9, 1.910752352562942E9, 1.9138918241403043E9, 1.914452617669395E9, 1.917590384604361E9, 1.9238550704996865E9, 1.925166211296154E9, 1.933074477444113E9, 1.9406200365852532E9, 1.9445323095494611E9, 1.9485562249623609E9, 1.9440846674757564E9, 1.9504450350569212E9, 1.9556962432207131E9, 1.9589248789126878E9, 1.9654761877953882E9, 1.9688541574697206E9, 1.9724859482315903E9, 1.9760103612534413E9, 1.97694664015825E9, 1.982118082106607E9, 1.9875030577250352E9, 1.9873166593879132E9, 2.0054048522316456E9, 2.0051943800149357E9, 2.014567985805972E9, 2.0181041646410484E9, 2.0088315228634493E9, 2.0151631897589445E9, 2.0187859394574199E9, 2.017861706817094E9, 2.0289712903957374E9, 2.031274412536864E9, 2.0386602395073838E9, 2.0420182514102771E9, 2.039200155658499E9, 2.046035627441963E9, 2.0506926512283711E9, 2.0523018639777198E9, 2.0637537479156015E9, 2.06808800363893E9, 2.0665653791430817E9, 2.0766007122582362E9, 2.0715922763001747E9, 2.0727979003129485E9, 2.0757464051814418E9, 2.0871374520203118E9, 2.090161434131615E9, 2.095212413492567E9, 2.0966981229922335E9, 2.1010665781077988E9, 2.1074482421691272E9, 2.105337029096013E9, 2.1124729183574023E9, 2.118337442447573E9, 2.1359590188927133E9, 2.139936201975653E9, 2.1374793842388284E9, 2.1447555298856847E9, 1.7056901249023829E9, 1.7131458945100045E9, 1.7162476113668087E9, 1.7195416709914544E9, 1.726172007757147E9, 1.7264738739001238E9, 1.731888721248255E9, 1.7313724675088856E9, 1.7316699986019936E9, 1.734826675510108E9, 1.7415260486520486E9, 1.741939872897879E9, 1.7561317893410678E9, 1.7593731510936298E9, 1.759859864279053E9, 1.7644436817210047E9, 1.7585177089985008E9 ], "type": "scatter" } ], "layout": { "template": { "data": { "histogram2dcontour": [ { "type": "histogram2dcontour", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "choropleth": [ { "type": "choropleth", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "histogram2d": [ { "type": "histogram2d", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "heatmap": [ { "type": "heatmap", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "contourcarpet": [ { "type": "contourcarpet", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "contour": [ { "type": "contour", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "surface": [ { "type": "surface", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "mesh3d": [ { "type": "mesh3d", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "scatter": [ { "marker": { "line": { "color": "#283442" } }, "type": "scatter" } ], "parcoords": [ { "type": "parcoords", "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterpolargl": [ { "type": "scatterpolargl", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "bar": [ { "error_x": { "color": "#f2f5fa" }, "error_y": { "color": "#f2f5fa" }, "marker": { "line": { "color": "rgb(17,17,17)", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "scattergeo": [ { "type": "scattergeo", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterpolar": [ { "type": "scatterpolar", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "scattergl": [ { "marker": { "line": { "color": "#283442" } }, "type": "scattergl" } ], "scatter3d": [ { "type": "scatter3d", "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattermap": [ { "type": "scattermap", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattermapbox": [ { "type": "scattermapbox", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterternary": [ { "type": "scatterternary", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattercarpet": [ { "type": "scattercarpet", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "carpet": [ { "aaxis": { "endlinecolor": "#A2B1C6", "gridcolor": "#506784", "linecolor": "#506784", "minorgridcolor": "#506784", "startlinecolor": "#A2B1C6" }, "baxis": { "endlinecolor": "#A2B1C6", "gridcolor": "#506784", "linecolor": "#506784", "minorgridcolor": "#506784", "startlinecolor": "#A2B1C6" }, "type": "carpet" } ], "table": [ { "cells": { "fill": { "color": "#506784" }, "line": { "color": "rgb(17,17,17)" } }, "header": { "fill": { "color": "#2a3f5f" }, "line": { "color": "rgb(17,17,17)" } }, "type": "table" } ], "barpolar": [ { "marker": { "line": { "color": "rgb(17,17,17)", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "pie": [ { "automargin": true, "type": "pie" } ] }, "layout": { "autotypenumbers": "strict", "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#f2f5fa" }, "hovermode": "closest", "hoverlabel": { "align": "left" }, "paper_bgcolor": "rgb(17,17,17)", "plot_bgcolor": "rgb(17,17,17)", "polar": { "bgcolor": "rgb(17,17,17)", "angularaxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" }, "radialaxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" } }, "ternary": { "bgcolor": "rgb(17,17,17)", "aaxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" }, "baxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" }, "caxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" } }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "sequential": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "sequentialminus": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ] }, "xaxis": { "gridcolor": "#283442", "linecolor": "#506784", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "#283442", "automargin": true, "zerolinewidth": 2 }, "yaxis": { "gridcolor": "#283442", "linecolor": "#506784", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "#283442", "automargin": true, "zerolinewidth": 2 }, "scene": { "xaxis": { "backgroundcolor": "rgb(17,17,17)", "gridcolor": "#506784", "linecolor": "#506784", "showbackground": true, "ticks": "", "zerolinecolor": "#C8D4E3", "gridwidth": 2 }, "yaxis": { "backgroundcolor": "rgb(17,17,17)", "gridcolor": "#506784", "linecolor": "#506784", "showbackground": true, "ticks": "", "zerolinecolor": "#C8D4E3", "gridwidth": 2 }, "zaxis": { "backgroundcolor": "rgb(17,17,17)", "gridcolor": "#506784", "linecolor": "#506784", "showbackground": true, "ticks": "", "zerolinecolor": "#C8D4E3", "gridwidth": 2 } }, "shapedefaults": { "line": { "color": "#f2f5fa" } }, "annotationdefaults": { "arrowcolor": "#f2f5fa", "arrowhead": 0, "arrowwidth": 1 }, "geo": { "bgcolor": "rgb(17,17,17)", "landcolor": "rgb(17,17,17)", "subunitcolor": "#506784", "showland": true, "showlakes": true, "lakecolor": "rgb(17,17,17)" }, "title": { "x": 0.05 }, "updatemenudefaults": { "bgcolor": "#506784", "borderwidth": 0 }, "sliderdefaults": { "bgcolor": "#C8D4E3", "borderwidth": 1, "bordercolor": "rgb(17,17,17)", "tickwidth": 0 }, "mapbox": { "style": "dark" } } }, "autosize": false, "width": 2000, "height": 1000 }, "config": { "plotlyServerURL": "https://plot.ly" } } }, "metadata": {}, "output_type": "display_data", "jetTransient": { "display_id": null } } ], "execution_count": 3 }, { "cell_type": "code", "id": "284d739a-7a6b-4002-994a-86b62d793df2", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:09.240986Z", "start_time": "2025-11-20T13:26:08.099924Z" } }, "source": [ "\n", "\n", "fig = make_subplots(specs=[[{\"secondary_y\": True}]])\n", "lv = filter_meas[0]\n", "deltas = []\n", "for meas in filter_meas[1:]:\n", " deltas.append((meas / lv) * 10 - 10 )\n", " lv = meas\n", "\n", "fig.update_layout(\n", " scene=dict(\n", " xaxis_title='channels',\n", " yaxis_title='filters',\n", " zaxis_title='ms'\n", " ),\n", " width=PLOT_WIDTH,\n", " height=PLOT_HEIGHT / 3 * 1,\n", " template='plotly_white',\n", ")\n", "fig.add_trace(go.Scatter(x=filters, y=filter_meas, name=\"Layer Execution Time\", mode=\"markers\", marker=dict(size=4)), secondary_y=False)\n", "fig.add_trace(go.Scatter(x=filters[1:], y=deltas, name=\"Point to point variance\", line=dict(color=\"lightgreen\")), secondary_y=True)\n", "\n", "fig.update_layout(\n", " title_text=\"Latency Measurements for a Singular Neural Network Layer With Changing Input Channels\",\n", " autosize=False,\n", " width=PLOT_WIDTH,\n", " height=PLOT_HEIGHT / 3 * 2,\n", " legend_x=0,\n", " legend_y=1,\n", " template='plotly_white',\n", "\n", " font=dict(\n", " size=16,\n", " )\n", ")\n", "fig.update_xaxes(title_text=\"#Channels\")\n", "fig.update_yaxes(title_text=f\"\"\"Layer Execution Time (ms)\"\"\", secondary_y=False, range=[-10, 40])\n", "fig.update_yaxes(title_text=f\"\"\"Point to point variance (%)\"\"\", secondary_y=True, range=[-4, 40],)\n", "fig.write_image(\"images/sweep.svg\", width=PLOT_WIDTH/ 3 * 2, height=PLOT_HEIGHT / 3 * 2, scale=2)\n", "fig.show()" ], "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "data": [ { "marker": { "size": 4 }, "mode": "markers", "name": "Layer Execution Time", "x": [ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529 ], "y": [ 2.793504739629811, 2.4239360094070435, 2.794331192970276, 2.4243624031543733, 2.7955965608416027, 2.7932935036145725, 2.7946816205978395, 2.900626393570297, 2.795363187789917, 2.7950143814086914, 2.795246422290802, 2.9074972804437236, 2.906456000275082, 2.9118503987789155, 2.793948793411255, 2.79617919921875, 2.799169588088989, 2.7963696241378786, 2.798534369468689, 2.7995016801924932, 2.7967277265364126, 2.8000080227851867, 2.796863676094618, 2.8030832171440125, 2.802793598175049, 2.802662396430969, 2.8029208265501877, 2.8060383915901186, 2.803326439857483, 2.805604803562164, 2.8031686367374835, 2.81243040561676, 2.8112080097198486, 2.813638377189636, 2.8102780354989543, 2.8170645316441854, 2.81270467333433, 2.8171346221651348, 2.812943994998932, 2.828370607856039, 2.828363319543692, 2.8328799794359907, 2.8275781761516225, 2.8281856060028074, 2.832202638898577, 2.82951578491505, 2.8322895765304565, 2.839938903783823, 2.8432207822799684, 2.841615030908177, 2.8423429572063945, 2.837699283872332, 2.835508564540318, 2.839439453617219, 2.8358303904533386, 4.47564160823822, 4.476091194152832, 4.4747215747833256, 4.475995182991028, 4.478273582458496, 4.476660251617432, 4.477105593681335, 4.4762374983893505, 4.483627128601074, 4.4832056045532225, 4.482939827826716, 4.483703491422865, 4.481824004460895, 4.484153883797782, 4.4816252626018755, 4.48453136572317, 4.494086384773254, 4.4951999425888065, 4.49341044198899, 4.493805834416593, 4.497256016731262, 4.496616545177641, 4.496161603927613, 4.496502506900841, 4.505350399017334, 4.506679906949892, 4.506042408388715, 4.506991982460022, 4.4969538392157675, 4.497638392448425, 4.4978705391739355, 4.497283377145466, 4.521688032150268, 4.522000128828634, 4.52227201461792, 4.523527890035551, 4.522868890028733, 4.52505786746156, 4.5239835880898145, 4.523408251542311, 4.533880019187928, 4.535059094429016, 4.5329196764075235, 4.53601758480072, 4.5325136423110965, 4.534947228431702, 4.532719969749451, 4.533897710883099, 4.547094392776489, 4.546679258346558, 4.54715359210968, 4.548254346847534, 4.55447039604187, 4.555039978027343, 4.553671995798747, 4.552888661843759, 4.559809565544128, 4.563239264734013, 4.56004574185326, 4.56137448265439, 4.548570079803467, 4.553880023956299, 4.551568479248972, 4.550295590348385, 8.401746374661805, 8.400553081346596, 8.402327919006348, 8.403441619873046, 8.386327310041947, 8.388444757461547, 8.384917952797629, 8.39109343069571, 8.408369342486063, 8.415891541375053, 8.408684682846069, 8.408676862716675, 8.381341096126672, 8.379672002792358, 8.38229284286499, 8.381028032302856, 8.415692806243896, 8.415174531936646, 8.414750337600708, 8.418830468621053, 8.396484331651168, 8.3957839012146, 8.396012878417968, 8.401964855194091, 8.436385518028622, 8.438147258758544, 8.4357008934021, 8.437403202056885, 8.361732510157994, 8.362580886253944, 8.362643241882324, 8.359467220306396, 8.451806354522706, 8.452502209207285, 8.453992038965225, 8.452004861831664, 8.43462272644043, 8.432433605194092, 8.422898356834155, 8.430666640952781, 8.461548805236816, 8.469440031051636, 8.466996453025125, 8.470930281139555, 8.422366523742676, 8.42140965461731, 8.416614437103272, 8.41830072402954, 8.483617059115705, 8.481812858581543, 8.48272430195528, 8.486838388442994, 8.469652795791626, 8.457950544357299, 8.463156295545174, 8.457891273498536, 8.492940028508505, 8.496900796890259, 8.49557123184204, 8.49832797050476, 8.393123197555543, 8.391068744659425, 8.397862434387207, 8.389068746566773, 8.932126933130725, 8.920547342300415, 8.929844760894776, 8.934782361984253, 8.92953602043358, 8.924151145805746, 8.925016639093874, 8.935329225328234, 8.93358883857727, 8.944709032773972, 8.938961601257324, 8.922552013397217, 8.925412813822428, 8.923444747924805, 8.924403285980224, 8.93480650583903, 8.94769606590271, 8.948854351043702, 8.941804838180541, 8.96178240776062, 8.96885118484497, 8.943736439659482, 8.949483156204224, 8.947532749176025, 8.9576735496521, 8.959207441748642, 8.957499170303345, 8.95613112449646, 8.928075432777405, 8.927135289921935, 8.930029658710255, 8.930995082855224, 8.981255960464477, 8.98113284111023, 8.978388143622357, 8.975902414321899, 8.982316827774047, 8.987536028811807, 8.981223964691162, 8.974685668945312, 8.974740839004516, 8.981459140777588, 8.990288019180298, 9.002008220127651, 8.98309326171875, 8.977246501229025, 8.983954056449559, 8.985075235366821, 8.995889568328858, 8.992504153335304, 8.997683191299439, 8.989884757995606, 9.006422281265259, 9.007603168487549, 9.007188749313354, 9.017457191760723, 9.038155269622802, 9.033274353875054, 9.020059156417847, 9.026299528437722, 8.99552149772644, 8.994083213806153, 9.005435053507487, 9.00172953605652, 13.516235208511352, 13.505260801315307, 13.511651182174683, 13.50810718536377, 13.48673600416917, 13.480491304293242, 13.48421061038971, 13.494915246963501, 13.519144010543823, 13.511634742512422, 13.508563137054443, 13.505699253082275, 13.471219158172607, 13.46687364578247, 13.47859206199646, 13.466791818726737, 13.525752019882201, 13.515908765792847, 13.514471435546875, 13.515184020996093, 13.482681512832642, 13.490302324295044, 13.499466008153455, 13.495806312561035, 13.523062324523925, 13.523134422302245, 13.520408010482788, 13.518331289291382, 13.445424032211303, 13.443278598785401, 13.454934358596802, 13.441981292493416, 13.524393558502197, 13.515500736236572, 13.519564723968506, 13.549387216567993, 13.493891334533691, 13.498153524195894, 13.49277114868164, 13.508883237838745, 13.531960058212281, 13.527108860015868, 13.524993705749512, 13.521002292633057, 13.490092754364014, 13.487257528305054, 13.4950767993927, 13.48414550289031, 13.54574728012085, 13.54027361869812, 13.546494340896606, 13.547007989883422, 13.527294445037843, 13.506411170959472, 13.532524440947414, 13.514899158477784, 13.553501038324265, 13.54817762374878, 13.555742311477662, 13.557825613021851, 13.4567232131958, 13.45047206878662, 13.476235103607177, 13.481751918792725, 13.575590372085571, 13.55117449760437, 13.577361631393433, 13.572888046503067, 13.542574501037597, 13.532990844161422, 13.563217639923096, 13.545382261276245, 13.59128440510143, 13.589182472229004, 13.578951930999756, 13.612599992752076, 13.531459133799483, 13.514433670043946, 13.538540887832642, 13.52881441116333, 13.609862279891967, 13.605896949768066, 13.59034242630005, 13.611353540420533, 13.569646488536488, 13.59254560470581, 13.585556745529175, 13.579700899124145, 13.619393587112427, 13.611684894561767, 13.624859142303468, 13.636267355510167, 13.520601606369018, 13.516599893569946, 13.519156779012372, 13.547051191329956, 13.650067031383514, 13.654295227744363, 13.650919961929322, 13.646697568893433, 13.620918416976929, 13.624814462661742, 13.621403169631957, 13.621265554428101, 13.65840950012207, 13.666110372543335, 13.661764860153198, 13.660811233520509, 13.60877766609192, 13.616231966018677, 13.611605326334635, 13.622315263748169, 13.679530965870825, 13.677458190917969, 13.687841653823853, 13.678004884719849, 13.65606770148644, 13.665281629562378, 13.656019258499146, 13.664062452316283, 13.702339267730713, 13.698062419891357, 13.725764894485474, 13.705843114852906, 13.570115184783935, 13.571393489837646, 13.570959997177123, 13.571288193425824, 17.922159910202026, 17.911265563964843, 17.917527675628662, 17.90941276550293, 17.891676807403563, 17.899514961242676, 17.89599189758301, 17.902646160125734, 17.933947517758323, 17.914697647094727, 17.92440503835678, 17.90936164855957, 17.878186988830567, 17.880504035949706, 17.882677540634617, 17.885101611797626, 17.937091064453124, 17.9227294921875, 17.93243999481201, 17.925262239244248, 17.932404804229737, 17.910411071777343, 17.915783977508546, 17.912262535095216, 17.946040454663727, 17.94273462295532, 17.951073455810548, 17.93831205368042, 17.85464792251587, 17.862432098388673, 17.87087059020996, 17.871755013099083, 17.96612498339485, 17.95088923604865, 17.96669120788574, 17.951315212249757, 17.93734181722005, 17.943105350841176, 17.937054443359376, 17.94244716478431, 17.96651734246148, 17.969098429526053, 17.964640045166014, 17.96244306564331, 17.91234407424927, 17.922164630889892, 17.926011180877687, 17.930769443511963, 17.9668550491333, 17.973751735687255, 17.982246494293214, 18.009730559128982, 17.96060962677002, 17.974471428815058, 17.971894454956054, 17.957859230041503, 18.007707023620604, 18.000545758467453, 17.99367513656616, 18.002596855163574, 17.89446997642517, 17.88310546875, 17.897526359558107, 17.889801502227783, 18.01217542375837, 18.023472284866592, 18.002897657197096, 18.006766510009765, 18.001220703125, 17.99326820743894, 17.977918338775634, 17.987875175476074, 18.02204159327916, 18.031923007965087, 18.012448120117188, 18.0393967628479, 18.00465269088745, 17.973550415039064, 17.97621431350708, 17.97783741584191, 18.05802240371704, 18.037843322753908, 18.028014087677, 18.036841165451776, 18.015132713317872, 18.02256998334612, 18.027661664145334, 18.033714540543095, 18.063362728465687, 18.05432383219401, 18.043393221768465, 18.08307523727417, 17.957617936310946, 17.997153780039618, 17.950890385827353, 17.95684642791748, 18.077316897256033, 18.057982444763184, 18.062974515168563, 18.108662414550782, 18.04671859741211, 18.06342420578003, 18.03501542409261, 18.042329597473145, 18.104286479949952, 18.08070240020752, 18.076457595825197, 18.09907054901123, 18.03522040049235, 18.03392848968506, 18.083748531341552, 18.03271369934082, 18.11275510787964, 18.138642966747284, 18.14924907684326, 18.086367988586424, 18.09632158279419, 18.088729667663575, 18.11191987991333, 18.110195214407785, 18.091178989410402, 18.145180702209473, 18.119625568389893, 18.105102146373074, 17.991081714630127, 17.99292459487915, 18.048926448822023, 18.022895908355714, 22.70647087097168, 22.65171970020641, 22.654771853715946, 22.65527856009347, 22.611995124816893, 22.651770807081654, 22.624541338752298, 22.6748929977417, 22.714595127105714, 22.716782569885254, 22.672746058872768, 22.71070083618164, 22.5701584815979, 22.571488173111625, 22.608145427703857, 22.59220037962261, 22.711265563964844 ], "type": "scatter", "xaxis": "x", "yaxis": "y" }, { "line": { "color": "lightgreen" }, "name": "Point to point variance", "x": [ 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529 ], "y": [ -1.3229572335421995, 1.5280732747307173, -1.3239976375979925, 1.5312651161567725, -0.008238160181226917, 0.004969463400357199, 0.379094248846112, -0.3628981864528047, -0.001247803443749973, 8.301956643013142E-4, 0.40157768294692353, -0.003581362485341799, 0.018560055625556515, -0.40490268805396923, 0.007982987421799592, 0.010694553736307455, -0.01000283785242928, 0.007741270367567665, 0.003456490419974756, -0.009908740815221861, 0.011729051125175971, -0.01122977743271214, 0.022237555239300377, -0.0010332157361307992, -4.681106170831839E-4, 9.220879387683567E-4, 0.011122558334150767, -0.009664699316886072, 0.008127357814229796, -0.008683214476919332, 0.03304035568140584, -0.0043464040726846065, 0.008645277977951338, -0.01194304754272757, 0.024148842425928407, -0.01547660076963453, 0.015749783021313135, -0.014875494884877938, 0.054841521496815204, -2.57685903211069E-5, 0.015969164431915317, -0.018715241460471432, 0.0021482336237710342, 0.014203568843724312, -0.009486799943706714, 0.009803061111002265, 0.027007574778906474, 0.01155615880247396, -0.0056476492497488096, 0.0025616640195806895, -0.016337484265537938, -0.007720054568377321, 0.013863083067562343, -0.012710477623611993, 5.782472828083133, 0.001004517237895186, -0.0030598558208456694, 0.002846228947248619, 0.005090263448286336, -0.003602573204513959, 9.948087164808328E-4, -0.001938965418215588, 0.016508574923433272, -9.401407292823905E-4, -5.928274318645066E-4, 0.0017034883926143607, -0.004191818137762482, 0.005198506979676054, -0.0056390152109688785, 0.00648448487102371, 0.021306616613536278, 0.0024778291296883026, -0.003980914359029697, 8.799383735524913E-4, 0.007677639937725189, -0.0014219149437817435, -0.0010117412624754962, 7.582088974089629E-4, 0.019677276067151084, 0.002950953454913474, -0.0014145636573701381, 0.002107334963248775, -0.022272378746889032, 0.0015222598610815652, 5.161524899381931E-4, -0.0013054222511641456, 0.0542653263274957, 6.902216078312762E-4, 6.012511754533989E-4, 0.0027770895106939975, -0.001456827553266038, 0.004839798557176422, -0.00237406769860371, -0.0012717476451893361, 0.02315017142670328, 0.002600587655823716, -0.004717508585766694, 0.006834245065759248, -0.007724710991784178, 0.0053691755009577236, -0.004911322161120779, 0.0025983099364346174, 0.029106704065496203, -9.129663782463382E-4, 0.0010432531880315565, 0.0024207555684157, 0.013666890020440192, 0.0012505998193965695, -0.0030032277108329453, -0.0017202248113417085, 0.015201126613025195, 0.007521584269220227, -0.00699836825439526, 0.0029138760362297234, -0.028071369495346943, 0.011673875656899924, -0.005075989475276543, -0.0027965939793954675, 8.464177123971282, -0.001420291998824652, 0.0021127628652131136, 0.001325467034176242, -0.020365834148982742, 0.0025248804885826814, -0.00420436060067253, 0.007364983095655475, 0.020588391647692106, 0.00894608524268925, -0.008563392830758687, -9.300062600914316E-6, -0.032508998783395526, -0.0019914394548212755, 0.00312761653649396, -0.0015089076292653658, 0.04136100464934955, -6.158427109710374E-4, -5.040826358708728E-4, 0.004848784404350326, -0.026543041878767326, -8.341948950310041E-4, 2.7272879585993337E-4, 0.007089051508511801, 0.04096739682653272, 0.0020882648453621755, -0.0028991735761731974, 0.002017981287265158, -0.08968481188672328, 0.0010145936801020383, 7.45650526177144E-5, -0.0037978680712118518, 0.1104605494378923, 8.233206670755777E-4, 0.0017625902023628015, -0.002350578430169392, -0.02056569497460714, -0.002595399127310216, -0.011307825008030292, 0.009222815935231665, 0.036630750092790265, 0.009325982744359251, -0.0028851707049728503, 0.004646072708611726, -0.05732989858859483, -0.001136104825963713, -0.005694079388964823, 0.002003521652166995, 0.07758850298579034, -0.0021266878521153387, 0.001074585573784148, 0.004849958976935298, -0.020249699434327084, -0.013816683772612137, 0.0061548612285839965, -0.006221109315220019, 0.0414391174781219, 0.004663601024450514, -0.0015647647065684112, 0.003244912658006527, -0.12379467268661948, -0.002447781174851116, 0.008096334250755177, -0.01047134064071642, 0.6473402507116166, -0.012963979259362546, 0.010422475480034166, 0.005529324665419111, -0.005871817956075276, -0.006030408092327022, 9.698326193579021E-4, 0.011554696928168795, -0.001947758954454315, 0.012447622559793814, -0.006425509757319148, -0.01835737593704323, 0.003206258053653599, -0.0022050138617402126, 0.0010741794032416152, 0.01165704812460433, 0.01442623301943513, 0.0012945065774019326, -0.007877559055744499, 0.022341764265281228, 0.007887691044841105, -0.02800218742387628, 0.006425409093296253, -0.0021793515828303356, 0.011333627671838542, 0.0017123777597394252, -0.0019067216117090169, -0.0015272631131466596, -0.031325682182476555, -0.0010530184949129051, 0.0032422145451160844, 0.0010810984754421327, 0.05627690659659912, -1.3708478501328614E-4, -0.0030560704717643716, -0.0027685696593806597, 0.007146260237760771, 0.005810528773178447, -0.00702313081183803, -0.007279960695283805, 6.147297101932736E-5, 0.007485789164933365, 0.009830115869062794, 0.013036513315645593, -0.02101193194492801, -0.006508627172602033, 0.007471728908875264, 0.0012479793532094163, 0.012035884707419342, -0.0037632909651001967, 0.005759283371823187, -0.008667157020346039, 0.01839570107385846, 0.0013111612862601874, -4.600770776015395E-4, 0.01140027452866832, 0.022953341969831342, -0.00540034509492493, -0.014629465395941565, 0.0069183271546879865, -0.034098171254250076, -0.0015988888700331216, 0.01262145282790783, -0.004114756731851799, 5.015153648387162, -0.008119426028583732, 0.004731771532139106, -0.0026229191111664107, -0.015821003565736902, -0.004630252919607614, 0.0027590285936263115, 0.007938645340901829, 0.017953994624583913, -0.005554544004816364, -0.002273304094222439, -0.0021200507730618767, -0.02553003310939239, -0.0032257751426314485, 0.008701660476083006, -0.008754804074079914, 0.04378192070473297, -0.007277417237048667, -0.001063435889424369, 5.272758558234614E-4, -0.024048883176847724, 0.0056522965814682635, 0.006792793547633735, -0.002710992857204886, 0.020195912220170698, 5.331468316072119E-5, -0.0020161093828683363, -0.0015359900306233243, -0.053932142599459, -0.001595660665488552, 0.008670325267567947, -0.009627000591875046, 0.06130961218849862, -0.006575394473074425, 0.0030069087422255336, 0.02205876683782293, -0.04095822279434458, 0.0031586067773474724, -0.0039874902182770455, 0.011941275057258949, 0.017082700299679843, -0.003584992991068958, -0.0015636410472072981, -0.002951138612921511, -0.02286038978477478, -0.002101709832974308, 0.005797524864663117, -0.008100210665627827, 0.045684598417700784, -0.00404087076891102, 0.004594236699837495, 3.791748432391273E-4, -0.014551954837777714, -0.01543787943939634, 0.01933398121633445, -0.013024386208606131, 0.028562462356418905, -0.003927704406731181, 0.005583546318156607, 0.0015368406217231012, -0.07457124963234918, -0.004645368943199557, 0.019154000460952503, 0.0040937362276132205, 0.06960404987280633, -0.01798512905295624, 0.019324622964374427, -0.0032948852743395207, -0.022333894865713688, -0.007076687579189667, 0.02233563600962185, -0.013149813798129628, 0.03388766956869915, -0.0015465299744867878, -0.007528444959920222, 0.024779572034203667, -0.05960717202870569, -0.012582134407818302, 0.017838126537357724, -0.007184287250669996, 0.05990759150466474, -0.002913571087166389, -0.011432192618718418, 0.015460327239306793, -0.030641369912396854, 0.016875248878935878, -0.005141685288306164, -0.004310347021263539, 0.0292294272776239, -0.005660085011387039, 0.009678631149450112, 0.008373087081157138, -0.08482214826508994, -0.002959715044919875, 0.0018916631864218658, 0.02063324863640048, 0.07604299902512324, 0.003097564540253117, -0.0024719443653040685, -0.003093119766040431, -0.018890395853182085, 0.0028603399312316924, -0.0025037354006798296, -1.0102865478955891E-4, 0.027269085640792667, 0.005638191197295583, -0.0031797726431843643, -6.980259450024562E-4, -0.03808966139646941, 0.005477567574148523, -0.0033978854763851984, 0.007868239753332062, 0.04200145204018213, -0.0015152383206906705, 0.007591661228969926, -0.007186501241600141, -0.01603829170869453, 0.006747131222066827, -0.006778031594457445, 0.005889852426893327, 0.0280127638087162, -0.0031212537916260885, 0.02022364458924386, -0.014514148964167362, -0.0990292453602386, 9.420001498163799E-4, -3.194164702744473E-4, 2.4183716462999882E-4, 3.2059386366018234, -0.0060787016139620675, 0.0034961860408202483, -0.004529034514494157, -0.009903148881312163, 0.004380893933804586, -0.001968245322455431, 0.0037182976952632174, 0.017484207280098474, -0.010733761010806475, 0.005418674349566999, -0.008392685707011793, -0.01740690725931593, 0.001296019065348375, 0.001215572380141694, 0.0013555415051804687, 0.029068581092770884, -0.008006633970925492, 0.005417982025976542, -0.004002665320413712, 0.003984636258124397, -0.012264798108509112, 0.002999878511818821, -0.001965553066362702, 0.018857427699225937, -0.0018420953172135768, 0.0046474704277006396, -0.0071089910926716016, -0.046639912893802205, 0.00435974761674629, 0.0047241561366373475, 4.948963648168103E-4, 0.052803974890320404, -0.008480263473776617, 0.008802890836939525, -0.008558056382266699, -0.007784050842229107, 0.0032131481240949, -0.0033722743992665727, 0.0030064698983682803, 0.013415214466627745, 0.0014366095639868348, -0.0024811397063260188, -0.001222946586839413, -0.027890967398452204, 0.005482563644330085, 0.002146253015201438, 0.0026543900850342084, 0.020124962141206737, 0.0038385608027091678, 0.004726202259204726, 0.0152839996073304, -0.027274662548498085, 0.0077178906134545144, -0.0014336854739838145, -0.007809541141991616, 0.02775820488430547, -0.003976777911677942, -0.0038168964394085236, 0.0049582525691391766, -0.060061823084923915, -0.006350848999797876, 0.008063974589484602, -0.004316159213923143, 0.06840429253245084, 0.006271791631187185, -0.011415462761174666, 0.002149016722938768, -0.0030798460576928477, -0.004417753560833404, -0.008530895269466043, 0.005538370189926312, 0.018994137700969915, 0.005482960759348288, -0.010800227928712047, 0.014961121637105279, -0.019260107428872075, -0.01727457695650436, 0.0014821214543037087, 9.029166578251591E-4, 0.044602132069828215, -0.01117457964775781, -0.0054492296562465015, 0.004896311780013818, -0.012035617509059904, 0.004128345955924928, 0.00282516910957753, 0.0033575493652620025, 0.016440422108235708, -0.005003994221647545, -0.006054289558081294, 0.02199254597956113, -0.06937829949665897, 0.022016196061688476, -0.025705950383985154, 0.0033179647149026437, 0.06708887878623315, -0.010695421562136431, 0.002764467415254046, 0.02529367427488438, -0.03420673251321915, 0.009256867545060388, -0.015727240507549922, 0.0040555404076698665, 0.03433973542168545, -0.013026793278237747, -0.0023476988273838373, 0.012509615374671768, -0.03527813671203717, -7.16326597956396E-4, 0.027625728739575806, -0.028221378942689057, 0.044386779423966516, 0.014292612423377093, 0.005847245637626841, -0.034646661132150314, 0.005503368179862633, -0.0041952808452698775, 0.012820254752996973, -9.52226774952436E-4, -0.010500287143372589, 0.029849747675749327, -0.014083703127006686, -0.008015299191477254, -0.06297696131241537, 0.0010243298753547236, 0.03112437538853996, -0.014422209841741918, 2.5986805818728502, -0.024112584943909, 0.0013474268399615852, 2.2366430383868874E-4, -0.01910523199340375, 0.017590523102981592, -0.012020900512045074, 0.02225532806853181, 0.017509290724310844, 9.630120049681778E-4, -0.019385012326026185, 0.01674026481411417, -0.06188375937735735, 5.891369858161966E-4, 0.01624051294761486, -0.0070527890632323675, 0.05270189815137449 ], "type": "scatter", "xaxis": "x", "yaxis": "y2" } ], "layout": { "template": { "data": { "barpolar": [ { "marker": { "line": { "color": "white", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "white", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "#C8D4E3", "linecolor": "#C8D4E3", "minorgridcolor": "#C8D4E3", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "#C8D4E3", "linecolor": "#C8D4E3", "minorgridcolor": "#C8D4E3", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "type": "contour" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "type": "heatmap" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "type": "histogram2dcontour" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "type": "histogram2d" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scattermap": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermap" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "sequentialminus": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "white", "showlakes": true, "showland": true, "subunitcolor": "#C8D4E3" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "white", "polar": { "angularaxis": { "gridcolor": "#EBF0F8", "linecolor": "#EBF0F8", "ticks": "" }, "bgcolor": "white", "radialaxis": { "gridcolor": "#EBF0F8", "linecolor": "#EBF0F8", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "white", "gridcolor": "#DFE8F3", "gridwidth": 2, "linecolor": "#EBF0F8", "showbackground": true, "ticks": "", "zerolinecolor": "#EBF0F8" }, "yaxis": { "backgroundcolor": "white", "gridcolor": "#DFE8F3", "gridwidth": 2, "linecolor": "#EBF0F8", "showbackground": true, "ticks": "", "zerolinecolor": "#EBF0F8" }, "zaxis": { "backgroundcolor": "white", "gridcolor": "#DFE8F3", "gridwidth": 2, "linecolor": "#EBF0F8", "showbackground": true, "ticks": "", "zerolinecolor": "#EBF0F8" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "#DFE8F3", "linecolor": "#A2B1C6", "ticks": "" }, "baxis": { "gridcolor": "#DFE8F3", "linecolor": "#A2B1C6", "ticks": "" }, "bgcolor": "white", "caxis": { "gridcolor": "#DFE8F3", "linecolor": "#A2B1C6", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "#EBF0F8", "linecolor": "#EBF0F8", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "#EBF0F8", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "#EBF0F8", "linecolor": "#EBF0F8", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "#EBF0F8", "zerolinewidth": 2 } } }, "xaxis": { "anchor": "y", "domain": [ 0.0, 0.94 ], "title": { "text": "#Channels" } }, "yaxis": { "anchor": "x", "domain": [ 0.0, 1.0 ], "title": { "text": "Layer Execution Time (ms)" }, "range": [ -10, 40 ] }, "yaxis2": { "anchor": "x", "overlaying": "y", "side": "right", "title": { "text": "Point to point variance (%)" }, "range": [ -4, 40 ] }, "scene": { "xaxis": { "title": { "text": "channels" } }, "yaxis": { "title": { "text": "filters" } }, "zaxis": { "title": { "text": "ms" } } }, "width": 2000, "height": 666.6666666666666, "title": { "text": "Latency Measurements for a Singular Neural Network Layer With Changing Input Channels" }, "legend": { "x": 0, "y": 1 }, "font": { "size": 16 }, "autosize": false }, "config": { "plotlyServerURL": "https://plot.ly" } } }, "metadata": {}, "output_type": "display_data", "jetTransient": { "display_id": null } } ], "execution_count": 4 }, { "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:09.590849Z", "start_time": "2025-11-20T13:26:09.251595Z" } }, "cell_type": "code", "source": [ "import scipy\n", "from collections import Counter\n", "from itertools import repeat, chain\n", "\n", "peaks = scipy.signal.find_peaks(deltas, prominence=0.1)[0]\n", "distances = []\n", "\n", "for (fpidx, first_peak) in enumerate(peaks):\n", " for (spidx, second_peak) in enumerate(peaks[fpidx+1:]):\n", " distances.append(int(second_peak - first_peak))\n", "\n", "sorted_distances = []\n", "for d in list(chain.from_iterable(repeat(i, c) for i,c in Counter(distances).most_common())):\n", " if d not in sorted_distances:\n", " sorted_distances.append(d)\n", "print(sorted_distances)\n", "counted_distances = {int(d):distances.count(d) for d in distances}\n", "print(counted_distances[2])" ], "id": "c16f6f494fcd97f6", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[160, 64, 128, 32, 96, 192, 320, 224, 48, 112, 144, 176, 256, 16, 272, 288, 304, 336, 384, 208, 352, 80, 2, 5, 9, 53, 117, 149, 165, 181, 245, 277, 309, 325, 341, 373, 437, 469, 501, 3, 7, 51, 115, 147, 163, 179, 243, 275, 307, 323, 339, 371, 435, 467, 499, 4, 240, 368, 432, 464, 496, 44, 108, 140, 156, 172, 236, 268, 300, 316, 332, 364, 428, 460, 492, 416, 448]\n", "1\n" ] } ], "execution_count": 5 }, { "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:09.618287Z", "start_time": "2025-11-20T13:26:09.598836Z" } }, "cell_type": "code", "source": [ "from scipy.fft import fft, fftfreq\n", "import scipy\n", "import numpy as np\n", "\n", "# Same signal creation...\n", "\n", "# Perform FFT\n", "bins = 768\n", "offset = 16\n", "signal = deltas[offset:offset+bins]\n", "print(len(signal))\n", "print(32*16)\n", "fft_result = fft(signal)\n", "\n", "n = len(fft_result)\n", "frequencies = fftfreq(n, 1)[:n//2]\n", "magnitude = 2 * np.abs(fft_result[:n//2]) / n\n", "fig = make_subplots(specs=[[{\"secondary_y\": True}]])\n", "# fig.add_trace(go.Scatter(x=channels[1:], y=deltas, name=\"Point to point variance\", line=dict(color=\"lightgreen\")), secondary_y=True)\n", "fig.add_trace(go.Scatter(x=frequencies, y=magnitude, name=\"Point to point variance\", line=dict(color=\"lightgreen\")), secondary_y=True)\n", "mean_magnitude = np.mean(magnitude)\n", "\n", "for (mag, freq) in sorted(zip(magnitude, frequencies), reverse=True):\n", " if freq > 0 and mag > mean_magnitude:\n", " print(round(1 / freq), mag)\n", "fig.show()" ], "id": "efd335c6fc7769cb", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "503\n", "512\n", "8 0.11311646877917475\n", "2 0.10585093756025879\n", "3 0.10272154650346212\n", "9 0.10090774203265189\n", "3 0.10062026757029272\n", "2 0.10040182244234556\n", "5 0.09995270216483317\n", "11 0.09972975238837464\n", "3 0.09929163690557544\n", "4 0.09734370934567413\n", "63 0.09701899146548891\n", "5 0.09580121643459287\n", "2 0.09505745791382567\n", "4 0.09343379262474319\n", "2 0.0930360840252944\n", "3 0.09276194649075899\n", "3 0.09195607003927007\n", "7 0.09077362261079548\n", "31 0.0884877977270652\n", "13 0.08770098786058515\n", "5 0.08696422116688511\n", "2 0.08573719868176276\n", "3 0.08452107950955005\n", "2 0.08279195038175463\n", "6 0.07980416082650003\n", "4 0.07798213720813083\n", "16 0.07791727939369214\n", "21 0.07511345735958798\n", "6 0.07150085865082927\n", "4 0.07114613638059566\n", "3 0.06976970369586248\n", "3 0.0641783458413021\n", "6 0.06320406516160808\n", "4 0.06304381436579991\n", "16 0.06062826916783761\n", "3 0.0592200419802871\n", "22 0.05913669600081295\n", "6 0.05839333985438268\n", "4 0.056210816465093266\n", "2 0.05452175179919626\n", "2 0.05223296379819797\n", "2 0.05178418701485538\n", "3 0.05125022177351754\n", "5 0.0512413709531645\n", "4 0.05080995246200574\n", "2 0.0507760925376977\n", "8 0.050740198186695486\n", "10 0.0506463653225288\n", "3 0.050593022057364184\n", "2 0.05054353442373737\n", "126 0.05025203106241095\n", "5 0.05017173792533283\n", "12 0.05001977853402752\n", "4 0.04998149972751122\n", "42 0.04988193956928014\n", "3 0.049856330525745535\n", "9 0.049755167929082404\n", "3 0.04971996006686856\n", "3 0.049578155496023235\n", "2 0.04936473207256131\n", "7 0.04874937048261189\n", "5 0.04849944591715425\n", "4 0.04830560602399832\n", "14 0.047979576057843275\n", "25 0.04795959283028002\n", "2 0.04790251349545097\n", "6 0.047716025396535924\n", "3 0.047567242455319396\n", "3 0.047518926711829335\n", "13 0.047464567196039475\n", "3 0.047356864484483195\n", "34 0.04703935871014887\n", "3 0.04674289922032543\n", "2 0.04604106970047334\n", "4 0.04580827743694\n", "6 0.04542434867222615\n", "4 0.044954158413598115\n", "7 0.04476431052504969\n", "19 0.0446428405827262\n", "4 0.04407985122247858\n", "18 0.04406197744728304\n" ] }, { "data": { "application/vnd.plotly.v1+json": { "data": [ { "line": { "color": "lightgreen" }, "name": "Point to point variance", "x": { "dtype": "f8", "bdata": "AAAAAAAAAADFZBbMSUlgP8VkFsxJSXA/KJchsu5teD/FZBbMSUmAP/b9Gz+cW4Q/KJchsu5tiD9ZMCclQYCMP8VkFsxJSZA/XjGZBXNSkj/2/Rs/nFuUP4/KnnjFZJY/KJchsu5tmD/AY6TrF3eaP1kwJyVBgJw/8fypXmqJnj/FZBbMSUmgPxHL12jeTaE/XjGZBXNSoj+ql1qiB1ejP/b9Gz+cW6Q/Q2Td2zBgpT+Pyp54xWSmP9swYBVaaac/KJchsu5tqD90/eJOg3KpP8BjpOsXd6o/DMpliKx7qz9ZMCclQYCsP6WW6MHVhK0/8fypXmqJrj8+Y2v7/o2vP8VkFsxJSbA/6xd3GpTLsD8Ry9do3k2xPzd+OLco0LE/XjGZBXNSsj+E5PlTvdSyP6qXWqIHV7M/0Eq78FHZsz/2/Rs/nFu0PxyxfI3m3bQ/Q2Td2zBgtT9pFz4qe+K1P4/KnnjFZLY/tX3/xg/ntj/bMGAVWmm3PwHkwGOk67c/KJchsu5tuD9OSoIAOfC4P3T94k6Dcrk/mrBDnc30uT/AY6TrF3e6P+YWBTpi+bo/DMpliKx7uz8zfcbW9v27P1kwJyVBgLw/f+OHc4sCvT+llujB1YS9P8tJSRAgB74/8fypXmqJvj8YsAqttAu/Pz5ja/v+jb8/MgvmpCQIwD/FZBbMSUnAP1i+RvNuisA/6xd3GpTLwD9+cadBuQzBPxHL12jeTcE/pCQIkAOPwT83fji3KNDBP8vXaN5NEcI/XjGZBXNSwj/xisksmJPCP4Tk+VO91MI/Fz4qe+IVwz+ql1qiB1fDPz3xisksmMM/0Eq78FHZwz9jpOsXdxrEP/b9Gz+cW8Q/iVdMZsGcxD8csXyN5t3EP68KrbQLH8U/Q2Td2zBgxT/WvQ0DVqHFP2kXPip74sU//HBuUaAjxj+Pyp54xWTGPyIkz5/qpcY/tX3/xg/nxj9I1y/uNCjHP9swYBVaacc/boqQPH+qxz8B5MBjpOvHP5Q98YrJLMg/KJchsu5tyD+78FHZE6/IP05KggA58Mg/4aOyJ14xyT90/eJOg3LJPwdXE3aos8k/mrBDnc30yT8tCnTE8jXKP8BjpOsXd8o/U73UEj24yj/mFgU6YvnKP3lwNWGHOss/DMpliKx7yz+gI5av0bzLPzN9xtb2/cs/xtb2/Rs/zD9ZMCclQYDMP+yJV0xmwcw/f+OHc4sCzT8SPbiasEPNP6WW6MHVhM0/OPAY6frFzT/LSUkQIAfOP16jeTdFSM4/8fypXmqJzj+EVtqFj8rOPxiwCq20C88/qwk71NlMzz8+Y2v7/o3PP9G8myIkz88/MgvmpCQI0D/7N344tyjQP8VkFsxJSdA/j5GuX9xp0D9YvkbzborQPyLr3oYBq9A/6xd3GpTL0D+1RA+uJuzQP35xp0G5DNE/SJ4/1Ust0T8Ry9do3k3RP9v3b/xwbtE/pCQIkAOP0T9uUaAjlq/RPzd+OLco0NE/AavQSrvw0T/L12jeTRHSP5QEAXLgMdI/XjGZBXNS0j8nXjGZBXPSP/GKySyYk9I/urdhwCq00j+E5PlTvdTSP00RkudP9dI/Fz4qe+IV0z/gasIOdTbTP6qXWqIHV9M/c8TyNZp30z898YrJLJjTPwceI12/uNM/0Eq78FHZ0z+ad1OE5PnTP2Ok6xd3GtQ/LdGDqwk71D/2/Rs/nFvUP8AqtNIufNQ/iVdMZsGc1D9ThOT5U73UPxyxfI3m3dQ/5t0UIXn+1D+vCq20Cx/VP3k3RUieP9U/Q2Td2zBg1T8MkXVvw4DVP9a9DQNWodU/n+qllujB1T9pFz4qe+LVPzJE1r0NA9Y//HBuUaAj1j/FnQblMkTWP4/KnnjFZNY/WPc2DFiF1j8iJM+f6qXWP+tQZzN9xtY/tX3/xg/n1j9/qpdaogfXP0jXL+40KNc/EgTIgcdI1z/bMGAVWmnXP6Vd+Kjsidc/boqQPH+q1z84tyjQEcvXPwHkwGOk69c/yxBZ9zYM2D+UPfGKySzYP15qiR5cTdg/KJchsu5t2D/xw7lFgY7YP7vwUdkTr9g/hB3qbKbP2D9OSoIAOfDYPxd3GpTLENk/4aOyJ14x2T+q0Eq78FHZP3T94k6Dctk/PSp74hWT2T8HVxN2qLPZP9CDqwk71Nk/mrBDnc302T9k3dswYBXaPy0KdMTyNdo/9zYMWIVW2j/AY6TrF3faP4qQPH+ql9o/U73UEj242j8d6mymz9jaP+YWBTpi+do/sEOdzfQZ2z95cDVhhzrbP0OdzfQZW9s/DMpliKx72z/W9v0bP5zbP6Ajlq/RvNs/aVAuQ2Td2z8zfcbW9v3bP/ypXmqJHtw/xtb2/Rs/3D+PA4+Rrl/cP1kwJyVBgNw/Il2/uNOg3D/siVdMZsHcP7W279/44dw/f+OHc4sC3T9IECAHHiPdPxI9uJqwQ90/3GlQLkNk3T+llujB1YTdP2/DgFVopd0/OPAY6frF3T8CHbF8jebdP8tJSRAgB94/lXbho7In3j9eo3k3RUjePyjQEcvXaN4/8fypXmqJ3j+7KULy/KneP4RW2oWPyt4/ToNyGSLr3j8YsAqttAvfP+HcokBHLN8/qwk71NlM3z90NtNnbG3fPz5ja/v+jd8/B5ADj5Gu3z/RvJsiJM/fPw==" }, "y": { "dtype": "f8", "bdata": "ZOe6k2umuj9vwUeYJ5akP3k+ng3WRpw/vLZ246n6mj+R9vBborqpP8bNTYCAgpg/UPE0fPD0mT9pUbKfJ1OkP9Nnb5M81rg/1IoBG7f4pD/0rsWhzSmfP3EylgKcjqA/9OI4JiCKqT+45gbNRluaP1Z/JOK8zJw/sd6R9ooVqD/rMlXlIqe2P7UZkIPmZaU/6Pqpu/7soD+sTf7IYgCkPzqXeOUojqg/Sgggykeenj8S0ED6BCehP/BLoj4qR64/4VLZsqI6sz9MCRDshC2kP5jMcrDVCqE/xVCbKG3bpj/jLkSgSo+mP5z2Lg/uCaE/HzHGGTBepD8sCcoGY/KzP/PwkyKrCq8/pEfaDLuKoT/BAILW7lWePyu5FmzHkKg/tZjEXZvZoz8+Nia+OtqgP22EycI/b6U/uyewapJztj8ozaaXRk2oP5NfhvRMHZ0/82lHfbjLmj8i4+lBMZypP7TOeG/lpaA/MLTJWZt9nz8sSdkSKhelPz498pjjh7k/Mgke5XRMpD8g+2TT+Z+ZP23LGr/FhJg/V2xxBVLuqT9QaD1reKqaP4vv/LzaiJw/s+YvAyMCpD+ThfH7FtW5PzHmcQoGwaM/PiHJMtffmT+eWm1+YQ+bP3/yH2aCeak/InqDX+OJlT9PsPQgbu+aP9nHugMVw6M/3KkLbjP1vD9LKzMGYQmlPzFN/IN+q54/4cvMbB3CnD9d3JuHnvqpPxT6vXRpnZk/1EZxlQMImz/fVXcDWeumP4nrc6zwPLc/G+x4QDKHpT8NFDD/ZaKgP4oW+GbdI6M/pcjYb631qD8ypi6XuIGdPzZLXFEJRqE/kiP1WbvlrT+LpNWkC260P7RgXU28faQ/bRDE95mvoD/+6cZndCqmPyaH+jfcQac/bA0+XehgoD/mrVzJjs2jPxOOilnhTbI/a+bXQCQusD+F0Yg7JdOhP7X3m0FDHZ8/Cn4lITxuqD/43c8t9OGkPwtpIESB36A/Ll+T3bJ2pT9TedWFSUO2PyBg5BhPPKo/l6qOwm7Enj8AtmCc6KqbP201LVzr1Kg/pGjx/z+QoT83Yytd5FCgP9g0G4xoM6U/i+uAs22GuD8Qotf5G0ykPyiAMW7cZ5o/VgqCAZMbmD9kRCUrHLCpPwiUr0Q+f5w/xmkEXyrzmz+2gfZSbaqkP43d8RKAlrk/cu6/W+7Doz80CRo4RVaaP3OxgMKBbZo/NXFFGMMDqj/399v5ToWZPzjR5B6DuJk/AZK6i2b6oz9+ahxwhOu4P8ZbDtvQvaQ/6aMtPsyHnj/9PDfKdlOgP8IpeNUsl6k/YU8btgnmmT+B3MVzfl2cP1dFaUA7BKc/2h2q60brtz+ugNNeopGmPxC4GtwnvKA/7D/1yIuPoz8aTiwsg7uoP8VtqjDf2p0/1U4KLifwoD8sTswEqsesP84p+yij9rM/8ETl1zrJpD92nRGeK0ihP7cpeKr7dKY/6Zv0ui50pz+bxm2f4PmgP7xd8s2QqaM/Us39GKI2sj9zjOqwoyOwP73AWjUPUqI/f/BGdBkcoD8QL1aYZlSoP+nKFMOeH6U/CJ5mlFtdoT+E3O6YYv6kPxvuUGgso7U/JinkBOV0qT9ouWprj+CeP0xqX1zug5o/2CDn2E5iqT9DJDjgee2gP5aoVQel358/pmXAWpxepT/Cl0Y9LWu5P4yCHcKS4KQ/UzCJ/AZPmT8Fj207FFqXP5TMSB5U56k/aPFbMZRAmz8+VEgPobibP4g0YNcSVqQ/HniH9j/CuT8BOqTj+BakP4m7kxvjQpo/BlNDYS7SmT+cKdwUeD2qP7NpB7C+EZc/1rW1z+fXmj/8KPyG3UCkP5Gw05L1S7o/e+Rb9OtxpD9GIi70Fa2cP9VDo3MMeZ4//Jk22sSGqT/nsR22seqWPz0Dd1E4qJw/19FTkNxRpj+BuX02P7+3P18roEG2KqU/mCroSRazoD+VTW3wv2KjP0hr8W6v7qc/wIfafn2dnj8hAAu2uaWhP8RqJd8WUq4//8J82W6Ktz9M9iAvRMylP6321nlkc6I/17ssuNJtpD8zZ2ewKD+oP3lpV6aQeaA/RA9PO48Roz9DFqBjbdyxP+/wf/j9bbA/RUVH/TxGoj9kXkZLopWeP0+6ac27Wqg/zGeO85X1pD/7yBKWqXWgP82CDuWmeKU/D4pjgN/ytT/e3ctpRuqrPwMeSqLe8Z8/EUe91ThNnD/wp6eLVUapPxixD4K1t6E/Q+97b75toD+7BcdhfYylPz4U+4CvVbg/0dwgtmO7pT9PoUrT0AaZP208nJZwjpg/WYVb+3SDqj+6avBx5wScP6748jyCI5w/TSWLH3vqpD/yfhILDBm7PzhV8hUdP6Q/2Lioqz41mj+98t+V+e2XPyZ1vPFS/6k/elqCd7JsmD9+76hlKGeaPywElOrXe6M/o0LZD++zuT+/5KI6FjOlPz5Q0XeJMZ0/yaKwRAQxnT9vl7+W1+CpP52Ap6THt5g/AgRg+0LBmz/A9NulDTamP2COPHo20bc/rS1IiYLVpD8FuxX3WD+gP630NfGYgqI/5eO3oa2GqD/zZBQ4nZedP9W7CnkB4J4/oKSSbke+qj8s/kJv2jG1P+JV/8JIq6Q/tttElPjkoT8g4ZZOHMSlP9nURfGxkqc/FDRa3pU8oD/MGH3397WiPw==" }, "type": "scatter", "xaxis": "x", "yaxis": "y2" } ], "layout": { "template": { "data": { "histogram2dcontour": [ { "type": "histogram2dcontour", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "choropleth": [ { "type": "choropleth", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "histogram2d": [ { "type": "histogram2d", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "heatmap": [ { "type": "heatmap", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "contourcarpet": [ { "type": "contourcarpet", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "contour": [ { "type": "contour", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "surface": [ { "type": "surface", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "mesh3d": [ { "type": "mesh3d", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "scatter": [ { "marker": { "line": { "color": "#283442" } }, "type": "scatter" } ], "parcoords": [ { "type": "parcoords", "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterpolargl": [ { "type": "scatterpolargl", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "bar": [ { "error_x": { "color": "#f2f5fa" }, "error_y": { "color": "#f2f5fa" }, "marker": { "line": { "color": "rgb(17,17,17)", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "scattergeo": [ { "type": "scattergeo", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterpolar": [ { "type": "scatterpolar", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "scattergl": [ { "marker": { "line": { "color": "#283442" } }, "type": "scattergl" } ], "scatter3d": [ { "type": "scatter3d", "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattermap": [ { "type": "scattermap", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattermapbox": [ { "type": "scattermapbox", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterternary": [ { "type": "scatterternary", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattercarpet": [ { "type": "scattercarpet", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "carpet": [ { "aaxis": { "endlinecolor": "#A2B1C6", "gridcolor": "#506784", "linecolor": "#506784", "minorgridcolor": "#506784", "startlinecolor": "#A2B1C6" }, "baxis": { "endlinecolor": "#A2B1C6", "gridcolor": "#506784", "linecolor": "#506784", "minorgridcolor": "#506784", "startlinecolor": "#A2B1C6" }, "type": "carpet" } ], "table": [ { "cells": { "fill": { "color": "#506784" }, "line": { "color": "rgb(17,17,17)" } }, "header": { "fill": { "color": "#2a3f5f" }, "line": { "color": "rgb(17,17,17)" } }, "type": "table" } ], "barpolar": [ { "marker": { "line": { "color": "rgb(17,17,17)", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "pie": [ { "automargin": true, "type": "pie" } ] }, "layout": { "autotypenumbers": "strict", "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#f2f5fa" }, "hovermode": "closest", "hoverlabel": { "align": "left" }, "paper_bgcolor": "rgb(17,17,17)", "plot_bgcolor": "rgb(17,17,17)", "polar": { "bgcolor": "rgb(17,17,17)", "angularaxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" }, "radialaxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" } }, "ternary": { "bgcolor": "rgb(17,17,17)", "aaxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" }, "baxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" }, "caxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" } }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "sequential": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "sequentialminus": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ] }, "xaxis": { "gridcolor": "#283442", "linecolor": "#506784", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "#283442", "automargin": true, "zerolinewidth": 2 }, "yaxis": { "gridcolor": "#283442", "linecolor": "#506784", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "#283442", "automargin": true, "zerolinewidth": 2 }, "scene": { "xaxis": { "backgroundcolor": "rgb(17,17,17)", "gridcolor": "#506784", "linecolor": "#506784", "showbackground": true, "ticks": "", "zerolinecolor": "#C8D4E3", "gridwidth": 2 }, "yaxis": { "backgroundcolor": "rgb(17,17,17)", "gridcolor": "#506784", "linecolor": "#506784", "showbackground": true, "ticks": "", "zerolinecolor": "#C8D4E3", "gridwidth": 2 }, "zaxis": { "backgroundcolor": "rgb(17,17,17)", "gridcolor": "#506784", "linecolor": "#506784", "showbackground": true, "ticks": "", "zerolinecolor": "#C8D4E3", "gridwidth": 2 } }, "shapedefaults": { "line": { "color": "#f2f5fa" } }, "annotationdefaults": { "arrowcolor": "#f2f5fa", "arrowhead": 0, "arrowwidth": 1 }, "geo": { "bgcolor": "rgb(17,17,17)", "landcolor": "rgb(17,17,17)", "subunitcolor": "#506784", "showland": true, "showlakes": true, "lakecolor": "rgb(17,17,17)" }, "title": { "x": 0.05 }, "updatemenudefaults": { "bgcolor": "#506784", "borderwidth": 0 }, "sliderdefaults": { "bgcolor": "#C8D4E3", "borderwidth": 1, "bordercolor": "rgb(17,17,17)", "tickwidth": 0 }, "mapbox": { "style": "dark" } } }, "xaxis": { "anchor": "y", "domain": [ 0.0, 0.94 ] }, "yaxis": { "anchor": "x", "domain": [ 0.0, 1.0 ] }, "yaxis2": { "anchor": "x", "overlaying": "y", "side": "right" } }, "config": { "plotlyServerURL": "https://plot.ly" } } }, "metadata": {}, "output_type": "display_data", "jetTransient": { "display_id": null } } ], "execution_count": 6 }, { "cell_type": "code", "id": "5919d9a5b836e014", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:09.655240Z", "start_time": "2025-11-20T13:26:09.653303Z" } }, "source": [ "color=\"darkblue\"" ], "outputs": [], "execution_count": 7 }, { "cell_type": "code", "id": "b615e79b-639f-4850-b9f8-5518ba98edd9", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:47:10.477651Z", "start_time": "2025-11-20T13:47:10.458884Z" } }, "source": [ "first_order_approx = []\n", "second_order_approx = []\n", "pol_approx = []\n", "\n", "\n", "\n", "upper_sampled_filters = [129, 385]\n", "lower_sampled_filters = [129, 385]\n", "\n", "upper_sampled_filter_meas = [filter_meas[filters.index(c)] for c in upper_sampled_filters]\n", "lower_sampled_filter_meas = [filter_meas[filters.index(c)] for c in lower_sampled_filters]\n", "\n", "upper_m, upper_b = lin_interpol( upper_sampled_filters[0], upper_sampled_filters[1], upper_sampled_filter_meas[0], upper_sampled_filter_meas[1])\n", "lower_m, lower_b = lin_interpol(lower_sampled_filters[0], lower_sampled_filters[1], lower_sampled_filter_meas[0], lower_sampled_filter_meas[1])\n", "\n", "r_c = filters\n", "\n", "r_v_upper = [calc_upper(c, upper_m, upper_b, 128) for c in r_c]\n", "r_v_lower = [calc_lower(c, lower_m, lower_b, 128) for c in r_c]\n", "r_v_mean = [calc_mean(c,upper_m, upper_b, lower_m, lower_b, 128) for c in r_c]\n", "r_v_rect = [calc_rect(c, upper_m, upper_b, lower_m, lower_b, 128, 1) for c in r_c]\n", "\n", "err_upper = [np.abs((approx - meas) / meas) for approx, meas in zip(r_v_upper, filter_meas)]\n", "err_lower = [np.abs((approx - meas) / meas) for approx, meas in zip(r_v_lower, filter_meas)]\n", "err_mean = [np.abs((approx - meas) / meas) for approx, meas in zip(r_v_mean, filter_meas)]\n", "err_rect = [(approx - meas) / meas for approx, meas in zip(r_v_rect, filter_meas)]\n", "\n", "# print(np.mean(err_sine))\n", "print(np.mean(err_rect))\n", "\n", "fig = go.Figure()\n", "fig.add_trace(go.Scatter(x=filters, y=filter_meas, name=\"Channel Measurements\", mode=\"markers\"))\n", "\n", "fig.add_trace(go.Scatter(x=list(range(filters[-1])), y=[c * upper_m + upper_b for c in range(filters[-1])], name=\"Upper Sampled Channels\"))\n", "fig.add_trace(go.Scatter(x=list(range(filters[-1])), y=[c * lower_m + lower_b for c in range(filters[-1])], name=\"Lower Sampled Channels\"))\n", "fig.add_trace(go.Scatter(x=r_c, y=r_v_mean, name=\"Mean Steps\"))\n", "fig.add_trace(go.Scatter(x=r_c, y=r_v_rect, name=\"Rect Steps\"))\n", "\n", "fig.add_trace(go.Scatter(x=r_c, y=err_rect, name=\"Rect Errors\", mode=\"markers\"))\n", "print(np.mean(np.abs(err_rect)))\n", "fig.update_layout(\n", " autosize=False,\n", " width=PLOT_WIDTH,\n", " height=PLOT_HEIGHT,\n", "\n", ")\n" ], "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-0.008773193474599025\n", "0.07652679728655397\n" ] }, { "data": { "application/vnd.plotly.v1+json": { "data": [ { "mode": "markers", "name": "Channel Measurements", "x": [ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529 ], "y": [ 2.793504739629811, 2.4239360094070435, 2.794331192970276, 2.4243624031543733, 2.7955965608416027, 2.7932935036145725, 2.7946816205978395, 2.900626393570297, 2.795363187789917, 2.7950143814086914, 2.795246422290802, 2.9074972804437236, 2.906456000275082, 2.9118503987789155, 2.793948793411255, 2.79617919921875, 2.799169588088989, 2.7963696241378786, 2.798534369468689, 2.7995016801924932, 2.7967277265364126, 2.8000080227851867, 2.796863676094618, 2.8030832171440125, 2.802793598175049, 2.802662396430969, 2.8029208265501877, 2.8060383915901186, 2.803326439857483, 2.805604803562164, 2.8031686367374835, 2.81243040561676, 2.8112080097198486, 2.813638377189636, 2.8102780354989543, 2.8170645316441854, 2.81270467333433, 2.8171346221651348, 2.812943994998932, 2.828370607856039, 2.828363319543692, 2.8328799794359907, 2.8275781761516225, 2.8281856060028074, 2.832202638898577, 2.82951578491505, 2.8322895765304565, 2.839938903783823, 2.8432207822799684, 2.841615030908177, 2.8423429572063945, 2.837699283872332, 2.835508564540318, 2.839439453617219, 2.8358303904533386, 4.47564160823822, 4.476091194152832, 4.4747215747833256, 4.475995182991028, 4.478273582458496, 4.476660251617432, 4.477105593681335, 4.4762374983893505, 4.483627128601074, 4.4832056045532225, 4.482939827826716, 4.483703491422865, 4.481824004460895, 4.484153883797782, 4.4816252626018755, 4.48453136572317, 4.494086384773254, 4.4951999425888065, 4.49341044198899, 4.493805834416593, 4.497256016731262, 4.496616545177641, 4.496161603927613, 4.496502506900841, 4.505350399017334, 4.506679906949892, 4.506042408388715, 4.506991982460022, 4.4969538392157675, 4.497638392448425, 4.4978705391739355, 4.497283377145466, 4.521688032150268, 4.522000128828634, 4.52227201461792, 4.523527890035551, 4.522868890028733, 4.52505786746156, 4.5239835880898145, 4.523408251542311, 4.533880019187928, 4.535059094429016, 4.5329196764075235, 4.53601758480072, 4.5325136423110965, 4.534947228431702, 4.532719969749451, 4.533897710883099, 4.547094392776489, 4.546679258346558, 4.54715359210968, 4.548254346847534, 4.55447039604187, 4.555039978027343, 4.553671995798747, 4.552888661843759, 4.559809565544128, 4.563239264734013, 4.56004574185326, 4.56137448265439, 4.548570079803467, 4.553880023956299, 4.551568479248972, 4.550295590348385, 8.401746374661805, 8.400553081346596, 8.402327919006348, 8.403441619873046, 8.386327310041947, 8.388444757461547, 8.384917952797629, 8.39109343069571, 8.408369342486063, 8.415891541375053, 8.408684682846069, 8.408676862716675, 8.381341096126672, 8.379672002792358, 8.38229284286499, 8.381028032302856, 8.415692806243896, 8.415174531936646, 8.414750337600708, 8.418830468621053, 8.396484331651168, 8.3957839012146, 8.396012878417968, 8.401964855194091, 8.436385518028622, 8.438147258758544, 8.4357008934021, 8.437403202056885, 8.361732510157994, 8.362580886253944, 8.362643241882324, 8.359467220306396, 8.451806354522706, 8.452502209207285, 8.453992038965225, 8.452004861831664, 8.43462272644043, 8.432433605194092, 8.422898356834155, 8.430666640952781, 8.461548805236816, 8.469440031051636, 8.466996453025125, 8.470930281139555, 8.422366523742676, 8.42140965461731, 8.416614437103272, 8.41830072402954, 8.483617059115705, 8.481812858581543, 8.48272430195528, 8.486838388442994, 8.469652795791626, 8.457950544357299, 8.463156295545174, 8.457891273498536, 8.492940028508505, 8.496900796890259, 8.49557123184204, 8.49832797050476, 8.393123197555543, 8.391068744659425, 8.397862434387207, 8.389068746566773, 8.932126933130725, 8.920547342300415, 8.929844760894776, 8.934782361984253, 8.92953602043358, 8.924151145805746, 8.925016639093874, 8.935329225328234, 8.93358883857727, 8.944709032773972, 8.938961601257324, 8.922552013397217, 8.925412813822428, 8.923444747924805, 8.924403285980224, 8.93480650583903, 8.94769606590271, 8.948854351043702, 8.941804838180541, 8.96178240776062, 8.96885118484497, 8.943736439659482, 8.949483156204224, 8.947532749176025, 8.9576735496521, 8.959207441748642, 8.957499170303345, 8.95613112449646, 8.928075432777405, 8.927135289921935, 8.930029658710255, 8.930995082855224, 8.981255960464477, 8.98113284111023, 8.978388143622357, 8.975902414321899, 8.982316827774047, 8.987536028811807, 8.981223964691162, 8.974685668945312, 8.974740839004516, 8.981459140777588, 8.990288019180298, 9.002008220127651, 8.98309326171875, 8.977246501229025, 8.983954056449559, 8.985075235366821, 8.995889568328858, 8.992504153335304, 8.997683191299439, 8.989884757995606, 9.006422281265259, 9.007603168487549, 9.007188749313354, 9.017457191760723, 9.038155269622802, 9.033274353875054, 9.020059156417847, 9.026299528437722, 8.99552149772644, 8.994083213806153, 9.005435053507487, 9.00172953605652, 13.516235208511352, 13.505260801315307, 13.511651182174683, 13.50810718536377, 13.48673600416917, 13.480491304293242, 13.48421061038971, 13.494915246963501, 13.519144010543823, 13.511634742512422, 13.508563137054443, 13.505699253082275, 13.471219158172607, 13.46687364578247, 13.47859206199646, 13.466791818726737, 13.525752019882201, 13.515908765792847, 13.514471435546875, 13.515184020996093, 13.482681512832642, 13.490302324295044, 13.499466008153455, 13.495806312561035, 13.523062324523925, 13.523134422302245, 13.520408010482788, 13.518331289291382, 13.445424032211303, 13.443278598785401, 13.454934358596802, 13.441981292493416, 13.524393558502197, 13.515500736236572, 13.519564723968506, 13.549387216567993, 13.493891334533691, 13.498153524195894, 13.49277114868164, 13.508883237838745, 13.531960058212281, 13.527108860015868, 13.524993705749512, 13.521002292633057, 13.490092754364014, 13.487257528305054, 13.4950767993927, 13.48414550289031, 13.54574728012085, 13.54027361869812, 13.546494340896606, 13.547007989883422, 13.527294445037843, 13.506411170959472, 13.532524440947414, 13.514899158477784, 13.553501038324265, 13.54817762374878, 13.555742311477662, 13.557825613021851, 13.4567232131958, 13.45047206878662, 13.476235103607177, 13.481751918792725, 13.575590372085571, 13.55117449760437, 13.577361631393433, 13.572888046503067, 13.542574501037597, 13.532990844161422, 13.563217639923096, 13.545382261276245, 13.59128440510143, 13.589182472229004, 13.578951930999756, 13.612599992752076, 13.531459133799483, 13.514433670043946, 13.538540887832642, 13.52881441116333, 13.609862279891967, 13.605896949768066, 13.59034242630005, 13.611353540420533, 13.569646488536488, 13.59254560470581, 13.585556745529175, 13.579700899124145, 13.619393587112427, 13.611684894561767, 13.624859142303468, 13.636267355510167, 13.520601606369018, 13.516599893569946, 13.519156779012372, 13.547051191329956, 13.650067031383514, 13.654295227744363, 13.650919961929322, 13.646697568893433, 13.620918416976929, 13.624814462661742, 13.621403169631957, 13.621265554428101, 13.65840950012207, 13.666110372543335, 13.661764860153198, 13.660811233520509, 13.60877766609192, 13.616231966018677, 13.611605326334635, 13.622315263748169, 13.679530965870825, 13.677458190917969, 13.687841653823853, 13.678004884719849, 13.65606770148644, 13.665281629562378, 13.656019258499146, 13.664062452316283, 13.702339267730713, 13.698062419891357, 13.725764894485474, 13.705843114852906, 13.570115184783935, 13.571393489837646, 13.570959997177123, 13.571288193425824, 17.922159910202026, 17.911265563964843, 17.917527675628662, 17.90941276550293, 17.891676807403563, 17.899514961242676, 17.89599189758301, 17.902646160125734, 17.933947517758323, 17.914697647094727, 17.92440503835678, 17.90936164855957, 17.878186988830567, 17.880504035949706, 17.882677540634617, 17.885101611797626, 17.937091064453124, 17.9227294921875, 17.93243999481201, 17.925262239244248, 17.932404804229737, 17.910411071777343, 17.915783977508546, 17.912262535095216, 17.946040454663727, 17.94273462295532, 17.951073455810548, 17.93831205368042, 17.85464792251587, 17.862432098388673, 17.87087059020996, 17.871755013099083, 17.96612498339485, 17.95088923604865, 17.96669120788574, 17.951315212249757, 17.93734181722005, 17.943105350841176, 17.937054443359376, 17.94244716478431, 17.96651734246148, 17.969098429526053, 17.964640045166014, 17.96244306564331, 17.91234407424927, 17.922164630889892, 17.926011180877687, 17.930769443511963, 17.9668550491333, 17.973751735687255, 17.982246494293214, 18.009730559128982, 17.96060962677002, 17.974471428815058, 17.971894454956054, 17.957859230041503, 18.007707023620604, 18.000545758467453, 17.99367513656616, 18.002596855163574, 17.89446997642517, 17.88310546875, 17.897526359558107, 17.889801502227783, 18.01217542375837, 18.023472284866592, 18.002897657197096, 18.006766510009765, 18.001220703125, 17.99326820743894, 17.977918338775634, 17.987875175476074, 18.02204159327916, 18.031923007965087, 18.012448120117188, 18.0393967628479, 18.00465269088745, 17.973550415039064, 17.97621431350708, 17.97783741584191, 18.05802240371704, 18.037843322753908, 18.028014087677, 18.036841165451776, 18.015132713317872, 18.02256998334612, 18.027661664145334, 18.033714540543095, 18.063362728465687, 18.05432383219401, 18.043393221768465, 18.08307523727417, 17.957617936310946, 17.997153780039618, 17.950890385827353, 17.95684642791748, 18.077316897256033, 18.057982444763184, 18.062974515168563, 18.108662414550782, 18.04671859741211, 18.06342420578003, 18.03501542409261, 18.042329597473145, 18.104286479949952, 18.08070240020752, 18.076457595825197, 18.09907054901123, 18.03522040049235, 18.03392848968506, 18.083748531341552, 18.03271369934082, 18.11275510787964, 18.138642966747284, 18.14924907684326, 18.086367988586424, 18.09632158279419, 18.088729667663575, 18.11191987991333, 18.110195214407785, 18.091178989410402, 18.145180702209473, 18.119625568389893, 18.105102146373074, 17.991081714630127, 17.99292459487915, 18.048926448822023, 18.022895908355714, 22.70647087097168, 22.65171970020641, 22.654771853715946, 22.65527856009347, 22.611995124816893, 22.651770807081654, 22.624541338752298, 22.6748929977417, 22.714595127105714, 22.716782569885254, 22.672746058872768, 22.71070083618164, 22.5701584815979, 22.571488173111625, 22.608145427703857, 22.59220037962261, 22.711265563964844 ], "type": "scatter" }, { "name": "Upper Sampled Channels", "x": [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528 ], "y": [ 3.60435049151849, 3.641539606891694, 3.678728722264898, 3.715917837638102, 3.753106953011306, 3.79029606838451, 3.827485183757714, 3.864674299130918, 3.901863414504122, 3.9390525298773262, 3.97624164525053, 4.013430760623734, 4.050619875996938, 4.087808991370142, 4.124998106743346, 4.16218722211655, 4.199376337489754, 4.236565452862958, 4.273754568236162, 4.3109436836093655, 4.3481327989825695, 4.385321914355774, 4.422511029728978, 4.459700145102182, 4.496889260475386, 4.53407837584859, 4.571267491221794, 4.608456606594998, 4.645645721968202, 4.682834837341406, 4.72002395271461, 4.757213068087814, 4.794402183461018, 4.831591298834222, 4.868780414207426, 4.90596952958063, 4.943158644953834, 4.980347760327038, 5.017536875700242, 5.054725991073446, 5.09191510644665, 5.129104221819854, 5.166293337193058, 5.203482452566262, 5.240671567939465, 5.277860683312669, 5.315049798685873, 5.352238914059077, 5.389428029432281, 5.426617144805485, 5.463806260178689, 5.500995375551893, 5.538184490925097, 5.575373606298301, 5.612562721671505, 5.649751837044709, 5.686940952417913, 5.724130067791117, 5.761319183164321, 5.798508298537525, 5.835697413910729, 5.872886529283933, 5.910075644657137, 5.947264760030341, 5.9844538754035455, 6.0216429907767495, 6.0588321061499535, 6.0960212215231575, 6.1332103368963615, 6.1703994522695655, 6.20758856764277, 6.244777683015974, 6.281966798389178, 6.319155913762382, 6.356345029135586, 6.39353414450879, 6.430723259881994, 6.467912375255198, 6.505101490628402, 6.542290606001606, 6.57947972137481, 6.616668836748014, 6.653857952121218, 6.691047067494422, 6.728236182867626, 6.76542529824083, 6.802614413614034, 6.839803528987238, 6.876992644360441, 6.914181759733645, 6.951370875106849, 6.988559990480053, 7.025749105853257, 7.062938221226461, 7.100127336599665, 7.137316451972869, 7.174505567346073, 7.211694682719277, 7.248883798092481, 7.286072913465685, 7.323262028838889, 7.360451144212093, 7.397640259585297, 7.434829374958501, 7.472018490331705, 7.509207605704908, 7.546396721078112, 7.5835858364513165, 7.620774951824521, 7.657964067197725, 7.695153182570929, 7.732342297944133, 7.7695314133173365, 7.806720528690541, 7.843909644063745, 7.881098759436949, 7.918287874810153, 7.955476990183357, 7.992666105556561, 8.029855220929765, 8.067044336302969, 8.104233451676173, 8.141422567049377, 8.17861168242258, 8.215800797795785, 8.252989913168989, 8.290179028542193, 8.327368143915397, 8.3645572592886, 8.401746374661805, 8.438935490035009, 8.476124605408213, 8.513313720781417, 8.550502836154621, 8.587691951527825, 8.624881066901029, 8.662070182274233, 8.699259297647437, 8.736448413020641, 8.773637528393845, 8.810826643767049, 8.848015759140253, 8.885204874513457, 8.922393989886661, 8.959583105259865, 8.99677222063307, 9.033961336006271, 9.071150451379477, 9.10833956675268, 9.145528682125885, 9.182717797499087, 9.219906912872293, 9.257096028245495, 9.294285143618701, 9.331474258991904, 9.36866337436511, 9.405852489738312, 9.443041605111517, 9.48023072048472, 9.517419835857925, 9.554608951231128, 9.591798066604333, 9.628987181977536, 9.666176297350741, 9.703365412723944, 9.74055452809715, 9.777743643470352, 9.814932758843558, 9.85212187421676, 9.889310989589966, 9.926500104963168, 9.963689220336374, 10.000878335709576, 10.038067451082782, 10.075256566455984, 10.11244568182919, 10.149634797202392, 10.186823912575596, 10.2240130279488, 10.261202143322004, 10.298391258695208, 10.335580374068412, 10.372769489441616, 10.40995860481482, 10.447147720188024, 10.484336835561228, 10.521525950934432, 10.558715066307636, 10.59590418168084, 10.633093297054044, 10.670282412427248, 10.707471527800452, 10.744660643173656, 10.78184975854686, 10.819038873920064, 10.856227989293268, 10.893417104666472, 10.930606220039676, 10.96779533541288, 11.004984450786084, 11.042173566159288, 11.079362681532492, 11.116551796905696, 11.1537409122789, 11.190930027652104, 11.228119143025308, 11.265308258398512, 11.302497373771716, 11.33968648914492, 11.376875604518123, 11.414064719891329, 11.45125383526453, 11.488442950637737, 11.525632066010939, 11.562821181384145, 11.600010296757347, 11.637199412130553, 11.674388527503757, 11.71157764287696, 11.748766758250165, 11.785955873623369, 11.823144988996573, 11.860334104369777, 11.89752321974298, 11.934712335116183, 11.971901450489387, 12.009090565862591, 12.046279681235795, 12.083468796608999, 12.120657911982203, 12.157847027355407, 12.195036142728611, 12.232225258101815, 12.26941437347502, 12.306603488848223, 12.343792604221427, 12.380981719594631, 12.418170834967835, 12.45535995034104, 12.492549065714243, 12.529738181087447, 12.566927296460651, 12.604116411833855, 12.64130552720706, 12.678494642580263, 12.715683757953467, 12.752872873326671, 12.790061988699875, 12.82725110407308, 12.864440219446283, 12.901629334819487, 12.938818450192692, 12.976007565565896, 13.0131966809391, 13.050385796312304, 13.087574911685508, 13.124764027058712, 13.161953142431916, 13.19914225780512, 13.236331373178324, 13.273520488551528, 13.310709603924732, 13.347898719297936, 13.38508783467114, 13.422276950044344, 13.459466065417548, 13.496655180790752, 13.533844296163956, 13.57103341153716, 13.608222526910364, 13.645411642283568, 13.682600757656772, 13.719789873029976, 13.75697898840318, 13.794168103776384, 13.831357219149588, 13.868546334522792, 13.905735449895996, 13.9429245652692, 13.980113680642404, 14.017302796015608, 14.054491911388812, 14.091681026762016, 14.12887014213522, 14.166059257508424, 14.203248372881628, 14.240437488254832, 14.277626603628036, 14.31481571900124, 14.352004834374442, 14.389193949747646, 14.42638306512085, 14.463572180494054, 14.500761295867258, 14.537950411240463, 14.575139526613667, 14.61232864198687, 14.649517757360075, 14.686706872733279, 14.723895988106483, 14.761085103479687, 14.79827421885289, 14.835463334226095, 14.872652449599299, 14.909841564972503, 14.947030680345707, 14.98421979571891, 15.021408911092115, 15.058598026465319, 15.095787141838523, 15.132976257211727, 15.17016537258493, 15.207354487958135, 15.244543603331339, 15.281732718704543, 15.318921834077747, 15.356110949450951, 15.393300064824155, 15.430489180197359, 15.467678295570563, 15.504867410943767, 15.542056526316971, 15.579245641690175, 15.616434757063379, 15.653623872436583, 15.690812987809787, 15.728002103182991, 15.765191218556195, 15.8023803339294, 15.839569449302603, 15.876758564675807, 15.913947680049011, 15.951136795422215, 15.98832591079542, 16.025515026168623, 16.06270414154183, 16.09989325691503, 16.137082372288234, 16.17427148766144, 16.211460603034645, 16.248649718407847, 16.28583883378105, 16.323027949154255, 16.36021706452746, 16.397406179900663, 16.434595295273866, 16.47178441064707, 16.508973526020277, 16.54616264139348, 16.58335175676668, 16.620540872139888, 16.657729987513093, 16.694919102886296, 16.732108218259498, 16.7692973336327, 16.806486449005906, 16.84367556437911, 16.880864679752314, 16.918053795125516, 16.955242910498722, 16.992432025871928, 17.02962114124513, 17.066810256618332, 17.103999371991538, 17.141188487364744, 17.178377602737946, 17.21556671811115, 17.252755833484354, 17.28994494885756, 17.327134064230762, 17.364323179603964, 17.40151229497717, 17.438701410350376, 17.475890525723578, 17.51307964109678, 17.550268756469986, 17.587457871843192, 17.624646987216394, 17.661836102589596, 17.699025217962802, 17.736214333336008, 17.77340344870921, 17.810592564082413, 17.84778167945562, 17.884970794828824, 17.922159910202026, 17.95934902557523, 17.996538140948434, 18.03372725632164, 18.070916371694842, 18.108105487068045, 18.14529460244125, 18.182483717814456, 18.21967283318766, 18.25686194856086, 18.294051063934067, 18.331240179307272, 18.368429294680475, 18.405618410053677, 18.442807525426883, 18.47999664080009, 18.51718575617329, 18.554374871546493, 18.5915639869197, 18.628753102292904, 18.665942217666107, 18.70313133303931, 18.740320448412515, 18.77750956378572, 18.814698679158923, 18.851887794532125, 18.88907690990533, 18.926266025278537, 18.96345514065174, 19.00064425602494, 19.037833371398147, 19.075022486771353, 19.112211602144555, 19.149400717517757, 19.18658983289096, 19.223778948264165, 19.26096806363737, 19.298157179010573, 19.335346294383776, 19.37253540975698, 19.409724525130187, 19.44691364050339, 19.48410275587659, 19.521291871249797, 19.558480986623003, 19.595670101996205, 19.632859217369408, 19.670048332742617, 19.70723744811582, 19.74442656348902, 19.781615678862224, 19.818804794235433, 19.855993909608635, 19.893183024981838, 19.93037214035504, 19.96756125572825, 20.00475037110145, 20.041939486474654, 20.079128601847856, 20.116317717221065, 20.153506832594267, 20.19069594796747, 20.227885063340672, 20.265074178713874, 20.302263294087084, 20.339452409460286, 20.376641524833488, 20.41383064020669, 20.4510197555799, 20.488208870953102, 20.525397986326304, 20.562587101699506, 20.599776217072716, 20.636965332445918, 20.67415444781912, 20.711343563192322, 20.74853267856553, 20.785721793938734, 20.822910909311936, 20.86010002468514, 20.897289140058348, 20.93447825543155, 20.971667370804752, 21.008856486177955, 21.046045601551164, 21.083234716924366, 21.12042383229757, 21.15761294767077, 21.19480206304398, 21.231991178417182, 21.269180293790384, 21.306369409163587, 21.343558524536796, 21.38074763991, 21.4179367552832, 21.455125870656403, 21.492314986029612, 21.529504101402814, 21.566693216776017, 21.60388233214922, 21.641071447522428, 21.67826056289563, 21.715449678268833, 21.752638793642035, 21.789827909015244, 21.827017024388446, 21.86420613976165, 21.90139525513485, 21.93858437050806, 21.975773485881263, 22.012962601254465, 22.050151716627667, 22.087340832000876, 22.12452994737408, 22.16171906274728, 22.198908178120483, 22.236097293493692, 22.273286408866895, 22.310475524240097, 22.3476646396133, 22.38485375498651, 22.42204287035971, 22.459231985732913, 22.496421101106115, 22.533610216479325, 22.570799331852527, 22.60798844722573, 22.64517756259893, 22.682366677972134, 22.719555793345343, 22.756744908718545, 22.793934024091747, 22.83112313946495, 22.86831225483816, 22.90550137021136, 22.942690485584563, 22.979879600957766, 23.017068716330975, 23.054257831704177, 23.09144694707738, 23.128636062450582, 23.16582517782379, 23.203014293196993, 23.240203408570196 ], "type": "scatter" }, { "name": "Lower Sampled Channels", "x": [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528 ], "y": [ 3.60435049151849, 3.641539606891694, 3.678728722264898, 3.715917837638102, 3.753106953011306, 3.79029606838451, 3.827485183757714, 3.864674299130918, 3.901863414504122, 3.9390525298773262, 3.97624164525053, 4.013430760623734, 4.050619875996938, 4.087808991370142, 4.124998106743346, 4.16218722211655, 4.199376337489754, 4.236565452862958, 4.273754568236162, 4.3109436836093655, 4.3481327989825695, 4.385321914355774, 4.422511029728978, 4.459700145102182, 4.496889260475386, 4.53407837584859, 4.571267491221794, 4.608456606594998, 4.645645721968202, 4.682834837341406, 4.72002395271461, 4.757213068087814, 4.794402183461018, 4.831591298834222, 4.868780414207426, 4.90596952958063, 4.943158644953834, 4.980347760327038, 5.017536875700242, 5.054725991073446, 5.09191510644665, 5.129104221819854, 5.166293337193058, 5.203482452566262, 5.240671567939465, 5.277860683312669, 5.315049798685873, 5.352238914059077, 5.389428029432281, 5.426617144805485, 5.463806260178689, 5.500995375551893, 5.538184490925097, 5.575373606298301, 5.612562721671505, 5.649751837044709, 5.686940952417913, 5.724130067791117, 5.761319183164321, 5.798508298537525, 5.835697413910729, 5.872886529283933, 5.910075644657137, 5.947264760030341, 5.9844538754035455, 6.0216429907767495, 6.0588321061499535, 6.0960212215231575, 6.1332103368963615, 6.1703994522695655, 6.20758856764277, 6.244777683015974, 6.281966798389178, 6.319155913762382, 6.356345029135586, 6.39353414450879, 6.430723259881994, 6.467912375255198, 6.505101490628402, 6.542290606001606, 6.57947972137481, 6.616668836748014, 6.653857952121218, 6.691047067494422, 6.728236182867626, 6.76542529824083, 6.802614413614034, 6.839803528987238, 6.876992644360441, 6.914181759733645, 6.951370875106849, 6.988559990480053, 7.025749105853257, 7.062938221226461, 7.100127336599665, 7.137316451972869, 7.174505567346073, 7.211694682719277, 7.248883798092481, 7.286072913465685, 7.323262028838889, 7.360451144212093, 7.397640259585297, 7.434829374958501, 7.472018490331705, 7.509207605704908, 7.546396721078112, 7.5835858364513165, 7.620774951824521, 7.657964067197725, 7.695153182570929, 7.732342297944133, 7.7695314133173365, 7.806720528690541, 7.843909644063745, 7.881098759436949, 7.918287874810153, 7.955476990183357, 7.992666105556561, 8.029855220929765, 8.067044336302969, 8.104233451676173, 8.141422567049377, 8.17861168242258, 8.215800797795785, 8.252989913168989, 8.290179028542193, 8.327368143915397, 8.3645572592886, 8.401746374661805, 8.438935490035009, 8.476124605408213, 8.513313720781417, 8.550502836154621, 8.587691951527825, 8.624881066901029, 8.662070182274233, 8.699259297647437, 8.736448413020641, 8.773637528393845, 8.810826643767049, 8.848015759140253, 8.885204874513457, 8.922393989886661, 8.959583105259865, 8.99677222063307, 9.033961336006271, 9.071150451379477, 9.10833956675268, 9.145528682125885, 9.182717797499087, 9.219906912872293, 9.257096028245495, 9.294285143618701, 9.331474258991904, 9.36866337436511, 9.405852489738312, 9.443041605111517, 9.48023072048472, 9.517419835857925, 9.554608951231128, 9.591798066604333, 9.628987181977536, 9.666176297350741, 9.703365412723944, 9.74055452809715, 9.777743643470352, 9.814932758843558, 9.85212187421676, 9.889310989589966, 9.926500104963168, 9.963689220336374, 10.000878335709576, 10.038067451082782, 10.075256566455984, 10.11244568182919, 10.149634797202392, 10.186823912575596, 10.2240130279488, 10.261202143322004, 10.298391258695208, 10.335580374068412, 10.372769489441616, 10.40995860481482, 10.447147720188024, 10.484336835561228, 10.521525950934432, 10.558715066307636, 10.59590418168084, 10.633093297054044, 10.670282412427248, 10.707471527800452, 10.744660643173656, 10.78184975854686, 10.819038873920064, 10.856227989293268, 10.893417104666472, 10.930606220039676, 10.96779533541288, 11.004984450786084, 11.042173566159288, 11.079362681532492, 11.116551796905696, 11.1537409122789, 11.190930027652104, 11.228119143025308, 11.265308258398512, 11.302497373771716, 11.33968648914492, 11.376875604518123, 11.414064719891329, 11.45125383526453, 11.488442950637737, 11.525632066010939, 11.562821181384145, 11.600010296757347, 11.637199412130553, 11.674388527503757, 11.71157764287696, 11.748766758250165, 11.785955873623369, 11.823144988996573, 11.860334104369777, 11.89752321974298, 11.934712335116183, 11.971901450489387, 12.009090565862591, 12.046279681235795, 12.083468796608999, 12.120657911982203, 12.157847027355407, 12.195036142728611, 12.232225258101815, 12.26941437347502, 12.306603488848223, 12.343792604221427, 12.380981719594631, 12.418170834967835, 12.45535995034104, 12.492549065714243, 12.529738181087447, 12.566927296460651, 12.604116411833855, 12.64130552720706, 12.678494642580263, 12.715683757953467, 12.752872873326671, 12.790061988699875, 12.82725110407308, 12.864440219446283, 12.901629334819487, 12.938818450192692, 12.976007565565896, 13.0131966809391, 13.050385796312304, 13.087574911685508, 13.124764027058712, 13.161953142431916, 13.19914225780512, 13.236331373178324, 13.273520488551528, 13.310709603924732, 13.347898719297936, 13.38508783467114, 13.422276950044344, 13.459466065417548, 13.496655180790752, 13.533844296163956, 13.57103341153716, 13.608222526910364, 13.645411642283568, 13.682600757656772, 13.719789873029976, 13.75697898840318, 13.794168103776384, 13.831357219149588, 13.868546334522792, 13.905735449895996, 13.9429245652692, 13.980113680642404, 14.017302796015608, 14.054491911388812, 14.091681026762016, 14.12887014213522, 14.166059257508424, 14.203248372881628, 14.240437488254832, 14.277626603628036, 14.31481571900124, 14.352004834374442, 14.389193949747646, 14.42638306512085, 14.463572180494054, 14.500761295867258, 14.537950411240463, 14.575139526613667, 14.61232864198687, 14.649517757360075, 14.686706872733279, 14.723895988106483, 14.761085103479687, 14.79827421885289, 14.835463334226095, 14.872652449599299, 14.909841564972503, 14.947030680345707, 14.98421979571891, 15.021408911092115, 15.058598026465319, 15.095787141838523, 15.132976257211727, 15.17016537258493, 15.207354487958135, 15.244543603331339, 15.281732718704543, 15.318921834077747, 15.356110949450951, 15.393300064824155, 15.430489180197359, 15.467678295570563, 15.504867410943767, 15.542056526316971, 15.579245641690175, 15.616434757063379, 15.653623872436583, 15.690812987809787, 15.728002103182991, 15.765191218556195, 15.8023803339294, 15.839569449302603, 15.876758564675807, 15.913947680049011, 15.951136795422215, 15.98832591079542, 16.025515026168623, 16.06270414154183, 16.09989325691503, 16.137082372288234, 16.17427148766144, 16.211460603034645, 16.248649718407847, 16.28583883378105, 16.323027949154255, 16.36021706452746, 16.397406179900663, 16.434595295273866, 16.47178441064707, 16.508973526020277, 16.54616264139348, 16.58335175676668, 16.620540872139888, 16.657729987513093, 16.694919102886296, 16.732108218259498, 16.7692973336327, 16.806486449005906, 16.84367556437911, 16.880864679752314, 16.918053795125516, 16.955242910498722, 16.992432025871928, 17.02962114124513, 17.066810256618332, 17.103999371991538, 17.141188487364744, 17.178377602737946, 17.21556671811115, 17.252755833484354, 17.28994494885756, 17.327134064230762, 17.364323179603964, 17.40151229497717, 17.438701410350376, 17.475890525723578, 17.51307964109678, 17.550268756469986, 17.587457871843192, 17.624646987216394, 17.661836102589596, 17.699025217962802, 17.736214333336008, 17.77340344870921, 17.810592564082413, 17.84778167945562, 17.884970794828824, 17.922159910202026, 17.95934902557523, 17.996538140948434, 18.03372725632164, 18.070916371694842, 18.108105487068045, 18.14529460244125, 18.182483717814456, 18.21967283318766, 18.25686194856086, 18.294051063934067, 18.331240179307272, 18.368429294680475, 18.405618410053677, 18.442807525426883, 18.47999664080009, 18.51718575617329, 18.554374871546493, 18.5915639869197, 18.628753102292904, 18.665942217666107, 18.70313133303931, 18.740320448412515, 18.77750956378572, 18.814698679158923, 18.851887794532125, 18.88907690990533, 18.926266025278537, 18.96345514065174, 19.00064425602494, 19.037833371398147, 19.075022486771353, 19.112211602144555, 19.149400717517757, 19.18658983289096, 19.223778948264165, 19.26096806363737, 19.298157179010573, 19.335346294383776, 19.37253540975698, 19.409724525130187, 19.44691364050339, 19.48410275587659, 19.521291871249797, 19.558480986623003, 19.595670101996205, 19.632859217369408, 19.670048332742617, 19.70723744811582, 19.74442656348902, 19.781615678862224, 19.818804794235433, 19.855993909608635, 19.893183024981838, 19.93037214035504, 19.96756125572825, 20.00475037110145, 20.041939486474654, 20.079128601847856, 20.116317717221065, 20.153506832594267, 20.19069594796747, 20.227885063340672, 20.265074178713874, 20.302263294087084, 20.339452409460286, 20.376641524833488, 20.41383064020669, 20.4510197555799, 20.488208870953102, 20.525397986326304, 20.562587101699506, 20.599776217072716, 20.636965332445918, 20.67415444781912, 20.711343563192322, 20.74853267856553, 20.785721793938734, 20.822910909311936, 20.86010002468514, 20.897289140058348, 20.93447825543155, 20.971667370804752, 21.008856486177955, 21.046045601551164, 21.083234716924366, 21.12042383229757, 21.15761294767077, 21.19480206304398, 21.231991178417182, 21.269180293790384, 21.306369409163587, 21.343558524536796, 21.38074763991, 21.4179367552832, 21.455125870656403, 21.492314986029612, 21.529504101402814, 21.566693216776017, 21.60388233214922, 21.641071447522428, 21.67826056289563, 21.715449678268833, 21.752638793642035, 21.789827909015244, 21.827017024388446, 21.86420613976165, 21.90139525513485, 21.93858437050806, 21.975773485881263, 22.012962601254465, 22.050151716627667, 22.087340832000876, 22.12452994737408, 22.16171906274728, 22.198908178120483, 22.236097293493692, 22.273286408866895, 22.310475524240097, 22.3476646396133, 22.38485375498651, 22.42204287035971, 22.459231985732913, 22.496421101106115, 22.533610216479325, 22.570799331852527, 22.60798844722573, 22.64517756259893, 22.682366677972134, 22.719555793345343, 22.756744908718545, 22.793934024091747, 22.83112313946495, 22.86831225483816, 22.90550137021136, 22.942690485584563, 22.979879600957766, 23.017068716330975, 23.054257831704177, 23.09144694707738, 23.128636062450582, 23.16582517782379, 23.203014293196993, 23.240203408570196 ], "type": "scatter" }, { "name": "Mean Steps", "x": [ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529 ], "y": [ 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 5.9844538754035455, 8.3645572592886, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 10.744660643173656, 13.124764027058712, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 15.504867410943767, 17.884970794828824, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 20.265074178713878, 22.64517756259893, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399, 25.02528094648399 ], "type": "scatter" }, { "name": "Rect Steps", "x": [ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529 ], "y": [ 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 3.60435049151849, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 8.3645572592886, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 13.124764027058712, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 17.884970794828824, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893, 22.64517756259893 ], "type": "scatter" }, { "mode": "markers", "name": "Rect Errors", "x": [ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529 ], "y": [ 0.29026109760462776, 0.48698252657264085, 0.2898794890834655, 0.48672099799469626, 0.28929565231451543, 0.29035867045636093, 0.28971774994084865, 0.24261107859602674, 0.2894032901564316, 0.2895642024217035, 0.2894571522479936, 0.23967458740612038, 0.24011871887183414, 0.23782131562458514, 0.2900560310977569, 0.2890270024630548, 0.2876499183385324, 0.2889392233438068, 0.2879421924708353, 0.28749717030734395, 0.2887741832424539, 0.287264344311849, 0.2887115386872916, 0.28585211793707205, 0.28598498792966764, 0.2860451890703729, 0.2859266153281595, 0.28449792501804866, 0.28574055460402603, 0.2846964358423505, 0.28581293479134956, 0.2815785536666688, 0.282135821702387, 0.2810283370952048, 0.28256010472591947, 0.27947033198235033, 0.2814535865387178, 0.27943849866441006, 0.28134456211235687, 0.2743558010068063, 0.27435908485052424, 0.272327284488803, 0.27471294053629547, 0.27443916123053497, 0.27263157021850526, 0.27384003677742436, 0.2725925065662972, 0.2691648002413697, 0.2676998261908365, 0.26841618316135657, 0.2680913407652386, 0.2701664732423598, 0.2711478062852594, 0.2693880430966174, 0.271003549313926, -0.1946740139147788, -0.19475490217292857, -0.1945084333670482, -0.19473762947396026, -0.19514732069143423, -0.1948572621261069, -0.1949373504602145, -0.19478122132361939, -0.1961083319069231, -0.19603274767103068, -0.19598508346121543, -0.1961220231414812, -0.19578491080172475, -0.1962027653551792, -0.19574924713229377, -0.1962704243596572, -0.19797925920368245, -0.19817793701013267, -0.19785861139294483, -0.19792918868146336, -0.19854451734365833, -0.19843054098443294, -0.19834943468893174, -0.1984102119398696, -0.1999844246732422, -0.20022043590002736, -0.20010728598372304, -0.20027581465739572, -0.19849066270445423, -0.19861265468334968, -0.1986540163558257, -0.19854939321029447, -0.20287501793783472, -0.20293003342922272, -0.20297795447339625, -0.2031992331785616, -0.2030831361340673, -0.20346864126614203, -0.2032794944244318, -0.20317815879441287, -0.20501855446892206, -0.20522524261124458, -0.20485012997736432, -0.20539318374868265, -0.20477889843026323, -0.20520563747222156, -0.20481509654837046, -0.20502165656127125, -0.20732886098772027, -0.2072564861702504, -0.20733918076292002, -0.20753101813298508, -0.20861259859084724, -0.20871155710922423, -0.2084738437806035, -0.2083376600606667, -0.20953924945583163, -0.21013335430953245, -0.2095801894185306, -0.20981044086057613, -0.20758602631571946, -0.20851000189787186, -0.20810803837159375, 0.8382448113987656, -0.004426355392655017, -0.004284934778630636, -0.004495261323032713, -0.004627194707045847, -0.0025958980550733583, -0.0028476671020213444, -0.0024282519666438468, -0.003162421158372079, -0.005210532674401825, -0.006099684369038962, -0.005247839016664386, -0.0052469138900671005, -0.0020025240168100884, -0.0018037392750838183, -0.002115839175373786, -0.0019652449497570266, -0.006076213584858564, -0.00601499974313622, -0.005964892159405254, -0.006446644760782508, -0.0038024333877710735, -0.0037193241623907553, -0.0037464948642735568, -0.0044522437965644306, -0.00851410341389969, -0.008721108699964814, -0.008433636399927724, -0.008633692265711021, 3.378186431071861E-4, 2.3633529666722313E-4, 2.2887708478232208E-4, 6.088951422455001E-4, -0.010323129941023374, -0.01040460537506707, -0.010578999751172142, -0.010346373904488315, -0.008306888099712155, -0.008049437337245259, -0.006926487186945286, -0.007841536675527828, -0.011462623236089818, -0.012383672518903531, -0.012098646114340132, -0.0125574191169762, -0.0068637792348636, -0.006750935729333424, -0.00618504960678553, -0.00638412269919656, -0.01403408463600718, -0.013824355859762714, -0.013930317485320264, -0.014408325404300162, -0.012408482264496725, -0.011042070366680657, -0.011650385838729387, -0.011035139988425058, -0.015116410664499893, -0.015575506971917778, -0.015421443594327077, -0.01574082709921756, -0.0034034932640166137, -0.0031594885201837006, -0.003965911011143693, -0.0029218365016025543, -0.063542499797771, -0.06232690233875673, -0.06330317231063855, -0.06382081617587551, -0.06327078583390348, -0.06270555903573513, -0.0627964520929089, -0.06387811256262535, -0.06369574306257093, -0.06485977032451905, -0.06425850871626178, -0.06253757369761329, -0.06283805200194803, -0.06263136091767432, -0.062732040311436, -0.0638233459423841, -0.0651719506696585, -0.06529294911219047, -0.06455604761436479, -0.0666413355399971, -0.0673769597802525, -0.06475807782110048, -0.06535862314128423, -0.0651548875237266, -0.06621320670773209, -0.0663730789052897, -0.0661950282932222, -0.06605238991977348, -0.06311754170669019, -0.06301887586137993, -0.06332256678118632, -0.06342381988923167, -0.06866508469311931, -0.06865231733343435, -0.06836760390781063, -0.06810960356006537, -0.06877508112108496, -0.06931585781977294, -0.06866176679558697, -0.06798326227378755, -0.06798899162235836, -0.06868615353246238, -0.06960074677882777, -0.07081208384299956, -0.06885556950254836, -0.06824912759792713, -0.06894478681313984, -0.06906096608248238, -0.07018008661010473, -0.06983003658817312, -0.07036543947480356, -0.06955901166039292, -0.07126748024149787, -0.07138923608986215, -0.0713465108715239, -0.07240399578150244, -0.07452826270844903, -0.07402820598486418, -0.07267157407308704, -0.07331268667345629, -0.07014204108092133, -0.06999334335168407, -0.07116566722329237, 0.4580269241024556, -0.028963034115159967, -0.028173967156527497, -0.02863359554651428, -0.028378747151223068, -0.026839108958502784, -0.026388302117834456, -0.02665685027598434, -0.0274289399474426, -0.029171964081270745, -0.028632413680964693, -0.028411542079035595, -0.028205516714480836, -0.02571817198176239, -0.025403789158658985, -0.026251112379562545, -0.025397867307372052, -0.029646262347118067, -0.028939581164092825, -0.028836304131223605, -0.02888750854822672, -0.026546461505692974, -0.02709637548878536, -0.027756800222203556, -0.027493154310978866, -0.029453261983634006, -0.02945843639522983, -0.02926272514241591, -0.02911359795897565, -0.02384900650097638, -0.023693221068517265, -0.024538977503605095, -0.02359899619945555, -0.029548794902693142, -0.028910265095117866, -0.0292021751417678, -0.03133892202815331, -0.027355141546923936, -0.027662264802950216, -0.02727439141802138, -0.028434564428250094, -0.030091430169899895, -0.029743593928369175, -0.02959185692786401, -0.029305391493812276, -0.02708126133433138, -0.026876739061710304, -0.02744058280206702, -0.02665215053891001, -0.031078628912555806, -0.03068694203236925, -0.03113206289576328, -0.03116879853765733, -0.029756905167891083, -0.0282567396379396, -0.03013188083776002, -0.028867039764358393, -0.03163293454977019, -0.03125243914339156, -0.031793041982956585, -0.03194181709692431, -0.02466864933445065, -0.024215361368895898, -0.026080806237521587, -0.026479339916972815, -0.03320859960196345, -0.03146667992660272, -0.03333472412550538, -0.03301611402886437, -0.030851628244457814, -0.030165306531544166, -0.03232666646694539, -0.031052518570849317, -0.03432496621640937, -0.03417559857772036, -0.03344793517562766, -0.035837089604712435, -0.030055524886071643, -0.02883359025609597, -0.030562884449815437, -0.02986591225401208, -0.035643141925834836, -0.03536208781278154, -0.03425803299410246, -0.03574879690817196, -0.032785118009788186, -0.03441456745858923, -0.03391783841483743, -0.033501243911401274, -0.03631803111423158, -0.03577227002203038, -0.03670460810064625, -0.03751050893298645, -0.029276624726805298, -0.028989233209280468, -0.029172881001419383, -0.031171888133227556, -0.03848354759848826, -0.03878129129723879, -0.03854362463028077, -0.038246142643655265, -0.036425913050019985, -0.03670144918108052, -0.03646020431143766, -0.036450469700150805, -0.03907083566784183, -0.039612320603838035, -0.039306842021614545, -0.03923977846545889, -0.035566283093829365, -0.03609426897151113, -0.03576663351632904, -0.03652471896708667, -0.040554529259534254, -0.040409128373446936, -0.04113706463048094, -0.04044748209434996, -0.03890605158393419, -0.03955407705131766, -0.038902642225683404, -0.039468381174308224, -0.042151579331581895, -0.041852517185214634, -0.0437863297271122, -0.04239644966930079, -0.03281852450483194, -0.032909624432699125, -0.032878732986555435, 0.31785358470927066, -0.0020750353506238206, -0.0014680575776242523, -0.0018170409103998037, -0.001364755561454489, -3.748118550835863E-4, -8.125452809947335E-4, -6.158419615552906E-4, -9.873046218317025E-4, -0.002730950499381241, -0.0016593555108491223, -0.0022000308207480684, -0.001361905254323156, 3.794459696889402E-4, 2.4981168708319737E-4, 1.2823886070729388E-4, -7.3142983272769535E-6, -0.0029057258747818724, -0.0021067492747203964, -0.0026471132761029773, -0.002247746441734744, -0.002645156069069141, -0.001420418372675259, -0.0017198902776682868, -0.0015236344494683383, -0.003402960111963444, -0.0032193436140216694, -0.0036823792819101198, -0.002973594098038434, 0.0016983181323175331, 0.0012617932606268096, 7.890049087249044E-4, 7.394786757122983E-4, -0.004517066904579108, -0.003672154641088689, -0.004548439782893888, -0.0036957970286021066, -0.0029196646261683383, -0.003239938398379089, -0.002903690162452169, -0.0032033740675181345, -0.004538806607774267, -0.00468179497302957, -0.0044347813336024925, -0.004313014133509856, -0.001528179634501138, -0.0020752982034860906, -0.0022894321349437785, -0.0025541931609471707, -0.00455751738857751, -0.00493947742040715, -0.005409540987843831, -0.006927353182245064, -0.0042113733059737654, -0.004979319383086506, -0.004836644258349691, -0.004058859927509891, -0.006815761086671809, -0.006420636640100899, -0.006041252879820595, -0.006533838494584304, -5.308445351475256E-4, 1.0430660838434452E-4, -7.01525142471854E-4, -2.7002576850042293E-4, -0.007062146905462753, -0.007684506506221951, -0.006550437858048231, -0.00676388595993822, -0.006457890284962451, -0.006018773874850804, -0.005170094901718194, -0.005720763550079832, -0.007605730890192356, -0.008149558595128822, -0.007077179317229574, -0.008560484036645628, -0.006647276018781521, -0.004928331807839274, -0.00507579165929811, -0.005165616912924901, -0.009583087506447813, -0.008475100109792057, -0.007934500835893692, -0.0084200093148155, -0.007225143470235118, -0.007634826145463454, -0.007915106904868524, -0.008248092503619662, -0.009875898320733996, -0.00938019274159697, -0.008780079500152553, -0.010955240734551477, -0.004045477620683019, -0.006233373709081385, -0.003672218457228971, -0.004002686851345496, -0.010640190882331932, -0.00958089589817565, -0.009854618362565813, -0.012352741168901343, -0.008962726476295797, -0.00987926812315597, -0.008319628552318497, -0.00872164549451305, -0.012114019813153886, -0.010825442565574793, -0.010593159637682384, -0.011829323146878547, -0.00833089933624673, -0.008259858352074304, -0.010992064845859779, -0.008193048865263002, -0.012575906409275178, -0.013985179177047865, -0.014561389338781618, -0.01113530333368722, -0.011679212650946458, -0.011264410302897144, -0.012530371522689838, -0.012436333066127347, -0.011398272865592718, -0.014340441776309438, -0.0129503102961702, -0.012158525799223292, -0.005897973311688909, -0.005999791722633511, -0.009083956015782838, 0.2564672002627641, -0.002699376258029833, -2.888141692579384E-4, -4.234997897558221E-4, -4.4585624792680453E-4, 0.0014674705880163648, -2.91069715426457E-4, 9.121167822875024E-4, -0.001310499465013079, -0.0030560775623926974, -0.003152075214262363, -0.001215931065529138, -0.0028851277666570507, 0.0033238172014696376, 0.0032647111666783708, 0.0016379996764217428, 0.0023449324141133323, -0.002909921562045045 ], "type": "scatter" } ], "layout": { "template": { "data": { "histogram2dcontour": [ { "type": "histogram2dcontour", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "choropleth": [ { "type": "choropleth", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "histogram2d": [ { "type": "histogram2d", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "heatmap": [ { "type": "heatmap", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "contourcarpet": [ { "type": "contourcarpet", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "contour": [ { "type": "contour", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "surface": [ { "type": "surface", "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] } ], "mesh3d": [ { "type": "mesh3d", "colorbar": { "outlinewidth": 0, "ticks": "" } } ], "scatter": [ { "marker": { "line": { "color": "#283442" } }, "type": "scatter" } ], "parcoords": [ { "type": "parcoords", "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterpolargl": [ { "type": "scatterpolargl", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "bar": [ { "error_x": { "color": "#f2f5fa" }, "error_y": { "color": "#f2f5fa" }, "marker": { "line": { "color": "rgb(17,17,17)", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "scattergeo": [ { "type": "scattergeo", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterpolar": [ { "type": "scatterpolar", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "scattergl": [ { "marker": { "line": { "color": "#283442" } }, "type": "scattergl" } ], "scatter3d": [ { "type": "scatter3d", "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattermap": [ { "type": "scattermap", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattermapbox": [ { "type": "scattermapbox", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scatterternary": [ { "type": "scatterternary", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "scattercarpet": [ { "type": "scattercarpet", "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } } } ], "carpet": [ { "aaxis": { "endlinecolor": "#A2B1C6", "gridcolor": "#506784", "linecolor": "#506784", "minorgridcolor": "#506784", "startlinecolor": "#A2B1C6" }, "baxis": { "endlinecolor": "#A2B1C6", "gridcolor": "#506784", "linecolor": "#506784", "minorgridcolor": "#506784", "startlinecolor": "#A2B1C6" }, "type": "carpet" } ], "table": [ { "cells": { "fill": { "color": "#506784" }, "line": { "color": "rgb(17,17,17)" } }, "header": { "fill": { "color": "#2a3f5f" }, "line": { "color": "rgb(17,17,17)" } }, "type": "table" } ], "barpolar": [ { "marker": { "line": { "color": "rgb(17,17,17)", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "pie": [ { "automargin": true, "type": "pie" } ] }, "layout": { "autotypenumbers": "strict", "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#f2f5fa" }, "hovermode": "closest", "hoverlabel": { "align": "left" }, "paper_bgcolor": "rgb(17,17,17)", "plot_bgcolor": "rgb(17,17,17)", "polar": { "bgcolor": "rgb(17,17,17)", "angularaxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" }, "radialaxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" } }, "ternary": { "bgcolor": "rgb(17,17,17)", "aaxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" }, "baxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" }, "caxis": { "gridcolor": "#506784", "linecolor": "#506784", "ticks": "" } }, "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "sequential": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "sequentialminus": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ] }, "xaxis": { "gridcolor": "#283442", "linecolor": "#506784", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "#283442", "automargin": true, "zerolinewidth": 2 }, "yaxis": { "gridcolor": "#283442", "linecolor": "#506784", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "#283442", "automargin": true, "zerolinewidth": 2 }, "scene": { "xaxis": { "backgroundcolor": "rgb(17,17,17)", "gridcolor": "#506784", "linecolor": "#506784", "showbackground": true, "ticks": "", "zerolinecolor": "#C8D4E3", "gridwidth": 2 }, "yaxis": { "backgroundcolor": "rgb(17,17,17)", "gridcolor": "#506784", "linecolor": "#506784", "showbackground": true, "ticks": "", "zerolinecolor": "#C8D4E3", "gridwidth": 2 }, "zaxis": { "backgroundcolor": "rgb(17,17,17)", "gridcolor": "#506784", "linecolor": "#506784", "showbackground": true, "ticks": "", "zerolinecolor": "#C8D4E3", "gridwidth": 2 } }, "shapedefaults": { "line": { "color": "#f2f5fa" } }, "annotationdefaults": { "arrowcolor": "#f2f5fa", "arrowhead": 0, "arrowwidth": 1 }, "geo": { "bgcolor": "rgb(17,17,17)", "landcolor": "rgb(17,17,17)", "subunitcolor": "#506784", "showland": true, "showlakes": true, "lakecolor": "rgb(17,17,17)" }, "title": { "x": 0.05 }, "updatemenudefaults": { "bgcolor": "#506784", "borderwidth": 0 }, "sliderdefaults": { "bgcolor": "#C8D4E3", "borderwidth": 1, "bordercolor": "rgb(17,17,17)", "tickwidth": 0 }, "mapbox": { "style": "dark" } } }, "autosize": false, "width": 2000, "height": 1000 }, "config": { "plotlyServerURL": "https://plot.ly" } } }, "metadata": {}, "output_type": "display_data", "jetTransient": { "display_id": null } } ], "execution_count": 15 }, { "cell_type": "code", "id": "069bce83-c4d8-4f36-8c27-d00269919c34", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:09.774182Z", "start_time": "2025-11-20T13:26:09.770285Z" } }, "source": [ "\n", "df = pd.read_csv('./lut_channel_filter_sweep.csv', usecols=[\"channels\", \"filters\", \"ms\"])\n", "split_df = df.groupby('channels')" ], "outputs": [], "execution_count": 9 }, { "cell_type": "code", "id": "f48c666a-e44c-4381-871d-2443abde826f", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:09.933731Z", "start_time": "2025-11-20T13:26:09.821346Z" } }, "source": [ "fig = make_subplots(specs=[[{\"secondary_y\": True}]])\n", "split_df = df.groupby('filters')\n", "first = True\n", "\n", "deltas = calculate_deltas(list(split_df.get_group(100)['ms']))\n", "all_errs = []\n", "all_rect_errs = []\n", "\n", "color_tuples = [\n", " (\"#000088\", \"#0000DD\", \"#880000\"), # Blue (max brightness), Green (max brightness)\n", " (\"#0000CC\", \"#00CC00\", \"#550000\"),\n", " (\"#0000BB\", \"#00BB00\", \"#330000\"),\n", " (\"#0000AA\", \"#00AA00\", \"#880000\"),\n", " (\"#000033\", \"#000099\", \"#330000\"),\n", " (\"#000033\", \"#000099\", \"#330000\"),\n", " (\"#000033\", \"#000099\", \"#330000\"),\n", " (\"#000066\", \"#006600\", \"#880000\"),\n", " (\"#000055\", \"#005500\", \"#880000\"),\n", " (\"#000044\", \"#004400\", \"#880000\") # Blue (min brightness), Green (min brightness)\n", "]\n", "for (idx, (category, category_df)) in list(enumerate(split_df))[::5]:\n", " # print(category_df)\n", " # if not first:\n", " # continue\n", " upper_right = 195\n", " upper_left = 129\n", " lower_right = 192\n", " lower_left = 126\n", "\n", " upper_right_meas = category_df.loc[category_df[\"channels\"] == upper_right][\"ms\"].values[0]\n", " upper_left_meas = category_df.loc[category_df[\"channels\"] == upper_left][\"ms\"].values[0]\n", "\n", " lower_right_meas = category_df.loc[category_df[\"channels\"] == lower_right][\"ms\"].values[0]\n", " lower_left_meas = category_df.loc[category_df[\"channels\"] == lower_left][\"ms\"].values[0]\n", " upper_m, upper_b = lin_interpol( upper_sampled_filters[0], upper_sampled_filters[1], upper_sampled_filter_meas[0], upper_sampled_filter_meas[1])\n", " r_c = list(category_df[\"channels\"])\n", " r_v_rect = [calc_rect(c, upper_m, upper_b, lower_m, lower_b) for c in r_c] \n", " err_rect = [np.abs((approx - meas) / meas) for approx, meas in zip(r_v_rect, filter_meas)]\n", "\n", "\n", " upper_m, upper_b = lin_interpol(upper_left - 3, upper_right - 3, upper_left_meas, upper_right_meas)\n", " lower_m, lower_b = lin_interpol(lower_left, lower_right, lower_left_meas, lower_right_meas)\n", " start = list(category_df['channels'])[0]\n", " end = list(category_df['channels'])[-1]\n", " # r_c = list(range(start, end))\n", "\n", " r_v_upper = [calc_upper(c, upper_m, upper_b) for c in r_c]\n", " r_v_lower = [calc_lower(c, lower_m, lower_b) for c in r_c]\n", " r_v_rect = [calc_rect(c, upper_m, upper_b, lower_m, lower_b) for c in r_c]\n", " lv = list(category_df['ms'])[0]\n", " delta_approx = [lv]\n", " for delta in deltas:\n", " lv = delta * lv\n", " delta_approx.append(lv)\n", " \n", " errs = compute_absolute_percentage_errors(list(category_df['ms']), delta_approx) # [np.abs(1 - (g / m)) * 100 for g, m in zip(delta_approx, list(category_df['ms']))]\n", " rect_errs = compute_absolute_percentage_errors(list(category_df['ms']), r_v_rect)\n", "\n", " all_errs.append(np.mean(errs))\n", " all_rect_errs.append(np.mean(rect_errs))\n", " print(f\"{np.mean(errs)=}\")\n", " print(f\"{np.mean(rect_errs)=}\")\n", " fig.add_trace(go.Scatter(\n", " # x=category_df['channels'],\n", " x=category_df['channels'],\n", " y=category_df['ms'],\n", " # mode='markers',\n", " marker=dict(\n", " size=7,\n", " color=color_tuples[idx][0]\n", " ),\n", " name=f\"#Filters:{category} Latency\",\n", " mode='markers',\n", " \n", " ), \n", " secondary_y=False\n", " )\n", " # fig.add_trace(\n", " # go.Scatter(\n", " # x=list(category_df['channels']),\n", " # y=delta_approx,\n", " # name=f\"Delta Latency approximation\",\n", " # mode='lines',\n", " # line=dict(\n", " # width=.5,\n", " # color=color_tuples[idx][1]\n", " # ),\n", " \n", " # ), \n", " # secondary_y=False\n", " # )\n", " fig.add_trace(\n", " go.Scatter(\n", " x=list(category_df['channels']),\n", " y=r_v_rect,\n", " name=f\"Approximation\",\n", " mode='lines',\n", " line=dict(\n", " dash=\"dot\",\n", " width=.5,\n", " color=color_tuples[idx][1]\n", " ),\n", " \n", " ), \n", " secondary_y=False\n", " )\n", " # fig.add_trace(\n", " # go.Scatter(\n", " # x=list(category_df['channels']),\n", " # y=errs,\n", " # name=f\"Delta Latency Approximation Error\",\n", " # mode='lines',\n", " # line=dict(\n", " # width=.5,\n", " # color=color_tuples[idx][2]\n", " # ),\n", " \n", " # ),\n", " # secondary_y=True\n", " # )\n", " fig.add_trace(\n", " go.Scatter(\n", " x=list(category_df['channels']),\n", " y=rect_errs,\n", " name=f\"Error\",\n", " mode='lines',\n", " line=dict(\n", " width=.5,\n", " color=color_tuples[idx][2]\n", " ),\n", " \n", " ),\n", " secondary_y=True\n", " )\n", "\n", " first = False\n", "\n", "print()\n", "print(f\"{np.mean(all_errs)=}\")\n", "print(f\"{np.mean(all_rect_errs)=}\")\n", "fig.update_layout(\n", " scene=dict(\n", " xaxis_title='channels',\n", " yaxis_title='filters',\n", " zaxis_title='ms'\n", " ),\n", " width=PLOT_WIDTH,\n", " height=PLOT_HEIGHT,\n", " template='plotly_white',\n", ")\n", "fig.update_xaxes(title_text=\"#Channels\")\n", "\n", "fig.update_yaxes(title_text=f\"\"\"Layer Execution Time (ms)\"\"\", secondary_y=False, range=[-5, 50])\n", "fig.update_yaxes(title_text=f\"\"\"Absolute Approximation Error (%)\"\"\", secondary_y=True, range=[-4, 40],)\n", "fig.update_layout(\n", " title_text=\"Approximation using a modified stepfunction\",\n", " autosize=False,\n", " width=PLOT_WIDTH / 2,\n", " height=PLOT_HEIGHT / 3 * 2,\n", " legend_x=0, \n", " legend_y=1,\n", " font=dict(\n", " size=14,\n", " )\n", ")\n", "fig.write_image(\"images/step_approx.svg\", width=PLOT_WIDTH /2, height=PLOT_HEIGHT / 3 * 2, scale=2)\n", "\n", "fig.show()" ], "outputs": [ { "ename": "TypeError", "evalue": "calc_rect() missing 2 required positional arguments: 'step_period' and 'rect_period'", "output_type": "error", "traceback": [ "\u001B[31m---------------------------------------------------------------------------\u001B[39m", "\u001B[31mTypeError\u001B[39m Traceback (most recent call last)", "\u001B[36mCell\u001B[39m\u001B[36m \u001B[39m\u001B[32mIn[10]\u001B[39m\u001B[32m, line 37\u001B[39m\n\u001B[32m 35\u001B[39m upper_m, upper_b = lin_interpol( upper_sampled_filters[\u001B[32m0\u001B[39m], upper_sampled_filters[\u001B[32m1\u001B[39m], upper_sampled_filter_meas[\u001B[32m0\u001B[39m], upper_sampled_filter_meas[\u001B[32m1\u001B[39m])\n\u001B[32m 36\u001B[39m r_c = \u001B[38;5;28mlist\u001B[39m(category_df[\u001B[33m\"\u001B[39m\u001B[33mchannels\u001B[39m\u001B[33m\"\u001B[39m])\n\u001B[32m---> \u001B[39m\u001B[32m37\u001B[39m r_v_rect = [\u001B[43mcalc_rect\u001B[49m\u001B[43m(\u001B[49m\u001B[43mc\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mupper_m\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mupper_b\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mlower_m\u001B[49m\u001B[43m,\u001B[49m\u001B[43m \u001B[49m\u001B[43mlower_b\u001B[49m\u001B[43m)\u001B[49m \u001B[38;5;28;01mfor\u001B[39;00m c \u001B[38;5;129;01min\u001B[39;00m r_c] \n\u001B[32m 38\u001B[39m err_rect = [np.abs((approx - meas) / meas) \u001B[38;5;28;01mfor\u001B[39;00m approx, meas \u001B[38;5;129;01min\u001B[39;00m \u001B[38;5;28mzip\u001B[39m(r_v_rect, filter_meas)]\n\u001B[32m 41\u001B[39m upper_m, upper_b = lin_interpol(upper_left - \u001B[32m3\u001B[39m, upper_right - \u001B[32m3\u001B[39m, upper_left_meas, upper_right_meas)\n", "\u001B[31mTypeError\u001B[39m: calc_rect() missing 2 required positional arguments: 'step_period' and 'rect_period'" ] } ], "execution_count": 10 }, { "cell_type": "code", "id": "8c92e57c-3d5a-41f3-8225-d5ad2c50e650", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:09.944595098Z", "start_time": "2025-11-20T07:43:24.882926Z" } }, "source": [ "fig = make_subplots(specs=[[{\"secondary_y\": True}]])\n", "split_df = df.groupby('filters')\n", "first = True\n", "\n", "deltas = calculate_deltas(list(split_df.get_group(100)['ms']))\n", "all_errs = []\n", "all_rect_errs = []\n", "\n", "color_tuples = [\n", " (\"#000088\", \"#0000DD\", \"#880000\"), # Blue (max brightness), Green (max brightness)\n", " (\"#0000CC\", \"#00CC00\", \"#550000\"),\n", " (\"#0000BB\", \"#00BB00\", \"#330000\"),\n", " (\"#0000AA\", \"#00AA00\", \"#880000\"),\n", " (\"#000033\", \"#000099\", \"#330000\"),\n", " (\"#000033\", \"#000099\", \"#330000\"),\n", " (\"#000033\", \"#000099\", \"#330000\"),\n", " (\"#000066\", \"#006600\", \"#880000\"),\n", " (\"#000055\", \"#005500\", \"#880000\"),\n", " (\"#000044\", \"#004400\", \"#880000\") # Blue (min brightness), Green (min brightness)\n", "]\n", "for (idx, (category, category_df)) in list(enumerate(split_df))[::5]:\n", " # print(category_df)\n", " # if not first:\n", " # continue\n", " upper_right = 195\n", " upper_left = 129\n", " lower_right = 192\n", " lower_left = 126\n", "\n", " upper_right_meas = category_df.loc[category_df[\"channels\"] == upper_right][\"ms\"].values[0]\n", " upper_left_meas = category_df.loc[category_df[\"channels\"] == upper_left][\"ms\"].values[0]\n", "\n", " lower_right_meas = category_df.loc[category_df[\"channels\"] == lower_right][\"ms\"].values[0]\n", " lower_left_meas = category_df.loc[category_df[\"channels\"] == lower_left][\"ms\"].values[0]\n", " upper_m, upper_b = lin_interpol( upper_sampled_filters[0], upper_sampled_filters[1], upper_sampled_filter_meas[0], upper_sampled_filter_meas[1])\n", " r_c = list(category_df[\"channels\"])\n", " r_v_rect = [calc_rect(c, upper_m, upper_b, lower_m, lower_b) for c in r_c] \n", " err_rect = [np.abs((approx - meas) / meas) for approx, meas in zip(r_v_rect, filter_meas)]\n", "\n", "\n", " upper_m, upper_b = lin_interpol(upper_left - 3, upper_right - 3, upper_left_meas, upper_right_meas)\n", " lower_m, lower_b = lin_interpol(lower_left, lower_right, lower_left_meas, lower_right_meas)\n", " start = list(category_df['channels'])[0]\n", " end = list(category_df['channels'])[-1]\n", " # r_c = list(range(start, end))\n", "\n", " r_v_upper = [calc_upper(c, upper_m, upper_b) for c in r_c]\n", " r_v_lower = [calc_lower(c, lower_m, lower_b) for c in r_c]\n", " r_v_rect = [calc_rect(c, upper_m, upper_b, lower_m, lower_b) for c in r_c]\n", " lv = list(category_df['ms'])[0]\n", " delta_approx = [lv]\n", " for delta in deltas:\n", " lv = delta * lv\n", " delta_approx.append(lv)\n", " \n", " errs = compute_absolute_percentage_errors(list(category_df['ms']), delta_approx) # [np.abs(1 - (g / m)) * 100 for g, m in zip(delta_approx, list(category_df['ms']))]\n", " rect_errs = compute_absolute_percentage_errors(list(category_df['ms']), r_v_rect)\n", "\n", " all_errs.append(np.mean(errs))\n", " all_rect_errs.append(np.mean(rect_errs))\n", " print(f\"{np.mean(errs)=}\")\n", " print(f\"{np.mean(rect_errs)=}\")\n", " fig.add_trace(go.Scatter(\n", " # x=category_df['channels'],\n", " x=category_df['channels'],\n", " y=category_df['ms'],\n", " # mode='markers',\n", " marker=dict(\n", " size=7,\n", " color=color_tuples[idx][0]\n", " ),\n", " name=f\"#Filters:{category} Latency\",\n", " mode='markers',\n", " \n", " ), \n", " secondary_y=False\n", " )\n", " fig.add_trace(\n", " go.Scatter(\n", " x=list(category_df['channels']),\n", " y=delta_approx,\n", " name=f\"Approximation\",\n", " mode='lines',\n", " line=dict(\n", " dash=\"dot\",\n", " width=.5,\n", " color=color_tuples[idx][1]\n", " ),\n", " \n", " ), \n", " secondary_y=False\n", " )\n", " # fig.add_trace(\n", " # go.Scatter(\n", " # x=list(category_df['channels']),\n", " # y=r_v_rect,\n", " # name=f\"Stepwise Latency approximation\",\n", " # mode='lines',\n", " # line=dict(\n", " # width=.5,\n", " # color=color_tuples[idx][1]\n", " # ),\n", " \n", " # ), \n", " # secondary_y=False\n", " # )\n", " fig.add_trace(\n", " go.Scatter(\n", " x=list(category_df['channels']),\n", " y=errs,\n", " name=f\"Error\",\n", " mode='lines',\n", " line=dict(\n", " width=.5,\n", " color=color_tuples[idx][2]\n", " ),\n", " \n", " ),\n", " secondary_y=True\n", " )\n", " # fig.add_trace(\n", " # go.Scatter(\n", " # x=list(category_df['channels']),\n", " # y=rect_errs,\n", " # name=f\"Stepwise Latency Approximation Error\",\n", " # mode='lines',\n", " # line=dict(\n", " # width=.5,\n", " # color=color_tuples[idx][2]\n", " # ),\n", " \n", " # ),\n", " # secondary_y=True\n", " # )\n", "\n", " first = False\n", "\n", "print()\n", "print(f\"{np.mean(all_errs)=}\")\n", "print(f\"{np.mean(all_rect_errs)=}\")\n", "fig.update_layout(\n", " scene=dict(\n", " xaxis_title='channels',\n", " yaxis_title='filters',\n", " zaxis_title='ms'\n", " ),\n", " width=PLOT_WIDTH,\n", " height=PLOT_HEIGHT,\n", " template='plotly_white',\n", " plot_bgcolor= \"rgba(0, 0, 0, 0)\",\n", ")\n", "fig.update_xaxes(title_text=\"#Channels\")\n", "\n", "fig.update_yaxes(title_text=f\"\"\"Layer Execution Time (ms)\"\"\", secondary_y=False, range=[-5, 50])\n", "fig.update_yaxes(title_text=f\"\"\"Absolute Approximation Error (%)\"\"\", secondary_y=True, range=[-4, 40],)\n", "fig.update_layout(\n", " title_text=\"Approximation using the point to point differences of reference sweep\",\n", " autosize=False,\n", " width=PLOT_WIDTH / 2,\n", " height=PLOT_HEIGHT / 3 * 2,\n", " legend_x=0, \n", " legend_y=1,\n", " font=dict(\n", " size=14,\n", " ),\n", " plot_bgcolor= \"rgba(0, 0, 0, 0)\",\n", "\n", ")\n", "fig.write_image(\"images/delta_approx.svg\", width=PLOT_WIDTH /2, height=PLOT_HEIGHT / 3 * 2, scale=2)\n", "\n", "fig.show()" ], "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "np.mean(errs)=np.float64(2.768728199793735e-14)\n", "np.mean(rect_errs)=np.float64(0.5195734160479627)\n", "np.mean(errs)=np.float64(2.048453928944935)\n", "np.mean(rect_errs)=np.float64(2.53793726954352)\n", "\n", "np.mean(all_errs)=np.float64(1.0242269644724813)\n", "np.mean(all_rect_errs)=np.float64(1.5287553427957412)\n" ] }, { "data": { "application/vnd.plotly.v1+json": { "data": [ { "marker": { "color": "#000088", "size": 7 }, "mode": "markers", "name": "#Filters:100 Latency", "x": { "dtype": "i2", "bdata": "eAB7AH4AgQCEAIcAigCNAJAAkwCWAJkAnACfAKIApQCoAKsArgCxALQAtwC6AL0AwADDAMYAyQDMAM8A0gDVANgA2wA=" }, "y": { "dtype": "f8", "bdata": "L7roArdlJ0BeTsHrioQpQLlkCHaqKSdAEhER0Q0WL0CrqqpKQRMvQM3MzLSb2SxAxU7sxOM5L0DNzMwM6dwsQGdmZo5m2yxAnnWDyVJXL0DOzMwcE+wsQDMzMwNFoi9AZmZmhmWiL0BlZmaWcq0sQImIiJh9ljJAMzMzGz8vMUCamZmBpC0xQAAAADCEqDJAAAAAKO8tMUAzMzMb8LkyQM7MzEwBujJAAAAAAAc3MUCZmZlhudsyQJqZmUkfGjFAmpmZsbIYMUAAAABYmKM1QFZVVcth7zNAAQAAUPaxNUDOzMycrbI1QDE1sP9k7TNAAQAAKNLCNUABAADISfczQGVmZt6f9zNAZmZmNtblNUA=" }, "type": "scatter", "xaxis": "x", "yaxis": "y" }, { "line": { "color": "#0000DD", "dash": "dot", "width": 0.5 }, "mode": "lines", "name": "Approximation", "x": [ 120, 123, 126, 129, 132, 135, 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171, 174, 177, 180, 183, 186, 189, 192, 195, 198, 201, 204, 207, 210, 213, 216, 219 ], "y": [ 11.698661890896885, 12.758872382494868, 11.58137863972148, 15.543074162801107, 15.537607510884602, 14.42501606941223, 15.613065866323616, 14.431465530395506, 14.428516817092895, 15.670553490922254, 14.461083316802979, 15.816932773590084, 15.817180824279781, 14.338764858245844, 18.587853940327957, 17.184556674957268, 17.178291416168207, 18.658267021179192, 17.17943048477172, 18.72631998062133, 18.72658233642578, 17.21495056152343, 18.858297443389883, 17.102039909362787, 17.09647665023803, 21.63904333114623, 19.935085972150162, 21.695164680480953, 21.69796161651611, 19.92732236911723, 21.761019229888912, 19.965969562530514, 19.967283153533923, 21.89779987335204 ], "type": "scatter", "xaxis": "x", "yaxis": "y" }, { "line": { "color": "#880000", "width": 0.5 }, "mode": "lines", "name": "Error", "x": [ 120, 123, 126, 129, 132, 135, 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171, 174, 177, 180, 183, 186, 189, 192, 195, 198, 201, 204, 207, 210, 213, 216, 219 ], "y": [ 0.0, 0.0, 0.0, 1.1428606855981976E-14, 1.1432627823529809E-14, 1.2314418443990203E-14, 1.1377373634423322E-14, 1.2308915097076544E-14, 1.2311430633645381E-14, 1.133563559467935E-14, 1.2283705172600879E-14, 2.2461457791187886E-14, 2.246110554256921E-14, 2.4776985423241868E-14, 3.822618458489799E-14, 4.134774898182626E-14, 4.1362829314406505E-14, 3.808192555897906E-14, 4.136008678459643E-14, 3.794353276540159E-14, 3.7943001183830355E-14, 4.127474739010931E-14, 3.767798964318255E-14, 4.1547250475722594E-14, 4.156077011050152E-14, 4.925421550896691E-14, 3.5642822747428665E-14, 3.275120268616224E-14, 3.2746980952314305E-14, 3.565670904492808E-14, 3.265208896025258E-14, 3.5587690021002155E-14, 3.558534880767412E-14, 4.867220039476042E-14 ], "type": "scatter", "xaxis": "x", "yaxis": "y2" }, { "marker": { "color": "#000033", "size": 7 }, "mode": "markers", "name": "#Filters:180 Latency", "x": { "dtype": "i2", "bdata": "eAB7AH4AgQCEAIcAigCNAJAAkwCWAJkAnACfAKIApQCoAKsArgCxALQAtwC6AL0AwADDAMYAyQDMAM8A0gDVANgA2wA=" }, "y": { "dtype": "f8", "bdata": "MzMzU7PnNkA0MzPTnyk5QJqZmYlnKTVAZmZmPnfMPkCbmZnZl8w+QJqZmXEVHzxAAAAA8ObvPkAzMzPziy07QAAAADiOMztAmZmZaQkDP0BwPgZnvzM8QDMzMwtAMj9Aep7nSaAwP0AvW7bMHiU6QAAAAMSsZUJAw/Uo/Eu1QECamZlRFrVAQGZmZtYHfEJACtejEGkhQEDtxE6cyYZCQDMzM3sQh0JAmpmZMffAQECamZmZHJ1CQJqZmXnZGz9AAQAAKJIZP0CamZmhtHBFQDIzM1NxWUNAZmZmfguBRUAzMzO3AoFFQAAAAGCqokJASZIkqR6MRUBz0UWXrGBDQGZmZoYhYkNAjC66aO2jRUA=" }, "type": "scatter", "xaxis": "x", "yaxis": "y" }, { "line": { "color": "#000099", "dash": "dot", "width": 0.5 }, "mode": "lines", "name": "Approximation", "x": [ 120, 123, 126, 129, 132, 135, 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171, 174, 177, 180, 183, 186, 189, 192, 195, 198, 201, 204, 207, 210, 213, 216, 219 ], "y": [ 22.905080032348632, 24.980890615444793, 22.67544844886667, 30.432143519312824, 30.42144023539674, 28.24307178198749, 30.569181890515857, 28.255699330451165, 28.2499259766421, 30.68173823709478, 28.31368867781166, 30.968337611950925, 30.968823276119405, 28.07419854562271, 36.39358809609788, 33.64604000279818, 33.633773108060545, 36.53145149169501, 33.63600331676041, 36.66469395113162, 36.66520762361433, 33.70554889456587, 36.92309567052248, 33.48447852358125, 33.473586090183176, 42.36758220263136, 39.03136477507374, 42.47746348734782, 42.48293967294307, 39.016164237570635, 42.60640162905591, 39.09183246923786, 39.09440437937113, 42.874207606749565 ], "type": "scatter", "xaxis": "x", "yaxis": "y" }, { "line": { "color": "#330000", "width": 0.5 }, "mode": "lines", "name": "Error", "x": [ 120, 123, 126, 129, 132, 135, 138, 141, 144, 147, 150, 153, 156, 159, 162, 165, 168, 171, 174, 177, 180, 183, 186, 189, 192, 195, 198, 201, 204, 207, 210, 213, 216, 219 ], "y": [ 0.0, 0.722120952224905, 7.153063124638968, 1.1901510816772016, 1.2264990949908325, 0.43259132076344214, 1.1893017672776702, 3.9656557348515133, 3.854719136072214, 1.0645092264466456, 0.39553509435943446, 0.7307026575707117, 0.7089545346931729, 7.3788381734827855, 1.0891535166357365, 0.6872635969325888, 0.6554875787546273, 1.1835262459441975, 4.26206157557546, 1.048048539772159, 1.0524378347445407, 0.5909270504531752, 0.8175143673933011, 7.6367212793652355, 7.632502707363736, 1.1961849255187722, 0.8594429816728515, 1.2339512637171601, 1.2206030934235022, 4.682858057954855, 1.1330493629578826, 0.8684378621231099, 0.8454594183736385, 0.939160426401775 ], "type": "scatter", "xaxis": "x", "yaxis": "y2" } ], "layout": { "template": { "data": { "barpolar": [ { "marker": { "line": { "color": "white", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "barpolar" } ], "bar": [ { "error_x": { "color": "#2a3f5f" }, "error_y": { "color": "#2a3f5f" }, "marker": { "line": { "color": "white", "width": 0.5 }, "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "bar" } ], "carpet": [ { "aaxis": { "endlinecolor": "#2a3f5f", "gridcolor": "#C8D4E3", "linecolor": "#C8D4E3", "minorgridcolor": "#C8D4E3", "startlinecolor": "#2a3f5f" }, "baxis": { "endlinecolor": "#2a3f5f", "gridcolor": "#C8D4E3", "linecolor": "#C8D4E3", "minorgridcolor": "#C8D4E3", "startlinecolor": "#2a3f5f" }, "type": "carpet" } ], "choropleth": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "choropleth" } ], "contourcarpet": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "contourcarpet" } ], "contour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "type": "contour" } ], "heatmap": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "type": "heatmap" } ], "histogram2dcontour": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "type": "histogram2dcontour" } ], "histogram2d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "type": "histogram2d" } ], "histogram": [ { "marker": { "pattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 } }, "type": "histogram" } ], "mesh3d": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "type": "mesh3d" } ], "parcoords": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "parcoords" } ], "pie": [ { "automargin": true, "type": "pie" } ], "scatter3d": [ { "line": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatter3d" } ], "scattercarpet": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattercarpet" } ], "scattergeo": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergeo" } ], "scattergl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattergl" } ], "scattermapbox": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermapbox" } ], "scattermap": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scattermap" } ], "scatterpolargl": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolargl" } ], "scatterpolar": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterpolar" } ], "scatter": [ { "fillpattern": { "fillmode": "overlay", "size": 10, "solidity": 0.2 }, "type": "scatter" } ], "scatterternary": [ { "marker": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "type": "scatterternary" } ], "surface": [ { "colorbar": { "outlinewidth": 0, "ticks": "" }, "colorscale": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "type": "surface" } ], "table": [ { "cells": { "fill": { "color": "#EBF0F8" }, "line": { "color": "white" } }, "header": { "fill": { "color": "#C8D4E3" }, "line": { "color": "white" } }, "type": "table" } ] }, "layout": { "annotationdefaults": { "arrowcolor": "#2a3f5f", "arrowhead": 0, "arrowwidth": 1 }, "autotypenumbers": "strict", "coloraxis": { "colorbar": { "outlinewidth": 0, "ticks": "" } }, "colorscale": { "diverging": [ [ 0, "#8e0152" ], [ 0.1, "#c51b7d" ], [ 0.2, "#de77ae" ], [ 0.3, "#f1b6da" ], [ 0.4, "#fde0ef" ], [ 0.5, "#f7f7f7" ], [ 0.6, "#e6f5d0" ], [ 0.7, "#b8e186" ], [ 0.8, "#7fbc41" ], [ 0.9, "#4d9221" ], [ 1, "#276419" ] ], "sequential": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ], "sequentialminus": [ [ 0.0, "#0d0887" ], [ 0.1111111111111111, "#46039f" ], [ 0.2222222222222222, "#7201a8" ], [ 0.3333333333333333, "#9c179e" ], [ 0.4444444444444444, "#bd3786" ], [ 0.5555555555555556, "#d8576b" ], [ 0.6666666666666666, "#ed7953" ], [ 0.7777777777777778, "#fb9f3a" ], [ 0.8888888888888888, "#fdca26" ], [ 1.0, "#f0f921" ] ] }, "colorway": [ "#636efa", "#EF553B", "#00cc96", "#ab63fa", "#FFA15A", "#19d3f3", "#FF6692", "#B6E880", "#FF97FF", "#FECB52" ], "font": { "color": "#2a3f5f" }, "geo": { "bgcolor": "white", "lakecolor": "white", "landcolor": "white", "showlakes": true, "showland": true, "subunitcolor": "#C8D4E3" }, "hoverlabel": { "align": "left" }, "hovermode": "closest", "mapbox": { "style": "light" }, "paper_bgcolor": "white", "plot_bgcolor": "white", "polar": { "angularaxis": { "gridcolor": "#EBF0F8", "linecolor": "#EBF0F8", "ticks": "" }, "bgcolor": "white", "radialaxis": { "gridcolor": "#EBF0F8", "linecolor": "#EBF0F8", "ticks": "" } }, "scene": { "xaxis": { "backgroundcolor": "white", "gridcolor": "#DFE8F3", "gridwidth": 2, "linecolor": "#EBF0F8", "showbackground": true, "ticks": "", "zerolinecolor": "#EBF0F8" }, "yaxis": { "backgroundcolor": "white", "gridcolor": "#DFE8F3", "gridwidth": 2, "linecolor": "#EBF0F8", "showbackground": true, "ticks": "", "zerolinecolor": "#EBF0F8" }, "zaxis": { "backgroundcolor": "white", "gridcolor": "#DFE8F3", "gridwidth": 2, "linecolor": "#EBF0F8", "showbackground": true, "ticks": "", "zerolinecolor": "#EBF0F8" } }, "shapedefaults": { "line": { "color": "#2a3f5f" } }, "ternary": { "aaxis": { "gridcolor": "#DFE8F3", "linecolor": "#A2B1C6", "ticks": "" }, "baxis": { "gridcolor": "#DFE8F3", "linecolor": "#A2B1C6", "ticks": "" }, "bgcolor": "white", "caxis": { "gridcolor": "#DFE8F3", "linecolor": "#A2B1C6", "ticks": "" } }, "title": { "x": 0.05 }, "xaxis": { "automargin": true, "gridcolor": "#EBF0F8", "linecolor": "#EBF0F8", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "#EBF0F8", "zerolinewidth": 2 }, "yaxis": { "automargin": true, "gridcolor": "#EBF0F8", "linecolor": "#EBF0F8", "ticks": "", "title": { "standoff": 15 }, "zerolinecolor": "#EBF0F8", "zerolinewidth": 2 } } }, "xaxis": { "anchor": "y", "domain": [ 0.0, 0.94 ], "title": { "text": "#Channels" } }, "yaxis": { "anchor": "x", "domain": [ 0.0, 1.0 ], "title": { "text": "Layer Execution Time (ms)" }, "range": [ -5, 50 ] }, "yaxis2": { "anchor": "x", "overlaying": "y", "side": "right", "title": { "text": "Absolute Approximation Error (%)" }, "range": [ -4, 40 ] }, "scene": { "xaxis": { "title": { "text": "channels" } }, "yaxis": { "title": { "text": "filters" } }, "zaxis": { "title": { "text": "ms" } } }, "width": 1000.0, "height": 666.6666666666666, "plot_bgcolor": "rgba(0, 0, 0, 0)", "title": { "text": "Approximation using the point to point differences of reference sweep" }, "legend": { "x": 0, "y": 1 }, "font": { "size": 14 }, "autosize": false }, "config": { "plotlyServerURL": "https://plot.ly" } } }, "metadata": {}, "output_type": "display_data", "jetTransient": { "display_id": null } } ], "execution_count": 12 }, { "cell_type": "code", "id": "377c2b1b-9c6e-4a82-ab14-4ce738d71000", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:09.945323973Z", "start_time": "2025-11-20T07:43:26.002319Z" } }, "source": [ "\n" ], "outputs": [], "execution_count": 12 }, { "cell_type": "code", "id": "81d1130d-3141-4142-b248-b6dfc61ea469", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:09.945553043Z", "start_time": "2025-11-20T07:43:26.050242Z" } }, "source": [], "outputs": [], "execution_count": null }, { "cell_type": "code", "id": "117c4d5f-16b9-4921-a875-504f43dd9f9b", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:09.946692939Z", "start_time": "2025-11-20T07:43:26.096278Z" } }, "source": [], "outputs": [], "execution_count": null }, { "cell_type": "code", "id": "7dfb3cc8-920d-499f-a616-df908ed8a6ab", "metadata": { "ExecuteTime": { "end_time": "2025-11-20T13:26:09.946974106Z", "start_time": "2025-11-20T07:43:26.146437Z" } }, "source": [], "outputs": [], "execution_count": null } ], "metadata": { "kernelspec": { "display_name": ".venv", "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.13.7" } }, "nbformat": 4, "nbformat_minor": 5 }