next up previous contents
Next: 10 init_ fdadjlms Up: 7 Active Noise and Previous: 8 asptmcfxlms   Contents


9 init_ adjlms

Purpose
Creates and initializes the variables required for the ADJOINT Least Mean Squares (ADJLMS) Adaptive Filter algorithm for use in single channel Active Noise and Vibration Control (ANVC) applications.

Syntax
[w,x,y,d,e,p] = init_adjlms(L,s,se)
[w,x,y,d,e,p] = init_adjlms(L,s,se,w0,x0,d0,y0,e0)



Description
Figure 7.17: Block diagram of the Adjoint-LMS algorithm.
The variables of the ADJOINT LMS are shows in Fig. 7.17 and are summarized below. The length of each variable is given in square brackets, for instance [N x 1] means a column vector of length N.


\epsfig{file=/home/john/winD/docs/aspt/aspt/figs/adjlms.eps,width=.9\textwidth}
Input Parameters::
    L  : Adaptive filter length
    s  : FIR model of the physical secondary path [M x 1]
    se : estimated version of s [N x 1]
    w0 : initial vector of filter coefficients [L x 1]
    x0 : initial vector of input samples [L+M-1]
    d0 : initial desired sample [1 x 1]
    y0 : vector of filter output samples [M x 1]
    e0 : initial error vector [N x 1]

Output parameters [default]::
    w  : Initialized filter coefficients [zeros]
    x  : Initialized input vector [white noise]
    y  : Initial vector of filter output samples
    d  : Initialized desired sample [white noise]
    e  : Initialized error vector
    p  : Initialized input vector power


Example
ph   = [0;.9;.5;.3;.1];       % Primary path impulse response
sh   = [0.5;0.4;0.1];         % Secondary path impulse response
se   = 0.95*sh;               % estimation of s

% Initialize ADJLMS algorithm with a controller of 10 
% coefficients and the accurate and estimated secondary paths
[w,x,y,d,e,p] = init_adjlms(10,sh,se);

Remarks
  • Supports both real and complex signals
  • The ADJOINT LMS algorithm requires an estimate of the secondary path, shown in Fig. 7.17 as $se$, to calculate the filtered error signal $fe(n)$. This estimate $se$ is usually obtained in an initialization stage or during normal operation using a separate adaptive filter connected between the secondary source and the sensor in a system identification setup. When using $se = s$ in init_adjlms() and asptadjlms(), which means that a very accurate estimate of the secondary path is available, the effects of 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 4 through 8 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
ASPTADJLMS, ANVC_ ADJLMS, ASPTMCADJLMS, ASPTFDADJLMS, ASPTMCFDADJLMS.


next up previous contents
Next: 10 init_ fdadjlms Up: 7 Active Noise and Previous: 8 asptmcfxlms   Contents