Sigma notation - two variables. 'for' loop or symsum?

Hello
I am trying to compute a sigma summation of a simple single column vector x, where:
N = length(x)
k = 0:N/4
i = 1:N-k
I need to solve for Axx(k):
I have tried to solve this using 'for' loops and symsum function, without success. Help is hugely appreciated, thanks.

 Réponse acceptée

This runs:
N = length(x);
for k = 0:N/4
Axx(k+1) = 0;
for i = 1:N-k
Axx(k+1) = Axx(k+1) + x(i)*x(i+k);
end
end
I’ll let you determine if it gives the answers you expect.

2 commentaires

Nate
Nate le 22 Oct 2014
Modifié(e) : Nate le 22 Oct 2014
Yes - it works perfectly, thanks.
Also - this seems to work as well:
N = length(x);
for k = 0:(N/4);
Axx(k+1) = sum((x(1:N-k,2)).*(x(1+k:N,2)));
end
My pleasure!

Connectez-vous pour commenter.

Plus de réponses (1)

Axx = x.'*hankel(x,zeros(1,N/4+1));

2 commentaires

Nate
Nate le 22 Oct 2014
Thanks for this. I get an error when used with my 'x' vector.
Error using zeros Size inputs must be integers.
I found something that seems to work (see my comment below).
Thanks
That's probably because your value N is not a multiple of 4. Do this:
round(N/4)+1
instead.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Mathematics dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by