Simple question: How to find the 'x' at a certain value of y(x) equation?
230 views (last 30 days)
Show older comments
This may be a simple question. But let's assume I have one ugly equation:
x = [0:10];
y = @(x) x.^2.*12./23./23.9.*log(x).^2
How do I find the value of 'x' where y = 30?
Thanks!
4 Comments
Dyuman Joshi
on 11 Oct 2023
Moved: Sam Chak
on 11 Oct 2023
Did you tried the approach that is mentioned in the accepted answer?
Accepted Answer
Star Strider
on 28 Feb 2016
This works:
x_for_y30 = fzero(@(x)y(x)-30, 50)
x_for_y30 =
14.0341
8 Comments
Thanh Thuy Duyen Nguyen
on 17 Apr 2024 at 12:46
If I have x and want y then how could I compute that?
Star Strider
on 17 Apr 2024 at 13:16
Actually there is an additional way of solving this, using interp1, especially if the actual function is not available —
x = [0:15]+eps;
y = @(x) x.^2.*12./23./23.9.*log(x).^2
yq = 30;
x_for_y30 = interp1(y(x), x, yq) % Get 'x' For Specific 'y'
y_for_x2pi = interp1(x, y(x), 2*pi) % Get 'y' For Specific 'x'
figure
plot(x, y(x))
grid
hold on
plot(x_for_y30, 30, 'ms', 'MarkerFaceColor','m')
plot(2*pi, y_for_x2pi, 'cs', 'MarkerFaceColor','c')
hold off
xline(2*pi,'--k', '2\pi')
yline(y_for_x2pi, '--k', sprintf('y=%.2f for x=2\\pi',y_for_x2pi))
xline(x_for_y30, '--k', sprintf('x=%.2f for y=30',x_for_y30))
.
More Answers (1)
John BG
on 28 Feb 2016
Edited: John BG
on 29 Feb 2016
Alpha
If you plot the following
x=[-100:.1:100]
f = @(x) x.^2.*12./23./23.9.*log(x).^2
y=f(x)
plot(x,y)
grid on
place the marker on the point that shows y=30 f(x) is not symmetric, it has 2 zeros, and f=30 on 2 places:
x01=14.04
x02=-29.5
if what you really mean is:
f2 = @(x) x.^2.*12./(23.*23.9).*log(abs(x)).^2
then the function is symmetric and there are 2 values of x that satisfy your question:
x01=14.04
x02=-14.04
Compare both functions and y=30
If you find this answer of any help solving this question, please click on the thumbs-up vote link
thanks in advance
John
0 Comments
See Also
Categories
Find more on Calculus 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!