Extractor attractor

Recently the extractor fan in my bathroom has started malfunctioning, occasionally grinding and stalling. The infuriating thing is that the grinding noise isn’t perfectly periodic – it is approximately so, but there are occasionally long gaps and the short gaps vary slightly. This lack of predictability makes the noise incredibly annoying, and hard to tune out. Before getting it fixed, I decided to investigate it a bit further.

The terminally curious may listen to the sound here:


This was recorded from my phone, you can also hear me puttering around in the background.

After dumping the audio data, I looked at the waveform and realised it was quite difficult to extract the temporal locations of the grinding noises from the volume alone. As a good physicist I therefore had another look in the frequency domain, making a spectrogram.

Small sample of the entire spectrogram.

Every 200 ms I have taken a chunk of the waveform and computed the Fourier transform – the amplitude of this is plotted above as a function of time. You can see the occasional features lasting approximately 500 ms at around 2 – 4 kHz – this is exactly the annoying grinding sound. you can also see the infuriating random gaps between clusters of events, and within each cluster the periodicity isn’t exactly equal.

Integrating the spectral power between 2 and 5 kHz, I then have a time series of the noise signal:

Here I used the ‘findpeaks’ function in Matlab.

Having located the positions of the grinding noises, I can now do the analysis I wanted: finding the distribution of times between noises.

The bin width is 200 ms, as in the spectrogram above.

The quasi-periodic component has period 1 ± 0.24 seconds – almost periodic, but annoyingly not quite. There can also be longer gaps of up to 30 seconds between noises, adding to the annoyance. The fact that the mean period is very close to 1 second suggests an artificial reason for the noises – e.g. try to spin the fan up, if it fails, try again in 1 second.

This behaviour, intermittent regions of periodicity separated by gaps much longer than the characteristic time of the periodicity, looks very much like some simple chaotic systems, as suggested in the title.

In particular, one can construct a 2D discrete mapping with separate fast and slow timescales – we’ll look at the Rulkov model built for irregularly bursting neurons as in e.g. here and here. The mapping is as follows:

x_{n+1} = \frac{\alpha}{1 + x_n^2} + y_n

y_{n+1} = y_n - \sigma x_n - \beta

If you squint at the update equation for y_n, you can show that it tends to change slowly, and is driven by the average behaviour of x over a number of previous steps. Typically this slow evolution is accomplished by keeping the parameters \sigma and \beta small.

The other equation for x has very different behaviour, depending critically on the value of y_n and \alpha. If \alpha is small and y_n is negative, the mapping looks as follows. Here we assume the change of y_n over this period is negligible.

This type of plot is known as a cobweb plot.

Here x_n starts at -4, then is updated through the discrete mapping – you can think of it ‘reflecting’ from the red line representing the update equation for x_n. The behaviour is smooth and unremarkable, x_n quickly converges to a fixed point of the mapping. This is any point where the dashed line crosses the red line. For these parameters, there is only one fixed point.

Raising \alpha, the situation rapidly changes:


There is still only one fixed point, but x_n moves around chaotically in a quasi-periodic pattern. Varying \alpha, we can see this occurs for a critical value of \alpha:


The transition is sudden – when x_n can ‘escape’ through the gap at the bottom, it does so with gusto and chaos commences. To find out when this happens, we have to look at the fixed points of the mapping – the points where the red and dashed lines cross. e.g. below, there are three fixed points:

Three fixed points, non-chaotic.

From above, the transition to chaos occurs when we go from 3 to 1 fixed point, i.e. the red and yellow points above merge into one. By fiddling with the mapping for long enough, it is possible to show that this happens at the points:

\alpha = -2( y(y^2+9) \pm (y^2-3)^{3/2})/27.

Plotting the fixed points of the mapping x^* as a function of \alpha confirms this:

Here, I’ve called the fixed points ‘roots’.

When 2.7 < \alpha < 4.3 there are three fixed points, but outside there is only one. It is at the larger limit chaos occurs, which you can confirm looking at the animation above.

So, this is all very interesting, but how does it compare to my extractor fan? As it turns out, pretty well:

Here \alpha = 4.3, and y_n is able to vary.

There are isolated bunches of spikes in x_n, while y_n varies slowly and smoothly. When y_n drops too far, we go back to having 3 fixed points and the chaotic behaviour ceases. As soon as y_n rises sufficiently such that two of the fixed points merge, chaos resumes.

If we find the peaks in x_n and associate them with the grinding noises I hear in my extractor fan, I can plot the same kind of gap distribution as before:

Here \alpha = 4.3.

Again, a broad quasi-periodic mass at small periods, and some scattered gaps at much longer periods. The similarity isn’t perfect, but it does suggest the same idea of timescale separation can explain my annoying extractor fan.

If you have an idea for a toy mechanical model which might also explain this phenomenon, get in touch!




3 thoughts on “Extractor attractor

  1. Great analysis to get to the semi-stable chaotic model! We use a similar approach to your starting fourier transform for vibration analysis. But from there we jump to physical design characteristics to try to isolate which component is active at that frequency/harmonic, eg fan rpm, ball bearing diameters and rpm, AC power frequency.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s