0
我有一个矢量在某些地方有1
,我想用矢量创建一个对角线。该载体被称为one_vec_two
:为什么'spdiags`不能将矢量放在正确的位置?
n = 4;
one_vec_two = zeros(n*n, 1);
one_vec_two(1,1) = 1;
for k=0:(n-1)
one_vec_two(k*n+1, 1) = 1;
end
non_zero_vecs = [one_vec_two];
placement = [n-1];
A = spdiags(non_zero_vecs, placement, n*n, n*n);
fullA = full(A);
disp(A)
矢量one_vec_two
的第一个元素是1:
>> one_vec_two(1)
ans =
1
而且,我放置起始于对角线n-1
的载体,它是3
。但是,当我到第4列时,我没有看到它:
>> fullA(1,4)
ans =
0
为什么MATLAB不把我的矢量放在正确的位置?
我明白了......谢谢 – Sother