As I've already stated.
Obviously.
Sorry you must have meant something else. Not sure I'm getting you.
As I've already stated.
Obviously.
Cutoff modulation of TPT structures is highly unlikely (as in "maybe impossible", although a formal proof doesn't exist yet AFAIK) to explode. Especially, since the effect is pretty much independent of the sampling rate, it hints at the fact that the analog filter would also explode in this case (for which we do have a formal proof). Meaning, it's not just the cutoff modulation and there is highly likely to be a mistake somewhere.
In easy terms, an exploding filter basically means that output of the filter would keep increasing indefinitely until it causes a numerical overflow. As you would expect, there is practically no use of such a filter. It wouldn't produce any usable sound. And the overflow will eat the CPU alive. You could however clip the output internally (limit it) to prevent the filter from exploding. You would get some sound. But it's horrendous to say the least.Skupje wrote: ↑Thu Apr 25, 2019 11:10 am I don't understand "or denounce" exploding But correct me if im wrong, I think this is because the filter acts as a buffer and carries excess momentum forward, ZDF taking momentum out by flushing the array acting like a highpass filter to a lowpass filter is mitigating this issue.
Not even 32x oversampling would do any good for it, like at all. And I highly doubt that any thing higher will do. I could try further when I have time today.
That has to be a code error, typically the output should be 1/1 or very "digitally" near to it.
I just tried this. I set the base cutoff frequency of the filter at 1Khz. And set a modulation depth such that highest frequency would be less than 2Khz and lowest would be about 500Hz. Then started modulating with a sin wave. Same results, explosion when the sine wave hits 2Khz or higher.
Hmmm, the thing is that if there was a mistake I would have expected the filter not to work at all even without modulation. But, t's working, identical to the original pole-zero filter prior to inverse BLT. Pretty much the same frequency response as far as I can hear and see with a spectrum analyzer.Z1202 wrote: ↑Thu Apr 25, 2019 11:46 am Cutoff modulation of TPT structures is highly unlikely (as in "maybe impossible", although a formal proof doesn't exist yet AFAIK) to explode. Especially, since the effect is pretty much independent of the sampling rate, it hints at the fact that the analog filter would also explode in this case (for which we do have a formal proof). Meaning, it's not just the cutoff modulation and there is highly likely to be a mistake somewhere.
Thats good to know
Depending on the kind of the mistake. E.g. what if your structure is not true TPT?
Let me quickly give an overview. The traditional process of BLT is transforming the transfer function of the filter and then picks up an essentially randomly chosen (direct form) topology, which gives the required transfer function. In the LTI case the reasoning is mostly correct, however it falls apart once we leave the LTI domain, since we can't really use the concept of transfer functions anymore (as you mentioned). So the filter is kinda free to do whatever it wants. In fact for a given transfer function there are an infinite number of different topologies implementing this function, and an infinite number of possible time-varying behaviors, some of which may preserve the time-varying stability and some do not.
For LTI systems, you can (for the most part) evaluate stability just by looking at the poles of the transfer function. However, modulation is not LTI and hence this approach is no longer sufficient and the actual state-variables of the system become important: in the time-varying case, it's the values you store from one time-step to another are what ultimately determines whether the filter remains well-behaved or not.S0lo wrote: ↑Thu Apr 25, 2019 8:35 pm I don't know if you've read the posts before mine. Let me get back to the original point here and ask a question. Why would a pole-zero filter that was originally unstable at fast modulation become stable when we apply inverse BLT and then apply TPT (essentially applying BLT again). ?
hmm, That basically confirms what I found out in the paper I posted. I've done TPT in time domain, it's stable. Then did BLT in frequency domain, it's not stable. Then I did something different, I found (in time domain), a way to represent the same analog structure WITH feedback delay from the output!!. And it's stable!!. Check the latter part of the section called "Exposing the guts" where I show that monster formula. It's basically a direct form representation of the TPT structure.Z1202 wrote: ↑Fri Apr 26, 2019 7:31 amOTOH, TPT doesn't deal with frequency domain and works directly in time domain, no transfer functions are involved (we can use them post-factum to analyze the transformation result in the LTI case, but it's not used in the transformation itself). Instead, the transformation directly tries to emulate the time-domain behavior of the analog circuit.
Fortunately I've read that section of the book. I happen to mention that in the paper too.
I did touch on that on the paper. And explained a bit why I'm doing it. I'm actually not starting with RBJ. I'm starting with basic Z-plane analyses. So to put arbitrary poles and zeros exactly where I want them to be. What bugled me, (in the first place when I didn't know all this), is why every time I try to modulate those types of filters, they do explode.Z1202 wrote: ↑Fri Apr 26, 2019 7:31 am I didn't read the details of your original post, but is there any specific reason that you're starting with a discrete-time filter? If you are using any of RBJ filters, they are all derived from analog prototypes, so you're doing the same work backwards to reobtain the prototype and then again in the TPT way. It'd be easier to simply start with an analog filter (the math is also much simpler).
The analog structure I'm using was mentioned by a fellow member here earlier. The coefficients here are directly from the S-domain transfer function.
The original Z-domain transfer function is a simple two pole conjugate pair placed at radius R with a cut-off frequency cut. Where the term x is the real component x = cos(2.0*PI*cut).
Well, the transfer function in question probably can be written as a function of s/w (although I didn't verify it). Which means that it can be implemented with cutoff gains preceding integrators, however it isn't, and I suspect this is the reason for the instability. Actually 2.16 of the book does make a statement similar to the one of yours (requiring identical cutoff gains to precede the integrators is pretty much the same as requiring H(s) to be a function of H(s/w)), would be nice to hear your comments on it.mystran wrote: ↑Fri Apr 26, 2019 2:34 pmif the transfer function of each of the state variables (eg. as measured from the capacitor voltages) can be written as a rational function of (s/w) without any other free instances of either s or w (where the latter is the variable cutoff), then the structure is unconditionally stable under cutoff modulation (for strictly positive finite w).
That's the thing though. As long as the state variables don't depend on w (other than by integration constant, ie. H(s/w) sense), it doesn't matter if output has a dependency on w, because that won't be enough to introduce additional energy into the feedback system by modulating the cutoff, but rather it's just equivalent to putting a separate gain multiplier after the filter proper.
So basically if H(s * w) leads to w completely disappearing from the denominator of the transfer function, this can assure stability at modulation. if my understanding is correct, I'm inclined to be convinced that it's sufficient but not sure it's necessary.mystran wrote: ↑Fri Apr 26, 2019 2:34 pm Urgh.. some really needs to figure out an exact mathematical definition for this, because it's really getting silly
Here's what I propose (without proof, but I'm fairly confident these are the sufficient and necessary conditions): if the transfer function of each of the state variables (eg. as measured from the capacitor voltages) can be written as a rational function of (s/w) without any other free instances of either s or w (where the latter is the variable cutoff), then the structure is unconditionally stable under cutoff modulation (for strictly positive finite w). If such a structure is numerically simulated using a consistent A-stable method (such as trapezoidal), then the simulation is also unconditionally stable under cutoff modulation (again, for strictly positive, finite w).
The output gains do not have to be proportional to w. They can be anything. Also, even if they are proportional, a 1000 times boost caused by cutoff change from 10Hz to 10kHz for all practical purposes might be considered as being unstablemystran wrote: ↑Fri Apr 26, 2019 3:49 pmThat's the thing though. As long as the state variables don't depend on w (other than by integration constant, ie. H(s/w) sense), it doesn't matter if output has a dependency on w, because that won't be enough to introduce additional energy into the feedback system by modulating the cutoff, but rather it's just equivalent to putting a separate gain multiplier after the filter proper.
© KVR Audio, Inc. 2000-2024
Submit: News, Plugins, Hosts & Apps | Advertise @ KVR | Developer Account | About KVR / Contact Us | Privacy Statement