![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/188066/image.jpeg)
Evaluate symbolic nthroot and return its symbolic expression to plot
1 次查看(过去 30 天)
显示 更早的评论
syms x;
f(x) = ((1 + x)^(1/3));
Ln = functionLinear(f, 2);
disp(LN);
Define the function that will return the tangent line 'res' symbolically. This way I can plot both the actual function and the tangent evaluated at point 'a'. The below function is what I coded, and I am not able to get the symbolic expression back.
function[res] = functionLinear(func, a)
syms x;
g(x) = diff(func);
res = g(a)*(x-a) + func(a);
end
0 个评论
采纳的回答
John D'Errico
2018-5-2
编辑:John D'Errico
2018-5-3
What is wrong with it? Did you forget to use vpa? For example, with...
a = 1.3;
I get this from your code:
res =
(10^(2/3)*23^(1/3))/10 + (10^(2/3)*23^(1/3)*(x - 13/10))/69
vpa(res)
ans =
0.19130523504288585473789120739135*x + 1.0713093162401607865321907613916
It looks pretty good to me.
ezplot(f,[0,2])
hold on
ezplot(res,[0,2])
grid on
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/188066/image.jpeg)
Which as far as I can see, looks like a tangent line to that function at a==1.3. Yes, it suggests that a simple Newton's method on this function will probably get in trouble. But that is not the question here.
solve(res)
ans =
-28/5
It may explain why you were asked to try to solve this problem using Newton's method, probably as homework.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Symbolic Math Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!