This is the first, most initially impactful optimization, which replaces the fsolve GE inverse distortion with a simple numpy-based Newton's method. The distortion correction is well-suited to Newton's method because of how well-behaved of a function it is.
In follow-on optimization, we implemented a Numba version of this, inlining the distortion function into the solver, which provided further speedups.
This is the first, most initially impactful optimization, which replaces the fsolve GE inverse distortion with a simple numpy-based Newton's method. The distortion correction is well-suited to Newton's method because of how well-behaved of a function it is.
In follow-on optimization, we implemented a Numba version of this, inlining the distortion function into the solver, which provided further speedups.