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 Axis Labels 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!