This thesis deals with the process of building a real-time model of the B. K. Butler Tube Driver distortion pedal, implementing the algorithm in C++ and comparing the resulting algorithm and program against the real hardware. The thesis describes the problems at each step and gives the most viable solutions. The literature for the most relevant methods in the field of system discretization, root finding algorithms, solving of linear equation systems and the method of describing this particular nonlinear network can also be found in the first chapters.
For the analysis of the analog circuit LTSpice has been used. The model has been developed in Matlab. The C++ implementation of the model is a VST plugin, which can be tested in real-time with a VST host program. The analog circuit was built on a breadboard panel
The thesis describes how the continuous time model was created based on the circuit schematic and the models of the electronic components. It introduces the chosen vacuum tube model and presents the details behind four different methods used to discretize the continuous time model. I have chosen the optimal discrete time model in terms of resource requirements, stability and sound fidelity. The VST plugin implements this chosen forward Euler model. In addition, the thesis gives guidelines in the topic of efficient C++ based VST plugin implementation and vacuum tube characteristic measurement in theory and in practice.
The fidelity of the chosen Matlab algorithm and VST plugin was evaluated based on simulations and measurements, where the input signal was a typical guitar signal. Comparison was made between the output of the LTSpice simulation, the final Matlab algorithm, the VST plugin and the real hardware. The LTSpice, Matlab simulations and VST plugin measurements show little difference in the results. The results of the hardware measurements differ.