## Documentation Center |

Zero out "small" entries subject to structural rank

`A = gangstr(M,tol)`

`A = gangstr(M,tol)` creates
matrix `A` of full structural rank such that `A` is `M` except
that elements of `M` that are relatively "small,"
based on `tol`, are zeros in `A`.
The algorithm decreases `tol`, if needed, until `sprank(A) = sprank(M)`. `M` must
have at least as many columns as rows. Default `tol` is `1e-2`.

`gangstr` identifies elements of `M` that
are relatively less than `tol` by first normalizing
all the rows of `M` to have norm `1`.
It then examines nonzeros in `M` in a columnwise
fashion, replacing with zeros those elements with values of magnitude
less than `tol` times the maximum absolute value
in that column.

Was this topic helpful?