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: