Prev: pow/log functions in fixed point
Next: Obtaining band-pass/stop coeffiecients from low/high-pass
From: robert bristow-johnson on 20 Jul 2010 14:41 On Jul 20, 10:30 am, Greg Berchin <gberc...(a)comicast.net.invalid> wrote: > On Tue, 20 Jul 2010 10:25:34 -0400, Greg Berchin <gberc...(a)comicast.net.invalid> > wrote: > > >Grant, it's not clear from the description whether this produces continuous time > >or discrete time filters. > > Never mind. Once I read down to the part about "biquads", the ambiguity > disappeared. the question remains with me. it seems likely that Grant is using Bilinear Transform (with prewarped corner frequency placement) because that will retain the equal ripples of the Butterworth, Chebyshev, or Elliptic analog prototypes (just bump the frequency locations of the ripples slightly). but he could be using Impulse Invariant. or something else? any of those methods can be factored into biquads. Grant, do you mind telling us? and what does the "Adjust for Ripple" check-box option do? does it adjust the DC gain in the case where the bottom of the ripple is on DC (i can't remember if that is for even or odd order)? just curious. looks like a useful little addition to scopeFIR for PCers. probably won't run too good on my Mac. r b-j
From: Grant Griffin on 21 Jul 2010 08:16 robert bristow-johnson wrote: > On Jul 20, 10:30 am, Greg Berchin <gberc...(a)comicast.net.invalid> > wrote: >> On Tue, 20 Jul 2010 10:25:34 -0400, Greg Berchin <gberc...(a)comicast.net.invalid> >> wrote: >> >>> Grant, it's not clear from the description whether this produces continuous time >>> or discrete time filters. >> Never mind. Once I read down to the part about "biquads", the ambiguity >> disappeared. > > the question remains with me. it seems likely that Grant is using > Bilinear Transform (with prewarped corner frequency placement) because > that will retain the equal ripples of the Butterworth, Chebyshev, or > Elliptic analog prototypes (just bump the frequency locations of the > ripples slightly). but he could be using Impulse Invariant. or > something else? Hi r, You're right that ScopeIIR uses the bilinear transform with pre-warping. As best I can tell, that seems to be the preferred method for basic IIR design - I'm not aware that any other methods offer any significant advantages > any of those methods can be factored into biquads. Grant, do you mind > telling us? and what does the "Adjust for Ripple" check-box option > do? does it adjust the DC gain in the case where the bottom of the > ripple is on DC (i can't remember if that is for even or odd order)? Right again - it just automatically boosts the gain to center the ripple on zero. > just curious. looks like a useful little addition to scopeFIR for > PCers. probably won't run too good on my Mac. I dunno...if you've got an x86 Mac, you could probably run Linux and Wine. My other products run just fine on Wine, though I haven't checked ScopeIIR for that yet. (If anybody out there in comp.dsp land wants to do that for me, I'd be eternally grateful.) Grant -- _____________________________________________________________________ Grant R. Griffin Publisher of dspGuru http://www.dspguru.com Iowegian International Corporation http://www.iowegian.com See http://www.iowegian.com/img/contact.gif for e-mail address
From: Grant Griffin on 21 Jul 2010 08:51 Nasser M. Abbasi wrote: > On 7/20/2010 6:05 AM, Grant Griffin wrote: >> Hi All, >> >> This is to announce the release of ScopeIIR 5.0, which is a >> comprehensive Windows tool for designing and analyzing Infinite Impulse >> Response (IIR) filters. The Trial Edition is free for 30 days. >> >> ScopeIIR designs high-order IIR filters based on Butterworth, Chebyshev, >> and Elliptic prototypes. It designs lowpass, highpass, bandpass, and >> bandstop filters. >> > > Hi; > > How does it compare to Matlab fdatool? do you have a chart comparison? I don't have anything like a comparison chart but maybe I should - thanks for the idea! I created ScopeIIR completely independently of fdatool, but I tried fdatool out yesterday and I was surprised to find that its IIR filter design capability is actually fairly similar to ScopeIIR's at a basic level. However, there's a _big_ difference in terms of usability. fdatool seems to be an answer to the question, "What filter design program can we build with Matlab's filter design scripting capability and Matlab's GUI capability?" Since Matlab's GUI capability is pretty primitive, the result is pretty primitive, even though Matlab's filter design capability is pretty sophisticated. ScopeIIR takes the opposite approach: given the full-capability GUI system provided by C++ with MFC, what can be done to make IIR filter design as easy and productive as possible? For example, ScopeIIR provides a six-panel interface for showing plots and data. Each pane can be assigned to any plot or data display, and it can also create an unlimited number of external windows for additional displays. In comparison, as best I can tell, fdatool has only two display areas: it can show only a single response plot, and has another area that can be either design specifications or a pole-zero plot. (It wastes a _lot_ of precious screen space.) So, it can't even display a phase and magnitude plot at the same time. ScopeIIR (and my other products) all provide a sophisticated, multi-level, mouse-wheel-controlled zooming capability. In contrast, fdatool (and Matlab's other products) provide a clunky system of zooming based on hitting zoom-in and zoom-out buttons. This may seem like a small point, but it's critical to your productivity, since zooming is a primary activity during filter design. (Matlab's zooming drives me crazy whenever I have to suffer with it.) ScopeIIR also comes with ready-made IIR implementation examples in C and C++, whereas fdatool lets you roll your own. (The Matlab folks are primarily in the business of selling Matlab, not C and C++.) So, although fdatool is undeniably useful, it's really more of a demo than something you'd want to use interactively on a daily basis. My guess is that most folks use it for some quick experiments or simple filter design jobs, then do Matlab scripting for more complicated filter designs - or to see phase and magnitude plots at the same time. > > I am asking, because I have matlab student version, and fdatool comes > bundled with it. I'm gonna resist the urge to point out that you get what you pay for. :-) > > http://www.mathworks.com/products/signal/demos.html?file=/products/demos/shipping/signal/introfdatooldemo.html > > > I am also writing my own small IIR program in Mathematica (only > butterworth so far), for learning digital filters, and could also use > your program to double verify my results. > > I now use fdatool to verify my result. Main problems I see now is in > numerical problems when the filter order gets too large. Matlab uses > state space approach to convert analog to digital, I think they do this > for better numerical stability. ScopeIIR doesn't use state-space, it just uses the pole-zero centric approach described in most DSP textbooks. It's hard to generalize regarding design of large filters, but you can just try ScopeIIR on your specific problem and see how it goes. (The Trial Edition will design high-order filters, though it won't export their coefficients - I've discovered that most users won't pay unless you make them.) In my experience, though, ScopeIIR can design much higher-order filters than one would generally ever use in practice. > > thanks > --Nasser Thanks for some interesting questions, Nasser! Grant -- _____________________________________________________________________ Grant R. Griffin Publisher of dspGuru http://www.dspguru.com Iowegian International Corporation http://www.iowegian.com See http://www.iowegian.com/img/contact.gif for e-mail address
From: Jerry Avins on 21 Jul 2010 09:02 On 7/21/2010 8:16 AM, Grant Griffin wrote: > robert bristow-johnson wrote: ... >> does it adjust the DC gain in the case where the bottom of the >> ripple is on DC (i can't remember if that is for even or odd order)? > > Right again - it just automatically boosts the gain to center the ripple > on zero. As far as I know, that's an unusual choice. Making the peak gain unity tends to avoid hidden gotchas. ... Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
From: Rich Webb on 21 Jul 2010 09:42 On Wed, 21 Jul 2010 07:16:52 -0500, Grant Griffin <nobody(a)example.com> wrote: >I dunno...if you've got an x86 Mac, you could probably run Linux and >Wine. My other products run just fine on Wine, though I haven't checked >ScopeIIR for that yet. (If anybody out there in comp.dsp land wants to >do that for me, I'd be eternally grateful.) Took a quick look at it under openSUSE 11.2 and Wine 1.1.28. After figuring out the magic words necessary to run an install via an .msi file (turns out to be easy if one knows the right magic), it installed okay and runs mostly well. I only looked at the four projects in the example directory: ChebychevLowpass4.sip caused an exception that put up Wine's Something Bad Happened dialog box and terminated the app. The other three all seemed to execute/behave properly. I did note that there's a new stable Wine release out, as of a week or so ago. Haven't picked it up yet. -- Rich Webb Norfolk, VA
First
|
Prev
|
Next
|
Last
Pages: 1 2 3 Prev: pow/log functions in fixed point Next: Obtaining band-pass/stop coeffiecients from low/high-pass |