Однажды мне попалось видео, где обсуждалась взаимосвязь физики и духовных практик. Автор обронил фразу:
Сейчас мы не способны, жуя жвачку, решать уравнения.
Не знаю, какой глубокий смысл вкладывался в эти слова, но мое внимание зацепилось за чисто технический аспект.
Действительно, решать математические задачи, жуя резинку, может и сложно, но что, если попробовать вывести уравнение для самой жвачки?
Идея сформировалась мгновенно. Процесс жевания порождает звуковые колебания, которые можно оцифровать и представить в виде последовательности чисел. А если у нас есть массив данных, значит, мы можем аппроксимировать его математической функцией. Так я запустила небольшой проект на Python, чтобы превратить обычный звук жевания в формулу.
Сразу уточню: это не научное открытие или претензия на закон природы. Мне было любопытно пройти полный путь от случайной мысли до работающего программного кода и реальной математической модели.
Суть математизации звука
Цифровое аудио — это уже набор чисел, где через фиксированные промежутки времени фиксируется амплитуда звуковой волны.
В упрощенном виде структура выглядит так:
время: 0.0000 0.0001 0.0002 0.0003 ...
амплитуда: 0.012 -0.008 0.031 0.027 ...
Мы имеем массив координат (ti, yi), где ti — временная метка, а yi — амплитуда. Соединив эти точки, мы получим графическое отображение волны. Но мне хотелось чего-то более изящного — компактного уравнения.
Идеальным инструментом для этого стало преобразование Фурье. Суть его метода элегантна: любую сложную звуковую волну можно разложить на сумму простых синусоид с различными характеристиками.
Общая формула выглядит следующим образом:
Здесь:
-
x(t) — значение амплитуды в заданный момент времени;
-
— среднее значение сигнала;
-
Ak — амплитуда конкретной гармоники;
-
fk — частота;
-
— начальная фаза;
-
N — общее количество учтенных гармоник.
Фактически, я пыталась воссоздать акустический профиль жевания, накладывая друг на друга множество косинусоид.
Исходные данные
Для эксперимента я взяла короткий MP3-файл:
-
длительность около 6 секунд;
-
монофонический канал;
-
частота дискретизации 44 100 Гц.
С такой частотой файл содержит свыше 267 тысяч отсчетов. Для моих целей это избыточно, поэтому я выполнила даунсемплинг до 8000 Гц. Это позволило значительно облегчить вычисления, сохранив при этом общую структуру звука.

На графике отчетливо видны как плавные колебания, так и резкие всплески, соответствующие щелчкам жвачки — именно они делают описание формулой столь нетривиальной задачей.
Шаг 1. Декодирование
Используя библиотеку ffmpeg, я конвертировала аудио в массив 32-битных чисел с плавающей точкой, после чего нормализовала значения, приведя их в диапазон от -1 до 1. Теперь данные стали понятны для NumPy.
Шаг 2. Разложение на частоты
Для анализа я применила Быстрое преобразование Фурье (FFT):
centered = samples - np.mean(samples) spectrum = np.fft.rfft(centered) frequencies = np.fft.rfftfreq(centered.size, d=1.0 / sample_rate) amplitudes = (2.0 / centered.size) * np.abs(spectrum) phases = np.angle(spectrum)
Результатом стали пары «частота-амплитуда-фаза», которые и легли в основу уравнения.
Шаг 3. Фильтрация
Чтобы формула оставалась читаемой, я отобрала лишь 32 наиболее значимые спектральные компоненты, отсеяв те, что расположены слишком близко друг к другу (минимум 25 Гц разницы). Это компромисс между точностью воспроизведения и громоздкостью математического выражения.
Итог: уравнение жевания
Финальная компактная модель выглядит так:
Для наглядности привожу сокращенную версию из 8 ключевых гармоник:
Конечно, эта формула специфична: она описывает только конкретную запись. Любое изменение условий — и параметры уравнения изменятся.
Можно ли это услышать?
Да, я синтезировала аудио обратно из формулы. Результат предсказуем: мы слышим основные частотные составляющие, но теряем «живую» детализацию — шорохи и резкие импульсы. Жевание — это не чистая синусоида, а хаотичный акустический процесс.
Что в итоге
Конечно, я не получила «универсальную формулу жевания», но нашла изящное математическое представление конкретного звукового фрагмента. Самое интересное в этом опыте — сама трансформация: от случайного комментария в ролике до реализации на Python.
Фраза, брошенная в видео, превратилась для меня в увлекательный технический челлендж. И пусть я не могу решать уравнения, одновременно жуя резинку, зато теперь я могу легко решить «уравнение жвачки».
