Skip to content

Different impulse responses for zpk vs tf #1062

Closed
@murrayrm

Description

@murrayrm

Discussed in #1061

Originally posted by MEnzmann November 19, 2024
Hi all!

I am little puzzled about the declaration of transfer-functions with control.zpk. The step-responses / impulse-responses of a transfer-function declared with control.zpk seem to unstable, although the poles are in the left-half plane and a bode plot does not show unstable poles. Am I missing something in the following MME?

Help would be appreciated! TIA!

_import control as ct
import control.matlab as ml
import matplotlib.pyplot as pl

Declare stable system as zpk

Gzp = ct.zpk([-5],[-1,-10], gain=4)
print(Gzp)

Declare same system as tf

Gtf = ct.tf([4,20], [1,11, 10])
print(Gtf)

Both systems share the same poles and zeros, the difference of both systems is 0.

Yet: the Gzp system is instable in simulations while Gtf is stable (as expected)

[Tzp, Yzp] = ct.impulse_response(Gzp)
pl.plot(Tzp, Yzp)
pl.show()
[Ttf, Ytf] = ct.impulse_response(Gtf)
pl.plot(Ttf, Ytf)
pl.show()__

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions