Virtual analog model of the Moog VCF based on the state-space formalism and the trapezoidal integration rule. The approximated transfer function is compared with the exact calculation of the Moog VCF transfer function. A real-time JUCE implemenation (designed for beginners to C++ and/or physical modeling) is included in the C++ folder.
C++ 87.21%MATLAB 12.79%
moogvcftrap's Introduction
Moog VCF Model (Trapezoidal Approximation)
Authors: Chad McKell + Roli, Ltd.
Date: 14 Mar 2018
This repository contains a virtual analog model of the Moog voltage-controlled filter (VCF) based on the trapezoidal integration rule. In the MATLAB file, the approximated transfer function is compared with the exact calculation of the Moog VCF transfer function.
A real-time JUCE implemenation of the MATLAB algorithm is included in the C++ folder. The code is designed for beginners to C++ and/or physical modeling. For this reason, it does not include more complicated features such as sidechain modulation, multithreading, parameter smoothing, pausing, or nonlinear function integration.
Hi @chadmckell -- awesome project you've got here. First I've seen that's approximated the function using the trapezoidal rule.
I've got a bunch of collected C++ implementations of the Moog model here: https://github.com/ddiakopoulos/MoogLadders and I'd love to include yours a) with your permission and b) hopefully an explicit open-source license too!