| Purpose |
| Creates and initializes the variables required for the Multi-Channel Frequency Domain ADJoint Least Mean Squares (MCFDADJLMS) algorithm for use with multichannel Active Noise and Vibration Control (ANVC) applications. |
| Syntax |
[NB,W,w,x,y,d,e,p,S,SE,yF,feF] = init_mcfdadjlms(NC,NL,Nref,Nact,
Nsens,s,se)
[NB,W,w,x,y,d,e,p,S,SE,yF,feF] = init_mcfdadjlms(NC,NL,Nref,Nact,
Nsens,s,se,W0,xn0,d0)
|
| Description |
The MCFDADJLMS is a block processing algorithm which performs filtering and coefficient update
in the frequency domain. The variables of the MCFDADJLMS are shows in Fig. 7.22
and are summarized below. The size of each variable is given in a square brackets, for instance
[N x Nref x Nact] means a matrix of dimension 3 having Nact pages, each page has Nref columns
of length N each.
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 matrix of filter coef. [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 x(f) S : frequency domain secondary paths [fft(s,NB,1)] SE : frequency domain estimated s [fft(se,NB,1)] yF : output matrix buffer [zeros] feF : filtered error 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 MCFDADJLMS algorithm with controllers of NC
% coefficients each and a block length NL.
[NB,W,w,x,y,d,e,p,S,SE,yF,feF] = init_mcfdadjlms(NC,NL,...
Nref,Nact,Nsens,s22,se);
|
| Remarks |
|
| See Also |
| ASPTMCFDADJLMS, ANVC_ MCFDADJLMS, ASPTMCADJLMS, ASPTADJLMS, ASPTFDADJLMS. |