syntfil[NLP2BS] - frequency transformation of transfer function poles and zeros of NLP to a particular biquadratic transfer function parameters of band-rejection filter
Calling sequence:
NLP2BS(fp, f_p, Gc, poles);
NLP2BS(fp, f_p, Gc, poles, zeros);
Parameters:
fp - lower cutoff frequency [Hz]
f_p - upper cutoff frequency [Hz]
Gc - leading coefficient of denominator polynomial of transfer function H [-]
poles - 1D arrays of transfer function poles
zeros - 1D arrays of transfer function zeros (only for Cauer and Inverse Chebyshev transformations)
Parameters fp , f_p and Gc must be positive and fp < f_p .
Description:
The function returns a table with description of filter type, value of gain constant and parameters , , ( ) of particular passband biquadratic transfer functions - sections . Pole-zero pairing and section arranging are made so that dynamic balancing and noise properties of final filter were optimal. Section number determines sequence of the section in cascade. The filter type is . This specification is necessary for transfer function compilation and for following filter synthesis. Biquadratic transfer function with gain constant is denoted by:
Info level:
Setting of variable infolevel[syntfil] can be used to get more detailed results.
infolevel[syntfil] =
2 - print of gain constant and parameters , , ( ) of particular biquadratic transfer functions in the order of Q-factor magnitudes
3 - print of filter type + print of level 2
Examples:
> | with(syntfil): |
> | x:=BS2NLP(1000,1200,3000,4000,3,30): |
> | N:=ChebyshevNLPOrder(x); |
> | Gc,poles:=ChebyshevPoles(N); |
> | NLP2BS(1000,4000,Gc,poles); |
> | 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
> |
See also:
ButterworthPoles, ChebyshevPoles, InvChebyshevPolesZeros, InvChebyshevBPolesZeros, CauerPolesZeros, CauerBPolesZeros, CauerCPolesZeros