Data AcQuisition And Real-Time Analysis
Scope - Spectrum - Spectrogram - Signal Generator
Software for Windows
Science with your Sound Card!
The following is from the Daqarta Help system:



Spectrum Analyzer

Signal Generator

(Absolutely FREE!)


Pitch Tracker


DaqMusiq Generator
(Free Music... Forever!)

Engine Simulator

LCR Meter

Remote Operation

DC Measurements

True RMS Voltmeter

Sound Level Meter

Frequency Counter
    Spectral Event

    MHz Frequencies

Data Logger

Waveform Averager


Post-Stimulus Time
Histogram (PSTH)

THD Meter

IMD Meter

Precision Phase Meter

Pulse Meter

Macro System

Multi-Trace Arrays

Trigger Controls


Spectral Peak Track

Spectrum Limit Testing

Direct-to-Disk Recording



Frequency response

Distortion measurement

Speech and music

Microphone calibration

Loudspeaker test

Auditory phenomena

Musical instrument tuning

Animal sound

Evoked potentials

Rotating machinery


Product test

Contact us about
your application!

Waveform Average Add and Average Subtract

Controls: Wave Avg Dialog >> Avg Add/Sub
Macros: WavgAdd, WavgSub

Once an average (other than Exponential type) has reached the requested number of frames, it enters Pause mode. If you simply hit Average again, a fresh average starts and the old average is discarded. Instead, you can use Average Add or Subtract to continue from where you left off.

If you hit Avg Add (CTRL+ALT+A) the existing average will simply be extended by the requested number of frames. For example, if the original average was 128 frames and you hit Avg Add without changing the request value, another 128 frames will be added. The frames counter will count up from 128 to 256 as the extended average proceeds, and the final result will be just as if you had requested 256 frames in the first place.

On the other hand, if you instead hit Avg Sub (CTRL+SHIFT+A), the second 128 frames will be subtracted from the average. In other words, they will be added with inverted polarity, which will tend to reduce the accumulated waveform. The frames counter will still count up from 128 to 256, but any constant features of the signal will average down toward zero. Repeated use of Avg Sub can produce inverted waveforms.

You can start a normal-polarity initial average with Avg Add or the usual Average toggle. If you start the initial average with Avg Sub, the averaged waveform will be inverted.

You might want to use Avg Add in cases where the result from the original average is not quite clear enough, and you don't want to waste the original frames. This might be the case where you have a limited time to collect data before conditions change, or where averaging is inherently slow because of some limit on how fast you can induce responses from the system being measured.

But the most powerful uses of Avg Add and Avg Sub are in special cases where the response you want to observe is contaminated by an undesired response or stimulus artifact. If you can arrange to produce the same desired response while obtaining an inverted undesired response (or vice-versa), you can use these modes to cancel the response you don't want.

For example, suppose you are recording electrical responses of the ear to acoustic tone bursts. (Always be sure to use proper electrical isolation techniques to prevent lethal shocks!) The raw response will contain a component called the Compound Action Potential (CAP) that represents the summed response of many neurons firing in synchrony with the start of the tone burst.

Many of these neurons fire regardless of the polarity of the tone in the burst... they just respond to the overall onset of the tone. But the response will also contain a Cochlear Microphonic (CM) component that has a waveform similar to the stimulus itself, which is thus inverted when the polarity of the stimulus is inverted. The overall signal is contaminated with plenty of noise that needs to be removed by averaging.

So if you average half of the desired number of frames normally and then flip the stimulus polarity before you average the remaining half with Avg Add, the CM portions will cancel and you will be left with only the CAP portion. Or if you used Avg Sub for the second half, the unchanged CAP portion would be subtracted away, while subtracting an inverted CM that would be equivalent to averaging the original CM alone.

Similarly, you could be looking at thermal effects in a loudspeaker driver at high power levels. The polarity of the driving signal doesn't change its heating ability, so if the drive signal is contaminating the temperature measurement, you can use the above trick.

Note that these options may not always be the best way to do this job. For example, if conditions are slowly changing during the average, the second half may not cancel the first half properly after you invert the polarity. This can easily happen in physiological systems due to electrode contact deterioration, anaesthesia wearing off, etc. Or you might be testing your loudspeaker outdoors and the weather changes.

In these cases Avg Add and Avg Sub may be helpful during the development phases of your experiment, but you way want to use something fancier for the real data collection. If you can arrange things so that the stimulus alternates polarity on each frame, then all you may need is a normal average to get rid of the stimulus-like component of the response. This has the advantage that the two frame polarities are near each other in time and thus more likely to cancel properly since the system has had less time to change.

Macro Notes:

WavgAdd= and WavgSub= can be used to start a new average or to extend an average that has completed. Either command will abort if given while an average is running or Paused prior to completion, since the controls are disabled.

Any value given with the command is ignored. In particular, you can not extend an average by a specified value.

See also Averager and Waveform Averager Controls.


Questions? Comments? Contact us!

We respond to ALL inquiries, typically within 24 hrs.
Over 35 Years of Innovative Instrumentation
© Copyright 2007 - 2023 by Interstellar Research
All rights reserved