The Gram-Schmidt algorithm for unknown n?

Hiya,
I’m trying to understand how to carry out the gram Schmidt algorithm when you have an unknown number of vectors n.
Any help would be appreciated.

 Réponse acceptée

David Hill
David Hill le 29 Avr 2020
V is matrix input where vectors are column vectors. Output U is matrix with replacement vectors as column vectors.
n = size(V,1);
k = size(V,2);
U = zeros(n,k);
U(:,1) = V(:,1)/sqrt(V(:,1)'*V(:,1));
for i = 2:k
U(:,i) = V(:,i);
for j = 1:i-1
U(:,i) = U(:,i) - ( U(:,j)'*U(:,i) )/( U(:,j)'*U(:,j) )*U(:,j);
end
U(:,i) = U(:,i)/sqrt(U(:,i)'*U(:,i));
end

4 commentaires

Kai Whelan
Kai Whelan le 29 Avr 2020
When I run this code for the output U I don’t get the correct values for the first column ?
David Hill
David Hill le 29 Avr 2020
I believe it is correct. Do you have an example showing it does not work?
Kai Whelan
Kai Whelan le 29 Avr 2020
All good now thanks.
nice job , thanks

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by