# sva

特異値近似

## 呼び出し手順

    [U,s,V]=sva(A,k)
                [U,s,V]=sva(A,tol)

## パラメータ

A

  実数または複素数の行列

k

  整数

tol

  非負の実数

## 説明

特異値近似.

`k`を>=1の整数とするとき, `[U,S,V]=sva(A,k)` は, rank(`B`)=`k`として `B=U*S*V'`が`A`の最良のL2近似となる ような `U,S` および`V`を返します.

実数`tol`を指定した`[U,S,V]=sva(A,tol)`は, `A-B`のL2ノルムである`B=U*S*V'`の 最大値が`tol`となるような `U,S` および `V` を返します.

## 例

    A=rand(5,4)*rand(4,5);
    [U,s,V]=sva(A,2);
    B=U*s*V';
    svd(A)
    svd(B)
    clean(svd(A-B))

## 参照

- svd