This function breaks signal X into two or more frequency bands such that the sum of the signals in the separate bands is equal to the original signal.

## Arguments

- X
A sensor vector or matrix (i.e., with a signal in each column) or sensor list (e.g., from readtag.R).

- sampling_rate
The sampling rate of the sensor data in Hz (samples per second).

- fc
Specifies the cut-off frequency or frequencies of the complementary filters. Frequencies are in Hz. If one frequency is given, X will be split into a low- and a high-frequency component. If fc contains more than one value, X will be split into multiple complementary bands. Each filter length is 4*sampling_rate/fc. Filtering adds no group delay.

## Value

A list of filtered signals. There are n+1 sections of the list where n is the length of fc. List sections are ordered in Xf from lowest to highest frequency. Each list section contains a vector or matrix of the same size as X, and at the same sampling rate as X.