我想替换matlab中两个矩阵之间的diag,例如:a =
1 1 1
1 1 1
1 1 1
b =
2 2 2
2 2 2
2 2 2
我希望函数执行此操作:b =
1 2 2
2 1 2
2 2 1
一个=
2 1 1
1 2 1
1 1 2
但是我没有得到最终结果,而是在 for 循环中得到了所有中间结果//我做错了什么?
function [x] = may( a,b )
l1=length(diag(a));
l2=length(diag(b));
n=diag(a);
m=diag(b);
for i=1:l1
b(i,i)=n(i)
end
for j=1:l1
a(j,j)=m(j)
end
end