changeset 0 | 0efde00f9229 |
-1:000000000000 | 0:0efde00f9229 |
---|---|
1 #!/usr/bin/env python |
|
2 |
|
3 # function [phi,psi] = ch_pol(N,epsilon) |
|
4 # Returns desired characteristic polynomial and numerator |
|
5 # N = rise time in number of sample times |
|
6 # epsilon = overshoot as a fraction of ss gain |
|
7 |
|
8 import pylab as pl |
|
9 |
|
10 def ch_pol(N,epsilon): |
|
11 omega = pl.pi/2/N |
|
12 r = epsilon**(omega/pl.pi) |
|
13 phi = pl.array([1, -2*r*pl.cos(omega), r**2]) |
|
14 psi = pl.array([1-r*pl.cos(omega), r**2-r*pl.cos(omega)]) |
|
15 return phi, psi |