update a matrix as a queue

Hi,
I would like to create a matrix of size 1000 X 1 . After each sampling period, the latest 100 elements come in and push down all the previous elements. For example:
@ t = 0 M = [a0, a1, a2,..., a998, a999]
@ t = 1 M = [a100, a101, a102,... , a1098, a1099]
Can some one recommend a good way of doing this?
Thank you

 Respuesta aceptada

Thorsten
Thorsten el 14 de En. de 2013

1 voto

That's easy: just put the first 900 values of your matrix after the new values:
M = [newvalues; M(1:900)];

Más respuestas (1)

Matt J
Matt J el 14 de En. de 2013

0 votos

M(1:100)=newvalues;
M=circshift(M,[0,-100]);

Categorías

Preguntada:

SC
el 14 de En. de 2013

Community Treasure Hunt

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

Start Hunting!

Translated by