code is not 'return'-ing
이전 댓글 표시
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
Komel Kaur
2020년 12월 19일
VBBV
2020년 12월 19일
The return command just exits the loop and returns to command prompt. Read the note in reference below
Komel Kaur
2020년 12월 19일
채택된 답변
추가 답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Linear Algebra에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!