Bonjour,
J'ai un signal temporel composé des 2 vecteurs [temps,acceleration]. Je cherche les maximas locaux de l'accélération mais je voudrais les associer au temps qui va bien, notamment pour pouvoir tracer la fonction maxima = f(temps).
J'ai essayé la chose suivante :
mais ça ne marche pas car la fonction intersect ne me donne pas, pour chaque valeur de maxima, l'indice de l'accélération associé. J'ai l'impression que c'est dû au fait que chaque maxima peut se retrouver plusieurs fois. Ce qu'il faudrait c'est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 maxima = findpeaks(acceleration); [C,idAccel,idmaxi] = intersect(acceleration,maxima); tempsMaxima = temps(idAccel);
- prendre le 1er maximum de la liste : trouver la première valeur de l'acceleration qui va bien et sortir son indices
- supprimer la partie du vecteur acceleration jusqu'à cet indice
- recommencer avec le deuxième maximum
Faut-il que je passe par une boucle for, ou y'a-t-il une fonction permettant de faire ça d'une traite ?
Merci d'avance pour votre aide
Partager