Skip to main content
. Author manuscript; available in PMC: 2016 Sep 7.
Published in final edited form as: SIAM J Imaging Sci. 2015 May 5;8(2):1030–1069. doi: 10.1137/140984002

Algorithm 1.

Outer iteration of the designed inexact Newton–Krylov method.

1: v0h0 compute m0h,λ0h,Jh(v0h), and g0h; k ← 0
2: while true do
3:  stop ← (4.9)
4: if stop break
5: sk ← solve (4.4) given mkh,λkh,vkh, and gkh ▷ Newton step
6: αk ← perform line search on sk
7: vk+1hvkh+αksk,
8: mk+1h(t=0)mTh
9: mk+1hsolve (4.1a) forward in time given vk+1h ▷ forward solve
10: λk+1h(t=1)(mRh-mk+1h(t=1))
11: λk+1hsolve (4.1b) backward in time given vk+1h and mk+1h ▷ adjoint solve
12:  compute Jh(vk+1h) and gk+1h given mk+1h,λk+1h, and vk+1h
13: kk + 1
14: end while