next up previous contents
Next: 16 init_ mcfxlms Up: 7 Active Noise and Previous: 14 init_ mcfdadjlms   Contents


15 init_ mcfdfxlms

Purpose
Creates and initializes the variables required for the Multi-Channel Frequency Domain Filtered-X Least Mean Squares (MCFDFXLMS) algorithm, for use with multichannel Active Noise and Vibration Control (ANVC) applications.

Syntax
[NB,W,w,x,y,d,e,p,S,SE,yF,fxF] = init_mcfdfxlms(NC,NL,Nref,Nact, Nsens,s,se)
[NB,W,w,x,y,d,e,p,S,SE,yF,fxF] = init_mcfdfxlms(NC,NL,Nref,Nact, Nsens,s,se,w0,xn0,d0)



Description
Figure 7.23: Block diagram of the MultChannel Frequency Domain Filtered-X LMS algorithm.
The variables of the MCFDFXLMS are shows in Fig. 7.23 and are summarized below. The size of each variable is given in a square brackets.


\epsfig{file=/home/john/winD/docs/aspt/aspt/figs/mcfdfxlms.eps,width=.9\textwidth}
Input Parameters [size] ::
    NC    : Required controller length in time domain
    NL    : new samples per block
    Nref  : number of reference signals
    Nact  : number of actuators
    Nsens : number of sensors
    s     : FIR model of the secondary paths [M x Nact x Nsens]
    se    : estimate of secondary paths [N x Nact x Nsens]
    w0    : Initial controller coef. matrix [NC x Nref x Nact]
    xn0   : Initial input samples block [NL x Nref]
    d0    : Initial primary signals block [NL x Nsens]
Output parameters [default] ::
    NB   : FFT length [2.^nextpow2(NC+NL-1)]
    W    : frequency domain filter coefficients matrix [zeros]
    w    : time domain filter coefficients matrix [zeros]
    x    : overlap-save input matrix [zeros]
    y    : filter output matrix in time domain [zeros]
    d    : primary signals block [zeros]
    e    : error signals block [e = d + ys]
    p    : power estimate of fx(n) in freq. domain
    S    : frequency domain secondary paths [fft(s,NB)]
    SE   : frequency domain estimated s [fft(se,NB)]
    yF   : output matrix buffer [zeros] 
    fxF  : filtered-x matrix buffer [zeros]

Example
load .\data\p22.mat;             % Primary transfer function 
load .\data\s22.mat;             % Secondary transfer function
se               = s22;          % accurate estimate of sh22
[Lp,Nref,Nsens] 	= size(p22);    % Primary TF dimension
[Ls,Nact,Nsens] 	= size(s22);    % Secondary TF dimension
NC               = Lp + Ls ;     % Length of each filter
NL               = NC;           % block length

% Initialize MCFDFXLMS algorithm with controllers of NC 
% coefficients each and a block length NL.
[NB,W,w,x,y,d,e,p,S,SE,yF,fxF] = init_mcfdfxlms(NC,NL,Nref,
                                 Nact,Nsens,s22,se);

Remarks
  • Supports both real and complex signals
  • You can control the FFT length by choosing the block size (NL) appropriately. Maximum efficiency is achieved when $NL = NC = 2^n$; where n is an integer.
  • Processing delay (algorithm latency) equals to NL, since NL new samples have to be collected before an FFT can be performed.
  • The MCFDFXLMS algorithm requires an estimate of the matrix of secondary paths, shown in Fig. 7.23 as $se$, to calculate the filtered input signals $fx(f)$. This estimate $se$ is usually obtained in an initialization stage or during normal operation using a separate matrix of adaptive filters connected between the actuators and the sensors in a Multiple Input Multiple Output (MIMO) system identification setup. When using $se = s$ in init_mcfdfxlms() and asptmcfdfxlms() , which means that an accurate estimate of the secondary paths is available, the effects of the secondary path estimation error on the adaptive controller behavior will disappear. To examine those effects use an estimated secondary path $se$ different than $s$.
  • Use input parameters 8 through 10 to initialize the controller storage. This is helpful when the adaptation process is required to start from a known operation point calculated off-line or from previous simulations.

See Also
ASPTMCFDFXLMS, ANVC_ MCFDFXLMS, ASPTFXLMS, ASPTFDFXLMS, ASPTMCFXLMS.


next up previous contents
Next: 16 init_ mcfxlms Up: 7 Active Noise and Previous: 14 init_ mcfdadjlms   Contents