# NOT RUN {
if (require("LaplacesDemon")) {
# Generate sources from multivariate Laplace distribution
P <- 2; N <- 1000; D <- 5;
S <- array(NA, c(P, N, D))
for (i in 1:P) {
S[i, , ] <- rmvl(N, rep(0, D), diag(D))
}
# Generate mixing matrices from standard normal distribution
A <- array(rnorm(P * P * D), c(P, P, D))
# Generate mixtures
X <- array(NaN, c(P, N, D))
for (d in 1:D) {
X[, , d] <- A[, , d] %*% S[, , d]
}
# Estimate sources and unmixing matrices
res <- fastIVA(X)
}
# }
Run the code above in your browser using DataLab