суммирование рекурсивной функции в MATLAB - PullRequest
0 голосов
/ 17 мая 2010
B=[1 1 1 1 1 1....1] % vector of length N elements

Xk= sin(2*pi/16) 

Мне нужно найти функцию alpha (l, k), которая имеет две переменные l и k и условие, учитывая, что alpha (l, 0) = alpha (l, -1) = alpha (l, -2). ..... = alpha (l, - (N-1)) = 0, т. е. независимо от значения l, alpha = 0 для прошлых значений

A= input('no of iterations'); % no. of iterations user want
N=input('N values of alpha:')
alpha1=[];

for k=0:A-1

l=0:N-1    % need 10 separate alpha values for every k, which goes from 0 to A-1 

alpha(l,k)= Xk + summation( B(j)*alpha(l,k-j)) % as summation goes from j=1 to N


alpha1=[alpha1 alpha]

end;

Может кто-нибудь помочь мне решить эту рекурсивную функцию, я новичок в Matlab.

альфа

1 Ответ

1 голос
/ 28 мая 2010

Когда я читаю вопрос, ответ в основном должен выглядеть так:

function x=alpha(l,k)
if k<=0
  x=0;
  return
else
  % from your code
  x = Xk + summation( B(j)*alpha(l,k-j)) % as summation goes from j=1 to N
end

Конечно, вам нужно добавить объявления в функцию ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...