matlab求向量组的基

来源:百度知道 编辑:UC知道 时间:2024/05/24 22:55:31
用matlab求同一向量空间的基,结果为什么不一样啊?虽然其中一组是另一组的线性组合,但我想要一样的基。有什么函数能求出一样的基吗?

例如向量a,b,c组成空间的基,和向量2a,b,c组成的空间的基显然应该是一样的。但用matlab求出来的就不一样,虽然等价。
我用的函数是orth
自己编算法的话,能给个算法说明吗?线性代数学得不好。。。

function [Q,R]=gschmidt(V)
%基向量正交化的gschmidt程序,V=QR,Q为标准正交基
[m,n]=size(V);
R=zeros(n);Q=zeros(m,n);%初始化
R(1,1)=norm(V(:,1));
Q(:,1)=V(:,1)/R(1,1);
for k=2:n
R(1:k-1,k)=Q(:,1:k-1)'*V(:,k);
Q(:,k)=V(:,k)-Q(:,1:k-1)*R(1:k-1,k);
R(k,k)=norm(Q(:,k));
Q(:,k)=Q(:,k)/R(k,k);
end

自己编算法,这个算法应该不会太难,别用它给的函数算。
这样能控制你要的结果。