/ / Error de índice no válido en Scilab al intentar acceder al elemento de matriz - matlab, scilab

Error de índice no válido en Scilab al intentar acceder al elemento de matriz - matlab, scilab

No estoy seguro de por qué no puedo hacer esto en Scilab.

-->foo=zeros(500);

-->foo(300)
!--error 21
Invalid index.

¿Por qué recibo el error "Índice no válido"? Pensé que había inicializado foo como una matriz con 500 elementos, ¿cada uno de los cuales estaba configurado en 0?

Respuestas

1 para la respuesta № 1

Si zeros en Scilab se comporta como zeros en matlab la llamada zeros(500) crea una matriz de 500x500 de 0s. Dicho esto, foo(300) sería una expresión de Matlab válida, ya que Matlab entiende lo que denomina "indexación lineal" en matrices de rango superior a 1.

Si zeros en Scilab, el bot se comporta como zeros En Matlab no puedo ayudarte.


2 para la respuesta № 2

En Scilab, tienes que dar tanto el número defilas, así como el número de columnas. Por lo tanto, si desea crear una matriz de 500x500, debe decir ceros (500, 500). Si desea un vector de 500x1, debe decir ceros (500, 1).

Si desea crear una matriz de ceros que tenga exactamente tantas filas y columnas como otra matriz (por ejemplo, A), necesita decir ceros (A). Aquí es donde la confusión proviene.

En Scilab, los ceros (500) tomarían 500 como 1x1Matriz y generar una matriz de ceros de tamaño 1x1, que es [0]. En MATLAB, los ceros (500) tomarían 500 para ser del tamaño de la matriz requerida, asumiendo una matriz cuadrada.


0 para la respuesta № 3

printf ("% dn", Md (y, u)) ! - error 21 Índice inválido. en la línea 69 del archivo exec llamado por:

Como soluciono esto?