mercredi 20 décembre 2017

Why doesn't this simple 5 line code work!!! I Am searching for the values of positive peaks in this single wave data

J=[fun(1)];
K=[1];
count=1;
for i=2:1.0:(length(fun)-2)
      if fun(i-1)<fun(i) && fun(i)>fun(i+1)
      J=[J,fun(i+1)]; 
      K=[K,count+1];
     end 
     count=count+1;
     end 

this is a code I wrote to search for the peaks of a very clean (no noise) signal where fun is a row array containing evenly sampled data of a sine wave. Included below is the data that i am trying to process simply copy and paste to store the array. The code found the peaks at the 664th and 991st entry but none of the ones in between!! I wrote the same algorithm in c++ and got the same result so it is not a problem specific to matlab.

Please help me find the error!!!!

fun=-1*pi/180*[-90.15 -90.00 -89.70 -89.10 -88.50 -87.75 -86.70 -85.65 -84.30 -82.95 -81.45 -79.80 -78.15 -76.35 -74.55 -72.30 -70.20 -67.80 -65.40 -62.70 -60.00 -57.15 -54.30 -51.15 -48.00 -44.85 -41.40 -37.95 -34.50 -30.90 -27.30 -23.55 -19.80 -16.05 -12.15 -8.25 -4.95 -1.50 1.95 4.80 7.80 10.65 13.95 17.40 20.70 23.85 27.15 30.30 33.45 36.45 39.45 42.45 45.30 48.00 50.70 53.40 55.95 58.35 60.75 63.15 65.25 67.35 69.45 71.40 73.20 74.85 76.50 78.15 79.50 80.85 82.05 83.25 84.15 85.05 85.95 86.70 87.45 88.05 88.50 88.95 89.10 89.25 89.40 89.25 89.10 88.95 88.50 88.05 87.45 86.70 86.10 85.20 84.30 83.25 82.20 81.00 79.65 78.15 76.65 75.00 73.35 71.55 69.60 67.50 65.40 63.30 60.90 58.65 56.10 53.55 51.00 48.30 45.45 42.60 39.75 36.75 33.75 30.60 27.45 24.30 21.00 17.70 14.40 11.10 7.65 4.80 1.95 -0.90 -4.35 -7.65 -11.10 -14.85 -18.75 -22.35 -26.10 -29.70 -33.30 -36.75 -40.20 -43.50 -46.80 -49.95 -52.95 -55.95 -58.65 -61.35 -63.90 -66.45 -68.85 -70.95 -73.05 -75.00 -76.80 -78.45 -80.10 -81.60 -82.95 -84.15 -85.20 -86.10 -87.00 -87.60 -88.05 -88.50 -88.80 -88.80 -88.80 -88.80 -88.50 -88.05 -87.60 -87.00 -86.25 -85.50 -84.45 -83.25 -82.05 -80.55 -79.05 -77.40 -75.60 -73.65 -71.55 -69.45 -67.20 -64.65 -62.25 -59.55 -56.70 -53.85 -50.85 -47.70 -44.55 -41.25 -37.95 -34.50 -30.90 -27.30 -23.70 -19.95 -16.20 -12.45 -8.55 -5.25 -1.95 1.50 4.35 7.20 10.05 13.35 16.65 19.95 23.10 26.40 29.55 32.55 35.55 38.55 41.40 44.25 47.10 49.80 52.35 54.90 57.30 59.70 61.95 64.05 66.30 68.25 70.20 72.00 73.65 75.30 76.80 78.30 79.65 80.85 81.90 82.95 83.85 84.75 85.50 86.10 86.55 87.00 87.45 87.60 87.75 87.75 87.75 87.60 87.30 87.00 86.55 85.95 85.35 84.60 83.70 82.80 81.75 80.55 79.35 78.00 76.50 75.00 73.35 71.70 69.75 67.95 65.85 63.75 61.50 59.25 56.85 54.45 51.90 49.35 46.65 43.80 40.95 38.10 35.10 32.10 28.95 25.95 22.65 19.50 16.20 13.05 9.75 6.90 4.05 1.05 -1.80 -5.10 -8.40 -11.70 -15.45 -19.20 -22.95 -26.55 -30.15 -33.60 -37.05 -40.35 -43.65 -46.80 -49.95 -52.80 -55.65 -58.50 -61.05 -63.60 -66.00 -68.25 -70.50 -72.45 -74.40 -76.20 -77.85 -79.35 -80.70 -81.90 -83.10 -84.15 -85.05 -85.80 -86.40 -86.85 -87.15 -87.45 -87.45 -87.45 -87.30 -87.00 -86.55 -85.95 -85.35 -84.45 -83.55 -82.50 -81.30 -79.95 -78.45 -76.95 -75.15 -73.35 -71.40 -69.30 -67.05 -64.65 -62.25 -59.70 -57.00 -54.15 -51.30 -48.30 -45.15 -41.85 -38.55 -35.25 -31.80 -28.20 -24.60 -21.00 -17.25 -13.65 -9.90 -6.60 -3.30 0.15 2.85 5.70 8.55 11.40 14.70 17.85 21.15 24.30 27.45 30.45 33.45 36.45 39.30 42.15 44.85 47.70 50.25 52.80 55.20 57.60 59.85 62.10 64.20 66.30 68.10 70.05 71.70 73.35 75.00 76.35 77.70 79.05 80.25 81.30 82.20 83.10 83.85 84.45 85.05 85.50 85.95 86.10 86.40 86.40 86.40 86.25 86.10 85.65 85.35 84.75 84.15 83.40 82.65 81.75 80.70 79.50 78.30 77.10 75.60 74.10 72.45 70.80 69.00 67.05 65.10 63.15 60.90 58.65 56.40 54.00 51.45 48.90 46.20 43.50 40.65 37.80 34.95 31.95 28.95 25.80 22.65 19.50 16.35 13.05 9.90 7.05 4.20 1.35 -1.50 -4.65 -7.95 -11.25 -15.00 -18.75 -22.35 -25.95 -29.40 -32.85 -36.30 -39.60 -42.75 -45.90 -49.05 -51.90 -54.75 -57.45 -60.15 -62.55 -64.95 -67.20 -69.30 -71.40 -73.20 -75.00 -76.65 -78.15 -79.50 -80.70 -81.90 -82.80 -83.70 -84.45 -85.05 -85.50 -85.80 -85.95 -86.10 -86.10 -85.80 -85.50 -85.05 -84.60 -83.85 -82.95 -82.05 -81.00 -79.65 -78.30 -76.95 -75.30 -73.65 -71.70 -69.75 -67.65 -65.40 -63.15 -60.60 -58.05 -55.35 -52.50 -49.65 -46.65 -43.50 -40.35 -37.05 -33.60 -30.15 -26.70 -23.10 -19.50 -15.90 -12.15 -8.55 -5.25 -1.95 1.35 4.05 6.90 9.75 12.45 15.75 18.90 22.05 25.05 28.20 31.20 34.20 37.05 39.90 42.60 45.30 48.00 50.55 53.10 55.35 57.75 60.00 62.10 64.20 66.15 67.95 69.75 71.40 73.05 74.55 75.90 77.10 78.30 79.50 80.55 81.30 82.20 82.95 83.55 84.00 84.45 84.75 84.90 85.05 85.05 84.90 84.75 84.45 84.15 83.55 83.10 82.35 81.60 80.70 79.65 78.60 77.55 76.20 74.85 73.35 71.85 70.20 68.40 66.60 64.65 62.55 60.45 58.35 55.95 53.70 51.15 48.75 46.05 43.35 40.65 37.80 34.95 32.10 29.10 25.95 22.95 19.80 16.65 13.50 10.20 7.05 4.20 1.50 -1.35 -4.50 -7.80 -11.10 -14.70 -18.30 -21.90 -25.50 -28.95 -32.40 -35.70 -39.00 -42.15 -45.30 -48.30 -51.15 -54.00 -56.70 -59.25 -61.65 -64.05 -66.30 -68.40 -70.35 -72.30 -73.95 -75.60 -77.10 -78.45 -79.65 -80.70 -81.60 -82.50 -83.10 -83.70 -84.15 -84.45 -84.60 -84.75 -84.60 -84.45 -84.15 -83.70 -83.10 -82.35 -81.45 -80.55 -79.35 -78.15 -76.80 -75.30 -73.65 -72.00 -70.05 -68.10 -66.00 -63.75 -61.35 -58.95 -56.40 -53.70 -50.85 -47.85 -44.85 -41.85 -38.70 -35.40 -32.10 -28.65 -25.05 -21.60 -18.00 -14.40 -10.80 -7.05 -3.90 -0.60 2.55 5.40 8.10 10.95 14.10 17.25 20.25 23.40 26.40 29.40 32.40 35.25 38.10 40.95 43.65 46.20 48.75 51.30 53.70 55.95 58.20 60.30 62.40 64.35 66.30 68.10 69.75 71.40 72.90 74.25 75.60 76.80 77.85 78.90 79.80 80.70 81.45 82.05 82.50 82.95 83.25 83.55 83.70 83.70 83.70 83.55 83.25 82.95 82.50 81.90 81.30 80.55 79.65 78.75 77.70 76.50 75.30 73.95 72.45 70.95 69.30 67.65 65.85 63.90 61.95 59.85 57.60 55.35 53.10 50.70 48.15 45.60 42.90 40.20 37.50 34.65 31.80 28.80 25.80 22.80 19.65 16.65 13.50 10.20 7.05 4.35 1.65 -1.20 -4.35 -7.50 -10.80 -14.40 -18.00 -21.45 -25.05 -28.50 -31.80 -35.10 -38.40 -41.55 -44.55 -47.55 -50.40 -53.25 -55.80 -58.35 -60.90 -63.15 -65.40 -67.35 -69.30 -71.25 -72.90 -74.55 -75.90 -77.25 -78.45 -79.50 -80.40 -81.30 -81.90 -82.50 -82.95 -83.25 -83.40 -83.40 -83.25 -83.10 -82.80 -82.35 -81.75 -81.00 -80.10 -79.05 -78.00 -76.65 -75.30 -73.80 -72.15 -70.50 -68.55 -66.60 -64.50 -62.25 -59.85 -57.30 -54.75 -52.05 -49.35 -46.35 -43.35 -40.35 -37.05 -33.90 -30.60 -27.15 -23.70 -20.25 -16.65 -13.05 -9.45 -6.30 -3.15 0.15 2.85 5.55 8.25 10.95 14.10 17.25 20.25 23.40 26.40 29.25 32.25 35.10 37.80 40.50 43.20 45.90 48.30 50.85 53.10 55.35 57.60 59.70 61.80 63.75 65.55 67.35 69.00 70.50 72.00 73.35 74.70 75.90 76.95 77.85 78.75 79.65 80.25 80.85 81.45 81.75 82.05 82.35 82.50 82.50 82.35 82.20 81.90 81.45 81.00 80.40 79.80 78.90 78.15 77.10 76.05 74.85 73.65 72.30 70.80 69.30 67.65 65.85 64.05 62.10 60.15 58.05 55.80 53.55 51.30 48.90 46.35 43.80 41.10 38.40 35.70 32.85 30.00 27.00 24.00 21.00 18.00 14.85 11.70 8.70 6.00 3.30 0.45 -2.25 -5.40 -8.55 -11.70 -15.30 -18.75 -22.20 -25.65 -29.10 -32.40 -35.70 -38.85 -41.85 -44.85 -47.85 -50.55 -53.25 -55.95 -58.35 -60.75 -63.00 -65.10 -67.05 -69.00 -70.80 -72.45 -73.95 -75.30 -76.50 -77.70 -78.75 -79.65 -80.40 -81.00 -81.45 -81.75 -82.05 -82.20 -82.05 -82.05 -81.75 -81.30 -80.70 -80.10];

Aucun commentaire:

Enregistrer un commentaire