rank

object rank extends UFunc

Computes the rank of a matrix.

The rank of the matrix is computed using the SVD method. The singular values of the SVD which are greater than a specified tolerance are counted.

Value parameters:
m

matrix for which to compute the rank

tol

optional tolerance for singular values. If not supplied, the default tolerance is: max(m.cols, m.rows) * eps * sigma_max, where eps is the machine epsilon and sigma_max is the largest singular value of m.

Returns:

the rank of the matrix (number of singular values)

trait UFunc
trait HasOps
class Object
trait Matchable
class Any
rank.type

Type members

Inherited types

type Impl[V, VR] = UImpl[UFunc, V, VR]
Inherited from:
UFunc
type Impl2[V1, V2, VR] = UImpl2[UFunc, V1, V2, VR]
Inherited from:
UFunc
type Impl3[V1, V2, V3, VR] = UImpl3[UFunc, V1, V2, V3, VR]
Inherited from:
UFunc
type Impl4[V1, V2, V3, V4, VR] = UImpl4[UFunc, V1, V2, V3, V4, VR]
Inherited from:
UFunc
Inherited from:
UFunc
type InPlaceImpl2[V1, V2] = InPlaceImpl2[UFunc, V1, V2]
Inherited from:
UFunc
type InPlaceImpl3[V1, V2, V3] = InPlaceImpl3[UFunc, V1, V2, V3]
Inherited from:
UFunc
type SinkImpl[S, V] = SinkImpl[UFunc, S, V]
Inherited from:
UFunc
type SinkImpl2[S, V1, V2] = SinkImpl2[UFunc, S, V1, V2]
Inherited from:
UFunc
type SinkImpl3[S, V1, V2, V3] = SinkImpl3[UFunc, S, V1, V2, V3]
Inherited from:
UFunc

Value members

Inherited methods

final def apply[V1, V2, V3, V4, VR](v1: V1, v2: V2, v3: V3, v4: V4)(implicit impl: Impl4[V1, V2, V3, V4, VR]): VR
Inherited from:
UFunc
final def apply[V1, @specialized(Int, Double, Float) V2, @specialized(Int, Double, Float) V3, @specialized(Int, Double, Float) VR](v1: V1, v2: V2, v3: V3)(implicit impl: Impl3[V1, V2, V3, VR]): VR
Inherited from:
UFunc
final def apply[@specialized(Int, Double, Float) V1, @specialized(Int, Double, Float) V2, @specialized(Int, Double, Float) VR](v1: V1, v2: V2)(implicit impl: Impl2[V1, V2, VR]): VR
Inherited from:
UFunc
final def apply[@specialized(Int, Double, Float) V, @specialized(Int, Double, Float) VR](v: V)(implicit impl: Impl[V, VR]): VR
Inherited from:
UFunc
final def inPlace[V, V2, V3](v: V, v2: V2, v3: V3)(implicit impl: InPlaceImpl3[rank.type, V, V2, V3]): V
Inherited from:
UFunc
final def inPlace[V, V2](v: V, v2: V2)(implicit impl: InPlaceImpl2[rank.type, V, V2]): V
Inherited from:
UFunc
final def inPlace[V](v: V)(implicit impl: InPlaceImpl[rank.type, V]): V
Inherited from:
UFunc
final def withSink[S](s: S): WithSinkHelp[rank.type, S]
Inherited from:
UFunc

Implicits

Implicits

implicit def implRankFromSVD[M, S, F](implicit canSVD: Impl[M, SVD[_, S]], maxS: Impl[S, F], travS: CanTraverseValues[S, F], nF: Impl[F, Double]): Impl[M, Int]
implicit def implRankTol[M, S](implicit canSVD: Impl[M, (, S, )], maxS: Impl[S, Double], travS: CanTraverseValues[S, Double]): Impl2[M, Double, Int]