Квадратная волна от синусоид

Этот пример показывает, как расширение ряда Фурье для квадратной волны состоит из суммы нечетных гармоник.

Начните, сформировав временной вектор от 0 до 10 с шагом 0,1 и примите синус всех точек. Постройте график этой основной частоты.

t = 0:.1:10;
y = sin(t);
plot(t,y);

Figure contains an axes. The axes contains an object of type line.

Затем добавьте третью гармонику в основной, и постройте его.

y = sin(t) + sin(3*t)/3;
plot(t,y);

Figure contains an axes. The axes contains an object of type line.

Теперь используйте первую, третью, пятую, седьмую и девятую гармоники.

y = sin(t) + sin(3*t)/3 + sin(5*t)/5 + sin(7*t)/7 + sin(9*t)/9;
plot(t,y);

Figure contains an axes. The axes contains an object of type line.

Для финала перейдите от фундаментального вплоть до 19-й гармоники, создавая векторы последовательно большего количества гармоник и сохраняя все промежуточные шаги как строки матрицы.

Постройте график векторов на том же рисунке, чтобы показать эволюцию квадратной волны. Обратите внимание, что эффект Гиббса говорит, что он никогда не совсем туда попадет.

t = 0:.02:3.14;
y = zeros(10,length(t));
x = zeros(size(t));
for k = 1:2:19
   x = x + sin(k*t)/k;
   y((k+1)/2,:) = x;
end
plot(y(1:2:9,:)')
title('The building of a square wave: Gibbs'' effect')

Figure contains an axes. The axes with title The building of a square wave: Gibbs' effect contains 5 objects of type line.

Вот 3-D поверхность, представляющая постепенное преобразование синусоиды в квадратную волну.

surf(y);
shading interp
axis off ij