code is not 'return'-ing
Ältere Kommentare anzeigen
I want to produce a code that compares both Cholesky in-built function with calculated values, but my current code is not returning to line 1. i can't figure out why.
this is my current code
A=input('Matrix= ');
[n,m]=size(A);
if m==n
if issymmetric(A,'nonskew')
if eig(A)>=0
fprintf('matlab inbuilt function "chol" is: ')
R=chol(A)
[n,m]=size(A);
R1=zeros(n,m);
h=1;
for j=1:n
if j==1
R1(j,1)=sqrt(A(j,1));
else
R1(j,1:h)=((A(j,1:h))/(R1(1:h,1:h))')';
sum=R1(j,1:h)*(R1(j,1:h))';
R1(j,j)=sqrt(A(j,j)-sum);
h=h+1;
end
end
else
fprintf('matrix does not have positive eigenvalues, ')
return
end
fprintf('Calculated value is: ')
Q=R1'
else
fprintf('the input is not a symmetrical matrix, try again')
return
end
else
fprintf('the format of input matrix is wrong')
return
end
3 Kommentare
Komel Kaur
am 19 Dez. 2020
VBBV
am 19 Dez. 2020
The return command just exits the loop and returns to command prompt. Read the note in reference below
Komel Kaur
am 19 Dez. 2020
Akzeptierte Antwort
Weitere Antworten (0)
Kategorien
Mehr zu Linear Algebra finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!