Гиперкомплексная обработка сигналов: преобразование Фурье и алгебра оптических операций через октонионы
В современной цифровой обработке сигналов преобразование Фурье является фундаментальным инструментом. Но что если мы хотим анализировать не просто одномерные аудиосигналы или двумерные изображения, а сложные многомерные данные, где каждый элемент содержит информацию о цвете, поляризации, пространственных координатах и других параметрах? Причем нам может потребоваться изменять все параметры сигнала связанным, физически допустимым образом.
Здесь на помощь приходят октонионы - 8-мерные гиперкомплексные числа, позволяющие компактно представлять и анализировать такие сложные данные.
Октонионы (или октавы) - это расширение комплексных чисел и кватернионов. В отличие от кватернионов, которые имеют 4 компоненты, октонионы имеют 8 компонент и обладают свойством неассоциативности. В Julia мы можем работать с ними с помощью пакета Octonions.jl
.
Создадим анализируемый сигнал
Рассмотрим реализацию октонионного преобразования Фурье для обработки многомерных сигналов.
В отличие от обычного вектора, октонион (8-мерное гиперкомплексное число) может компактно кодировать:
-
Поляризацию (2 компоненты — линейная и круговая),
-
Цвет (3 компоненты — RGB или спектральные характеристики),
-
Фазовую информацию (1 компонента),
-
Пространственные координаты (2 компоненты — например, угол падения и глубину).
Такое представление сохраняет взаимосвязи между параметрами, которые теряются при раздельном анализе (представление в виде векторов).
create_octonion_signal (generic function with 1 method)
Октонионы здесь работают как «контейнеры», сохраняющие естественные соотношения между физическими параметрами света, что критично для точного анализа и обработки.
Но если разложить все октонионы на 8 скалярных компонент, то мы получим такую матрицу:
Октонионное преобразование Фурье
Дальше реализуем два метода - прямое и обратное преобразование Фурье для октонионов.
octonion_ifft (generic function with 1 method)
Теперь передадим в наши преобразования вектор из 256 октонионов, проведем преобразование в частотную область и обратно и посмотрим, какая ошибка у нас наберется от этих операций.
Ошибка восстановления: 1.0585794976561941e-14
При обратном преобразовании Фурье (ifft
) мы работаем с комплексным спектром сигнала, но итоговый восстановленный сигнал должен быть вещественным (поскольку исходные данные — это физические измерения, такие как интенсивность света или амплитуда волны).
Такой подход может быть полезен для:
-
Обработки цветных изображений с дополнительными характеристиками (глубина, поляризация)
-
Анализа многомерных физических данных (например, метеорологических измерений)
-
Сжатия сложных сигналов с сохранением взаимосвязей между компонентами
Примеры сигналов для анализа могут включать информацию со следующих устройств:
-
Поляризационная камера — данные о распределении поляризации света в сцене, где каждый пиксель содержит информацию об угле и эллиптичности поляризации.
-
Гиперспектральные изображения — сотни спектральных каналов, которые можно сжать до 8 ключевых компонент.
-
Лидарные данные — расстояние, интенсивность и поляризация отраженного сигнала для автономных автомобилей.
-
Голография — амплитуда и фаза световой волны, восстанавливающей 3D-объект.
Применение октонионов в оптике
Октонионы — это не просто 8D-векторы, а алгебраическая структура с некоммутативным и неассоциативным умножением. В оптике это позволяет:
-
Кодировать взаимозависимые параметры
Например, поляризация (линейная/круговая) математически связана с фазой и направлением распространения волны. В векторном представлении эти связи теряются, а в октонионной алгебре сохраняются через правила умножения базисных единиц e₁...e₇
.
-
Учитывать нелинейные эффекты
Умножение октонионов автоматически моделирует:
-
Вращение плоскости поляризации в кристаллах
-
Фазовые сдвиги при преломлении
-
Взаимодействие спектральных компонент
-
Сжимать представление
8D-октонион компактнее тензорного описания тех же параметров (например, матриц Джонса-Мюллера для поляризации + отдельно RGB + фаза).
При желании можно создать алгебру оптических операций, базирующуюся на октонионах, имеющею все обозначенные выше преимущества.
Следующая программа показывает, как применение поляризации к пучку света с круговой поляризацией меняет сразу амплитуду, фазу и поляризацию входного сигнала.
OctonionF64(0.0, -0.5, 3.061616997868383e-17, 0.5, 0.0, 0.0, 0.0, 0.0)
Октонионы дают естественное представление оптических полей именно благодаря своей алгебраической структуре. В отличие от векторов, они:
-
Запрещают физически невозможные операции (например, независимое изменение фазы и поляризации)
-
Сокращают вычислительную сложность — одна октонионная операция заменяет серию матричных преобразований
-
Сохранют геометрические инварианты автоматически, без ручной проверки условий.
Хотя октонионное преобразование Фурье требует больше вычислений, чем классическое, оно открывает новые возможности для анализа сложных многомерных данных. В будущем, с развитием квантовых вычислений и специализированных процессоров, такие методы могут стать стандартным инструментом в обработке сигналов.
В оптике октонионы дают естественное представление оптических полей именно благодаря своей алгебраической структуре.
Julia с ее производительностью и удобством работы с абстрактными типами данных идеально подходит для экспериментов с гиперкомплексными числами и разработки новых алгоритмов на их основе.
{"id": "ddf9a235_b16c_45b0_a089_aee780cb9bdd", "data": [{"xaxis": "x", "colorbar": {"y": 0.513888888888889, "title": {"text": ""}, "len": 0.9525371828521435, "x": 0.7504228638086905}, "colorscale": [[0, "rgba(0, 0, 4, 1.000)"], [0.00392156862745098, "rgba(1, 0, 5, 1.000)"], [0.00784313725490196, "rgba(1, 1, 6, 1.000)"], [0.011764705882352941, "rgba(1, 1, 8, 1.000)"], [0.01568627450980392, "rgba(2, 1, 10, 1.000)"], [0.0196078431372549, "rgba(2, 2, 12, 1.000)"], [0.023529411764705882, "rgba(2, 2, 14, 1.000)"], [0.027450980392156862, "rgba(3, 2, 16, 1.000)"], [0.03137254901960784, "rgba(4, 3, 18, 1.000)"], [0.03529411764705882, "rgba(4, 3, 20, 1.000)"], [0.0392156862745098, "rgba(5, 4, 23, 1.000)"], [0.043137254901960784, "rgba(6, 4, 25, 1.000)"], [0.047058823529411764, "rgba(7, 5, 27, 1.000)"], [0.050980392156862744, "rgba(8, 5, 29, 1.000)"], [0.054901960784313725, "rgba(9, 6, 31, 1.000)"], [0.058823529411764705, "rgba(10, 7, 34, 1.000)"], [0.06274509803921569, "rgba(11, 7, 36, 1.000)"], [0.06666666666666667, "rgba(12, 8, 38, 1.000)"], [0.07058823529411765, "rgba(13, 8, 41, 1.000)"], [0.07450980392156863, "rgba(14, 9, 43, 1.000)"], [0.0784313725490196, "rgba(16, 9, 45, 1.000)"], [0.08235294117647059, "rgba(17, 10, 48, 1.000)"], [0.08627450980392157, "rgba(18, 10, 50, 1.000)"], [0.09019607843137255, "rgba(20, 11, 52, 1.000)"], [0.09411764705882353, "rgba(21, 11, 55, 1.000)"], [0.09803921568627451, "rgba(22, 11, 57, 1.000)"], [0.10196078431372549, "rgba(24, 12, 60, 1.000)"], [0.10588235294117647, "rgba(25, 12, 62, 1.000)"], [0.10980392156862745, "rgba(27, 12, 65, 1.000)"], [0.11372549019607843, "rgba(28, 12, 67, 1.000)"], [0.11764705882352941, "rgba(30, 12, 69, 1.000)"], [0.12156862745098039, "rgba(31, 12, 72, 1.000)"], [0.12549019607843137, "rgba(33, 12, 74, 1.000)"], [0.12941176470588237, "rgba(35, 12, 76, 1.000)"], [0.13333333333333333, "rgba(36, 12, 79, 1.000)"], [0.13725490196078433, "rgba(38, 12, 81, 1.000)"], [0.1411764705882353, "rgba(40, 11, 83, 1.000)"], [0.1450980392156863, "rgba(41, 11, 85, 1.000)"], [0.14901960784313725, "rgba(43, 11, 87, 1.000)"], [0.15294117647058825, "rgba(45, 11, 89, 1.000)"], [0.1568627450980392, "rgba(47, 10, 91, 1.000)"], [0.1607843137254902, "rgba(49, 10, 92, 1.000)"], [0.16470588235294117, "rgba(50, 10, 94, 1.000)"], [0.16862745098039217, "rgba(52, 10, 95, 1.000)"], [0.17254901960784313, "rgba(54, 9, 97, 1.000)"], [0.17647058823529413, "rgba(56, 9, 98, 1.000)"], [0.1803921568627451, "rgba(57, 9, 99, 1.000)"], [0.1843137254901961, "rgba(59, 9, 100, 1.000)"], [0.18823529411764706, "rgba(61, 9, 101, 1.000)"], [0.19215686274509805, "rgba(62, 9, 102, 1.000)"], [0.19607843137254902, "rgba(64, 10, 103, 1.000)"], [0.2, "rgba(66, 10, 104, 1.000)"], [0.20392156862745098, "rgba(68, 10, 104, 1.000)"], [0.20784313725490197, "rgba(69, 10, 105, 1.000)"], [0.21176470588235294, "rgba(71, 11, 106, 1.000)"], [0.21568627450980393, "rgba(73, 11, 106, 1.000)"], [0.2196078431372549, "rgba(74, 12, 107, 1.000)"], [0.2235294117647059, "rgba(76, 12, 107, 1.000)"], [0.22745098039215686, "rgba(77, 13, 108, 1.000)"], [0.23137254901960785, "rgba(79, 13, 108, 1.000)"], [0.23529411764705882, "rgba(81, 14, 108, 1.000)"], [0.23921568627450981, "rgba(82, 14, 109, 1.000)"], [0.24313725490196078, "rgba(84, 15, 109, 1.000)"], [0.24705882352941178, "rgba(85, 15, 109, 1.000)"], [0.25098039215686274, "rgba(87, 16, 110, 1.000)"], [0.2549019607843137, "rgba(89, 16, 110, 1.000)"], [0.25882352941176473, "rgba(90, 17, 110, 1.000)"], [0.2627450980392157, "rgba(92, 18, 110, 1.000)"], [0.26666666666666666, "rgba(93, 18, 110, 1.000)"], [0.27058823529411763, "rgba(95, 19, 110, 1.000)"], [0.27450980392156865, "rgba(97, 19, 110, 1.000)"], [0.2784313725490196, "rgba(98, 20, 110, 1.000)"], [0.2823529411764706, "rgba(100, 21, 110, 1.000)"], [0.28627450980392155, "rgba(101, 21, 110, 1.000)"], [0.2901960784313726, "rgba(103, 22, 110, 1.000)"], [0.29411764705882354, "rgba(105, 22, 110, 1.000)"], [0.2980392156862745, "rgba(106, 23, 110, 1.000)"], [0.30196078431372547, "rgba(108, 24, 110, 1.000)"], [0.3058823529411765, "rgba(109, 24, 110, 1.000)"], [0.30980392156862746, "rgba(111, 25, 110, 1.000)"], [0.3137254901960784, "rgba(113, 25, 110, 1.000)"], [0.3176470588235294, "rgba(114, 26, 110, 1.000)"], [0.3215686274509804, "rgba(116, 26, 110, 1.000)"], [0.3254901960784314, "rgba(117, 27, 110, 1.000)"], [0.32941176470588235, "rgba(119, 28, 109, 1.000)"], [0.3333333333333333, "rgba(120, 28, 109, 1.000)"], [0.33725490196078434, "rgba(122, 29, 109, 1.000)"], [0.3411764705882353, "rgba(124, 29, 109, 1.000)"], [0.34509803921568627, "rgba(125, 30, 109, 1.000)"], [0.34901960784313724, "rgba(127, 30, 108, 1.000)"], [0.35294117647058826, "rgba(128, 31, 108, 1.000)"], [0.3568627450980392, "rgba(130, 32, 108, 1.000)"], [0.3607843137254902, "rgba(132, 32, 107, 1.000)"], [0.36470588235294116, "rgba(133, 33, 107, 1.000)"], [0.3686274509803922, "rgba(135, 33, 107, 1.000)"], [0.37254901960784315, "rgba(136, 34, 106, 1.000)"], [0.3764705882352941, "rgba(138, 34, 106, 1.000)"], [0.3803921568627451, "rgba(140, 35, 105, 1.000)"], [0.3843137254901961, "rgba(141, 35, 105, 1.000)"], [0.38823529411764707, "rgba(143, 36, 105, 1.000)"], [0.39215686274509803, "rgba(144, 37, 104, 1.000)"], [0.396078431372549, "rgba(146, 37, 104, 1.000)"], [0.4, "rgba(147, 38, 103, 1.000)"], [0.403921568627451, "rgba(149, 38, 103, 1.000)"], [0.40784313725490196, "rgba(151, 39, 102, 1.000)"], [0.4117647058823529, "rgba(152, 39, 102, 1.000)"], [0.41568627450980394, "rgba(154, 40, 101, 1.000)"], [0.4196078431372549, "rgba(155, 41, 100, 1.000)"], [0.4235294117647059, "rgba(157, 41, 100, 1.000)"], [0.42745098039215684, "rgba(159, 42, 99, 1.000)"], [0.43137254901960786, "rgba(160, 42, 99, 1.000)"], [0.43529411764705883, "rgba(162, 43, 98, 1.000)"], [0.4392156862745098, "rgba(163, 44, 97, 1.000)"], [0.44313725490196076, "rgba(165, 44, 96, 1.000)"], [0.4470588235294118, "rgba(166, 45, 96, 1.000)"], [0.45098039215686275, "rgba(168, 46, 95, 1.000)"], [0.4549019607843137, "rgba(169, 46, 94, 1.000)"], [0.4588235294117647, "rgba(171, 47, 94, 1.000)"], [0.4627450980392157, "rgba(173, 48, 93, 1.000)"], [0.4666666666666667, "rgba(174, 48, 92, 1.000)"], [0.47058823529411764, "rgba(176, 49, 91, 1.000)"], [0.4745098039215686, "rgba(177, 50, 90, 1.000)"], [0.47843137254901963, "rgba(179, 50, 90, 1.000)"], [0.4823529411764706, "rgba(180, 51, 89, 1.000)"], [0.48627450980392156, "rgba(182, 52, 88, 1.000)"], [0.49019607843137253, "rgba(183, 53, 87, 1.000)"], [0.49411764705882355, "rgba(185, 53, 86, 1.000)"], [0.4980392156862745, "rgba(186, 54, 85, 1.000)"], [0.5019607843137255, "rgba(188, 55, 84, 1.000)"], [0.5058823529411764, "rgba(189, 56, 83, 1.000)"], [0.5098039215686274, "rgba(191, 57, 82, 1.000)"], [0.5137254901960784, "rgba(192, 58, 81, 1.000)"], [0.5176470588235295, "rgba(193, 58, 80, 1.000)"], [0.5215686274509804, "rgba(195, 59, 79, 1.000)"], [0.5254901960784314, "rgba(196, 60, 78, 1.000)"], [0.5294117647058824, "rgba(198, 61, 77, 1.000)"], [0.5333333333333333, "rgba(199, 62, 76, 1.000)"], [0.5372549019607843, "rgba(200, 63, 75, 1.000)"], [0.5411764705882353, "rgba(202, 64, 74, 1.000)"], [0.5450980392156862, "rgba(203, 65, 73, 1.000)"], [0.5490196078431373, "rgba(204, 66, 72, 1.000)"], [0.5529411764705883, "rgba(206, 67, 71, 1.000)"], [0.5568627450980392, "rgba(207, 68, 70, 1.000)"], [0.5607843137254902, "rgba(208, 69, 69, 1.000)"], [0.5647058823529412, "rgba(210, 70, 68, 1.000)"], [0.5686274509803921, "rgba(211, 71, 67, 1.000)"], [0.5725490196078431, "rgba(212, 72, 66, 1.000)"], [0.5764705882352941, "rgba(213, 74, 65, 1.000)"], [0.5803921568627451, "rgba(215, 75, 63, 1.000)"], [0.5843137254901961, "rgba(216, 76, 62, 1.000)"], [0.5882352941176471, "rgba(217, 77, 61, 1.000)"], [0.592156862745098, "rgba(218, 78, 60, 1.000)"], [0.596078431372549, "rgba(219, 80, 59, 1.000)"], [0.6, "rgba(221, 81, 58, 1.000)"], [0.6039215686274509, "rgba(222, 82, 56, 1.000)"], [0.6078431372549019, "rgba(223, 83, 55, 1.000)"], [0.611764705882353, "rgba(224, 85, 54, 1.000)"], [0.615686274509804, "rgba(225, 86, 53, 1.000)"], [0.6196078431372549, "rgba(226, 87, 52, 1.000)"], [0.6235294117647059, "rgba(227, 89, 51, 1.000)"], [0.6274509803921569, "rgba(228, 90, 49, 1.000)"], [0.6313725490196078, "rgba(229, 92, 48, 1.000)"], [0.6352941176470588, "rgba(230, 93, 47, 1.000)"], [0.6392156862745098, "rgba(231, 94, 46, 1.000)"], [0.6431372549019608, "rgba(232, 96, 45, 1.000)"], [0.6470588235294118, "rgba(233, 97, 43, 1.000)"], [0.6509803921568628, "rgba(234, 99, 42, 1.000)"], [0.6549019607843137, "rgba(235, 100, 41, 1.000)"], [0.6588235294117647, "rgba(235, 102, 40, 1.000)"], [0.6627450980392157, "rgba(236, 103, 38, 1.000)"], [0.6666666666666666, "rgba(237, 105, 37, 1.000)"], [0.6705882352941176, "rgba(238, 106, 36, 1.000)"], [0.6745098039215687, "rgba(239, 108, 35, 1.000)"], [0.6784313725490196, "rgba(239, 110, 33, 1.000)"], [0.6823529411764706, "rgba(240, 111, 32, 1.000)"], [0.6862745098039216, "rgba(241, 113, 31, 1.000)"], [0.6901960784313725, "rgba(241, 115, 29, 1.000)"], [0.6941176470588235, "rgba(242, 116, 28, 1.000)"], [0.6980392156862745, "rgba(243, 118, 27, 1.000)"], [0.7019607843137254, "rgba(243, 120, 25, 1.000)"], [0.7058823529411765, "rgba(244, 121, 24, 1.000)"], [0.7098039215686275, "rgba(245, 123, 23, 1.000)"], [0.7137254901960784, "rgba(245, 125, 21, 1.000)"], [0.7176470588235294, "rgba(246, 126, 20, 1.000)"], [0.7215686274509804, "rgba(246, 128, 19, 1.000)"], [0.7254901960784313, "rgba(247, 130, 18, 1.000)"], [0.7294117647058823, "rgba(247, 132, 16, 1.000)"], [0.7333333333333333, "rgba(248, 133, 15, 1.000)"], [0.7372549019607844, "rgba(248, 135, 14, 1.000)"], [0.7411764705882353, "rgba(248, 137, 12, 1.000)"], [0.7450980392156863, "rgba(249, 139, 11, 1.000)"], [0.7490196078431373, "rgba(249, 140, 10, 1.000)"], [0.7529411764705882, "rgba(249, 142, 9, 1.000)"], [0.7568627450980392, "rgba(250, 144, 8, 1.000)"], [0.7607843137254902, "rgba(250, 146, 7, 1.000)"], [0.7647058823529411, "rgba(250, 148, 7, 1.000)"], [0.7686274509803922, "rgba(251, 150, 6, 1.000)"], [0.7725490196078432, "rgba(251, 151, 6, 1.000)"], [0.7764705882352941, "rgba(251, 153, 6, 1.000)"], [0.7803921568627451, "rgba(251, 155, 6, 1.000)"], [0.7843137254901961, "rgba(251, 157, 7, 1.000)"], [0.788235294117647, "rgba(252, 159, 7, 1.000)"], [0.792156862745098, "rgba(252, 161, 8, 1.000)"], [0.796078431372549, "rgba(252, 163, 9, 1.000)"], [0.8, "rgba(252, 165, 10, 1.000)"], [0.803921568627451, "rgba(252, 166, 12, 1.000)"], [0.807843137254902, "rgba(252, 168, 13, 1.000)"], [0.8117647058823529, "rgba(252, 170, 15, 1.000)"], [0.8156862745098039, "rgba(252, 172, 17, 1.000)"], [0.8196078431372549, "rgba(252, 174, 18, 1.000)"], [0.8235294117647058, "rgba(252, 176, 20, 1.000)"], [0.8274509803921568, "rgba(252, 178, 22, 1.000)"], [0.8313725490196079, "rgba(252, 180, 24, 1.000)"], [0.8352941176470589, "rgba(251, 182, 26, 1.000)"], [0.8392156862745098, "rgba(251, 184, 29, 1.000)"], [0.8431372549019608, "rgba(251, 186, 31, 1.000)"], [0.8470588235294118, "rgba(251, 188, 33, 1.000)"], [0.8509803921568627, "rgba(251, 190, 35, 1.000)"], [0.8549019607843137, "rgba(250, 192, 38, 1.000)"], [0.8588235294117647, "rgba(250, 194, 40, 1.000)"], [0.8627450980392157, "rgba(250, 196, 42, 1.000)"], [0.8666666666666667, "rgba(250, 198, 45, 1.000)"], [0.8705882352941177, "rgba(249, 199, 47, 1.000)"], [0.8745098039215686, "rgba(249, 201, 50, 1.000)"], [0.8784313725490196, "rgba(249, 203, 53, 1.000)"], [0.8823529411764706, "rgba(248, 205, 55, 1.000)"], [0.8862745098039215, "rgba(248, 207, 58, 1.000)"], [0.8901960784313725, "rgba(247, 209, 61, 1.000)"], [0.8941176470588236, "rgba(247, 211, 64, 1.000)"], [0.8980392156862745, "rgba(246, 213, 67, 1.000)"], [0.9019607843137255, "rgba(246, 215, 70, 1.000)"], [0.9058823529411765, "rgba(245, 217, 73, 1.000)"], [0.9098039215686274, "rgba(245, 219, 76, 1.000)"], [0.9137254901960784, "rgba(244, 221, 79, 1.000)"], [0.9176470588235294, "rgba(244, 223, 83, 1.000)"], [0.9215686274509803, "rgba(244, 225, 86, 1.000)"], [0.9254901960784314, "rgba(243, 227, 90, 1.000)"], [0.9294117647058824, "rgba(243, 229, 93, 1.000)"], [0.9333333333333333, "rgba(242, 230, 97, 1.000)"], [0.9372549019607843, "rgba(242, 232, 101, 1.000)"], [0.9411764705882353, "rgba(242, 234, 105, 1.000)"], [0.9450980392156862, "rgba(241, 236, 109, 1.000)"], [0.9490196078431372, "rgba(241, 237, 113, 1.000)"], [0.9529411764705882, "rgba(241, 239, 117, 1.000)"], [0.9568627450980393, "rgba(241, 241, 121, 1.000)"], [0.9607843137254902, "rgba(242, 242, 125, 1.000)"], [0.9647058823529412, "rgba(242, 244, 130, 1.000)"], [0.9686274509803922, "rgba(243, 245, 134, 1.000)"], [0.9725490196078431, "rgba(243, 246, 138, 1.000)"], [0.9764705882352941, "rgba(244, 248, 142, 1.000)"], [0.9803921568627451, "rgba(245, 249, 146, 1.000)"], [0.984313725490196, "rgba(246, 250, 150, 1.000)"], [0.9882352941176471, "rgba(248, 251, 154, 1.000)"], [0.9921568627450981, "rgba(249, 252, 157, 1.000)"], [0.996078431372549, "rgba(250, 253, 161, 1.000)"], [1, "rgba(252, 255, 164, 1.000)"]], "yaxis": "y", "showscale": true, "x": [0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5, 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 38.5, 39.5, 40.5, 41.5, 42.5, 43.5, 44.5, 45.5, 46.5, 47.5, 48.5, 49.5, 50.5, 51.5, 52.5, 53.5, 54.5, 55.5, 56.5, 57.5, 58.5, 59.5, 60.5, 61.5, 62.5, 63.5, 64.5, 65.5, 66.5, 67.5, 68.5, 69.5, 70.5, 71.5, 72.5, 73.5, 74.5, 75.5, 76.5, 77.5, 78.5, 79.5, 80.5, 81.5, 82.5, 83.5, 84.5, 85.5, 86.5, 87.5, 88.5, 89.5, 90.5, 91.5, 92.5, 93.5, 94.5, 95.5, 96.5, 97.5, 98.5, 99.5, 100.5], "showlegend": false, "name": "y1", "zmin": -3.224609149625225, "z": [[0.15932204442326167, 0.39675245255763486, -1.0697740318054567, 2.434113771652666, -0.9215177362859458, 0.03576022721499259, -1.1152199528679896, 1.7435141368042792, -0.342433953930916, -0.32369125656009073, 1.1177112137824143, 1.5437735841517695, -1.9477507369899913, 0.670523278456748, 0.9291439610963286, 1.189455022211492, 0.06011413891942516, -1.240111042980491, 0.012400981677606254, -0.18188260107223725, 1.5264959509106735, 0.6069688757419573, -0.2998655110214707, -0.5962663978748909, -0.44013543607655875, 1.9316224915071567, 0.9526072522194969, 1.4571650728780792, -0.102444357687093, -2.616681034461854, 0.005368827012739021, -0.25791109598778544, 0.6392350979746213, -0.43712490764131384, 1.9511059094667995, -2.6623935826515197, 1.5324650541490519, 0.07753163044641058, -0.43676524845635917, 1.6621671847973492, 0.4303326086796061, -0.18379317471884626, -0.5528902528499958, -1.6969528448657736, 0.42504949675024944, 2.016717459844107, 0.890896106371574, -0.8081092154319672, -0.38813428148539675, 0.7236816540253395, 0.1268906400869537, 1.0137229147183275, -1.6170796495512132, -0.07013379640465409, 0.8910395779225845, -0.4756528912147102, -1.2325416477566886, -0.7795735828939707, 0.7778447918159692, 1.3174160247852367, 0.3631852710049354, 0.17468077423187778, -0.4604150988963717, 0.9096686489696174, -0.16033016777398898, -0.0660616673178147, 0.030386129831838776, 0.8591012914734393, -0.6009404752386283, -0.10105680231505201, 0.307307670256015, -0.5468118955572993, -0.4671910390887352, 0.12711891465493114, 0.3843439299095266, -1.0165400366708486, -0.5312853505212067, -0.2826459144819736, -0.3489964288262624, -0.9067943224618813, 1.9308769203842364, 0.10304311465181734, -0.2095079574260636, 1.0047402982315576, 1.2137550864065043, -1.928207035346661, -1.3178070202382712, 0.007445085614539035, 1.651105008658401, 1.1004242184775805, 0.09829065731768873, -0.006821566739181552, 1.258631796627316, -0.039338464028435785, -0.3720382294408391, -1.0100903569427642, -0.935956336004667, -0.39406084140165504, -0.9952211394284738, -0.9968638442088763], [-0.1846065385156057, 0.2807829487290986, 0.31851609272594555, -1.999620809007542, 0.2171801678418863, -0.8496320925465018, 0.975374142445126, -0.721626431428892, 1.6846825771706992, -0.3220588517756628, 2.0296390676179565, 0.32011446371069546, 0.9694984955664352, -0.3512033711706244, 0.015330930039163691, 0.8972277664935104, 0.30378054053403014, -0.9121517231062142, 0.3155033130896348, -0.29532440438602586, -0.8103460656799226, -0.11871779574789841, 0.03382710918180364, -0.8864550638675569, 0.880881110894833, 0.24381280251223425, 0.3577396918929305, 0.8053742315034776, -1.4266058349401425, -1.97595328421827, 2.271701304572987, 1.103553719076863, 0.054614500656723367, -1.0444900075795798, 0.5357335198660401, -1.0905757363868607, 0.37050899974950713, -0.6818083880898396, 1.696019332387757, -0.4760164640122015, -0.6840322967992597, -1.7384827935966762, -0.059512659674249305, -1.4164820677041154, -0.3646846611818674, -1.2873749494573383, 0.49452976775498425, -0.18334751966863394, -1.3366273844009444, -0.3233129798251619, 1.142483959329068, -0.7030989726101254, 0.42942025298250247, 0.8936745478855843, -0.2260411742367406, -0.6000432342449441, -1.0755474209095832, 0.025954356429895013, -0.6930012899688697, 0.5398576905589907, 0.09858471839005423, 0.5717922026457019, -0.12002033191400624, 1.9091552429980918, 1.2185060487626878, -0.44971178692188213, 0.47621124928666686, 0.7746739177599652, -1.168918194054032, -0.39067643541311053, 0.1588703957391968, 0.9475947643028927, 1.827579799602119, 0.9259268331844152, 1.1327770532086612, -0.5986758805295905, 2.721485496284487, 0.06373007497575701, -0.3050258124489564, -1.333179349698559, 1.3313664974871777, -0.32446970084776733, -0.2966341452878684, -1.3247693569043872, 0.8752353761798767, -1.9189775691200452, -0.969743707274863, 0.9455506105018427, -0.9490611566156238, -0.8013025510902261, -0.2830102642294147, 0.6163050791433202, 0.45574619744549966, -2.0419174080170475, 0.9241129799022099, 1.6088947935101803, 1.0114757187876051, -1.1693225872860458, -1.4546232311920748, 2.0535520406403016], [0.6603986581908124, 1.3499638269545198, -0.009806333907658683, 0.5195281349874943, 0.05983578839324891, 0.2792791220023058, 1.0325274779881528, -0.2551358395729802, 0.37304671926261956, -0.4002127145992178, -0.9122502040378745, -0.8668054764215226, -1.6413562559693857, -0.4100541772541164, -2.332560863344002, -0.9735763697936739, -0.5449758262884977, 0.08801499146239498, -0.7152312936054706, -1.0686099552115758, 0.7495813316384293, 0.612911376208909, -0.20149775967875067, 0.16748272050665527, -1.2292152301464767, -1.9976597675980818, 0.6118474948862102, -0.4273565260425936, -1.0134232579231262, -0.7241390595366425, 1.2243640776910751, -0.0495508144122886, 1.6898337744563463, -1.4023443958755053, 1.8021060378208706, 0.971863963336384, -0.2771788775386796, 0.6032982361010586, 1.068249842488791, -0.7580624814410913, -1.2369387331429982, -1.1770064282713752, -1.044334092460409, 0.36055364361481673, 1.046698615556248, 1.122177743066937, -0.17850813594522388, 0.00043854786352779003, 0.5344594847410821, 1.1340674731541758, -0.7418416059448699, -1.7319207145528486, 0.09981762073836509, -0.9104679168066019, -0.0617334245867429, 0.6258538533806016, 0.02871879864107612, -0.3438184617268847, 1.383255303557674, 0.07645327134399331, -2.0665760203659302, -0.718786483821774, -1.541341177201268, -0.22363949700239388, 0.15077607048262584, 1.4152509454334847, -0.5255451841165893, -0.5634636516386144, 2.2995823411808987, 1.2094353114035812, 0.5410536995778834, -0.24197536837790345, 0.9934154404510246, -1.693970307044947, 1.1891379836394902, 0.39037161304086637, 0.9721571035145216, -1.1976553869001783, -0.5518537907891155, -0.6736070140796206, 0.3825986766698847, 0.9316281558558123, -0.716032560824631, 0.3508487720154371, -2.144610490158448, 0.019024180719944078, -0.2012812415281071, -0.509033680919117, -0.5992293565823845, -0.324343339452609, 1.8737810956727587, -0.581650930462455, -0.6290001347920416, -1.022900867788429, 0.5085452426053797, 0.09200918018803889, 0.5186197791838464, -1.849617182171809, -1.1993721699041986, -0.15924195157304133], [-1.2795251556384604, 2.239391402269382, 0.7133343252529493, -1.0272747901491093, -0.33025730759503813, -1.7995288640924512, 0.9539557364550978, -0.8362954490478003, -1.4568210358968439, 1.220957456974067, -1.3459644796793517, 0.5445060566793076, -0.41638411373790135, 1.4959812821081013, -1.0347172745482425, -0.21494344940774274, -0.019799885545454702, -0.04863577974856658, -0.458389749301875, 2.2625669046707966, 0.2169617812855646, -0.062367289330953736, 0.30913561755093616, -2.1951730746616835, -1.6080504209231348, -0.9777776275593016, 0.46546519889802396, 0.3348138390981026, 0.6006443415910125, -0.13781942611781164, -0.18410141321816834, -0.8527499485925255, -1.3163835334185296, -0.029899637204362603, 0.6836008278190167, 0.01448010803613235, -1.0333133012993474, -2.4785676499757066, -0.6279369655112599, 1.5056683244361617, 0.26866796684632915, -0.32189943129533405, -1.1546874167548944, -0.5712012589215916, -0.6202339343846879, 0.0671637580933553, 0.4548984037913716, -0.8914188435863144, -0.5139813567784485, 1.7771890349944812, 0.46662415588988565, 0.19067928430337136, 0.681143705380304, -0.14053224404909237, 0.9192216035039611, 0.08408033119998994, 1.9858848875243005, 0.6862417547607732, -0.0572166790680583, 0.032304484115312934, 0.13245842752958445, 1.0785927531663186, 0.4447561155769976, 1.1063155936225246, 0.23630504727483934, 1.1865854656127799, 1.3879379017776023, 2.943041406082548, 0.714984667009205, 0.7427072951943511, 0.6080888125277545, 1.7478469113922865, 0.7309864389797567, -1.3179540598583266, 0.49887065744651526, 0.1311129981595214, -0.07500709227178826, -0.8314468404421573, 0.03810936264005885, -1.6129413690210594, 0.22142531945521438, -1.8121919337476717, -2.486462067115845, -0.4856764853333523, -1.5760275720611976, 1.1406444173286907, 0.7216861628849123, 0.04768043934001157, -1.2923827520083295, 0.8228984302824339, -0.12281392274235561, 1.2220361626229699, 0.8327076633225533, -3.043533507096661, -1.881729228580537, 0.36932122433824016, 0.012230736715142007, -0.5002237524118073, -1.3238218279863407, 0.6743300467251987], [1.7560753981923138, -0.0950287598716967, -0.7719737211810419, -0.1646819159404457, -1.1967410108564778, 1.2112147285212704, 0.4398556318249425, 0.6047242847361899, -0.3404502210489517, 1.758093372944161, -1.376945962640443, 0.6047378563128373, -0.426923081317116, -1.3900164151902759, -0.11151711955222468, -1.7960950627760022, -1.4873825854325626, -0.2730452210668373, 1.2395991861315319, -0.5688664365861779, 0.2913206934333896, -0.7058914607447543, -0.5287270175627299, 0.9772083151407824, -0.5852311097271482, 1.0687712724082699, -0.5169267537209727, 1.2061524167161415, 0.03400833151220576, 2.8134019003646, 0.34689907393035113, 3.2131004511837626, -0.7842700431661589, -0.6846086948445449, -0.39217703192972125, 1.3330347236686027, 0.6362503262859166, -0.5182848215202379, 1.0834387443844236, -1.2371507720494226, 0.8034966932479446, 0.4938744004846481, -0.17523554278728334, -0.7201548950389539, -0.2842975497481141, -1.2364022535189343, 0.6464920693878382, 1.10668103186753, -0.41296565957542564, -1.6089059661264122, 1.2685001175902944, 0.589740364019729, -0.44949090436006556, 0.04778471222009763, -1.0352405638334845, 0.2386145740365544, -0.917298564396687, -1.433079568001863, -0.5686239859644794, -0.19559752191180146, -1.1585946514949, -0.35230576851152784, 1.241603063865242, -0.34767444196132347, 0.5149202444046412, -0.5531217545368942, -0.026497560291073793, 1.4472264428637358, -0.689730340349559, -1.1094743249586434, 0.3473165870469641, 0.9707951301459127, -0.09238876430149782, 0.023486555204977277, -0.268675074266333, -1.4987248101485715, 1.6132486586864758, -0.9612932597425413, -1.222378036731624, 0.2682886174012736, -0.047567420990379784, -0.1212597558683407, 0.19620490899133397, -0.3939922160992297, 0.2879883214044558, 0.509405382028111, -0.6403944768851547, 0.1992732587304603, -0.621044254230937, -1.7225116267883736, 0.9845183026074193, -0.8224571111959718, 0.32149368045575516, 0.2261082950808906, -1.0919188831587856, -0.7171189454402502, 0.29493900607245843, -1.8936357930492413, -0.8886183650772759, -0.20506913788330255], [0.7462639958516746, 1.3413622348627896, 0.7234726217173179, 0.7634619984174377, -1.4888714950300284, 0.6666507313811431, -0.30879917696027925, -0.10736105572501067, -0.7735002914369288, -0.24367896341664408, 2.379089890750042, 0.4824110358794367, 0.03281632621726556, 0.13515637357944377, 0.7866865436215563, 0.9324635820903292, 2.222145609108397, 1.9834990172560714, 0.7441656323796341, 0.90124417017349, 0.82846932086976, -0.42713496164918796, 0.5358525866571399, -0.04101121175360122, 0.24623927358806882, 0.3842861447388942, -2.246654113874813, -0.30510183548340014, -1.4509301294648789, -1.526526751090924, -0.14233698966359806, 1.8255754736294176, -0.5426943725828203, 0.6253957266949206, 0.3994634026617273, 2.1078020943278823, 1.2507124926250348, -0.017223296476703967, 1.0370280780307293, -0.028063587175700084, -0.6264566195807859, -1.2674209636950098, 1.280732111504183, 0.700526714335354, 0.9466271104643244, -1.447820245504742, 0.4563287629048484, -0.977761286992337, -1.2159156482633797, 1.2760372184131559, -0.05750779593020953, 0.17061832959564596, 0.08089639957447523, -0.280804600111003, -0.19819620748379851, -0.16577996772717776, 1.1022483984559124, 1.1142515780591358, 1.7248421859487733, -1.5249307761304665, -0.831868879891448, 0.40588257355689566, 1.4560249754600416, -1.1283769295931074, 0.5283057931377866, -0.3815203829189628, -0.11477001651719557, -0.3873656443673957, 0.6613953282591628, 0.5681869130547598, -1.702698824031556, -0.013944123382498478, 1.9777257984635548, 0.3104708300918155, -0.8670058295727294, 2.074719065693723, 0.13437913030707554, -0.9922595646350726, 0.8919088052933257, 1.5957723130017807, 0.2878487786429655, 0.14899332122596068, 1.0030128989173333, 1.0771588501302147, 0.44459026738298874, 0.8408628898877912, 0.18248930383508266, 0.9397841060124735, 0.35527534942009276, -0.27945571816654313, 0.610771444944577, -0.46352054523425723, 0.012800069027606768, 0.9296708806607701, 0.10528664685321985, 1.066020552863485, 0.8599660091093567, 1.8723544039936693, -0.8258053504550863, -0.17282685655340468], [-0.1986664089820621, 0.23144173771416304, 0.6998789421069231, -0.09680622852659894, -0.02437861995156971, -0.026433093464121656, 0.29606241487180135, -1.5883251091933697, 0.49131699595741196, 1.2769139860807415, -1.3903127066642338, -1.8537340946895646, -0.4123598957313528, -1.2583457792769213, 2.219871450755722, 0.2511003385671618, 1.0302254296681441, 0.02969471344022156, 0.5665291043576037, 1.5338813031653646, 0.011704878336162797, -0.09961656144779989, 1.6562667724090576, 1.505206464084653, -0.19019571648233366, -0.3224675477338479, 0.47516564545517614, -0.16451884698834598, 1.928378257428697, 0.5433197657548401, 1.3822088606228553, 2.8338072427613175, 0.50810620598975, -0.45074764204149703, -0.24508603761238607, -0.14363934726496577, 1.6497560965075788, 0.3356141837480219, -1.1002714464526884, -1.2170333886960014, 0.006039456207001991, -0.3130596520323116, 1.8808834242756065, 0.727496202664281, -0.1452508087823794, -0.8930723226193585, -0.9323883792674003, 0.6440763188675065, -0.18851888667358868, -0.46579968164134683, 0.7899401449704702, -1.386473081841863, -0.3941953535992692, 0.11120705430106861, 0.32489291196861786, -0.2103091173895624, 0.039588247626348945, -0.16630822699431014, 0.15016421372727373, 0.1316629319544848, 0.30889398025247605, 0.6967020336422446, 1.302469323778413, 0.2183622778656603, -1.0534733212690397, 1.4229582120380595, -1.5985168627343065, -1.157693274323575, 0.2075796881015084, -0.09174124751904808, 0.7096852098796788, -1.7749435542192593, 0.470334418904339, -0.010443683518908444, 0.0224798395290778, -0.27138748345324165, -0.5430181833636684, -0.992278915956367, 1.169063547661323, 0.20204753029821854, -0.20161264424996508, 0.24087425579231186, 1.0481129942739233, -1.8387345214143072, -1.7218601045075526, 0.7247515741639047, -0.2516932328624445, -1.5573690162530767, -0.2965500234854659, 1.600060249235585, -0.6067395729922501, 0.2218779562658764, 0.20485268068763948, 0.017982211128232575, -0.3193285124666217, -0.9388139426553146, 0.6897773511540505, 0.046961538303641616, 0.26453543028949666, 0.1232516262849217], [0.6154794278332117, -1.8050421573275353, 0.54294688235318, 1.4239650245700923, 0.5603389984106392, 1.3148495360288703, -0.6465974064145533, -0.1888254079381177, 1.5408409746700074, -0.5645356613451148, -1.1683522361412644, -3.224609149625225, 0.26657714887748624, -0.5032102731408284, -0.10378297249532319, -0.07994807705132412, 2.279983090323463, -0.7263137265513415, -0.5719209729595781, 0.7888750499326056, 1.7186523641645017, 0.5363440781868626, 0.09847271585689046, -0.777891821706336, -0.1532408942022515, -0.5970438217308303, -0.20544035351709167, -0.24795436728536338, -0.009650821684510034, 0.021328315568284933, 1.9566706615584404, 1.5288628960947426, 1.0337411578554798, -0.4169579743970488, -1.1362269116615527, 0.32451565401064203, -0.7269187371752517, 0.8676409738569253, 0.7778674828369484, 0.14250457516981963, 0.468013805837894, 1.3505081278807083, -0.12286755481419233, 0.6637059003478096, -0.3573851757368882, 0.39186165638879594, 0.21563339289679445, -0.007086185340398941, -0.31414591349398646, 0.8319214506935911, -1.729918043900804, 1.0835289085575774, 1.763125650229552, -0.45890838106726456, -1.0793574004665754, -1.3715836909459165, 0.5907055804351964, -0.007017996696003807, -0.3610293345960072, -0.6194017612656163, 0.2663104667899613, 0.16791939975879625, -0.04138908070895479, 0.9524909708750227, -0.7674057787885135, 0.11072898570976442, -0.5651297145796168, -0.6763538315118975, -0.7340096897970108, -0.7504701767444365, -0.10251087235390269, -0.1680771095136033, -0.5254496670395555, -1.6283398045244553, -0.5155678201515622, -0.44558107480335135, 0.685155587703935, -1.0411369167176185, 0.8127440947533479, 1.1964599656842563, -1.086464873378973, 0.5380459572490353, 0.22422529810985914, -1.0887460167164082, 0.05311712265922832, -1.0745861348840247, -0.875492634826933, -0.850630796477109, 0.30702194332896876, -0.2006610607814228, -0.06904739321327594, -0.14988871099453582, -0.5528444129071367, -1.1969543706161443, 1.5830010832290764, -1.70787973564966, -1.1629099870042487, -0.07568913460568925, 0.9747067132506376, 0.723483639644531]], "zmax": 3.2131004511837626, "y": [0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5], "type": "heatmap"}], "config": {"showlegend": true, "xaxis": {"showticklabels": true, "gridwidth": 0.5, "tickvals": [20, 40, 60, 80, 100], "range": [0.5, 100.5], "domain": [0.02137649460484106, 0.7504228638086905], "mirror": false, "tickangle": 0, "showline": true, "ticktext": ["20", "40", "60", "80", "100"], "zeroline": false, "tickfont": {"color": "rgba(0, 0, 0, 1)", "family": "sans-serif", "size": 11}, "zerolinecolor": "rgba(0, 0, 0, 1)", "anchor": "y", "visible": true, "ticks": "inside", "tickmode": "array", "linecolor": "rgba(0, 0, 0, 1)", "showgrid": true, "title": {"text": "", "font": {"color": "rgba(0, 0, 0, 1)", "family": "sans-serif", "size": 15}}, "gridcolor": "rgba(0, 0, 0, 0.1)", "tickcolor": "rgb(0, 0, 0)", "type": "linear"}, "paper_bgcolor": "rgba(255, 255, 255, 1.000)", "annotations": [], "height": 400, "margin": {"l": 0, "b": 20, "r": 0, "t": 20}, "plot_bgcolor": "rgba(255, 255, 255, 1.000)", "yaxis": {"showticklabels": true, "gridwidth": 0.5, "tickvals": [2, 4, 6, 8], "range": [0.5, 8.5], "domain": [0.03762029746281716, 0.9901574803149606], "mirror": false, "tickangle": 0, "showline": true, "ticktext": ["2", "4", "6", "8"], "zeroline": false, "tickfont": {"color": "rgba(0, 0, 0, 1)", "family": "sans-serif", "size": 11}, "zerolinecolor": "rgba(0, 0, 0, 1)", "anchor": "x", "visible": true, "ticks": "inside", "tickmode": "array", "linecolor": "rgba(0, 0, 0, 1)", "showgrid": true, "title": {"text": "", "font": {"color": "rgba(0, 0, 0, 1)", "family": "sans-serif", "size": 15}}, "gridcolor": "rgba(0, 0, 0, 0.1)", "tickcolor": "rgb(0, 0, 0)", "type": "linear"}, "legend": {"yanchor": "auto", "xanchor": "auto", "bordercolor": "rgba(0, 0, 0, 1)", "bgcolor": "rgba(255, 255, 255, 1.000)", "borderwidth": 1, "tracegroupgap": 0, "y": 1, "font": {"color": "rgba(0, 0, 0, 1)", "family": "sans-serif", "size": 11}, "title": {"font": {"color": "rgba(0, 0, 0, 1)", "family": "sans-serif", "size": 15}, "text": ""}, "traceorder": "normal", "x": 1}, "width": 925.484375}}