syntfil[InvChebyshev] - compute the inverse Chebyshev approximation
syntfil[InvChebyshevB] - compute the inverse type B Chebyshev approximation
Calling sequence:
InvChebyshev(order, Os, ap, var)
Parameters:
order - order of the Chebyshev approximation [-]
Os - stopband frequency of normalized lowpass (NLP) [1/s]
ap - passband ripple [dB]
var - variable symbol in tranfer and characteristic function
Parameter order must be positive integer and for type B in addition even. Parameters Os and ap must be positive numbers where Os > 1 . Parameter var must be symbol .
Description:
Info level:
Setting of variable infolevel[syntfil] can be used to get more detailed results.
infolevel[syntfil] =
2 - print polynomials of inverse transfer function characteristic function and zeros of transfer function on separate lines with description.
3 -
as level 2 +
print transfer function's poles and parameter
.
4 -
as level
3 + print ellipse parameter (
,
) on which lies poles of transfer function and secondary parameter
.
5 - for type B - as level 4 + print transfer function's poles and zeros for type A.
Example:
> | with(syntfil): |
> | G_a,Phi_a,zeros_a:=InvChebyshev(4,1.2,3,s); |
> | infolevel[syntfil]:=3: |
> | G_b,Phi_b,zeros_b:=InvChebyshevB(4,1.2,3,s); |
epsilon = .9976283451
Poles of H:
[-.2636496923+1.018799929*I, -.2636496923-1.018799929*I, -1.217556347+.7169388538*I, -1.217556347-.7169388538*I]
InvChebyshevB:
G = (1.829360748+.8273937923*s^4+2.451081364*s^3+3.630556516*s^2+3.102333590*s)/(s^2+1.829360748)
Phi = .8273937923*s^4/(s^2+1.829360748)
Zeros = [1.352538631*I, -1.352538631*I]
Magnitude frequency response for type A and B .
> | plot([MagnitudeHdB(1/G_a)(omega),MagnitudeHdB(1/G_b)(omega)],omega=0..8,-40..0,color=[red,green]); |
See also:
ChebyshevNLPOrder
InvChebyshevPolesZeros,
Chebyshev_asnew
DroppNLP,
TestCharEqn,
sortzeros,
MagnitudeH,
MagnitudeHdB,
PhaseH,
GroupDelayH
in addition to inverse Chebyshev approximation the following approximations can be used
Butterworth,
Chebyshev,
Cauer,
CauerB,
CauerC