| Purpose |
| Multichannel mixer, calculates the signals measured by M sensors in response to applying N signals at N different actuators. |
| Syntax |
yn = mcmixr(h,xn,scale)
|
| Description |
Consider a multichannel systems with N actuators (speakers for instance) and M sensors
(microphones) as that shown in Fig. 9.2. A signal applied at one of the
actuators usually contribute to the response of all sensors. The response of each
sensor is given by
mcmixr()
takes as input the multichannel transfer function mcmixr() is a flag, if 1, scaling
of the calculated response will be performed. The input and output parameters of
mcmixr() are summarized below.
Input Parameters [Size] :: h : multichannel transfer function [L1 x N x M] xn : actuators' inputs [L2 x N] scale : if 1, scaling of output is performed Output parameters [Size] :: y : sensors' output [L2 x M]
|
| Example |
% Multichannel transfer function between two actuators % and three sensors h = zeros(32,2,3); ip = [1; zeros(31,1)]; % impulse vector h(:,1,1) = filter(1,[1 -.9 .9],ip); h(:,1,2) = filter(1,[1 -.5 .5],ip); h(:,1,3) = filter(1,[1 -.4],ip); h(:,2,1) = filter(1,[1 -.85 .85],ip); h(:,2,2) = filter(1,[1 -.7],ip); h(:,2,3) = filter(1,[1 -.3 .9],ip); xn = randn(1000,2); % Input signal [1000 x 2] yn = mcmixr(h,xn,0); % output signal [1000 x 3] |
| Remarks |
mcmixr() supports both real and complex signals and transfer functions.
Although speakers and microphones are used to describe the functionality of
mcmixr(), its use is not limited to audio applications and acoustic
transfer functions. Transfer functions measured between shakers and accelerometers
or between voltage sources and voltmeters can also be processed using mcmixr().
|