| Products & Services | Solutions | Academia | Support | User Community | Company |
| Download Product Updates | | | Get Pricing | | | Trial Software |
| Documentation → Communications Toolbox |
| Contents | Index |
| Learn more about Communications Toolbox |
h = commmeasure.EVM
h = commmeasure.EVM('PropertyName',PropertyValue,...)
h = commmeasure.EVM constructs a default error vector magnitude (EVM) object, h.
h = commmeasure.EVM('PropertyName',PropertyValue,...) constructs an EVM object, h, with property values set to PropertyValues. See Properties for valid a list of valid PropertyNames.
The EVM object measures RMS EVM, maximum EVM, and percentile EVM. The unit for each measurement is a percentage.
An EVM measurement object has the properties shown in the following table. You can write to all properties except for the ones explicitly noted otherwise.
| Property | Description |
|---|---|
| Type | 'EVM Measurements'. This property is read only. |
| NormalizationOption | Specify EVM normalization method. Possible values are: 'AveragePower', 'PeakPower', and 'RMSEVM'. |
| AveragePower | Average constellation power. Relevant when NormalizationOption is 'Average constellation power'. |
| PeakPower | Peak constellation power. Relevant when NormalizationOption is 'Peak constellation power'. |
| RMSEVM | RMS EVM measurement result. Relevant when NormalizationOption is 'RMSEVM'. This property is read only. |
| MaximumEVM | Maximum EVM measurement result. This property is read only. |
| Percentile | Percentile value to calculate PercentileEVM. |
| PercentileEVM | Percentile EVM measurement result. This property is read only. |
| NumberOfSymbols | Number of processed symbols. |
An EVM measurement object has the following three methods.
This method updates the EVM measurements with new data.
update(h, rcv, xmt) updates the EVM object h with new data. rcv represents the symbols under test, and mxt represents the ideal symbols.
This method resets the EVM object.
reset(h) resets the EVM object h. This operation removes all the previously collected data from the object memory.
reset(h, meas1, ...) resets the meas1 measurement of the EVM object h. meas1 can be 'RMSEVM', 'MaximumEVM', or 'PercentileEVM'. The NumberOfSymbols property is not reset. You can use this method for implementing frame-based measurements.
This method copies the EVM object.
hcopy = copy(h) copies the EVM object handle returns it in hcopy. h and hcopy are independent but identical objects; modifying the object does not affect hcopy object.
The Communications Toolbox™ software provides three different normalization methods. You can normalize measurements according to the average power of the reference signal, average constellation power, or peak constellation power. Different industry standards follow one of these normalization methods.
The following table lists how the Communications Toolbox software calculates the RMS EVM value for different normalization methods.
| EVM Normalization Method | Algorithm |
|---|---|
| Reference Signal |
|
| Average Power |
|
| Peak Power |
|
where,
ek =
![]()
Ik = In-phase ideal reference value of the kth symbol in the burst
Qk = Quadrature phase ideal reference value of the kth symbol in the burst
N = Input vector length
Pavg = The value for Average constellation power
![]()
Ik and Qk represent
ideal (reference) values.
and
represent measured (received)
symbols.
EVM max is the maximum
EVM value, of individual symbols, EVMk, in
a frame or
![]()
where k is the kth symbol in a burst of length N.
The definition for EVMk varies depending upon which normalization method you select for computing measurements. The Communications Toolbox software supports the algorithms in the following table.
| EVM Normalization | Algorithm |
|---|---|
| Reference Signal |
|
| Average Power |
|
| Peak Power |
|
The toolbox calculation for % EVM uses a histogram of all the incoming EVMk values. The output provides the EVM value below which X% of the EVM values lay.
[1] 3GPP TS 45.005 V8.1.0 (2008-05): Radio Access Network; Radio transmission and reception
![]() | commmeasure.ACPR | commmeasure.MER | ![]() |

Learn how to apply early verification to your development process through these technical resources.
How much time do you spend on testing to ensure implementation meets system-level requirements?
| © 1984-2009- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |