Dyadic downsampling of Laurent polynomial or Laurent matrix

## Syntax

``Q = dyaddown(P)``

## Description

example

````Q = dyaddown(P)` downsamples by two the Laurent polynomial or Laurent matrix specified by `P`. If `P` is a Laurent matrix, `dyaddown` downsamples the matrix elements. NoteThe `laurentPolynomial` and `laurentMatrix` objects have their own versions of `dyaddown`. The input data type determines which version is executed. ```

## Examples

collapse all

Create the Laurent polynomial $a\left(z\right)=\sum _{k=-5}^{6}\left(-1{\right)}^{k}\phantom{\rule{0.16666666666666666em}{0ex}}k\phantom{\rule{0.16666666666666666em}{0ex}}{z}^{k}$. Obtain the degree of $a\left(z\right)$.

```cfs = (-1).^(-5:6).*(-5:6); a = laurentPolynomial(Coefficients=fliplr(cfs),MaxOrder=6)```
```a = laurentPolynomial with properties: Coefficients: [6 -5 4 -3 2 -1 0 1 -2 3 -4 5] MaxOrder: 6 ```
`degree(a)`
```ans = 11 ```

Obtain the degree of the dyadic downsampling of $a\left(z\right)$.

`ddown = dyaddown(a)`
```ddown = laurentPolynomial with properties: Coefficients: [6 4 2 0 -2 -4] MaxOrder: 3 ```
`degree(ddown)`
```ans = 5 ```

Create two Laurent polynomials:

• $a\left(z\right)=\sum _{k=0}^{5}\left(6-k\right){z}^{6-k}$

• $b\left(z\right)=\sum _{k=0}^{5}\left(k+1\right){z}^{-k}$

```lpA = laurentPolynomial(Coefficients=[6:-1:1],MaxOrder=6); lpB = laurentPolynomial(Coefficients=[1:6],MaxOrder=0);```

Create the Laurent matrix `matA` = $\left[\begin{array}{cc}\mathit{a}\left(\mathit{z}\right)& 1\\ 2& \mathit{b}\left(\mathit{z}\right)\end{array}\right]$.

`matA = laurentMatrix(Elements={lpA,1;2,lpB});`

Obtain the dyadic downsampling of `matA`.

`matB = dyaddown(matA);`

Inspect the elements of `matB`.

`matB.Elements{1,1}`
```ans = laurentPolynomial with properties: Coefficients: [6 4 2] MaxOrder: 3 ```
`matB.Elements{1,2}`
```ans = laurentPolynomial with properties: Coefficients: 1 MaxOrder: 0 ```
`matB.Elements{2,1}`
```ans = laurentPolynomial with properties: Coefficients: 2 MaxOrder: 0 ```
`matB.Elements{2,2}`
```ans = laurentPolynomial with properties: Coefficients: [1 3 5] MaxOrder: 0 ```

## Input Arguments

collapse all

Laurent polynomial or Laurent matrix, specified as a `laurentPolynomial` object or a `laurentMatrix` object, respectively.

## Output Arguments

collapse all

Downsampled Laurent polynomial or Laurent matrix, returned as a `laurentPolynomial` object or a `laurentMatrix` object. Downsampling a Laurent polynomial $P\left(z\right)=\sum _{k=-\infty }^{\infty }{C}_{k}{z}^{k}$ by two results in the polynomial $Q\left(z\right)=\sum _{k=-\infty }^{\infty }{C}_{2k}{z}^{k}$.

## Version History

Introduced in R2021b