# Documentation

### This is machine translation

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

# zp2ss

Convert zero-pole-gain filter parameters to state-space form

## Syntax

[A,B,C,D] = zp2ss(z,p,k)

## Description

zp2ss converts a zero-pole-gain representation of a given system to an equivalent state-space representation.

[A,B,C,D] = zp2ss(z,p,k) finds a single input, multiple output, state-space representation

$\begin{array}{l}\stackrel{˙}{x}=Ax+Bu\\ y=Cx+Du\end{array}$

given a system in factored transfer function form.

$H\left(s\right)=\frac{Z\left(s\right)}{P\left(s\right)}=k\frac{\left(s-{z}_{1}\right)\left(s-{z}_{2}\right)\cdots \left(s-{z}_{n}\right)}{\left(s-{p}_{1}\right)\left(s-{p}_{2}\right)\cdots \left(s-{p}_{n}\right)}$

Column vector p specifies the pole locations, and matrix z the zero locations with as many columns as there are outputs. The gains for each numerator transfer function are in vector k. The A, B, C, and D matrices are returned in controller canonical form.

Inf values may be used as place holders in z if some columns have fewer zeros than others.

## Examples

collapse all

Generate the state-space representation of a damped mass-spring system that obeys the differential equation

 

The measurable quantity is the acceleration, , and is the driving force. In Laplace space, the system is represented by

 

The system has unit gain, a double zero at , and two complex-conjugate poles.

z = [0 0]; p = roots([1 0.01 1]) k = 1; 
p = -0.0050 + 1.0000i -0.0050 - 1.0000i 

Use zp2ss to find the state-space matrices.

[A,B,C,D] = zp2ss(z,p,k) 
A = -0.0100 -1.0000 1.0000 0 B = 1 0 C = -0.0100 -1.0000 D = 1 

collapse all

### Algorithms

zp2ss, for single-input systems, groups complex pairs together into two-by-two blocks down the diagonal of the A matrix. This requires the zeros and poles to be real or complex conjugate pairs.