programs_1 - Programs from"The Scientist and Engineer's...

Info icon This preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon
Sheet1 Page 1 Programs from: "The Scientist and Engineer's Guide to Digital Signal Processing." Visit our website at: www.dspguide.com. All these programs may be copied, distributed, and used for any noncommercial purpose. TABLE 2-1 100 CALCULATION OF THE MEAN AND STANDARD DEVIATION 110 ' 120 DIM X[511] 'The signal is held in X[0] to X[511] 130 N% = 512 'N% is the number of points in the signal 140 ' 150 GOSUB XXXX 'Mythical subroutine that loads the signal into X[ ] 160 ' 170 MEAN = 0 'Find the mean via Eq. 2-1 180 FOR I% = 0 TO N%-1 190 MEAN = MEAN + X[I%] 200 NEXT I% 210 MEAN = MEAN/N% 220 ' 230 VARIANCE = 0 'Find the standard deviation via Eq. 2-2 240 FOR I% = 0 TO N%-1 250 VARIANCE = VARIANCE + ( X[I%] - MEAN )^2 260 NEXT I% 270 VARIANCE = VARIANCE/(N%-1) 280 SD = SQR(VARIANCE) 290 ' 300 PRINT MEAN SD 'Print the calculated mean and standard deviation 310 ' 320 END TABLE 2-2 100 'MEAN AND STANDARD DEVIATION USING RUNNING STATISTICS 110 ' 120 DIM X[511] 'The signal is held in X[0] to X[511] 130 ' 140 GOSUB XXXX 'Mythical subroutine that loads the signal into X[ ] 150 ' 160 N% = 0 'Zero the three running parameters 170 SUM = 0 180 SUMSQUARES = 0 190 ' 200 FOR I% = 0 TO 511 'Loop through each sample in the signal 210 ' 220 N% = N%+1 'Update the three parameters 230 SUM = SUM + X(I%) 240 SUMSQUARES = SUMSQUARES + X(I%)^2 250 ' 260 MEAN = SUM/N% 'Calculate mean and standard deviation via Eq. 2-3 270 VARIANCE = (SUMSQUARES - SUM^2/N%) / (N%-1) 280 SD = SQR(VARIANCE) 290 '
Image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Sheet1 Page 2 300 PRINT MEAN SD 'Print the running mean and standard deviation 310 ' 320 NEXT I% 330 ' 340 END TABLE 2-3 100 'CALCULATION OF THE HISTOGRAM, MEAN, AND STANDARD DEVIATION 110 ' 120 DIM X%[25000] 'X%[0] to X%[25000] holds the signal being processed 130 DIM H%[255] 'H%[0] to H%[255] holds the histogram 140 N% = 25001 'Set the number of points in the signal 150 ' 160 FOR I% = 0 TO 255 'Zero, so it can be used as an accumulator 170 H%[I%] = 0 180 NEXT I% 190 ' 200 GOSUB XXXX 'Mythical subroutine that loads the signal into X%[ ] 210 ' 220 FOR I% = 0 TO 25000 'Calculate the histogram for 25001 points 230 H%[ X%[I%] ] = H%[ X%[I%] ] + 1 240 NEXT I% 250 ' 260 MEAN = 0 'Calculate the mean via Eq. 2-6 270 FOR I% = 0 TO 255 280 MEAN = MEAN + I% * H%[I%] 290 NEXT I% 300 MEAN = MEAN / N% 310 ' 320 VARIANCE = 0 'Calculate the standard deviation via Eq. 2-7 330 FOR I% = 0 TO 255 340 VARIANCE = VARIANCE + H[I%] * (I%-MEAN)^2 350 NEXT I% 360 VARIANCE = VARIANCE / (N%-1) 370 SD = SQR(VARIANCE) 380 ' 390 PRINT MEAN SD 'Print the calculated mean and standard deviation. 400 ' 410 END TABLE 2-4 100 'CALCULATION OF BINNED HISTOGRAM 110 ' 120 DIM X[25000] 'X[0] to X[25000] holds the floating point signal, 130 ' 'with each sample being in the range: 0.0 to 10.0 140 DIM H%[999] 'H%[0] to H%[999] holds the binned histogram 150 ' 160 FOR I% = 0 TO 999 'Zero the binned histogram for use as an accumulator 170 H%[I%] = 0 180 NEXT I%
Image of page 2
Sheet1 Page 3 190 ' 200 GOSUB XXXX 'Mythical subroutine that loads the signal into X%[ ] 210 ' 220 FOR I% = 0 TO 25000 'Calculate the binned histogram for 25001 points 230 BINNUM% = INT( X[I%] * .01 ) 240 H%[ BINNUM%] = H%[ BINNUM%] + 1 250 NEXT I% 260 ' 270 END TABLE 6-1 100 'CONVOLUTION USING THE INPUT SIDE ALGORITHM 110 ' 120 DIM X[80] 'The input signal, 81 points 130 DIM H[30] 'The impulse response, 31 points 140 DIM Y[110] 'The output signal, 111 points 150 ' 160 GOSUB XXXX 'Mythical subroutine to load X[ ] and H[ ] 170 ' 180 FOR I% = 0 TO 110 'Zero the output array 190 Y(I%) = 0 200 NEXT I% 210 ' 220 FOR I% = 0 TO 80 'Loop for each point in X[ ] 230 FOR J% = 0 TO 30 'Loop for each point in H[ ] 240 Y[I%+J%] = Y[I%+J%] + X[I%]*H[J%] 250 NEXT J% 260 NEXT I% 270 ' 280 GOSUB XXXX
Image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 4
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern