Как применить сдвиг скорости к массиву длин волн с равномерным логарифмическим интервалом?

Предположим, у меня есть массив длин волн для спектра в ангстремах. Предположим далее, что длина волны имеет «равномерный логарифмический интервал», так что если я просто возьму разницу в ангстремах между соседними элементами массива i и i+1, это не будет таким же, как разница в ангстремах между любыми двумя другими соседними элементами j и j+1. Однако если бы я сначала взял log10 массива длин волн, то разница между любыми двумя соседними элементами логарифмического массива i и i+1 была бы равна разнице между любыми другими элементами логарифмического массива j и j+1.

Теперь я знаю априори, что этот массив длин волн имеет смещение скорости на X км/с, которое я в основном хочу удалить. Как применить сдвиг скорости на -X км/с к этому массиву длин волн, который имеет равномерный логарифмический интервал?

Ответы (1)

Если у вас есть ячейки с равным логарифмическим приращением длины волны, тогда сдвиг скорости соответствует непосредственно сдвигу пикселей. Это причина бинирования с равным логарифмическим приращением длины волны.

См. этот вопрос для краткого доказательства. Все, что вам нужно сделать, это выяснить, чему соответствует каждый пиксель с точки зрения скорости.

Δ В знак равно с Δ журнал λ

Спасибо, я понял это. Точный алгоритм: (1) возьмите натуральный логарифм вашего массива длин волн в ангстремах, (2) добавьте сдвиг скорости к вашему массиву логарифмических длин волн через (c*logArray + velShift)/c, (3) преобразуйте ваш сдвинутый логарифм массив длин волн обратно в ангстрем, взяв экспоненту от него.