walkie-talkies/main/sim_lpf.py

36 lines
593 B
Python

import numpy as np
import matplotlib.pyplot as plt
f = np.logspace(4, 10, 10000)
w = 2*np.pi*f
def c(v):
return 1/(1j*w*v)
def l(v):
return 1j*w*v
def s(a, b):
return a + b
def p(a, b):
return 1/(1/a + 1/b)
def div(a, b):
return b/(a + b)
def cc(v):
return 0.1 + c(v)
def ll(v):
return 0.1 + l(v)
L2 = 5.1e-9
C2 = 10e-12
pi = div(50, p(c(C2), s(l(L2), p(c(C2), 50))))*div(l(L2), p(c(C2), 50))
pi2 = div(50, p(cc(C2), s(ll(L2), p(cc(C2), 50))))*div(ll(L2), p(cc(C2), 50))
plt.semilogx(f, 20*np.log10(np.abs(2*pi)))
plt.semilogx(f, 20*np.log10(np.abs(2*pi2)))
plt.show()