Bonjour,
J'ai affiché un graphe qui contient plusieurs courbes et je souhaite pour chaque abcisse la courbe qui correspond au max.
Je sais déjà le faire pour une seule courbe.
Ci joint la photo Nom : cp fct lambda.jpg
Affichages : 1210
Taille : 48,5 Ko

Je veux automatiser le fait de remonter a une courbe en determinant un point du graphe.
Par exemple lorsque x vaut entre 6 et 11 je veux qu'il me renvoie la courbe bleue qui correspond a beta= 0°
Mon code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 for b=0:5:30
li=(((b.^3)+1).*(l+0.08*b))./(((b^3)+1)-(0.035.*(l+0.08*b)));
cp=c1.*((c2./li)-c3*b-c4).*exp(-c5./li)+c6.*l;
txt=['Bêta=',num2str(b)];
     plot(l,cp,'DisplayName',txt)
     xlim([2 25])
     ylim([0 0.5])
     hold on;
     %Z=[Z max(cp)];
     [Z,I]=max(cp);
    X=[X Z];
     W=[W I];
     A=[l(W)];
 end
 X; %ordonnée max des cp pour chaque beta 
 A' %abcisse du point max pour chaque beta (vitesse)
W; %ordre du max des cp pour chaque beta
 hold off; 
 legend show

Merci !