nlp2bs.mws

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

Calling sequence:

      NLP2BS(fp, f_p, Gc, poles);

      NLP2BS(fp, f_p, Gc, poles, zeros);

Parameters:

      fp       - kmitočet dolní hranice propustného pásma pásmové zádrže [Hz]

      f_p      - kmitočet horní hranice propustného pásma pásmové zádrže [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 , f_p   a   Gc   musí být kladné a   fp  < f_p .

Description:

Funkce vrací tabulku ( table ), která obsahuje typ struktury, násobnou konstantu a parametry jednotlivých bikvadratických sekcí ( omega[0] , Q , omega[n] ). 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ě. Typ struktury udává typ přenosové funkce filtru, cascade_BS  pro pásmovou zádrž. 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 a 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:=BS2NLP(1000,1200,3000,4000,3,30):

>    N:=ChebyshevNLPOrder(x);

>    Gc,poles:=ChebyshevPoles(N);

N := 5, 1.406250000, 3

Gc, poles := 15.96205352, vector([-.5485987094e-1+.9659274757*I, -.5485987094e-1-.9659274757*I, -.1436250067+.5969760105*I, -.1436250067-.5969760105*I, -.1775302716])
Gc, poles := 15.96205352, vector([-.5485987094e-1+.9659274757*I, -.5485987094e-1-.9659274757*I, -.1436250067+.5969760105*I, -.1436250067-.5969760105*I, -.1775302716])

>    NLP2BS(1000,4000,Gc,poles);

TABLE([1 = TABLE([omega_n = 12566.37062, Q = 2.744050378, omega_0 = 4527.003370]), 2 = TABLE([omega_n = 12566.37062, Q = 14.38685866, omega_0 = 25625.77433]), 3 = TABLE([omega_n = 12566.37062, Q = 14.3...
TABLE([1 = TABLE([omega_n = 12566.37062, Q = 2.744050378, omega_0 = 4527.003370]), 2 = TABLE([omega_n = 12566.37062, Q = 14.38685866, omega_0 = 25625.77433]), 3 = TABLE([omega_n = 12566.37062, Q = 14.3...
TABLE([1 = TABLE([omega_n = 12566.37062, Q = 2.744050378, omega_0 = 4527.003370]), 2 = TABLE([omega_n = 12566.37062, Q = 14.38685866, omega_0 = 25625.77433]), 3 = TABLE([omega_n = 12566.37062, Q = 14.3...
TABLE([1 = TABLE([omega_n = 12566.37062, Q = 2.744050378, omega_0 = 4527.003370]), 2 = TABLE([omega_n = 12566.37062, Q = 14.38685866, omega_0 = 25625.77433]), 3 = TABLE([omega_n = 12566.37062, Q = 14.3...
TABLE([1 = TABLE([omega_n = 12566.37062, Q = 2.744050378, omega_0 = 4527.003370]), 2 = TABLE([omega_n = 12566.37062, Q = 14.38685866, omega_0 = 25625.77433]), 3 = TABLE([omega_n = 12566.37062, Q = 14.3...
TABLE([1 = TABLE([omega_n = 12566.37062, Q = 2.744050378, omega_0 = 4527.003370]), 2 = TABLE([omega_n = 12566.37062, Q = 14.38685866, omega_0 = 25625.77433]), 3 = TABLE([omega_n = 12566.37062, Q = 14.3...
TABLE([1 = TABLE([omega_n = 12566.37062, Q = 2.744050378, omega_0 = 4527.003370]), 2 = TABLE([omega_n = 12566.37062, Q = 14.38685866, omega_0 = 25625.77433]), 3 = TABLE([omega_n = 12566.37062, Q = 14.3...

 

>    Gc2,poles2,zeros2:=InvChebyshevPolesZeros(N):

>    infolevel[syntfil]:=3:

>    NLP2BS(1000,4000,Gc2,poles2,zeros2);

type = cascade_BS

H0 = 1.947291

omega_0 = 12566.37062, Q = 0.94876, omega_n = 12566.37062

omega_0 =  7925.27924, Q = 1.29955, omega_n =  9229.99680

omega_0 = 19925.31313, Q = 1.29955, omega_n = 17108.74595

omega_0 =  6440.05130, Q = 3.78220, omega_n =  7716.45418

omega_0 = 24520.56091, Q = 3.78220, omega_n = 20464.53808

TABLE([1 = TABLE([omega_n = 9229.996805, Q = 1.299554986, omega_0 = 7925.279235]), 2 = TABLE([omega_n = 20464.53808, Q = 3.782204824, omega_0 = 24520.56091]), 3 = TABLE([omega_n = 7716.454182, Q = 3.78...
TABLE([1 = TABLE([omega_n = 9229.996805, Q = 1.299554986, omega_0 = 7925.279235]), 2 = TABLE([omega_n = 20464.53808, Q = 3.782204824, omega_0 = 24520.56091]), 3 = TABLE([omega_n = 7716.454182, Q = 3.78...
TABLE([1 = TABLE([omega_n = 9229.996805, Q = 1.299554986, omega_0 = 7925.279235]), 2 = TABLE([omega_n = 20464.53808, Q = 3.782204824, omega_0 = 24520.56091]), 3 = TABLE([omega_n = 7716.454182, Q = 3.78...
TABLE([1 = TABLE([omega_n = 9229.996805, Q = 1.299554986, omega_0 = 7925.279235]), 2 = TABLE([omega_n = 20464.53808, Q = 3.782204824, omega_0 = 24520.56091]), 3 = TABLE([omega_n = 7716.454182, Q = 3.78...
TABLE([1 = TABLE([omega_n = 9229.996805, Q = 1.299554986, omega_0 = 7925.279235]), 2 = TABLE([omega_n = 20464.53808, Q = 3.782204824, omega_0 = 24520.56091]), 3 = TABLE([omega_n = 7716.454182, Q = 3.78...
TABLE([1 = TABLE([omega_n = 9229.996805, Q = 1.299554986, omega_0 = 7925.279235]), 2 = TABLE([omega_n = 20464.53808, Q = 3.782204824, omega_0 = 24520.56091]), 3 = TABLE([omega_n = 7716.454182, Q = 3.78...
TABLE([1 = TABLE([omega_n = 9229.996805, Q = 1.299554986, omega_0 = 7925.279235]), 2 = TABLE([omega_n = 20464.53808, Q = 3.782204824, omega_0 = 24520.56091]), 3 = TABLE([omega_n = 7716.454182, Q = 3.78...

>   

See also:

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

NLP2LP, NLP2HP, NLP2BP, NLP2BP2

MakeH, ARCSynt, ARCBlock, ARCBlock1