How to evaluate the x value corresponding to an y value from a plotted y(x)?
2 views (last 30 days)
Show older comments
I am trying to evaluate the x value corresponding to an y value, after plotting y(x). How can I do that for any kind of values? I used the find function, but it fails. I attached the code lines below:
% parameters
mu0 = pi*4e-7;
M = 1.3e5;
R = 0.5e-6;
H = 0.67e-6;
d = [1e-6:1e-7:1e-5];
% function definition
format long;
F = (1./4)*(pi*mu0*M^2*R^4)*(1./d.^2+1./(d+2*H).^2-2./(d+H).^2);
% plot F(d)
plot(d,F,'green', 'LineWidth', 2);
% evaluating the x of an y (the d value corresponding to an F)
index = find(F == 1e-10)
d_coresp = d(index)
0 Comments
Answers (1)
Azzi Abdelmalek
on 1 Oct 2012
Edited: Azzi Abdelmalek
on 1 Oct 2012
Dont use
index = find(F == 1e-10)
use
eror=1e-11
[~,idx]=find(abs(F-1e-10)> eror
% eror depends on how many samples you are using and on the variation of F
your are not sur 1e-10 belongs to your plot
4 Comments
Azzi Abdelmalek
on 2 Oct 2012
Edited: Azzi Abdelmalek
on 2 Oct 2012
Ok I missed one ) .
eror=1e-11
[idx,~]=find(abs(F-1e-10)> eror)
See Also
Categories
Find more on 2-D and 3-D Plots in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!