How can i determine a point of intersection in a curve ?

1 view (last 30 days)
Hi
How can i determine the point of intersection in this curve ?
x=[0;5.00E-05;1.00E-04;1.50E-04;2.00E-04;2.50E-04;3.00E-04;3.50E-04;4.00E-04;4.50E-04;5.00E-04;5.50E-04;6.00E-04;6.50E-04;7.00E-04;7.50E-04;8e-4];
w1_6=[2.06E+02;2.03E+02;1.99E+02;1.96E+02;1.93E+02;1.90E+02;1.87E+02;1.84E+02;1.81E+02;1.79E+02;1.77E+02;1.74E+02;1.72E+02;1.70E+02;1.68E+02;1.66E+02;1.64E+02];
wstable=[185.11; 185.11; 185.11; 185.11; 185.11; 185.11; 185.11;185.11;185.11;185.11;185.11;185.11;185.11;185.11;185.11;185.11;185.11];
plot(x*1e3,wstable,'r',x*1e3,w1_6,'b'),legend('h1','h=1.6*h1')
xlabel('tip mass thickness (mm)')
ylabel(' First mode frequency(Hz)')

Accepted Answer

Torsten
Torsten on 10 Feb 2017
pp=spline(x,w1_6);
fun=@(x)ppval(pp,x)-185.11;
x0=0;
x=fzero(fun,x0)
Best wishes
Torsten.
  2 Comments
Torsten
Torsten on 10 Feb 2017
Edited: Torsten on 10 Feb 2017
pp=spline(x,w1_6);
fun=@(x)ppval(pp,x)-185.11;
x0=[x(1) x(end)];
y=fzero(fun,x0)
Best wishes
Torsten.

Sign in to comment.

More Answers (1)

Rik
Rik on 10 Feb 2017
This FEX submission will do what you need with the following line of code.
[x0,y0] = intersections(x*1e3,wstable,x*1e3,w1_6);
  1 Comment
Mallouli Marwa
Mallouli Marwa on 10 Feb 2017
I obtain this error
Undefined function or variable 'intersections'.

Sign in to comment.

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by