Axe-Fx III Firmware Release Version 13.00 Public Beta

The drive blocks sound awesome. I'm very impressed with this upgrade. Really live sounding now (not that the sounded bad before).
 
An explicit solution is one where the output does not depend on itself, i.e.
V = f(Vin)

An iterative implicit solution is where you have to iterate an equation to get the result. For example consider a hypothetical component where the current is a function of the voltage. I.e.
I = f(V)

In a series circuit with a resistor the voltage across the device would be
V = Vin - I*R = Vin - f(V)*R

Let's say the function is I = V^2

So then
V = Vin - V^2 * R

V is on both sides of the equation. One way to solve this is using Newton's method (x = x - f(x)/f'(x)). But that takes a lot of time because you have to keep iterating until the error is below some desired value. You also have to use the derivative which adds computations. The other problem is stability/convergence. Sometimes the solution "blows up" and doesn't converge. This is unacceptable in a real-time system.

A resistor in series with a diode results in an equation with an exponential (or log) function that needs to be solved along with its derivative.

Now when you add a capacitor in parallel with the diode you complicate things even further because now you have a nonlinear ordinary differential equation (ODE). So the current is not only a function of the voltage, the voltage has "memory" due to the capacitor. Solving these types of networks is extremely time consuming. Things like SPICE use implicit solutions like Runge-Kutta 4 (RK4).

I've been working on this for a while and came up with a semi-explicit solution that doesn't require iteration, has the accuracy of implicit solutions and is nearly as fast as explicit solutions.

This is a graph of a 1K resistor in series with a diode. The blue trace is the reference and was derived by solving the network using Newton's method. The red trace is the semi-explicit solution. If you can't see the blue trace that's because the red trace is nearly exactly on top of it.

1n34a.png

On the Axe-Fx III solving the network using Newton's method uses over 30% CPU. The semi-explicit method is around 6%.
 
Last edited:
An explicit solution is one where the output does not depend on itself, i.e.
V = f(Vin)

An iterative implicit solution is where you have to iterate an equation to get the result. For example consider a hypothetical component where the current is a function of the voltage. I.e.
I = f(V)

In a series circuit with a resistor the voltage across the device would be
V = Vin - I*R = Vin - f(V)*R

Let's say the function is I = V^2

So then
V = Vin - V^2 * R

V is on both sides of the equation. One way to solve this is using Newton's method (x = x - f(x)/f'(x)). But that takes a lot of time because you have to keep iterating until the error is below some desired value. You also have to use the derivative which adds computations. The other problem is stability/convergence. Sometimes the solution "blows up" and doesn't converge. This is unacceptable in a real-time system.

A resistor in series with a diode results in an equation with an exponential (or log) function that needs to be solved along with its derivative.

Now when you add a capacitor in parallel with the diode you complicate things even further because now you have an nonlinear ordinary differential equation (ODE). So the current is not only a function of the voltage, the voltage has "memory" due to the capacitor. Solving these types of networks is extremely time consuming. Things like SPICE use implicit solutions like Runge-Kutta 4 (RK4).

I've been working on this for a while and came up with a semi-explicit solution that doesn't require iteration, has the accuracy of implicit solutions and is nearly as fast as explicit solutions.

This is a graph of a 1K resistor in series with a diode. The blue trace is the reference and was derived by solving the network using Newton's method. The red trace is the semi-explicit solution. If you can't see the blue trace that's because the red trace is nearly exactly on top of it.

View attachment 71052

On the Axe-Fx III solving the network using Newton's method uses over 30% CPU. The semi-explicit method is around 6%.
Wow! Intense! Thanks Cliff!
 
An explicit solution is one where the output does not depend on itself, i.e.
V = f(Vin)

An iterative implicit solution is where you have to iterate an equation to get the result. For example consider a hypothetical component where the current is a function of the voltage. I.e.
I = f(V)

In a series circuit with a resistor the voltage across the device would be
V = Vin - I*R = Vin - f(V)*R

Let's say the function is I = V^2

So then
V = Vin - V^2 * R

V is on both sides of the equation. One way to solve this is using Newton's method (x = x - f(x)/f'(x)). But that takes a lot of time because you have to keep iterating until the error is below some desired value. You also have to use the derivative which adds computations. The other problem is stability/convergence. Sometimes the solution "blows up" and doesn't converge. This is unacceptable in a real-time system.

A resistor in series with a diode results in an equation with an exponential (or log) function that needs to be solved along with its derivative.

