Насколько мне известно, с подобными ситуациями трудно справиться в Matlab. У вас может быть массив вершин, так как внутренние вершины имеют одинаковый размер, иначе вы получите ошибку:
>> a = [2];
>> b = [2,3,4]
b =
2 3 4
>> c = [a;b]
Error using vertcat
Dimensions of arrays being concatenated are not consistent.
Теперь, если a
имеет тот же размер, o b
. ..:
>> a = [2,2,3];
% with ; be is put in a new row
>> c = [a;b]
c =
2 2 3
2 3 4
% using , or space the concatenation is horizontal
>> c = [a,b]
c =
2 2 3 2 3 4
>> c = [a b]
c =
2 2 3 2 3 4
Если вы хотите просто добавить значения к c
, просто выполните:
>> c = [c 9]
c =
2 2 3 2 3 4 9
Я рекомендую вам использовать структуру cell
, если это возможно. Вам необходимо предварительно определить массив cell
, но он может хранить несколько векторов разных размеров:
>> cell1 = cell(2)
cell1 =
2×2 cell array
{0×0 double} {0×0 double}
{0×0 double} {0×0 double}
>> cell1{1} = c
cell1 =
2×2 cell array
{1×7 double} {0×0 double}
{0×0 double} {0×0 double}
>> cell1{2} = a
cell1 =
2×2 cell array
{1×7 double} {0×0 double}
{1×3 double} {0×0 double}
>> cell1{2}
ans =
2 2 3
Надеюсь, это поможет вам ...