2013-02-19 6 views
2

У меня есть две матрицы A1 и A2, например A1 = [1 0; 1 1]; и A2 = [0 1; 1 1];Matlab - массив матриц

Теперь я не хочу, чтобы они назывались A1 и A2, так как у меня будут матрицы.

Так что я хотел что-то вроде

А (1) = [1 0; 1 1]; A (2) = [0 1; 1 1]; .. A (n) = [...];

Но Matlab не позволяет мне это делать.

Я знаю, что можно использовать A (:,:, 1) = [...], но это уродливо и заставляет меня вводить:,:, все время ... поэтому я хочу знать, есть ли другое решение.

Я попробовал A.1, но имена полей structs должны быть строками.

ответ

6

массив ячеек Использование'S:

A = cell(N, 1); 

A{1} = [ 1 0; 1 1 ]; 
A{2} = [ 0 1; 1 1 ]; 
3

Вы можете использовать массив структур.

A(1).mat = [1 0; 1 1]; 
A(2).mat = [0 0; 1 1]; 
... 
A(n)... 

или массив ячеек

A{1} = [1 0; 1 1]; 
A{2} = [0 1; 1 1]; 
... 
A{n}... 
Смежные вопросы