Problem with lnsrch and BGFS


rashed_karim
02-09-2008, 04:40 AM
Hi all,

I am having problems with the BFGS method. I implemented the dfpmin and lnsrch from Numerical receipes (3rd Ed.). For some reason lnsrch keeps returning the point where it started search from, i.e. in the function:
void lnsrch(VecDoub_I &xold, const Doub fold, VecDoub_I &g, VecDoub_IO &p, VecDoub_O &x, Doub &f, const Doub stpmax, Bool &check, T &func)

lnsrch returns: p = xold

As a result, dfpmin is stuck at one point and does not proceed to subsequent points, as it should.

When can something like this happen? Any one has an idea why this happens?