
import numpy as np 
from matplotlib.pyplot import *
[f,G,phi] = np.loadtxt("bode-1.txt",unpack=True)
GdB = 20*np.log10(np.absolute(G))
figure(figsize=(12,8))
subplot(211)
plot(f,GdB,"b-")
ylabel("GdB",fontsize=16)
grid()
xscale("log")
subplot(212)
plot(f,phi*180/np.pi,"b-")
xlabel("f",fontsize=16)
ylabel("phi",fontsize=16)
grid()
xscale("log")
             

import numpy as np 
from matplotlib.pyplot import *
[f,G,phi] = np.loadtxt("bode-2.txt",unpack=True)
figure(figsize=(12,8))
subplot(211)
plot(f,G,"b-")
ylabel("G",fontsize=16)
ylim(0,1)
grid()
xscale("log")
subplot(212)
plot(f,phi*180/np.pi,"b-")
xlabel("f",fontsize=16)
ylabel("phi",fontsize=16)
grid()
xscale("log")
             

i = np.argmax(G)
fr = f[i]
Gmax = G[i]
             

C = 979e-9
L = 1/((2*np.pi*fr)**2*C)
R = 10.0
r = (1-Gmax)/Gmax*R
               

f_modele = np.logspace(2,5,150)
w = f_modele*2*np.pi
H = R/(1j*L*w+r+1/(1j*C*w)+R)
G_modele = np.absolute(H)
GdB_modele = 20*np.log10(G_modele)
phi_modele = np.angle(H)
[f,G,phi] = np.loadtxt("bode-1.txt",unpack=True)
GdB = 20*np.log10(np.absolute(G))
figure(figsize=(12,8))
subplot(211)
plot(f,GdB,"b-")
plot(f_modele,GdB_modele,"k--")
ylabel("GdB",fontsize=16)
grid()
xscale("log")
subplot(212)
plot(f,phi*180/np.pi,"b-")
plot(f_modele,phi_modele*180/np.pi,"k--")
xlabel("f",fontsize=16)
ylabel("phi",fontsize=16)
grid()
xscale("log")
               

f_modele = np.linspace(4000,10000,200)
w = f_modele*2*np.pi
H = R/(1j*L*w+r+1/(1j*C*w)+R)
G_modele = np.absolute(H)
GdB_modele = 20*np.log10(G_modele)
phi_modele = np.angle(H)
[f,G,phi] = np.loadtxt("bode-2.txt",unpack=True)
figure(figsize=(12,8))
subplot(211)
plot(f,G,"b-")
plot(f_modele,G_modele,"k--")
ylabel("G",fontsize=16)
ylim(0,1)
grid()
xscale("log")
subplot(212)
plot(f,phi*180/np.pi,"b-")
plot(f_modele,phi_modele*180/np.pi,"k--")
xlabel("f",fontsize=16)
ylabel("phi",fontsize=16)
grid()
xscale("log")   
               
