Esempio n. 1
0
def parameters(Fp2, Fp1, df, d, Fs):

    ap1, ap2, as1, as2 = f_Omega(Fp1, Fp2, df, Fs)

    ao, B, alp, als = Omega_blp(ap1, ap2, as1, as2)

    #  Low Pass Chebyshev filter parameters
    D1 = (1 / (1 - d)**2) - 1
    D2 = (1 / (d**2)) - 1
    cn = np.cosh(4 * np.arccosh(als))
    R1 = np.sqrt(D2) / cn  #Min Range
    R2 = np.sqrt(D1)  #Max Range

    N = int(math.ceil((np.arccosh(np.sqrt(D2 / D1))) / np.arccosh(als)))

    return N, R1, R2, alp
Esempio n. 2
0
from Gen_LPF_Coeff import filt_design

#Passband Cutoffs
Fp2 = 6.0
Fp1 = 7.2

#Transition Band
df = 0.3

#Passband && stopband tolerance
d = 0.15

#sampling rate
Fs = 48

ap1, ap2, as1, as2 = f_Omega(Fp1, Fp2, df, Fs)
ao, B, alp, als = Omega_blp(ap1, ap2, as1, as2)

N = 4
e = 0.6197

#coefficients of numerator and denominator polynomials of LPF filter
b, a = filt_design(N, e, alp)
b = np.array(b)
a = np.array(a)

a1 = 0

for i in range(N + 1):
    coeff = a[i] * (B**i) * (np.poly1d([1, 0]))**(i)
    poly_denom = (np.poly1d([1, 0, ao**2]))**(N - i)