# Documentation

### This is machine translation

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

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

# cyclpoly

Produce generator polynomials for cyclic code

## Syntax

```pol = cyclpoly(n,k) pol = cyclpoly(n,k,opt) ```

## Description

For all syntaxes, a polynomial is represented as a row containing the coefficients in order of ascending powers.

`pol = cyclpoly(n,k) ` returns the row vector representing one nontrivial generator polynomial for a cyclic code having codeword length `n` and message length `k`.

`pol = cyclpoly(n,k,opt) ` searches for one or more nontrivial generator polynomials for cyclic codes having codeword length `n` and message length `k`. The output `pol` depends on the argument `opt` as shown in the table below.

optSignificance of polFormat of pol
`'min'`One generator polynomial having the smallest possible weight Row vector representing the polynomial
`'max'`One generator polynomial having the greatest possible weight Row vector representing the polynomial
`'all'`All generator polynomials MMatrix, each row of which represents one such polynomial
a positive integer, L All generator polynomials having weight L Matrix, each row of which represents one such polynomial

The weight of a binary polynomial is the number of nonzero terms it has. If no generator polynomial satisfies the given conditions, the output `pol` is empty and a warning message is displayed.

## Examples

The first command below produces representations of three generator polynomials for a [15,4] cyclic code. The second command shows that 1 + x + x2 + x3+ x5+ x7+ x8+ x11 is one such polynomial having the largest number of nonzero terms.

```c1 = cyclpoly(15,4,'all') c2 = cyclpoly(15,4,'max')```

The output is

```c1 = Columns 1 through 10 1 1 0 0 0 1 1 0 0 0 1 0 0 1 1 0 1 0 1 1 1 1 1 1 0 1 0 1 1 0 Columns 11 through 12 1 1 1 1 0 1 c2 = Columns 1 through 10 1 1 1 1 0 1 0 1 1 0 Columns 11 through 12 0 1 ```

This command shows that no generator polynomial for a [15,4] cyclic code has exactly three nonzero terms.

```c3 = cyclpoly(15,4,3) ```
```Warning: No cyclic generator polynomial satisfies the given constraints. > In cyclpoly at 131 c3 = [] ```

## Algorithms

If `opt` is `'``min``'`, `'``max``'`, or omitted, polynomials are constructed by converting decimal integers to base `p`. Based on the decimal ordering, `gfprimfd` returns the first polynomial it finds that satisfies the appropriate conditions. This algorithm is similar to the one used in `gfprimfd`.

## See Also

### Topics

#### Introduced before R2006a

Was this topic helpful?

Download ebook