function outprod.m
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Cannot run this coding. Please help me
function [X]=outprod(V,D)
n=3;
A=randn(n); %random square matrix
A=A'*A;
[V,D]=eig(A);%find eigenvalue and eigenvector
X=zeros(n); %define the matrix
for i=1:n
X=X+D(i,i)*outprod(V(:,i),V(:,i));
display(X);
display(A');
end
end
1 Commento
Jan
il 14 Dic 2022
Spostato: Matt J
il 14 Dic 2022
You forgot to mention, what the problem is. The error message should mention this already.
This function overwrites the inputs V and D and calls itself recursively until the recursion limit is exhausted. The readers cannot guess reliably, what the intention of the function is. Therefore it is fragile to suggest a modification of the code.
Please explain, what you want to calculate. In future questions attach a copy of the complete error message.
Risposte (1)
Matt J
il 14 Dic 2022
Modificato: Matt J
il 14 Dic 2022
Perhaps this is what you want?
n=3;
A=randn(n); %random square matrix
A=A'*A;
[V,D]=eig(A);%find eigenvalue and eigenvector
X=outprod(V,D);
display(X);
display(A');
function [X]=outprod(V,D)
n=length(D);
X=0; %define the matrix
for i=1:n
X=X+D(i,i)*V(:,i)*V(:,i)';
end
end
0 Commenti
Vedere anche
Categorie
Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!