hifir4py.ksp.orth_null

orth_null(A, n_null: int, M, leftnull: bool, restart: int, rtol: float, maxit: int, work: Optional[hifir4py.ksp.orth_null.FGMRES_WorkSpace] = None, verbose: int = 1) Tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray][source]

Compute multiple (small dimension) null-space components

Parameters:
  • A (csr_matrix) – Input coefficient matrix
  • n_null (int) – Dimension of nullspace
  • M (HIF) – HIF preconditioner (pre-factorized)
  • leftnull (bool) – Whether or not computing for left nullspace
  • restart (int) – FGMRES restart dimension
  • rtol (float) – Relative nullspace residual tolerance
  • maxit (int) – Maximum iterations
  • work (FGMRES_WorkSpace, optional) – Buffer space
  • verbose (int, optional) – Verbose level, default is 1; if verbose>1, then will print information for each nullspace vector computation
Returns:

  • us (ndarray) – Null-space components (normalized), stored in Fortran order and shape[1] is at most n_null
  • its (ndarray) – History of number of FGMRES iteration for all null-space components
  • its_ir (ndarray) – History of number of iterative refinements for all null-space components