Circuit modeled filter, how to?
- KVRAF
- 12615 posts since 7 Dec, 2004
if you want to emulate picasso's style in the medium of glass working, you dont start by creating a horribly complicated system of emulating a paintbrush via glass. you emulate the fundamental ideas behind his works and find your own way with the unique medium of glass. techniques that make sense on canvas will for the most part have absolutely no application to glass.
this is the point i have been trying to make.
this is the point i have been trying to make.
- u-he
- 30180 posts since 8 Aug, 2002 from Berlin
Hmmm. Here's my opinion: I think that circuit modelled filters (impOscar, timewarp2600, Korg MS20, MiniMonsta, ASynth) have proven to beat just about any implementation based on traditional dsp in respect of authenticity. Hence I'd guess that circuit modelled filters are currently the most successful way to recreate the properties of analogue filters in digital form. Funnily, the companies that get it right seem less pretentious about things than those companies that have a lesser backup by reality.
Furtherly, we have worked on highly complex models here in a mixed approach (circuit modelled skeleton with some nasty maths based additions) and could break it down to a nicely performing thing. Takes time, no big deal, sounds great, doesn't kill cpu.
Like many we think that these techniques are superior to traditional dsp. Which is an opinion. It's valid to have an opinion and I hope that williamk doesn't feel discouraged by the argument.
I envy Andy for his math skills and the environment he works in. If I hadn't had to run a company, I'd probably just buy all this gear and dissect it bit by bit (no pun intended) in the same fashion.
Urs
Furtherly, we have worked on highly complex models here in a mixed approach (circuit modelled skeleton with some nasty maths based additions) and could break it down to a nicely performing thing. Takes time, no big deal, sounds great, doesn't kill cpu.
Like many we think that these techniques are superior to traditional dsp. Which is an opinion. It's valid to have an opinion and I hope that williamk doesn't feel discouraged by the argument.
I envy Andy for his math skills and the environment he works in. If I hadn't had to run a company, I'd probably just buy all this gear and dissect it bit by bit (no pun intended) in the same fashion.
- KVRist
- 144 posts since 23 Apr, 2006 from London, England
Very true! Well analogue signals are only trying to emulate/simulate/model higher level physical effects such as filtering as opposed to holding a pillow over your ear to equalize (if you get what I mean).Aleksey Vaneev wrote:Analogue is probably better represented via PDM (pulse density modulation) since we deal with the flow of equal electrons. So, analog is not analog at all if you perceive it as a flow of electrons spaced apart (it translates to a very high sample rate, though, but it's not infinite).keldon85 wrote:Now that's the funny thing, the pure sound; we're simply not used to it so it wounds weird when we are exposed to it! Plus analogue happens in real time without PCM's concept of frames and integration.
Very true, that's why I brought up the analogy - it illustrates what's happening and brings the discussion together. A photograph is a exact replication of the captured beauty, but the art form uses arrangement to highlight it. So as a drawing artist you tend to begin with learning how to replicate photos (a little like just implementing the basic algorithm).aciddose wrote:if you want to emulate picasso's style in the medium of glass working, you dont start by creating a horribly complicated system of emulating a paintbrush via glass. you emulate the fundamental ideas behind his works and find your own way with the unique medium of glass. techniques that make sense on canvas will for the most part have absolutely no application to glass.
this is the point i have been trying to make.
Last edited by keldon85 on Fri Apr 18, 2014 10:18 pm, edited 1 time in total.
-
- KVRian
- 626 posts since 29 Jul, 2003 from Paris - France
hi andy,
forward and backward Euler solving methods have been mentionned in this discussion and if we add the bilinear transform I think we cover more than 99% of all the analog discretisations schemes used in this field.
I'd find very valuable to talk here about the implications of these choices and to know what can be done to compensate for artifacts:
here's what I remember from both theory and my own experience:
- Forward Euler is the most simple scheme because it is explicit and keeps the same order when going from Laplace to Z-domain but it is known to lead to unstable simulations at high frequencies. so people usually use oversampling in order to push the unstable range out of the audible range.
- Backward Euler is always stable but too stable, introducing high-frequency filtering. It's implicit so in the general-case there's a system of equation to solve by matrix inversion (can be expensive if done every sample or more), but in some cases you can find analytical solutions depending on the matrix. However if there's some non-linearities in the equations you've no choice but to use Newton-Rhapson iterations (then when to stop?).
- the bilinear transform is stable and doesn't introduce filtering but has the effect of warping the frequency axis, again oversampling can help to push the most warped region out of the audible range.
Do you know about non-trivial systems + method that can lead to an exact analytical simulation when going from laplace to Z-domain?
forward and backward Euler solving methods have been mentionned in this discussion and if we add the bilinear transform I think we cover more than 99% of all the analog discretisations schemes used in this field.
I'd find very valuable to talk here about the implications of these choices and to know what can be done to compensate for artifacts:
here's what I remember from both theory and my own experience:
- Forward Euler is the most simple scheme because it is explicit and keeps the same order when going from Laplace to Z-domain but it is known to lead to unstable simulations at high frequencies. so people usually use oversampling in order to push the unstable range out of the audible range.
- Backward Euler is always stable but too stable, introducing high-frequency filtering. It's implicit so in the general-case there's a system of equation to solve by matrix inversion (can be expensive if done every sample or more), but in some cases you can find analytical solutions depending on the matrix. However if there's some non-linearities in the equations you've no choice but to use Newton-Rhapson iterations (then when to stop?).
- the bilinear transform is stable and doesn't introduce filtering but has the effect of warping the frequency axis, again oversampling can help to push the most warped region out of the audible range.
Do you know about non-trivial systems + method that can lead to an exact analytical simulation when going from laplace to Z-domain?
-
- KVRist
- 120 posts since 10 Aug, 2005
Hi mdsp,mdsp wrote:hi andy,
forward and backward Euler solving methods have been mentionned in this discussion and if we add the bilinear transform I think we cover more than 99% of all the analog discretisations schemes used in this field...
Do you know about non-trivial systems + method that can lead to an exact analytical simulation when going from laplace to Z-domain?
Good thanks for your addition. There is no single method that I know of that solves all problems, in that regard it is much like a circuit, you get nothing for free, it's always a trade off and compromise. In the end all these distortions are in high frequencies because of integration step delays. The only way that I know to get something matching in magnitude and phase is to have smaller steps, ie oversample more. Another approach is to alter your numerical integration method for the problem at hand and do things like having a mostly forward euler method.
Since I deal mainly with non-linear circuits I usually have to oversample anyway to contain upper harmonics of the non-linearities, which means forward euler with some tweaks is usually enough for resonant filter models for me. It's also the lowest cpu. The main thing is that you want to match the frequency response of each capacitor as closely as possible to the analog (ie very fast feedback) before non-linearities take place.
Andrew
-
- KVRian
- 626 posts since 29 Jul, 2003 from Paris - France
IIRC, in the linear case if you can take the exponent of the matrix of your ODEs, then it is possible to have an exact solution that doesn't approximate the integration operator. But I can't remember how and why.
anybody knows about that?
anybody knows about that?
-
- KVRist
- 120 posts since 10 Aug, 2005
Here is a page on it:mdsp wrote:IIRC, in the linear case if you can take the exponent of the matrix of your ODEs, then it is possible to have an exact solution that doesn't approximate the integration operator. But I can't remember how and why.
anybody knows about that?
http://www.omatrix.com/manual/odepade.htm
Sorry, actually, that is just a link to the reference of some maths package that does it.
Andrew
-
- KVRian
- 626 posts since 29 Jul, 2003 from Paris - France
thanks for the link that's what I was thinking about.
I've seen that they use a Padé approximation for the matrix exponential, so it's still an approximation.
BTW if we think about it we can note these special cases of the Padé approximation of the exponential taken from here http://mathworld.wolfram.com/PadeApproximant.html :
then if we apply it to z = exp(sT), we have
looks familiar with Euler and bilinear methods isn't?
I've seen that they use a Padé approximation for the matrix exponential, so it's still an approximation.
BTW if we think about it we can note these special cases of the Padé approximation of the exponential taken from here http://mathworld.wolfram.com/PadeApproximant.html :
Code: Select all
exp_{0/1}(x) = 1 / 1 - x (1)
exp_{1/0}(x) = 1 + x (2)
exp_{1/1}(x) = 2 + x / 2 - x (3)
Code: Select all
(1) => s ~ (1 - z-1) / T
(2) => s ~ ((1 - z-1) / z-1) / T
(3) => s ~ 2/T (1 - z-1) / (1 + z-1)
- Beware the Quoth
- 35431 posts since 4 Sep, 2001 from R'lyeh Oceanic Amusement Park and Funfair
and yet if you want to recreate picasso's results, then you do.aciddose wrote:if you want to emulate picasso's style in the medium of glass working, you dont start by creating a horribly complicated system of emulating a paintbrush via glass.
An idiot on Set Theory:
"In some cases there is an object called red that contains everything that is red. In much the same way a pot is a plate."
"In some cases there is an object called red that contains everything that is red. In much the same way a pot is a plate."
- KVRAF
- 12615 posts since 7 Dec, 2004
no, if you want to recreate his results you use the f**king paint brush, paint and canvas.
http://xhip.cjb.net/hardware/robotomb.mp3
http://xhip.cjb.net/hardware/robotomb.mp3
-
- KVRist
- 120 posts since 10 Aug, 2005
- Beware the Quoth
- 35431 posts since 4 Sep, 2001 from R'lyeh Oceanic Amusement Park and Funfair
are you incapable of remembering the original context in which you phrased your own statement?aciddose wrote:no, if you want to recreate his results you use the f**king paint brush, paint and canvas.
Thats strange, because I actually quoted that context for you. Maybe you should read the whole post if you're in such confusion. Here it is again, just as a little assist.
aciddose wrote:if you want to emulate picasso's style in the medium of glass working, you dont start by creating a horribly complicated system of emulating a paintbrush via glass.
An idiot on Set Theory:
"In some cases there is an object called red that contains everything that is red. In much the same way a pot is a plate."
"In some cases there is an object called red that contains everything that is red. In much the same way a pot is a plate."
-
- KVRian
- 626 posts since 29 Jul, 2003 from Paris - France
thanks, good to have in your bookmarks when you don't remember how to derive all that formulas.
- KVRist
- 144 posts since 23 Apr, 2006 from London, England
And there was me innocently thinking using metaphors would mellow the tone 
Correct me if I'm wrong but isn't Euler the worst form of integration to use (although I did use it because it's so easy to code)!
Correct me if I'm wrong but isn't Euler the worst form of integration to use (although I did use it because it's so easy to code)!
- KVRAF
- 12615 posts since 7 Dec, 2004
do you have nothing better to do but troll, wr?
"in the medium of glass working"
uh, unless i'm mistaken, i do not believe he ever worked in glass. ever.
right. so i'll take that metaphor further:
let's imagine you're painting onto your glass with your special glass paintbrush. everything is fine except for when the paint starts dripping and you get all kinds of streaks and droplets, bubbles and so on forming. then you're going to have to say "one day my glass will be powerful enough to.."
duh, you cant paint on glass the same way you paint on canvas, moron.
"in the medium of glass working"
uh, unless i'm mistaken, i do not believe he ever worked in glass. ever.
right. so i'll take that metaphor further:
let's imagine you're painting onto your glass with your special glass paintbrush. everything is fine except for when the paint starts dripping and you get all kinds of streaks and droplets, bubbles and so on forming. then you're going to have to say "one day my glass will be powerful enough to.."
duh, you cant paint on glass the same way you paint on canvas, moron.
