Info
This question is closed. Reopen it to edit or answer.
function svd(A,'econ')
1 view (last 30 days)
Show older comments
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
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
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:
- https://www.mathworks.com/matlabcentral/answers/1877732-please-help-me
- https://www.mathworks.com/matlabcentral/answers/1878217-function-outprod-m
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.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!