Utilities¶

pytential.solve.
gmres
(op, rhs, restart=None, tol=None, x0=None, inner_product=None, maxiter=None, hard_failure=None, no_progress_factor=None, stall_iterations=None, callback=None, progress=False)[source]¶ Solve a linear system Ax=b by means of GMRES with restarts.
 Parameters
op – a callable to evaluate A(x)
b – the right hand side
restart – the maximum number of iteration after which GMRES algorithm needs to be restarted
tol – the required decrease in residual norm
inner_product – Must have an interface compatible with
numpy.vdot()
. Must return a host scalar.maxiter – the maximum number of iteration permitted
hard_failure – If True, raise
GMRESError
in case of failure.stall_iterations – Number of iterations with residual decrease below no_progress_factor indicates stall. Set to 0 to disable stall detection.
 Returns