# zpkdata

Access zero-pole-gain data

## Syntax

## Description

## Examples

### Example 1

Given a zero-pole-gain model with two outputs and one input

H = zpk({[0];[-0.5]},{[0.3];[0.1+i 0.1-i]},[1;2],-1)

Zero/pole/gain from input to output... z #1: ------- (z-0.3) 2 (z+0.5) #2: ------------------- (z^2 - 0.2z + 1.01) Sample time: unspecified

you can extract the zero/pole/gain data embedded in `H`

with

[z,p,k] = zpkdata(H)

z = [ 0] [-0.5000] p = [ 0.3000] [2x1 double] k = 1 2

To access the zeros and poles of the second output channel of `H`

,
get the content of the second cell in `z`

and `p`

by
typing

z{2,1}

ans = -0.5000

p{2,1}

ans = 0.1000+ 1.0000i 0.1000- 1.0000i

### Example 2

Extract the ZPK matrices and their standard deviations for a 2-input, 1 output identified transfer function.

```
load iddata7
```

transfer function model

`sys1 = tfest(z7, 2, 1, 'InputDelay',[1 0]);`

an equivalent process model

sys2 = procest(z7, {'P2UZ', 'P2UZ'}, 'InputDelay',[1 0]); [z1, p1, k1, ~, dz1, dp1, dk1] = zpkdata(sys1); [z2, p2, k2, ~, dz2, dp2, dk2] = zpkdata(sys2);

Use `iopzplot`

to visualize the pole-zero locations and their
covariances

h = iopzplot(sys1, sys2); showConfidence(h)

## Input Arguments

`sys`

— Zero-pole-gain model

`zpk`

model object

Zero-pole-gain model, specified as a `zpk`

model object.

## Output Arguments

`z`

— Zeros

cell array (default) | column vector

Zeros of the zero-pole-gain model, returned as a cell array with as many rows as
outputs and as many columns as inputs. The `(i,j)`

entry
`z{i,j}`

is the (column) vector of zeros of the transfer function
from input `j`

to output `i`

.

`p`

— Poles

cell array (default) | column vector

Poles of the zero-pole-gain model, returned as a cell array with as many rows as
outputs and as many columns as inputs. The `(i,j)`

entry
`p{i,j}`

is the (column) vector of zeros of the transfer function
from input `j`

to output `i`

.

`k`

— Gain

matrix

Gain of the zero-pole-gain model, returned as a matrix with as many rows as outputs
and as many columns as inputs such that `k(i,j)`

is the gain of the
transfer function from input `j`

to output `i`

. If
`sys`

is a transfer function or state-space model, it is first
converted to zero-pole-gain form using `zpk`

.

`Ts`

— Sample time

scalar

Sample time, specified as a scalar.

`covz`

— Covariance of zeros

cell array

Covariance of zeros, returned as a cell array such that
`covz{ky,ku}`

contains the covariance information about the zeros in
the vector `z{ky,ku}`

. `covz{ky,ku}`

is a 3-D array of
dimension 2-by-2-by-Nz, where `Nz`

is the length of
`z{ky,ku}`

, so that the `(1,1)`

element is the
variance of the real part, the `(2,2)`

element is the variance of the
imaginary part, and the `(1,2)`

and `(2,1)`

elements
contain the covariance between the real and imaginary parts.

`covp`

— Covariance of poles

cell array

Covariance of poles, returned as a cell array such that
`covp{ky,ku}`

contains the covariance information about the poles in
the vector `p{ky,ku}`

. `covp{ky,ku}`

is a 3-D array of
dimension 2-by-2-by-Np, where `Np`

is the length of
`p{ky,ku}`

, so that the `(1,1)`

element is the
variance of the real part, the `(2,2)`

element is the variance of the
imaginary part, and the `(1,2)`

and `(2,1)`

elements
contain the covariance between the real and imaginary parts.

`covk`

— Covariance of gain

cell array

Covariance of zeros, returned as a cell array such that
`covk{ky,ku}`

contains the covariance information about the zeros in
the vector `k{ky,ku}`

. `covk{ky,ku}`

is a 3-D array of
dimension 2-by-2-by-Nk, where `Nk`

is the length of
`k{ky,ku}`

, so that the `(1,1)`

element is the
variance of the real part, the `(2,2)`

element is the variance of the
imaginary part, and the `(1,2)`

and `(2,1)`

elements
contain the covariance between the real and imaginary parts.

## Version History

**Introduced before R2006a**

## MATLAB Command

You clicked a link that corresponds to this MATLAB command:

Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.

Select a Web Site

Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .

You can also select a web site from the following list:

## How to Get Best Site Performance

Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.

### Americas

- América Latina (Español)
- Canada (English)
- United States (English)

### Europe

- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)

- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)