Оглавление
§ Суть задачи
Как и всё на этом сайте, идеи, которые появились для статей, появились когда мне было 10-18 лет, в этот период времени я наметил всё на всю свою жизнь, что хочу делать. Так вот, идея сложения волн волновала меня давно, с далекого детства. Я не особо мог доказать ее, потому что не пытался, и сегодня принялся за эту задачу снова.Итак, существует такое понятие как "когерентные волны", это когда волны распространяются в некой среде с одинаковой частотой. Например, 100 герц или 100 терагерц, например, по сути не важно, главное то, что частота одинаковая у таких волн. Такие волны используют лазеры, там можно так делать. Вокруг нас, конечно же, волны самого разного пошиба, в суть задачи не входит высчитывать всё вокруг.
Простейшую незатухающую волну можно описать приблизительно так:
Здесь это и есть частота, — фазовое смещение волны, и конечно же — амплитуда. Теперь же задача в том, чтобы сложить 2 или более волн друг с другом и получить новую амплитуду и смещение.
Исходные 2 волны имеют свою амплитуду и смещение, что очень важно, потому что от этого будет зависеть то, какая получится итоговая амплитуда и фазовый сдвиг волны.
§ Разложение синусов
Для начала, уберем частоту, поскольку она не играет никакой роли при сложении когерентных волн, на данный момент точно. Остается только сложить два синуса, но перед этим, надо разложить их.Теперь давайте сложим два синуса с заданными ранее амплитудами и фазой.
Если привести подобные, то получится следующий результат.
Поскольку являются заданными константами, то заменю их таким образом:
И потому теперь уравнение будет выглядеть так:
§ Поиск экстремумов
Следующей задачей, которую поставим перед собой, будет поиск амплитуды и фазы новой волны. Сначала надо найти новую фазу, но для этого потребуется проанализировать функцию, найти максимум.Сейчас нам известно значение функции, и надо найти точку максимума этой функции. Это можно сделать с помощью математического анализа, дифференцируя функцию по x, и приравнивая ее к 0:
Теперь можно перенести слагаемые по разные стороны уравнения.
А после перенести сомножители.
Как можно заметить, тут нарисовался тангенс.
Чтобы найти итоговое значение , то надо найти арктангенс.
Теперь мы точно знаем точку, где находится максимум функции от сложения двух синусов, а значит, сможем вычислить и ее амплитуду, для этого достаточно просто поставить найденный в уравнение:
Это гарантированно дает максимальное значение на графике. Осталось вычислить фазу, которая будет для нового значения синуса. Известно A, но неизвестно значение :
Поскольку необходимо найти фазу, в котором sin будет иметь максимальное значение, то ищем точно таким же способом, вычисляя дифференциал и приравнивая к нулю:
Применяем арккосинус.
Так как знаем значение вычисленное на предыдущем этапе, то:
§ Некоторые примеры

Неплохо бы проиллюстрировать то что я написал выше. На графике изображено сложение двух функции . Синяя линия это одно из слагаемых, а бирюзовая, это результат.

Теперь же на графике появилось два разных слагаемых: , мы видим расхождение по фазе и образование нового графика функции от сложения двух синусов. Вычислим точку максимума:
.
Теперь можно вычислить значение функции сложения:
Соответственно, новая функция sin будет иметь вид:
§ Поиск приблизительного значения
Как можно отметить выше, я следовал как можно более строгому методу поиска точек пересечения синусов. Сейчас я хочу рассказать о более быстром и простом, но приблизительном методе поиска того же самого, причем, с возможностью складывать несколько синусов.Для этого достаточно лишь найти ближайший максимум полученной функции. Как известно, максимум можно искать разными методами. В предыдущих параграфах я использовал точный метод поиска через арктангенс, а можно использовать и приблизительный.
Есть такой метод поиска локального минимума/максимума функции, как градиент. С помощью градиента возможно искать экстремумы не только в одномерном пространстве, как это сейчас буду делать, но и в многомерном. Поскольку итоговая функция получится синусоида, то любой первый максимум функции будет правильным решением.
Чтобы найти максимум функции, необходимо начать с точки и двигаться с той скоростью, с которой в данной точке имеет наклон касательная, либо же, производная. Производная от суммы синусов будет сумма косинусов.
Поэтому каждый новый шаг будет таким:
Это итерационный алгоритм, степень точности которого зависит от количества шагов. Если взять производную с отрицательным знаком, то тогда вместо максимума функции будет отыскиваться минимум, но это не принципиально. Кстати для градиента необходимо выбирать шаг , но в нашем случае хорошо подойдет шаг .
После отыскания максимума, фаза и амплитуда находятся ровно тем же самыми методами, что были описаны в предыдущих параграфах.