This repository provides methods implementing the FastICA algorithm based on the libICA C library in Swift. I borrowed the matrix class from Surge as well as other functionality, such as matrix inversion, transposition, and basic arithmetic operations on matrices.
Usage is fairly simple, check out the Test.swift file. Below is an example of sample input and output, which should resemble Example 2 in the CRAN Documentation.
Here are two signals mixed with two different matrices.
Here is the resulting output.