Circulant Feedback Delay Networks

Circulant Feedback Delay Networks

A matrix that is both unitary and circulant has all eigenvalues on the unit circle, and the DFT can be used to compute the eigenvalue phases. In the case of equal-length delay lines, the eigenvalues determine the resonance frequencies in a simple way. From (16), when , the system poles are the -th complex roots of the eigenvalues of .

Conversely, we can easily design a circulant matrix to have a desired distribution of eigenvalues. This is also true for any lossless matrix, since Theorem 1 gives that any of the form is lossless, where is any unit-modulus diagonal matrix, and is any invertible matrix. Thus, a lossless matrix is characterized by the arguments of its eigenvalues and a similarity transformation matrix . The advantage of choosing circulant FDNs over other kinds of FDNs is the possibility of computing from its eigenvalues very efficiently by means of a single inverse FFT.

As we will see in section V, in a practical implementation the delay lengths are typically not equal. However, the equal-delay case is easier to analyze. The limitations and advantages of such a choice will become clearer in section V.

The actual presence of resonance peaks corresponding to the eigenvalues
depends on the positions of the zeros, as given by (19). Assuming
equal-length delay lines and , (19) becomes

In order to have ``colorless'' reverberation, it may be desirable to make
the envelope of the amplitude response flat. To do this, each zero should
be equal to the reciprocal of a pole. In
prototype CFDNs, the feedback matrix is lossless, and the system poles are
on the unit circle, so the zeros must equal the poles. However, when all
zeros and poles cancel exactly, the impulse response of the FDN degenerates
to an impulse.^{4} This is a
general problem with any all-pass reverberator: Lengthening the
reverberation time without changing the delay lengths forces the impulse
response converge to an impulse. In our case, we depart from the idealized
case by slightly changing the delay lengths. As we will show in section V,
this approach leads to reverberators having a frequency response which is
nearly flat at low frequencies, while preserving the richness of the echo
density in the time domain.

Therefore, we continue treating the prototype case of equal-length delay
lines and , and show that we can obtain perfect canceling of zeros and
poles by using (1)
and (2) having
entries equal to , entries equal to , and zeros for the
remaining entries. This result is due to the following

**Theorem** 2: Given a circulant x matrix , let be
obtained by adding a constant to each entry of rows (columns) and
subtracting the same constant from each entry of another rows
(columns). Then and have the same eigenvalues.

Before providing the proof of Theorem 2, we need to prove the following

**Lemma**: All the eigenvectors of a circulant matrix other than the
``dc'' vector
lie in the null space of any matrix with
constant rows. Thus, adding constant rows cannot alter eigenvalues or
eigenvectors other than the 0th.

*Proof:* This follows immediately from the fact that the eigenvectors
of every circulant matrix are given by the columns of the DFT matrix of the
same size, and these vectors are orthogonal. Therefore, a constant row
is orthogonal to all eigenvectors of the DFT matrix except the dc eigenvector.

The lemma states that all we can do by adding constant rows to a circulant matrix is move the ``dc'' eigenvector to some other vector and change its eigenvalue.

*Proof* of Theorem 2:

Consider the matrix given by:

where is a diagonal matrix and the term within parentheses is an by matrix having non-null entries only in position (1,1) and (2,1). Moreover these two entries have opposite sign. It turns out that has non-null elements only on the first column under the diagonal. This means that the matrix can be triangularized by means of the DFT matrix and its eigenvalues (found on the diagonal) are the same as those of . This argument works for any number of oppositely signed couples of distinct values arbitrarily distributed in the vector . The same argument can be followed for proving the claim relative to the columns. In this case we would start by forming the product .

Note that the eigenvalue is no longer a ``dc'' eigenvalue. The corresponding eigenvector must be found in , where gives the nullspace of its argument. In the case of a real circulant matrix with eigenvalues along the unit circle, we have that (the sum of the elements of a row of is 1).

With the above choice of and coefficients, we obtain a perfectly flat amplitude response for equal-length delay lines. However, this is degenerate since this is the condition for pole-zero cancellation. As we will show in section V, when using slightly different delay lengths, a nearly flat response at low frequencies is obtained as a perturbation of the pole-zero cancellation configuration.

Computational Complexity

Circulant Feedback Delay Networks

Circulant Feedback Delay Networks

``Circulant and Elliptic Feedback Delay Networks for Artificial Reverberation'', by Davide Rocchesso and Julius O. Smith III, preprint of version in

Download PDF version (cfdn.pdf)

Download compressed PostScript version (cfdn.ps.gz)

(Browser settings for best viewing results)

Copyright ©

Center for Computer Research in Music and Acoustics (CCRMA), Stanford University

(automatic links disclaimer)