From 808036ddc8c5997b4d9ebdfe6377a8b8b6f4837b Mon Sep 17 00:00:00 2001 From: Rowan Cockett Date: Wed, 20 Nov 2013 19:37:48 -0800 Subject: [PATCH] Bug fixes in optimization. --- SimPEG/inverse/Optimize.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/SimPEG/inverse/Optimize.py b/SimPEG/inverse/Optimize.py index bf8b63be..c2f95dd9 100644 --- a/SimPEG/inverse/Optimize.py +++ b/SimPEG/inverse/Optimize.py @@ -189,9 +189,7 @@ class Minimize(object): self.f, self.g, self.H = evalFunction(self.xc, return_g=True, return_H=True) if doPub: pub.sendMessage('Minimize.evalFunction', minimize=self, f=self.f, g=self.g, H=self.H) self.printIter() - if self.stoppingCriteria(): - self.doEndIteration(self.xc) - break + if self.stoppingCriteria(): break p = self.findSearchDirection() if doPub: pub.sendMessage('Minimize.searchDirection', minimize=self, p=p) p = self.scaleSearchDirection(p) @@ -668,7 +666,7 @@ class BFGS(Minimize, Remember): if k < 0: d = self.bfgsH0.solve(d) else: - khat = np.mod(n-nn+k,nn) + khat = 0 if nn is 0 else np.mod(n-nn+k,nn) gamma = np.vdot(S[:,khat],d)/np.vdot(Y[:,khat],S[:,khat]) d = d - gamma*Y[:,khat] d = self.bfgsrec(k-1,n,nn,S,Y,d)