author | Puneeth Chaganti <punchagan@fossee.in> |
Fri, 27 May 2011 14:24:59 +0530 | |
changeset 0 | 0efde00f9229 |
permissions | -rw-r--r-- |
0 | 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 |