Index exceeds matrix dimensions.

2 visualizaciones (últimos 30 días)
srycandy
srycandy el 16 de Jun. de 2011
i wrote codes: {for s = 1: 24 sigma{s,1} = var (X{s}); y{s,1} = sigma{s+1} - a*sigma{s}*a end} where a is nxn matrix. however, i got the Index exceeds matrix dimensions error. i know for s=24; y = sigma(25)-a*sigma(24)*a and sigma(25) doesn't exist.. so how to solve it? very appreciate ur kindness..

Respuesta aceptada

Walter Roberson
Walter Roberson el 16 de Jun. de 2011
Your code appears to be wrong even for other cases. For example, when s = 1, you set sigma{1} first, and then constructing y, you reference sigma{2} which you have not defined yet.
It is difficult for us to tell you how to solve the problem as it is not clear what you are trying to do.
  3 comentarios
Walter Roberson
Walter Roberson el 16 de Jun. de 2011
How do you want to define y{24,1} ? What result do you want for it?
You will need two loops (well, I might perhaps be able to write it with one, but two would be easier.)
You could also consider using cellfun. For example,
sigma = cellfun(@var, X);
would completely replace the looped calculation of sigma{s}
srycandy
srycandy el 19 de Jun. de 2011
thank you some much.. u're right.. it's much more easier if we write it in two..

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices 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