We are going to sample the signal at 20 kHz, so the sampling interval is 0.05 ms. We are going to represent 500 ms (0.5 s). We build a vector containing the time and a vector containing a shape similar to a motor unit potential.
-->t = 0:.05:500; -->mup = - (sin(%pi*[0:127]/128).^4) .* (sin(2*%pi*[0:127]/128));To build the discharge rate we create a vector of 500 ms (it takes the characteristics of `t') and then introduce some values at the point where the motor unit potential will appear.
-->discharges = 500 : 1000 : 9500; -->rate = zeros(1,length(t)); -->rate(discharges)=1;Now we make the convolution between the 'motor unit potential' and the 'discharge' and plot the result
-->emg = convol (rate,mup); -->xsetech([0,0,1/2,1/2]); -->plot2d(t(1:length(mup)),mup); -->xsetech([1/2,0,1/2 1/2]); -->plot2d(t(1:length(rate)),rate,1,"011","a ",[0,0,500,3],[5,5,0,0]); -->xsetech([0,1/2,1,1/2]); -->plot2d(t(1:10000),emg(1:10000));And here is the result
![]() |
The inverse of the above process is called `deconvolution' and implies the extraction of the shape of the different MUP participating in the electromyographic signal. The motor unit potential contains information on the structure of the motor unit while the discharge pattern contains information on the organization of the muscular activity. Both aspects are mixed in real electromyographic traces and contain information used in neuromuscular diagnosis.