tensor_predictors/tensorPredictors/inst/examples/TTSVD.R

16 lines
318 B
R

p <- c(3L, 5L, 2L, 5L)
A <- array(rnorm(prod(p)), p)
eps <- 1
Gs <- TTSVD(A, eps = eps)
B <- Reduce(function(L, R)
ttt(L, R, length(dim(L)), 1)
, Gs)
stopifnot(sqrt(sum((A - B)^2)) <= eps * sqrt(sum(A^2)))
unlist(Map(function(M) qr(M)$rank, Map(function(k) mat(A, k), seq_along(dim(A)))))
attr(Gs, "TT.rank")