I don't know how to use filter and unfortunately the Help Documentation of filter is not useful enough for me. I'd like to use filter to code the following recursive formula
x(i+1) = a(i)*x(i), i = 1, 2 , ..., n,
where a(i) is some function of i. Assume x(1) = 2. I don't want to use a for loop for possibly faster implementations.

 Akzeptierte Antwort

Devineni Aslesha
Devineni Aslesha am 21 Jul. 2020

0 Stimmen

Assuming that 'a' is input data and 'x' is the output data, you can use the filter function as shown below
a = 1:5;
num = 1;
den = [1 -1];
x = filter(num,den,a)
for the linear filter equation x(i) - x(i-1) = a(i). However, in your case, it appears like the filter equation is a nonlinear equation. i.e. x(i+1)/x(i) = a(i). So, make sure if your filter equation is correct.

Weitere Antworten (0)

Kategorien

Produkte

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by