# Modal Processor Effects Inspired by [PERSON] Tonewheel Organs
## 2 Hammond Organ System Architecture  
Here we extend the qualitative description above and present a mathematical formulation of the basic operation of the Hammond tonewheel organ. Referring to Figure 1, the player controls the organ by depressing keys on a standard musical keyboard shown on the left. Each of its 61 keys has a note on/off state \(n_{k}(t)\in[0,1]\) that is indexed by a key number \(k\in[1\cdots 61]^{\top}\); these are collected into a column \(\mathbf{n}(t)\). Here and in the rest of the article, \(t\) is the discrete time sample index. The timbre is controlled by nine drawbars shown on the top. Each drawbar has a level \(r_{d}(t)\in[0\cdots 8]\) that is indexed by a drawbar number \(d\in[1\cdots 9]^{\top}\); these are collected into a column \(\mathbf{r}(t)\). The drawbars may be changed over time to alter the sounds of the [PERSON] organ. Each drawbar's level \(r_{d}(t)\) is converted to an amplitude in \(-3\) dB increments (Table 2) [45]. Furthermore, each drawbar has a tuning offset \(o_{d}\), corresponding to the tuning offset in semitones of each pseudo-harmonic. The entire set of offsets is  
\[\mathbf{o}=[o_{1}\cdots o_{9}]^{\top}=[-12,7,0,12,19,24,28,31,36]^{\top} \tag{1}\]  
Each tuning offset (except the first two) approximates a harmonic overtone. This is discussed further at the end of the section. Each tonewheel has a frequency \(f_{w}\) and amplitude \(a_{w}(t)\) indexed by a tonewheel number \(w\in[1\cdots 91]^{\top}\); these are collected into columns \(\mathbf{f}\) and \(\mathbf{a}(t)\). Each tonewheel is tuned to the twelve-tone equal-tempered scale  
\[f_{w}=(440)2^{(w-45)/12}\;\mathrm{Hz} \tag{2}\] \begin{table}
\begin{tabular}{c c c c c c c c c} \hline \hline \(\mathbf{r_{d}}\) & \(\mathbf{0}\) & \(\mathbf{1}\) & \(\mathbf{2}\) & \(\mathbf{3}\) & \(\mathbf{4}\) & \(\mathbf{5}\) & \(\mathbf{6}\) & \(\mathbf{7}\) & \(\mathbf{8}\) \\ \hline amplitude (dB) & \(0\) & \(-3\) & \(-6\) & \(-9\) & \(-12\) & \(-15\) & \(-18\) & \(-21\) & \(-\infty\) \\ \hline \hline \end{tabular}
\end{table} 
Table 2: Amplitude of each drawbar \(r_{d}\), \(d\in[1\cdots 9]\). Figure 1: Hammond Tonewheel Organ block diagram. In practice there are slight deviations according to the gearing ratios, producing deviations of up to 0.69 cents [15]. The outputs of all the tonewheels are summed by the \(91\times 1\) gain block \(\mathbf{1}=[1\cdots 1]^{\top}\) on the right to form the output signal \(y(t)\):  
\[y(t)=\mathbf{1}^{\top}\boldsymbol{y}(t) \tag{3}\]  
The \(91\times 61\) routing matrix \(\boldsymbol{\Gamma}(\boldsymbol{r}(t))\) forms the 91-tall column of tonewheel amplitudes \(\boldsymbol{a}(t)\) from the 61-tall column of key on/off states \(\boldsymbol{n}(t)\). This is accomplished by a matrix multiply  
\[\boldsymbol{a}(t)=\boldsymbol{\Gamma}(\boldsymbol{r}(t))\boldsymbol{n}(t) \tag{4}\]  
\(\boldsymbol{\Gamma}(\boldsymbol{r}(t))\) is sparse (most entries are 0) and has a pseudo-convolutional form [46] in which the non-zero entries \(r_{1}(t)\cdots r_{9}(t)\in[0\cdots 8]\) are dictated by the 9-tall column of drawbar levels \(\boldsymbol{r}(t)\). Denoting each entry in \(\boldsymbol{\Gamma}(\boldsymbol{r}(t))\) as \(\gamma_{w,k}(t)\), we have  
\[\gamma_{w,k}(t)=\sum_{d=1}^{9}r_{d}(t)\,\delta\left(w-k-o_{d}\right) \tag{5}\]  
where \(\delta(x)\) is the Kronecker delta function  
\[\delta(x)= \begin{cases}1&,\,x=0\\ 0&,\,x\
eq 0\end{cases}  \tag{6}\]  
The tonewheel block is comprised of 91 tonewheel processors \(\psi_{w}(t)\) in parallel. As shown in Figure 2, each individual tonewheel processor has a tonewheel producing a periodic signal \(x_{w}(t)\) at a particular frequency \(f_{w}\), an amplitude input \(a_{w}(t)\) provided by the routing matrix \(\boldsymbol{\Gamma}(\boldsymbol{r}(t))\), and an electromagnetic model \(p_{w}\left(\right)\).