1、启动MATLAB,输入如下代码,求解函数曲线的一阶导数、二阶导数、拐点和拐点处的切线方程。
close all; clear all; clc;format compact
% MATLAB之考研数学:函数的导数和求函数在拐点处的切线方程
syms x %声明符号变量x
assume(x > 0) % x的定义域大于0
y = x^2+2*log(x); %符号变量x表示的曲线函数y
d1 = diff(y,x,1) %求函数y的一阶导数
d2 = diff(y,x,2) %求函数y的二阶导数
x0 = solve(d2,0) %求二阶导数为0时的点(即拐点)
y0 = subs(y,x,x0) %拐点处的y值
k = subs(d1,x0) %拐点处的切线斜率
f = k*(x-x0)+y0 %拐点处的切线方程
%---------绘制函数曲线和切线方程的图像----------%
fplot(inline(y),,'r-');hold on
fplot(inline(f),,'k-');hold off
text(double(x0),double(y0),'\leftarrow拐点(1,1)')
xlabel('\fontsize{15}X');ylabel('\fontsize{15}Y')
legend('函数曲线y=x^2+2ln(x)','切线方程f=4x-3','Location','NorthWest')
set(gca,'FontSize',13,'TickDir','out','TickLength',)
axis fill
2、保存和运行上述脚本,在命令行窗口得到函数曲线的一阶导数为2x+2/x、二阶导数为2-2/x^2,拐点为(1,1),拐点处的切线方程为y=4x-3,与正确答案一致。
3、同时得到函数的曲线、切线方程和拐点的图像如下图,拐点为(1,1)。
4、第三步代码中,syms用于声明符号变量assume()用于设置符号变量的数学属性,比如本文assume(x>0)就是设置x为大于0的符号变量diff()用于求函数的导数,其常用的调用格式为diff(fx,x,n)。
其中fx为符号变量表示的函数,x为符号变量,n为求导的阶数,n=1表示求一阶导数,n=2表示求二阶导数。更多diff( )的用法请见MATLAB帮助文档。