Info
This question is closed. Reopen it to edit or answer.
Why do I get NaN result?
    4 views (last 30 days)
  
       Show older comments
    
Hi, 
When I'm using the steepest descent method I have a hard time getting the result on the x:cordinate.
In the code below, the issue arises in "gradf". Can someone help me?
n=0;            %initialize iteration counter 
eps=1;          %initialize error 
a=0.04;         %set iteration parameter 
x=[-1;-1];        %set starting value
%Computation loop 
while eps>0.5e-4&n<100 
    gradf=[3*x(1)^2+0.8*x(1)+2.8*x(2); 2.8*(x(1))+2.7*(x(2))^2-1.1];  %gradf(x) 
    eps=abs(gradf(1))+abs(gradf(2));                             %error 
    y=x-a*gradf;                                                 %iterate 
    x=y;                                                         %update x 
    n=n+1;                                                       %counter+1 
end 
n,x,eps,        %display end values
0 Comments
Answers (1)
  Sudhakar Shinde
      
 on 12 Oct 2020
        Values within gradf function for n=32 becomes infinite ('inf') and hence results are NAN (Not a number).
0 Comments
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!
