Řešení aproximační úlohy
Zadání tolerančního schématu pásmové propusti (PP) a jeho transformace na schéma normované dolní propusti (NDP). Pro volbu infolevel[syntfil] > 2 je navíc vykresleno toleranční schéma filtru.
> | infolevel[syntfil]:=3: |
> | f_s:=1000:f_p:=2000:fp:=3000:fs:=4000: |
> | ap:=3:as:=45: |
> | x:=BP2NLP(f_s,f_p,fp,fs,ap,as); |
Filter specification:
f_s = 1000.000000 Hz
f_p = 2000.000000 Hz
fp = 3000.000000 Hz
fs = 4000.000000 Hz
ap = 3.000000 dB
as = 45.000000 dB
Non-symetrical BP was entered.
New stopband frequency was calculated f_s = 1500.000000 Hz.
fm = 2449.489743 Hz
delta_fp = 1000.000000 Hz
delta_fs = 2500.000000 Hz
Specification of NLP:
Os = 2.500000 1/s
ap = 3.000000 dB
as = 45.000000 dB
Alternativní zadání PP pomocí fm , delta_fp a delta_fs . Tímto způsobem je vždy zadané symetrické schéma. Parametry jsou určeny tak, aby výsledek byl shodný s předchozím výpočtem.
> | fm:=evalf(sqrt(f_p*fp)): delta_fp:=fp-f_p: delta_fs:=fs-f_s: |
> | BP22NLP(fm,delta_fp,delta_fs,ap,as); |
> | infolevel[syntfil]:=1: |
Filter specification:
fm = 2449.489743 Hz
delta_fp = 1000.000000 Hz
delta_fs = 3000.000000 Hz
ap = 3.000000 dB
as = 45.000000 dB
f_s = 1372.281323 Hz
f_p = 2000.000000 Hz
fp = 3000.000000 Hz
fs = 4372.281323 Hz
Specification of NLP:
Os = 3.000000 1/s
ap = 3.000000 dB
as = 45.000000 dB
Výpočet stupňů přenosových funkcí a nové hodnoty útlumu v nepropustném pásmu pro všechny standardní aproximace.
> | N1:=ButterworthNLPOrder(x); |
> | Butterworth_asnew(N1); |
> | N2:=ChebyshevNLPOrder(x); |
> | Chebyshev_asnew(N2); |
> | N3:=CauerNLPOrder(x); |
> | Cauer_asnew(N3); |
Výpočet provozního činitele přenosu, charakteristické funkce a nul přenosové funkce (pólů provozního činitele přenosu).
> | G,phi,zeros:=Cauer(N3,p); |
Výpočet pólů a nul přenosové funkce pro následnou kaskádní syntézu.
> | Gc,poles,zeros:=CauerPolesZeros(N3); |