python/ch_pol.py
changeset 0 0efde00f9229
equal deleted inserted replaced
-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