Решение пары вещественных (и взаимосвязанных) уравнений

У меня есть разностное уравнение первого порядка: y[n] = z0 * [n-1] + x[n] (2-3), Обычно мы применяем z-преобразование, а затем используем функцию "фильтра". Но мой учитель хочет сделать это по-другому:

В разностном уравнении первого порядка (2-3) пусть yR[n] и yI[n] обозначают действительную и мнимую части y[n]. Напишите пару вещественных разностных уравнений, выражающих yR[n] и yI[n] через yR[n-1], yI[n-1], x[n] и r, cos m и sin m.

(Я забыл упомянуть, x[n]=G*dirac[n], где G - комплексная константа, откуда взялись r, cos m и sin m).

Вот мой результат (это лучшее, что я мог придумать):

yR[n]=r(yR[n-1]cosm - yI[n-1]sinm) + xR[n]
yI[n]=r(yI[n-1]cosm + yR[n-1]sinm) + xI[n]

Тогда следующий вопрос:

Напишите программу MATLAB для реализации этой пары реальных уравнений и используйте этот проргам для генерации импульсного отклика уравнения (2-3) для r=1/2 и m=0 и m=pi/4. Для этих двух случаев постройте реальную часть полученных импульсных откликов. Сравните с реальной частью вывода комплексной рекурсии (2-3)

Что я не понимаю, так это то, как я могу это сделать, кроме применения z-transform, а затем использования функции "filter". Я посмотрел в Интернете, и что-то было в форме пространства состояний, но я не знаю, уместно ли это или нет. Также я не хочу, чтобы решение было вручено мне на серебряном блюде, я просто хочу знать, как его решить. Большое спасибо!

1 ответ

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

f(0)=1;
f(n)=a*f(n-1);

По существу, для этого вы должны выполнить цикл для некоторого диапазона (возможно, 20 точек), где f(n) смотрит на предыдущую функцию.

Для вашей функции, я подозреваю, вы просто установите реальную часть (yR[0]) к 1, yI[0]=0и запустить его на некоторое время.

Я знаю, что Matlab основан на 1, так что вы, вероятно, хотите установить первое значение равным 1, но применяется тот же принцип.

Другие вопросы по тегам