Now when you add a capacitor in parallel with the diode you complicate things even further because now you have a nonlinear ordinary differential equation (ODE). So the current is not only a function of the voltage, the voltage has "memory" due to the capacitor. Solving these types of networks is extremely time consuming. Things like SPICE use implicit solutions like Runge-Kutta 4 (RK4).

I've been working on this for a while and came up with a semi-explicit solution that doesn't require iteration, has the accuracy of implicit solutions and is nearly as fast as explicit solutions.

This is a graph of a 1K resistor in series with a diode. The blue trace is the reference and was derived by solving the network using Newton's method. The red trace is the semi-explicit solution. If you can't see the blue trace that's because the red trace is nearly exactly on top of it.

View attachment 71052

On the Axe-Fx III solving the network using Newton's method uses over 30% CPU. The semi-explicit method is around 6%.

SO..
If I comprehend this idea correctly, what you’re saying in laymen’s’ terms Mr. Chase is; the clock mechanism has new gears and tells time more accurately due to it’s explitory coefficient(s), right? LOL!
 
An explicit solution is one where the output does not depend on itself, i.e.
V = f(Vin)

An iterative implicit solution is where you have to iterate an equation to get the result. For example consider a hypothetical component where the current is a function of the voltage. I.e.
I = f(V)

In a series circuit with a resistor the voltage across the device would be
V = Vin - I*R = Vin - f(V)*R

Let's say the function is I = V^2

So then
V = Vin - V^2 * R

V is on both sides of the equation. One way to solve this is using Newton's method (x = x - f(x)/f'(x)). But that takes a lot of time because you have to keep iterating until the error is below some desired value. You also have to use the derivative which adds computations. The other problem is stability/convergence. Sometimes the solution "blows up" and doesn't converge. This is unacceptable in a real-time system.

A resistor in series with a diode results in an equation with an exponential (or log) function that needs to be solved along with its derivative.

Now when you add a capacitor in parallel with the diode you complicate things even further because now you have a nonlinear ordinary differential equation (ODE). So the current is not only a function of the voltage, the voltage has "memory" due to the capacitor. Solving these types of networks is extremely time consuming. Things like SPICE use implicit solutions like Runge-Kutta 4 (RK4).

I've been working on this for a while and came up with a semi-explicit solution that doesn't require iteration, has the accuracy of implicit solutions and is nearly as fast as explicit solutions.

This is a graph of a 1K resistor in series with a diode. The blue trace is the reference and was derived by solving the network using Newton's method. The red trace is the semi-explicit solution. If you can't see the blue trace that's because the red trace is nearly exactly on top of it.

View attachment 71052

On the Axe-Fx III solving the network using Newton's method uses over 30% CPU. The semi-explicit method is around 6%.

ah, that’s cleared that up then.
 
An explicit solution is one where the output does not depend on itself, i.e.
V = f(Vin)

An iterative implicit solution is where you have to iterate an equation to get the result. For example consider a hypothetical component where the current is a function of the voltage. I.e.
I = f(V)

In a series circuit with a resistor the voltage across the device would be
V = Vin - I*R = Vin - f(V)*R

Let's say the function is I = V^2

So then
V = Vin - V^2 * R

V is on both sides of the equation. One way to solve this is using Newton's method (x = x - f(x)/f'(x)). But that takes a lot of time because you have to keep iterating until the error is below some desired value. You also have to use the derivative which adds computations. The other problem is stability/convergence. Sometimes the solution "blows up" and doesn't converge. This is unacceptable in a real-time system.

A resistor in series with a diode results in an equation with an exponential (or log) function that needs to be solved along with its derivative.

Now when you add a capacitor in parallel with the diode you complicate things even further because now you have a nonlinear ordinary differential equation (ODE). So the current is not only a function of the voltage, the voltage has "memory" due to the capacitor. Solving these types of networks is extremely time consuming. Things like SPICE use implicit solutions like Runge-Kutta 4 (RK4).

I've been working on this for a while and came up with a semi-explicit solution that doesn't require iteration, has the accuracy of implicit solutions and is nearly as fast as explicit solutions.

This is a graph of a 1K resistor in series with a diode. The blue trace is the reference and was derived by solving the network using Newton's method. The red trace is the semi-explicit solution. If you can't see the blue trace that's because the red trace is nearly exactly on top of it.

View attachment 71052

On the Axe-Fx III solving the network using Newton's method uses over 30% CPU. The semi-explicit method is around 6%.
Now you're just showing off. Bravo!
 
Back
Top Bottom