This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.


System object: comm.EVM
Package: comm

Measure error vector magnitude


[___,MAXEVM] = step(___)
[___,XEVM] = step(___)
[___,NUMSYM] = step(___)



Starting in R2016b, instead of using the step method to perform the operation defined by the System object™, you can call the object with arguments, as if it were a function. For example, y = step(obj,x) and y = obj(x) perform equivalent operations.

RMSEVM = step(EVM,REFSYM,RXSYM) returns the measured root-mean-square EVM, RMSEVM, of the received signal RXSYM, based on reference signal REFSYM. EVM values are measured as a percentage.

REFSYM and RXSYM inputs are complex column vectors of equal dimensions and data type. The data type can be double, single, signed integer, or signed fixed point with power-of-two slope and zero bias. All outputs of the object are of data type double. To set the interval over which the EVM is measured, use the MeasurementIntervalSource and MeasurementInterval properties.

RMSEVM = step(EVM,RXSYM) returns the measured EVM of received signal RXSYM based on a reference signal specified in the ReceivedConstellation property.

[___,MAXEVM] = step(___) returns the maximum EVM, MAXEVM, given either of the two previous syntaxes.

To return the maximum EVM value, set the MaximumEVMOutputPort property to true. To set the interval over which the maximum EVM is measured, use the MeasurementIntervalSource and MeasurementInterval properties.

[___,XEVM] = step(___) returns the X-percentile EVM, XEVM.

To return the X-percentile EVM, set the XPercentileEVMOutputPort property to true. XEVM is the EVM below which X% of the measurements fall, where X is set by the XPercentileValue property. XEVM is measured using all the input frames since the last reset.

[___,NUMSYM] = step(___) returns the number of symbols, NUMSYM, used to calculate the X-percentile EVM.

To return NUMSYM, set the SymbolCountOutputPort property to true. NUMSYM is measured using all the input frames since the last reset.


EVM specifies the System object on which to run this step method.

The object performs an initialization the first time the step method is executed. This initialization locks nontunable properties (MATLAB) and input specifications, such as dimensions, complexity, and data type of the input data. If you change a nontunable property or an input specification, the System object issues an error. To change nontunable properties or inputs, you must first call the release method to unlock the object.

Was this topic helpful?