Find and display intersections using fzero
16 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
I have two functions: f(x) = x.^2-1, f(g) = exp(x/5) in a linspace(-2,2). I need to indicate on the graph where f = g using the fzero function. Also I would like to keep it in a single m file.
Thanks
0 Commenti
Risposta accettata
Brendan Hamm
il 12 Mar 2015
Modificato: Brendan Hamm
il 12 Mar 2015
If f(x) = g(x) then f(x) - g(x) = 0. So we need to define h(x) = f(x) - g(x) and find where h(x) = 0. This is exactly what fzero is made for.
h = @(x) x.^2 - 1 - exp(x/5); % Creates a function handle for your function
Now let's plot and see if we can find a point close to where this function is zero.
x = -2:0.01:2;
plot(x,h(x));
Looks like -1.5 and 1.5 are close.
firstZero = fzero(h,-1.5);
secondZero = fzero(h,1.5);
Now visualize these on the plot:
hold on
plot(firstZero,h(firstZero),'ro');
plot(secondZero,h(secondZero),'ro');
hold off
2 Commenti
Brendan Hamm
il 13 Mar 2015
Awesome. If you found this to solve your problem, please accept the answer so others with similar issues can find the solution.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Graph and Network Algorithms in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!