int ChebyshevIIOrder(const DewArray<double> &BEdges, double PassRipple, double StopRipple, TFilterType FilterType, DewArray<double> &CutoffFreq, bool Analog = false);
Estimate the minimum Chebyshev type II (inverse Chebyshev) filter order that meets a transition-band specification, and fill CutoffFreq with the STOPBAND-edge cutoff(s). The order formula matches Chebyshev type I, n=\lceil(cosh^(-1)sqrt((10^(R_s/10)-1)/(10^(R_p/10)-1)))/(cosh^(-1)(omega_s/omega_p))\rceil, capped at MaxIirOrder (=50). Because the natural cutoff is the stopband edge, the returned CutoffFreq may sit just outside the passband bracket; for bandpass/bandstop the estimated order can differ from scipy cheb2ord by at most one section. Domain: digital edges in (Analog=False) or analog rad/s (Analog=True); CutoffFreq length is half BEdges length and matches FilterType.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | BEdges | const DewArray<double> & | |
| 2 | PassRipple | double | |
| 3 | StopRipple | double | |
| 4 | FilterType | TFilterType | |
| 5 | CutoffFreq | DewArray<double> & | |
| 6 | Analog = false | bool |
Returns the order of the Chebyshev type II filter. Bedg array must contain the band edges of the transition region(s) sorted in ascending order. PassRipple defines the ripple of the passband and StopRipple defines the ripple of the stopband. The length of the CutoffFreq array must be equal to one half of the length of the BEdg array and must match the specified FilterType. The routine returns the estimated order as a result and fill's the CutoffFreq array. This array can then be passed to the ChebyshevIIFilter routine.