# Documentation

### This is machine translation

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

To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

# genqammod

General quadrature amplitude modulation

## Syntax

```y = genqammod(x,const) ```

## Description

`y = genqammod(x,const)` outputs the complex envelope `y` of the modulation of the message signal `x` using quadrature amplitude modulation. The message signal must consist of integers between 0 and `length(const)-1`. The complex vector `const` specifies the signal mapping. If `x` is a matrix with multiple rows, the function processes the columns independently.

## Examples

collapse all

Create the points that describe a hexagonal constellation.

```inphase = [1/2 1 1 1/2 1/2 2 2 5/2]; quadr = [0 1 -1 2 -2 1 -1 0]; inphase = [inphase;-inphase]; inphase = inphase(:); quadr = [quadr;quadr]; quadr = quadr(:); const = inphase + 1i*quadr;```

Plot the constellation.

`h = scatterplot(const);`

Generate input data symbols. Modulate the symbols using this constellation.

```x = [3 8 5 10 7]; y = genqammod(x,const);```

Demodulate the modulated signal, `y`.

`z = genqamdemod(y,const);`

Plot the modulated signal in same figure.

```hold on; scatterplot(y,1,0,'ro',h); legend('Constellation','Modulated signal');```

Determine the number of symbol errors between the demodulated data to the original sequence.

`numErrs = symerr(x,z)`
```numErrs = 0 ```