R/grake.R
gginv.Rd
The gginv
function creates a function that
calculates the Moore-Penrose generalized inverse of a matrix X using a
fixed tolerance value and a custom
implementation for computing the singular value decomposition.
gginv(tol = sqrt(.Machine$double.eps), svd = base::svd)
tol | A relative tolerance to detect zero singular values. |
---|---|
svd | A function that computes the singular value decomposition of a matrix |
A function that accepts one argument X
that computes a MP
generalized inverse matrix for it.
The svd
argument is expected to adhere to the interface of
base::[svd][base::svd]
. It will be called as svd(x)
(with the
nu
and nv
arguments unset) and is expected to return a named
list with components d
, u
and v
.
Adapted implementation from the MASS
package.