is there any correction..?
2 次查看(过去 30 天)
显示 更早的评论
I am doing Singular value decomposition using this.
Xi = [1 2;3 4]; Yi = [1 2;3 4]; Zi = [1 2;3 4];
A=[Xi,Yi,Zi,ones(length(Xi),1)];
[U S V] = svd(A)
Now, i want to do the same without function. so, i written little as below.
Xi = [1 2;3 4]; Yi = [1 2;3 4]; Zi = [1 2;3 4];
A=[Xi,Yi,Zi,ones(length(Xi),1)];
f = eig(A'*A);
for l = 1:length(f);
p(l) = sqrt(f(l));
end
S = diag(p);
[U,D] = eig(A*A');
[V,D] = eig(A'*A);
V = V';
U
S
But in answer i am getting only some of its elements same in matrix. And remaining are different. So, please suggest any modification if there or solution..?
0 个评论
回答(1 个)
Walter Roberson
2013-2-20
In your second bit of code, your S is a square diagonal matrix, not a diagonal matrix the same size as A.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!