Генерация затухающих синусоидальных волн различной частоты - PullRequest
0 голосов
/ 22 марта 2019

Я пытаюсь генерировать синусоидальные волны различной частоты и соединять их все вместе.-

  1. Временной интервал составляет 1 секунду для каждой частоты,
  2. Амплитуда 2,
  3. Фаза 0,
  4. Постоянная затухания 2,5

и следующие частоты в следующем порядке:

261, 293, 309, 348, 393, 419, 492, 522, 467, 413, 393, 353, 309, 293, 261

Я пытаюсь сделать это с помощью следующего кода:

for i = 1:15;

    yi = (A*exp(-lemda*t)).*(sin(2*pi*f(i)*t+w));
    % plot
    subplot(16,1,i);
    plot(t,yi);
    title(['f = ' num2str(f(i))]);
    % sound file
    % sound(yi);
    audiowrite(path,yi,fs);
    [zi, fs] = audioread(path);
    y = [y; zi];
    sound(y);

end;

Но это дает мне ошибку;

Ошибка при использовании vertcat Размеры сцепляемых массивов не согласованы.

Ошибка в Q5_a (строка 28)

    y = [y; zi];

Может кто-нибудь мне помочь?Я новичок в Matlab, здесь все кажется большим.Заранее спасибо.

...