Construct linear equalizer object
eqobj = lineareq(nweights,alg)
eqobj = lineareq(nweights,alg,sigconst)
eqobj = lineareq(nweights,alg,sigconst,nsamp)
eqobj = lineareq(nweights,alg) constructs a symbol-spaced linear equalizer object. The equalizer has nweights complex weights, which are initially all zeros. alg describes the adaptive algorithm that the equalizer uses; you should create alg using any of these functions: lms, signlms, normlms, varlms, rls, or cma. The signal constellation of the desired output is [-1 1], which corresponds to binary phase shift keying (BPSK).
eqobj = lineareq(nweights,alg,sigconst,nsamp) constructs a fractionally spaced linear equalizer object. The equalizer has nweights complex weights spaced at T/nsamp, where T is the symbol period and nsamp is a positive integer. nsamp = 1 corresponds to a symbol-spaced equalizer.
The table below describes the properties of the linear equalizer object. To learn how to view or change the values of a linear equalizer object, see Accessing Properties of an Equalizer.
|EqType||Fixed value, 'Linear Equalizer'|
|AlgType||Name of the adaptive algorithm represented by alg|
|nWeights||Number of weights|
|nSampPerSym||Number of input samples per symbol (equivalent to nsamp input argument). This value relates to both the equalizer structure (see the use of K in Fractionally Spaced Equalizers) and an assumption about the signal to be equalized.|
|RefTap (except for CMA equalizers)||Reference tap index, between 1 and nWeights. Setting this to a value greater than 1 effectively delays the reference signal and the output signal by RefTap-1 with respect to the equalizer's input signal.|
|SigConst||Signal constellation, a vector whose length is typically a power of 2|
|Weights||Vector of complex coefficients. This is the set of wi values in the schematic in Symbol-Spaced Equalizers.|
|WeightInputs||Vector of tap weight inputs. This is the set of ui values in the schematic in Symbol-Spaced Equalizers.|
|ResetBeforeFiltering||If 1, each call to equalize resets the state of eqobj before equalizing. If 0, the equalization process maintains continuity from one call to the next.|
|NumSamplesProcessed||Number of samples the equalizer processed since the last reset. When you create or reset eqobj, this property value is 0.|
|Properties specific to the adaptive algorithm represented by alg||See reference page for the adaptive algorithm function that created alg: lms, signlms, normlms, varlms, rls, or cma.|
If you change nWeights, MATLAB maintains consistency in the equalizer object by adjusting the values of the properties listed below.
|StepSize (Variable-step-size LMS equalizers)||InitStep*ones(1,nWeights)|
|InvCorrMatrix (RLS equalizers)||InvCorrInit*eye(nWeights)|
An example illustrating relationships among properties is in Linked Properties of an Equalizer Object.
For examples that use this function, see Equalize Using a Training Sequence in MATLAB, Example: Equalizing Multiple Times, Varying the Mode, and Example: Adaptive Equalization Within a Loop.