Recherche du zero d'une fonction en Matlab

viconte Messages postés 108 Statut Membre -  
viconte Messages postés 108 Statut Membre -
Bonjour,

Je viens de résoudre une équation différentielle sous matlab qui se présente sous la forme y=f(x), et je souhaiterai accéder à la valeur de x lorsque y=0.
Quelle outil puis-je utiliser ? (J'arrive avoir une approximation en traçant la fonction mais j'aimerai une méthode un peu plus précise.)

Je vous remercie d'avance de votre aide.
A voir également:

6 réponses

Morgatte Messages postés 1300 Statut Membre 281
 
C'est quoi ta fonction ?

Un truc du genre ay"+by'+cy = Cont

C'est ça ? Si tu peux donnes-là en entier.
1
Morgatte Messages postés 1300 Statut Membre 281
 
Par dichotomie on peut trouver n'importe quel racine, mais c'est aussi de l'approximation.
C'est Newton qui a trouvé ça.

Si tu fais :
pour x0 pris au voisinage d'une des racines.
x0=x0-f(x)/f'(x0)

alors x0 va s'appricher de plus en plus près de la racine.
0
viconte Messages postés 108 Statut Membre 17
 
Merci de ton aide Morgatte,

Le souci c'est que je n'ai pas d'expression de la fonction f. En fait la fonction que j'ai est la solution d'une équation différentielle. (Pour la résoudre j'ai utiliser ode45)
0
viconte Messages postés 108 Statut Membre 17
 
La fonction est la suivante :

function dy=vide(t,y)
g=9.81
dy=[y(2);0;y(4);-g];

et pour le tracé de la fonction j'ai ça :

tinitial=0;
tfinal=2;
h=1;
v0=25;
theta=pi/12;
y0=[0 v0*cos(theta) h v0*sin(theta)];

[t1,y1]=ode45('vide',[tinitial,tfinal],y0);

plot(y1(:,1),y1(:,3),'red');


En fait le vecteur y a 4 composante qui sont x, dx/dt, z et dz/dt et je trace z=f(x)

Sinon j'ai également pensé à utiliser la méthode de Broyden. Je vais essayer de le réadapter.

Encore merci pour ton aide et bonne soirée
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Morgatte Messages postés 1300 Statut Membre 281
 
Alors là je peux pas t'aider, j'ai jamais vu ce genre de fonction.
Bonne continuation.
;)
0
viconte Messages postés 108 Statut Membre 17
 
Tant pis, encore merci pour ton aide !

Bonne journée
0