Dolní propust
Zadání aproximační úlohy - definice mezních kmitočtů.
> | fp1:=1000:fs1:=2000:ap1:=3:as1:=50: |
Transformace tolerančního schématu daného filtrtu dolní propusti (LP) na nornmovanou dolní propust (NLP).
> | infolevel[syntfil]:=3: #zajistí vykreslení tolerančního schématu |
> | x1:=LP2NLP(fp1,fs1,ap1,as1); |
> | infolevel[syntfil]:=1: |
Filter specification:
fp = 1000.000000 Hz
fs = 2000.000000 Hz
ap = 3.000000 dB
as = 50.000000 dB
Specification of NLP:
Os = 2.000000 1/s
ap = 3.000000 dB
as = 50.000000 dB
Výpočet stupňů a nových útlumů v nepropustném pásmu pro všechny typy standardních aproximací.
> | Nb1:=ButterworthNLPOrder(x1); |
> | Butterworth_asnew(Nb1); |
> | Nch1:=ChebyshevNLPOrder(x1); |
> | Chebyshev_asnew(Nch1); |
> | Nc1:=CauerNLPOrder(x1); |
> | Cauer_asnew(Nc1); |
Výpočet pólů a případně nul (pro eliptické filtry) přenosu NLP pro vybranou aproximaci. Toto je potřebné pro následnou kaskádní syntézu ARC (aktivní RC) struktury filtru.
> | Gc1,poles1:=ButterworthPoles(Nb1); |
Výpočet provozního činitele přenosu a charakteristické funkce pro vybranou aproximaci. Toto je potřebné pro následnou syntézu příčkové LC struktury filtru.
> | g1,chf1:=Butterworth(Nb1,p); |
> |
Výpočet některých ostatních aproximací
Výpočet modulu přenosové funkce dané NLP z provozního činitele přenosu a jeho vykreslení v závislosti na kmitočtu.
> | plot(MagnitudeH(1/g1)(omega),omega=0..5); |
Výpočet modulu přenosu pro mez propustného pásma (měl by samozřejmě vyjít jako zadané ap1 - kontrola).
> | evalf(MagnitudeHdB(1/g1)(1)); |
Výpočet modulu přenosu pro mez nepropustného pásma (měl by samozřejmě vyjít jako zadané asnew - kontrola).
> | evalf(MagnitudeHdB(1/g1)(x1[1])); |
> |
Vykreslení modulu v dB, fáze a skupinového zpoždění NLP
> |