Borrar filtros
Borrar filtros

sum of a series

3 visualizaciones (últimos 30 días)
dav
dav el 18 de Mzo. de 2013
Hi,
Can someone please help me to write the following code using a summation
for i = 1:1000
v(i) =y(i) - a0- a1*y(i-1)-a2*y(i-2);
end
Thanks.

Respuesta aceptada

Azzi Abdelmalek
Azzi Abdelmalek el 19 de Mzo. de 2013
a0=1;
a1=2;
a2=1;
y=rand(1,1000) % your data
coeff=[-a2 -a1 1];
for ii = 3:1000
v(ii) =sum(y(ii-2:ii).* coeff)-a0;
end

Más respuestas (1)

Youssef  Khmou
Youssef Khmou el 18 de Mzo. de 2013
Editada: Youssef Khmou el 18 de Mzo. de 2013
hi, what is Y[nT]? random variable?
N=1000;
a0=2.36;
a1=4.56;
a2=5.57;
y=randn(N,1);
v=zeros(N,1);
v(1:2)=y(1:2); % Optional, take is as initial condition
% Using Loops
for n=3:N
v(n)=y(n)-a0-(a1*y(n-1))-(a2*y(n-2));
end
figure, plot(y), hold on, plot(v,'r'), hold off
% Vectorization
Y1=zeros(size(y));
Y1(2:end)=y(1:end-1);
Y2=zeros(size(y));
Y2(3:end)=y(1:end-2);
V=y-a0-a1*Y1-a2*Y2;
% Comparaison
figure, plot(v), hold , plot(V,'r'), hold off
  5 comentarios
dav
dav el 19 de Mzo. de 2013
I figured it out. Thanks for your time.
Youssef  Khmou
Youssef Khmou el 19 de Mzo. de 2013
ok

Iniciar sesión para comentar.

Categorías

Más información sobre Logical en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by