Info

This question is closed. Reopen it to edit or answer.

function svd(A,'econ')

1 view (last 30 days)
NOR AZIERA
NOR AZIERA on 14 Dec 2022
Closed: Jan on 14 Dec 2022
My problem is cannot running this coding which is i want the output same with matrix A. Please help me.
function A1=qoutprod(S,V)
A=[-2 8 20;14 19 10;2 -2 1];
[U,S,V]=svd(A,'econ');
A1=zeros(3,3);
for i=1:3
A1=A1*U(:,1:i)*qoutprod(S(1:i,1:i),V(:,1:i));
end
end
below show error when run the coding:
>> qoutprod
Out of memory. The likely cause is an infinite recursion within the program.
Error in qoutprod (line 8)
A1=A1*U(:,1:i)*qoutprod(S(1:i,1:i),V(:,1:i));
  2 Comments
Bora Eryilmaz
Bora Eryilmaz on 14 Dec 2022
It is not clear what you are trying to do. Your code is making recursive calls to the qoutprod functions that will never stop running.
Jan
Jan on 14 Dec 2022
Edited: Jan on 14 Dec 2022
@NOR AZIERA: Please format your code properly. I've done this for you before, but you can do this by your own. Thanks.
This is a follow-up question to:
I've mentioned already, that "does not work" and "cannot run" is not useful to explain a problem. Post a copy of the error message instead.
The code suffers from the same problem: You call qoutprod recursive from inside the function and overwrite the input arguments. This causes an infinite recursion. You got solutions in another question already, therefore I close this question.

Answers (0)

This question is closed.

Tags

Community Treasure Hunt

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

Start Hunting!