(Legacy) Memoryless Nonlinearity
(To be removed) Apply memoryless nonlinearity to complex baseband signal
In R2023a, the (Legacy) Memoryless Nonlinearity block updates the methods for applying memoryless nonlinearity impairments in amplifier models. For the new interface, see the Memoryless Nonlinearity reference page instead. (since R2023a) For more information, see Version History.
Libraries:
Communications Toolbox /
RF Impairments and Components
Description
The (Legacy) Memoryless Nonlinearity block applies memoryless nonlinear impairments to a complex baseband signal. Use this block to model memoryless nonlinear impairments caused by signal amplification in the radio frequency (RF) transmitter or receiver. For more information, see Memoryless Nonlinear Impairments.
Note
All values of power assume a nominal impedance of 1 ohm.
Examples
Add Saleh Model of Power Amplifier to 16-QAM Signal in Simulink
Applies the Saleh method of memoryless nonlinearity to a 16-QAM modulated signal. To show the Saleh model of a power amplifier, the example applies exaggerated levels that are not typical for modern radios.
Ports
Input
In1 — Input RF baseband signal
scalar | column vector
Input RF baseband signal, specified as a scalar or column vector. Values in this input must be complex.
Data Types: double
Complex Number Support: Yes
Output
Out1 — Output RF baseband signal
scalar | column vector
Output RF baseband signal, returned as a scalar or column vector. The output is of the same data type as the input.
Parameters
Method — Nonlinearity modeling method
Cubic polynomial
(default) | Hyperbolic tangent
| Saleh model
| Ghorbani model
| Rapp model
Nonlinearity modeling method, specified as Cubic
polynomial
, Hyperbolic tangent
,
Saleh model
, Ghorbani model
,
Rapp model
, or Lookup table
. For
more information, see Memoryless Nonlinear Impairments.
Linear gain (dB) — Linear gain
0
(default) | scalar
Linear gain in decibels, specified as a scalar. This parameter scales the power gain of the output signal.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Cubic polynomial
,
Hyperbolic tangent
, or Rapp
model
.
IIP3 (dBm) — Third-order input intercept point
30
(default) | scalar
Third-order input intercept point in dBm, specified as a scalar.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Cubic polynomial
or
Hyperbolic tangent
.
AM/PM conversion (degrees per dB) — AM/PM conversion factor
10
(default) | scalar
AM/PM conversion factor in degrees per decibel, specified as a scalar. For more information, see Cubic Polynomial and Hyperbolic Tangent Model Methods.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Cubic polynomial
or
Hyperbolic tangent
.
Lower input power limit for AM/PM conversion (dBm) — Input power lower limit
10
(default) | scalar
Input power lower limit in dBm, specified as a scalar less than the Upper input power limit for AM/PM conversion (dBm) parameter value. The AM/PM conversion scales linearly for input power values in the range [Lower input power limit for AM/PM conversion (dBm), Upper input power limit for AM/PM conversion (dBm)]. If the input signal power is below the input power lower limit, the phase shift resulting from AM/PM conversion is zero. For more information, see Cubic Polynomial and Hyperbolic Tangent Model Methods.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Cubic polynomial
or
Hyperbolic tangent
.
Upper input power limit for AM/PM conversion (dBm) — Input power upper limit
inf
(default) | scalar
Input power upper limit in dBm, specified as a scalar greater than the Lower input power limit for AM/PM conversion (dBm) parameter value. The AM/PM conversion scales linearly for input power values in the range [Lower input power limit for AM/PM conversion (dBm), Upper input power limit for AM/PM conversion (dBm)]. If the input signal power is below the input power lower limit, the phase shift resulting from AM/PM conversion is zero. For more information, see Cubic Polynomial and Hyperbolic Tangent Model Methods.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Cubic polynomial
or
Hyperbolic tangent
.
Input scaling (dB) — Input signal scaling factor
0
(default) | scalar
Input signal scaling factor in decibels, specified as a scalar. This parameter scales the power gain of the input signal.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Saleh model
or
Ghorbani model
.
AM/AM parameters [alpha beta] — AM/AM parameters for Saleh model
[2.1587 1.1517]
(default) | two-element vector
AM/AM parameters for Saleh model, used to compute the amplitude gain for an input signal, specified as a two-element vector. For more information, see Saleh Model Method.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Saleh model
.
AM/PM parameters [alpha beta] — AM/PM parameters for Saleh model
[4.0033 9.1040]
(default) | two-element vector
AM/PM parameters for Saleh model, used to compute the phase change for an input signal, specified as a two-element vector. For more information, see Saleh Model Method.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Saleh model
.
AM/AM parameters [x1 x2 x3 x4] — AM/AM parameters for Ghorbani model
[8.1081 1.5413 6.5202 -0.0718]
(default) | four-element vector
AM/AM parameters for Ghorbani model, used to compute the amplitude gain for an input signal, specified as a four-element vector. For more information, see Ghorbani Model Method.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Ghorbani model
.
AM/PM parameters [y1 y2 y3 y4] — AM/PM parameters for Ghorbani model
[4.6645 2.0965 10.88 -0.003]
(default) | four-element vector
AM/PM parameters for Ghorbani model, used to compute the phase change for an input signal, specified as a four-element vector. For more information, see Ghorbani Model Method.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Ghorbani model
.
Output scaling (dB) — Output signal scaling factor
0
(default) | scalar
Output signal scaling factor in decibels, specified as a scalar. This parameter scales the power gain of the output signal.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Saleh model
or
Ghorbani model
.
Smoothness factor — Smoothness factor
0.5
(default) | scalar
Smoothness factor, specified as a scalar. For more information, see Rapp Model Method.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Rapp model
.
Output saturation level — Output saturation level
1
(default) | scalar
Output saturation level, specified as a scalar. For more information, see Rapp Model Method.
Tunable: Yes
Dependencies
To enable this parameter, set the Method to Rapp model
.
Block Characteristics
Data Types |
|
Multidimensional Signals |
|
Variable-Size Signals |
|
More About
Memoryless Nonlinear Impairments
Memoryless nonlinear impairments distort the input signal amplitude and phase. The amplitude distortion is amplitude-to-amplitude modulation (AM/AM) and the phase distortion is amplitude-to-phase modulation (AM/PM).
Model Method | Memoryless Nonlinear Impairment |
---|---|
Cubic polynomial | AM/AM and AM/PM |
Hyperbolic tangent | |
Saleh model | |
Ghorbani model | |
Rapp model | AM/AM only |
The modeled impairments apply the AM/AM and AM/PM distortions differently, according to the model method you specify. The models apply the memoryless nonlinear impairment to the input signal by following these steps.
Multiply the signal by an input gain factor.
Note
You can normalize the signal to 1 by setting the input scaling gain to the inverse of the input signal amplitude.
Split the complex signal into its magnitude and angle components.
Apply an AM/AM distortion to the magnitude of the signal, according to the selected model method, to produce the magnitude of the output signal.
Apply an AM/PM distortion to the phase of the signal, according to the selected model method, to produce the angle of the output signal.
Note
This step does not apply for the Rapp model.
Combine the new magnitude and angle components into a complex signal. Then, multiply the result by an output gain factor.
The first four model methods (cubic polynomial, hyperbolic tangent, Saleh model, and Ghorbani model) apply AM/AM and AM/PM impairments as shown in this figure.
The Rapp model method applies AM/AM distortion as shown in this figure.
Cubic Polynomial and Hyperbolic Tangent Model Methods
This figure shows the AM/PM conversion behavior for the cubic polynomial and hyperbolic tangent model methods.
The AM/PM conversion scales linearly with an input power value between the lower and upper limits of the input power level. Outside this range, the AM/PM conversion is constant at the values corresponding to the lower and upper input power limits, which are zero and (AM/PM conversion) × (upper input power limit – lower input power limit), respectively.
Saleh Model Method
This figure shows the AM/AM behavior (output voltage versus input voltage for the AM/AM distortion) and the AM/PM behavior (output phase versus input voltage for the AM/PM distortion) for the Saleh model method.
The AM/AM parameters, αAMAM and βAMAM, are used to compute the amplitude distortion of the input signal by using
where u is the magnitude of the scaled signal.
The AM/PM parameters, αAMPM and βAMPM, are used to compute the phase distortion of the input signal by using
where u is the magnitude of the scaled signal. The α and β parameters for AM/AM and AM/PM are similarly named but distinct.
Ghorbani Model Method
The Ghorbani model method applies AM/AM and AM/PM distortion as described in this section.
The AM/AM parameters (x1, x2, x3, and x4) are used to compute the amplitude distortion of the input signal by using
where u is the magnitude of the scaled signal.
The AM/PM parameters (y1, y2, y3, and y4) are used to compute the phase distortion of the input signal by using
where u is the magnitude of the scaled signal.
Rapp Model Method
The Rapp model method applies AM/AM distortion as described in this section. The Rapp model does not apply AM/PM distortion to the input signal.
The smoothness factor and output saturation level are used to compute the amplitude distortion of the input signal given by
where
u is the magnitude of the scaled signal.
S is the smoothness factor.
Osat is the output saturation level.
References
[1] Saleh, A.A.M. “Frequency-Independent and Frequency-Dependent Nonlinear Models of TWT Amplifiers.” IEEE Transactions on Communications 29, no. 11 (November 1981): 1715–20. https://doi.org/10.1109/TCOM.1981.1094911.
[2] Ghorbani, A., and M. Sheikhan. "The Effect of Solid State Power Amplifiers (SSPAs) Nonlinearities on MPSK and M-QAM Signal Transmission." In 1991 Sixth International Conference on Digital Processing of Signals in Communications, 193–97, 1991.
[3] Rapp, Ch. "Effects of HPA-Nonlinearity on a 4-DPSK/OFDM-Signal for a Digital Sound Broadcasting System." In Proceedings Second European Conf. on Sat. Comm. (ESA SP-332), 179–84. Liege, Belgium, 1991. https://elib.dlr.de/33776/.
Extended Capabilities
C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.
Version History
Introduced before R2006aR2024a: This legacy interface will not be supported
In R2023a, the Memoryless Nonlinearity block updates the methods for applying memoryless nonlinearity impairments in amplifier models. To load the updated version of the block, run Update Model on pre-R2023a simulations that use the (Legacy) Memoryless Nonlinearity block.
R2023a: This legacy interface will not be supported
In R2023a, the Memoryless Nonlinearity block updates the methods for applying memoryless nonlinearity impairments in amplifier models. The block with the legacy interface runs without warning but you are encouraged usethe updated block. To load the updated version of the block, run Update Model on pre-R2023a simulations that use the (Legacy) Memoryless Nonlinearity block.
The updated block removes the Hyperbolic tangent and Ghorbani methods, replaces the Rapp method with the modified Rapp method, modifies the parameters to apply the cubic polynomial method, and adds an AM/AM-AM/PM method that uses a lookup table to define the impairment settings. For the new interface, see the Memoryless Nonlinearity reference page.
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)