If you comment out lines 42-49, you will see that it works fine!
On Tuesday, April 28, 2015 at 9:20:49 PM UTC-4, Pooya wrote: > > Thanks, but I think "if iter > 2" (line 21) makes sure that x_previous is > defined in the previous iteration. Just to be clear, the condition to check > here was "g_norm > g_norm_old", but I changed it to get there as early as > the second iteration. > > On Tuesday, April 28, 2015 at 9:13:49 PM UTC-4, Avik Sengupta wrote: >> >> I'm seeing the error in line 22 of your gist where you are trying to >> print the current value of "x_previous". However, x_previous is first >> defined in line 38 of your gist, and so the error is correct and doesnt >> have anything to do with Optim, as far as I can see. >> >> On Wednesday, 29 April 2015 01:39:02 UTC+1, Pooya wrote: >>> >>> Hi all, >>> >>> I have a problem that has made me scratch my head for many hours now! It >>> might be something obvious that I am missing. I have a Newton-Raphson code >>> to solve a system of nonlinear equations. The error that I get here does >>> not have anything to do with the algorithm, but just to be clear, I need to >>> find the best possible solution if the equations are not solvable, so I am >>> trying to stop simulation when the direction found by Newton-Raphson is not >>> correct! In order to do that I put an if-loop in the beginning of the main >>> loop to take x from the previous iteration (x_previous), but I get >>> x_previous not defined! I am using the Optim package to do a line search >>> after the direction has been found by Newton-Raphson. If Optim is not used, >>> things work perfectly (I tried by commenting out those lines of code). >>> Otherwise I get the error I mentioned. My code is here: >>> https://gist.github.com/prezaei85/372bde76012472865a94, which solves a >>> simple one-variable quadratic equation. Any thoughts are very much >>> appreciated. >>> >>> Thanks, >>> Pooya >>> >>