Предвид синусоидален сигнал честота модулиран сигнал махало. (Т.е., съсиреци, лек вакуум в точката на спиране и отново съсиреци)
Задачата - да се преброят на върха в "гроздове".
Исках да се напише програма в Matlab, което ще увеличи K, веднага след като новото високо и това води до увеличаване на итерация променлива 10, защото при моите условия (взех близост до максимален брой точки) падна само на 2-3 точки, но това не се случи, тъй като MATLAB в цикъла използва набор от I, ако се прилага по-малко квартал, а след това на програмата прескача някакъв момент с точност до 50%.
за # 40; I = 1: 1: 41 # 100000;
ако абсолютен # 40 у # 40; и # 41, # 41;<0.15 % окрестность нуля, в которую попадает значение сигнала
Има% все още се възприема като Maxima или пресичанията на нулата
% От максимума # = 40; брой нулеви пресичания 41 # / 2
к = к + 1
I = I + 10
край
край
1) как да се приложи такъв алгоритъм?
? 2) в ЗА контур за организиране влизане в масив от всичко, което мога-координатите на максимумите (MATLAB също така работи с фиксирани масиви - и аз не знам колко ще имам върхове)
3) дали има функция на търсене търсенето достига своя пик?
Предлагам оригинален алгоритъм без цикли:
Мисля, че в редица от А вече съдържа стойностите на функцията си. След това се преброят на кръстовища на оста х, както следва:
Елегантен решение, нали?
Аз съм само в дивата радост на този алгоритъм.
Това е мястото, където се изважда?
но всички един и същ въпрос за функцията на пропускане повторения в цикъла, тъй като може да се направи във всеки език за програмиране
за # 40; I = 1: 41 # 100;
бла бла бла ако аз = I + 10
край
Това е мястото, където се изважда?
веднага се приспадат. - Направих го, когато видях вашата задача
но всички един и същ въпрос за функцията на пропускане повторения в цикъла,
В Matlab "неразумно", за да се потопите в цикъл - трябва да приемате всеки десети стойност и напишете (1: 10: край)
Както и да е Matlab - език, който цикли могат да се използват рядко и работа в същото време ще бъде по-бързо от тях, понякога в пъти