Utilice un vector como índice de una matriz

Estoy escribiendo una función MATLAB para leer datos en una matriz n-dimensional (tamaño de dimensión variable). Necesito poder acceder a un punto específico en Matrix (para escribir o leerlo, por ejemplo), pero no sé de antemano cuántos índices especificar.

Actualmente tengo uncurrent_point vector que recorro para especificar cada índice, y unmax_points vector que especifica el tamaño de la matriz. Entonces, si por ejemplo quisiera una matriz tridimensional de tamaño 1000 por 15 por 3,max_points = [1000 15 3] ycurrent_point itera desde[1, 1, 1] a[1000, 15, 3] ([1, 1, 1] ->[1000, 1, 1] ->[1, 2, 1] ->[1000, 2, 1] -> ...). Lo que me gustaría poder hacer es alimentarcurrent_point como un índice de la matriz así:

output_matrix(current_point) = val

Pero aparentemente algo comooutput_matrix([1 2 3]) = val solo estableceráoutputmatrix(1:3) = 30. No puedo simplemente usar variables ficticias porque a veces la matriz necesitará 3 índices, otras veces 4, otras veces 2, etc., por lo que un vector de longitud variable es realmente lo que necesito aquí. ¿Hay una manera simple de usar un vector como puntos en un índice?

Respuestas a la pregunta(3)

Su respuesta a la pregunta