- 次元空間に次のような線形な次元亜空間Sがある
- Sは、あるS上の点を通り、個の線形独立なベクトルによって張られている
- 上にあって、の外の点をとし、そのSへの垂線の足をとする
- ここでとする
- 今、はS上の点であるから、、ただしと表せる
- また、ABはSに垂直であるから
- 別の書き方をすれば、
- ただし
- このを使うと
d1<-5
d2<-2
M<-matrix(rnorm(d2*d1),nrow=d2)
P<-rnorm(d1)
A<-rnorm(d1)
x<-solve(M%*%t(M))%*%M%*%(A-P)
B<-P+t(M)%*%x
M%*%(A-B)
B
> d1<-5
> d2<-2
> M<-matrix(rnorm(d2*d1),nrow=d2)
> P<-rnorm(d1)
> A<-rnorm(d1)
>
> x<-solve(M%*%t(M))%*%M%*%(A-P)
> B<-P+t(M)%*%x
> M%*%(A-B)
[,1]
[1,] -2.363900e-17
[2,] 3.838076e-16
> B
[,1]
[1,] -0.2219434
[2,] 0.9811735
[3,] 0.4207855
[4,] -1.3255867
[5,] 0.9538941
PerpFoot<-function(V,A,P=NULL){
if(is.null(P))P<-rep(0,length(A))
x<-solve(V%*%t(V))%*%V%*%(A-P)
B<-P+t(V)%*%x
return(list(X=B,k=x))
}