import math
#initialisation of variables
s1 = -46.2*(10**5)
s2 = -45.9*(10**6)
s3 = -11.4*(10**8)
s4 = -30.4*(10**8)
#Calculations
#Zeros
s5 = 16.65*(10**9)
s6 = 15.4*(10**8)
s7 = -22.55*(10**8)
s = 6.28*(10**6)
B = 0.040
Ai = 410.0 #Gain
j=1
n = s2/s1
print("The value of n= %.2f " %n)
Q = (n*(1+(B*Ai)))**0.5/(n+1)
print("The value of Q = %.2f " %Q)
k = 1.0/(2*Q)
print("The value of K = %.2f " %k)
s1f = s1*((n+1)/2)*(1-j*((4*Q*Q)-1)**0.5)
#Results
print("The first pole is = %.2f rad/s " %s1f)
s2f = s1*((n+1)/2)*(1+j*((4*Q*Q)-1)**0.5)
print("The second pole is = %.2f rad/s" %s2f)
import math
#initialisation of variables
Q=1.20
w1=45.9
w2=4.62
k=0.417
w0=Q*(w1+w2)
#Calculations
fpeak=(w0/6.28)*math.sqrt(1.0-(2.0*(k**2.0)))
m=1.0/(2.0*k*(math.sqrt(1-(2.0*(k**2.0)))))
m2=20*math.log(m,10)
#Results
print("The value of fpeak = %.2f MHZ" %fpeak)
print("The value of overshoot = %.2f dB" %m)