Matlab找到两条曲线的切线
问题描述:
对于一个家庭作业项目我必须找到两条曲线相切的点。Matlab找到两条曲线的切线
我写了下面的脚本,但它给了我一个错误:
Warning: 2 equations in 1 variables.
我不明白这样的警告,但我的老师说,这本不应该存在。
这里是我的脚本:
syms x y;
y1 = x^3-3*x+4;
y2 = 3*(x^2-x);
y1_prime = diff(y1);
y2_prime = diff(y2);
x_point = solve(y1 == y2, x1_prime == x2_prime);
slope = subs(y1_prime, x, x_point);
y_point = subs(y1, x,x_point);
tangent_line = solve(y - y_point == slope*(x - x_point), y);
fprintf('The equation for the tangent line is: %s\n', string(tangent_line));
请帮助。谢谢你:)
答
你有两个方程来解决。第一个是两条曲线的交点:
x^3-3*x+4 = 3*(x^2-x)
,第二个要求,在交叉点的斜率匹配:
3*x^2-3 = 3*(2*x-1)
所以,你有两个方程在一个未知的,X ,在这种情况下可以解决这个问题,但总的来说,你可能无法找到解决方案。
我在想这是一个关于MATLAB的问题。 – N8TRO 2013-02-27 04:51:45
是的,这是一个关于MATLAB的问题。我解释了为什么警告“警告:1个变量中的2个方程”。说得通。 – Kavka 2013-02-27 04:54:01
我明白了......我认为MATLAB对于这个问题可能有点矫枉过正。 – N8TRO 2013-02-27 04:57:17