How accurate is Fractal DRIVE modeling?

Exactly. The time constants are very short, typically milliseconds or tens of milliseconds. The memory will fade in less than a second.

An analog RC circuit has "memory". That memory is the capacitor. It "remembers" the voltage. Over time that memory fades to zero. In mathematical parlance it's an integral or a derivative. The capacitor integrates or differentiates and the output is a function of the current input and previous inputs and output. Because the output is based on previous results it therefore has "memory".

If you take two identical circuits with memory they'll both produce the same output to the same input stimulus, just as a circuit without memory would. There is no way to test if an algorithm has memory because any linear filters in the algorithm also have memory.

The key to a good tube algorithm is that there is "nonlinear memory".

The classic method of modeling nonlinear things like tube amps and drive pedals for consumer products is Wiener/Hammerstein techniques. You put linear filters before and/or after a static waveshaper. Crude but pretty effective. Falls apart at edge-of-breakup.

More modern approaches make the waveshaper dynamic but still use fixed filters. Another approach is dynamic filters and static waveshapers.

The advantage of these techniques is they are CPU efficient. The disadvantage is they don't sound particularly good under scrutiny and, more importantly, don't feel right.

More advanced approaches use state-space methods, Volterra kernels, neural networks, etc. They all have advantages and disadvantages.

Personally I prefer parametric approaches with state-space methods. The advantage is that you can create virtual models with realistic control behavior and dynamics. Methods that rely on learning are opaque and only provide a snapshot. They also usually have poor dynamic properties and rely on generalized dynamics to get a fit. IOW everything "feels the same".
Wow, thanks for the detailed explanation!
Now I just have to re-read it a few times to grasp my head around it.
Awesome stuff!
 
Last edited:
Just thought of something else, since some amp circuits have more components and gain stages than others, is it possible there are internal differences in latency between amp models?

I’m using a Recto2 Red Modern on one side and the Engl Energyball on the other. But they are both 6L6 amps and im guessing the circuits are similar enough that there is little or no difference in latency, if that is actually a thing...
The latency is the same but the group delay will vary. Just as it would with the real amps. Anything you are hearing, assuming you've configured things correctly, would be the same as with analog hardware.
 
Last edited:
PS: another question comes to mind at this point regarding the original topic.
Do all drive models already use this "parametric approach with state-space methods" or just the diode-based ones?

If this is one of those questions for which you need to kill me afterwards.. just ignore me 😬
 
The diode-based models in the Drive block have memory. They use a novel approach to solve the nonlinear ODE.

Your logic is flawed. If you put the same signal into two identical amps/drives etc. you should get the same output. The memory is very short, in the millisecond range.

The reason the amps don't cancel perfectly is because of the virtual power supply. The 60 Hz power supply between two amps will not be synchronized. If you subtract them you'll get a slight residual because of power supply ripple being out of phase between the two amps. This is because the amp objects instantiate at different times so the power supplies are out of phase.

IMHO the diode-based models are excellent and compare favorably with their analog counterparts.

What an excellent explanation.
 
does anybody know the scale of the drive block bias voltage?

guessing the drives are probably all running at 9v, and 1.00 is +9v bias voltage, -1.00 is -9v bias voltage? stock DS-1 runs +4.5v bias voltage and i'm trying to get the model to match the pedal
 
does anybody know the scale of the drive block bias voltage?

guessing the drives are probably all running at 9v, and 1.00 is +9v bias voltage, -1.00 is -9v bias voltage? stock DS-1 runs +4.5v bias voltage and i'm trying to get the model to match the pedal
I 'd say 0.00=4.5v, +1.00=9v and -1.00=0v, as in a typical 9v powered drive pedal you don't have -9v available and the "zero" of the waveform is at 4.5v usually.

Anyway, I think it's better if you look at it as a clipping simmetry control, where at 0 you have simmetrical clipping and moving it up or down gets more and more asimmetrical.
 
in a typical 9v powered drive pedal you don't have -9v available

so bias goes from 0v up, and if you want to negative bias it you go from 0v back to the negative terminal? I just see a knob labeled 'bias' with negative values, no way in FAS land that doesn't mean negative bias.

if it was from 0v to 9v it would be like grid bias knob, with 0v fully down ccw.

it's insane, one DS-1 one decade to the next sounds different from parts tolerances in bias circuit and I get to sit here and bump the components in little 1/100ths increments in real time, it's so dumb
 
so bias goes from 0v up, and if you want to negative bias it you go from 0v back to the negative terminal? I just see a knob labeled 'bias' with negative values, no way in FAS land that doesn't mean negative bias.

if it was from 0v to 9v it would be like grid bias knob, with 0v fully down ccw.
Bias is just an arbitrary reference voltage, it can be whatever value the manufacturers chose and it depends on the circuit topology, what kind of transistor/IC they used (e.g. PNP vs NPN), which kind of power supply they need (+9v, -9v, +18v, dual -9/+9, etc.), etc.

Bias is basically the voltage around which the signal voltage swings and its purpose is to set the headroom for the positive and negative halves of the signal wave.

In a typical pedal powered at +9v and with bias set at +4.5v, the headroom for the positive halfwave is 4.5v (from +4.5 to +9v) as is for the negative halfwave (from +4.5v to 0v).
Setting it at 0 in the axe just tells you the two halfwaves have identical headroom before clipping and is equivalent to the example above...
Or -4.5v in a pedal powered with a -9v supply, or +9v in a pedal powered with a +18v supply, or 0v in a pedal powered with a dual -9/+9v supply... and so on.

When you set it to negative values you're just reducing the headroom for the negative halfwave and increasing it for the positive halfwave, and viceversa for positive values.
 
Last edited:
Back
Top Bottom