Main Content


System object: comm.RectangularQAMDemodulator
Namespace: comm

(Removed) Demodulate using rectangular QAM method

comm.RectangularQAMDemodulator has been removed. Use qamdemod instead.


Y = step(H,X)
Y = step(H,X,VAR)



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.

Y = step(H,X) demodulates the input data, X, with the rectangular QAM demodulator System object, H, and returns, Y. Input X must be a scalar or a column vector with double or single precision data type. When ModulationOrder is an even power of two and you set the BitOutput property to false or, when you set the DecisionMethod to Hard decision and the BitOutput property to true, the data type of the input can also be signed integer, or signed fixed point (fi objects). Depending on the BitOutput property value, output Y can be integer or bit valued.

Y = step(H,X,VAR) uses soft decision demodulation and noise variance VAR. This syntax applies when you set the BitOutput property to true, the DecisionMethod property to Approximate log-likelihood ratioor Log-likelihood ratio, and the VarianceSource property to Input port. The data type of input VAR must be double or single precision.


obj 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 and input specifications. For more information on changing property values, see System Design in MATLAB Using System Objects.