Clear Filters
Clear Filters

Simple question: How to find the 'x' at a certain value of y(x) equation?

75 views (last 30 days)
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?
Dyuman Joshi
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?
Sam Chak
Sam Chak on 11 Oct 2023
@Ceylin, Which intersection do you want to solve for x?
syms f(x)
f(x) = sin(x);
fplot(f, [-2*pi, 2*pi]), grid on % draw left side of Eqn
yline(0.2, 'r-') % draw right side of Eqn
legend('sin(x)', '0.2')

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 28 Feb 2016
This works:
x_for_y30 = fzero(@(x)y(x)-30, 50)
x_for_y30 =
Star Strider
Star Strider on 17 Apr 2024
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
y = function_handle with value:
yq = 30;
x_for_y30 = interp1(y(x), x, yq) % Get 'x' For Specific 'y'
x_for_y30 = 14.0322
y_for_x2pi = interp1(x, y(x), 2*pi) % Get 'y' For Specific 'x'
y_for_x2pi = 2.9555
plot(x, y(x))
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))

Sign in to comment.

More Answers (1)

John BG
John BG on 28 Feb 2016
Edited: John BG on 29 Feb 2016
If you plot the following
f = @(x) x.^2.*12./23./23.9.*log(x).^2
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:
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:
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

Community Treasure Hunt

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

Start Hunting!