How to Code This Using filter?

3 views (last 30 days)
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.

Accepted Answer

Devineni Aslesha
Devineni Aslesha on 21 Jul 2020
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.

More Answers (0)



Community Treasure Hunt

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

Start Hunting!