nlp2lp.mws

syntfil[NLP2LP]  - kmitočtová transformace pólů (a nul) přenosu NDP na parametry omega0, Q, (omega_n) jednotlivých bikvadratických sekcí výsledné struktury dolní propusti

Calling sequence:

      NLP2LP(fp, Gc, poles);

      NLP2LP(fp, Gc, poles, zeros);

Parameters:

      fp       - normovací kmitočet - kmitočet hranice propustného pásma dolní propusti [Hz]

      Gc       - koeficient nejvyšší mocniny Laplaceova operátoru ve jmenovateli přenosové funkce H [-]

      poles    - póly přenosové funkce ve formě pole

      zeros    - (nepovinný parametr) pole nulových bodů přenosové funkce (u Butterworthovy a Čebyševovy aproximace se nezadává)

Parametry   fp   a   Gc   musí být kladné.

Description:

Funkce vrací tabulku ( table ), která obsahuje typ struktury, násobnou konstantu, zlomový kmitočet omega_0  sekce prvního řádu pro liché stupně přenosových funkcí a parametry jednotlivých bikvadratických sekcí. Ty jsou uspořádány s ohledem na optimální dynamické a šumové vlastnosti výsledného zapojení. Číslo sekce udává její pořadí v kaskádě, přičemž sekce prvního řádu je řazena vždy na konci. Typ struktury udává typ filtru, pro dolní propust: cascade_LP . Je to informativní údaj pro sestavení přenosové funkce výsledného filtru a pro syntézu jeho elektrického zapojení. Přenos bikvadratické sekce s násobnou konstantou h[0] = 1  je dán:

Info level:

Změnou proměnné   infolevel[syntfil]   dostanete podrobnější výsledek.

infolevel[syntfil] =

      2  - výpis násobné konstanty přenosové funkce, zlomový kmitočet omega_0  sekce prvního řádu pro liché stupně přenosových funkcí a nakonec výpis parametrů jednotlivých sekcí seřazených podle velikosti činitele jakosti Q

     3   - vypsání typu struktury a parametrů druhé úrovně

Examples:

>    with(syntfil):

`Syntfil version 1.53 loaded`

`You can set infolevel[syntfil] variable to 2..5 to get more detailed results!`

>    x:=LP2NLP(1000,1500,3,20):

>    N:=ButterworthNLPOrder(x);

>    Gc,poles:=ButterworthPoles(N);

N := 6, 1.500000000, 3

Gc, poles := .9976283451, vector([-.9663081629+.2589214919*I, -.9663081629-.2589214919*I, -.7073866710+.7073866710*I, -.7073866710-.7073866710*I, -.2589214919+.9663081629*I, -.2589214919-.9663081629*I]...
Gc, poles := .9976283451, vector([-.9663081629+.2589214919*I, -.9663081629-.2589214919*I, -.7073866710+.7073866710*I, -.7073866710-.7073866710*I, -.2589214919+.9663081629*I, -.2589214919-.9663081629*I]...

>    NLP2LP(1000,Gc,poles);

TABLE([1 = TABLE([Q = .7071067810, omega_0 = 6285.672344]), 2 = TABLE([Q = 1.931851652, omega_0 = 6285.672344]), 3 = TABLE([Q = .5176380900, omega_0 = 6285.672344]), H0 = .9999999973, type = cascade_LP...
TABLE([1 = TABLE([Q = .7071067810, omega_0 = 6285.672344]), 2 = TABLE([Q = 1.931851652, omega_0 = 6285.672344]), 3 = TABLE([Q = .5176380900, omega_0 = 6285.672344]), H0 = .9999999973, type = cascade_LP...
TABLE([1 = TABLE([Q = .7071067810, omega_0 = 6285.672344]), 2 = TABLE([Q = 1.931851652, omega_0 = 6285.672344]), 3 = TABLE([Q = .5176380900, omega_0 = 6285.672344]), H0 = .9999999973, type = cascade_LP...
TABLE([1 = TABLE([Q = .7071067810, omega_0 = 6285.672344]), 2 = TABLE([Q = 1.931851652, omega_0 = 6285.672344]), 3 = TABLE([Q = .5176380900, omega_0 = 6285.672344]), H0 = .9999999973, type = cascade_LP...

 

>    Gc2,poles2,zeros2:=CauerPolesZeros(7,1.5,3):

>    infolevel[syntfil]:=3:

>    NLP2LP(1000,Gc,poles2,zeros2);

type = cascade_LP

H0 = 2904.736731

omega0 = 917.830639

omega_0 = 3184.39153, Q =  2.10260, omega_n = 19396.71114

omega_0 = 5241.08890, Q =  6.06901, omega_n = 11438.14181

omega_0 = 6205.42170, Q = 23.43931, omega_n =  9604.28039

TABLE([1 = TABLE([omega_n = 19396.71114, Q = 2.102602520, omega_0 = 3184.391526]), 2 = TABLE([omega_n = 11438.14181, Q = 6.069012925, omega_0 = 5241.088903]), 3 = TABLE([omega_n = 9604.280386, Q = 23.4...
TABLE([1 = TABLE([omega_n = 19396.71114, Q = 2.102602520, omega_0 = 3184.391526]), 2 = TABLE([omega_n = 11438.14181, Q = 6.069012925, omega_0 = 5241.088903]), 3 = TABLE([omega_n = 9604.280386, Q = 23.4...
TABLE([1 = TABLE([omega_n = 19396.71114, Q = 2.102602520, omega_0 = 3184.391526]), 2 = TABLE([omega_n = 11438.14181, Q = 6.069012925, omega_0 = 5241.088903]), 3 = TABLE([omega_n = 9604.280386, Q = 23.4...
TABLE([1 = TABLE([omega_n = 19396.71114, Q = 2.102602520, omega_0 = 3184.391526]), 2 = TABLE([omega_n = 11438.14181, Q = 6.069012925, omega_0 = 5241.088903]), 3 = TABLE([omega_n = 9604.280386, Q = 23.4...
TABLE([1 = TABLE([omega_n = 19396.71114, Q = 2.102602520, omega_0 = 3184.391526]), 2 = TABLE([omega_n = 11438.14181, Q = 6.069012925, omega_0 = 5241.088903]), 3 = TABLE([omega_n = 9604.280386, Q = 23.4...

>   

See also:

ButterworthPoles, ChebyshevPoles, InvChebyshevPolesZeros, InvChebyshevBPolesZeros, CauerPolesZeros, CauerBPolesZeros, CauerCPolesZeros

NLP2HP, NLP2BP, NLP2BP2, NLP2BS

MakeH, ARCSynt, ARCBlock, ARCBlock1