高中数学/微积分初步/一阶导数的概念与求导法则
阅读指南
[编辑]希望快速了解或快速回顾高中数学的读者可以只看基础知识部分。其余部分是为需要参加学科考试或需要一定知识提升的读者准备的。
导数主要用于解决求函数的极值、平滑曲线的切线。本节只涉及导数的基本定义和计算公式,顺便提及了洛必达法则。导数的更多具体运用(求切线方程、求最值、求单调区间等)会留到后面几节继续学习。
预备知识
[编辑]阅读本节,一般需要先学习有关极限及其计算的知识,特别是常见函数的导函数公式的推导过程需要使用极限运算规律。如果读者暂时不希望了解导数公式的由来,只想关心导数是什么及其公式用法,也可以先跳过极限的学习。
考试要求
[编辑]在中国大陆,导数这个知识点曾一度排除在高考范围以外。1978年中国大陆高考制度恢复正常后,微积分入门知识也跟着加入高考内容大纲。但是由于当时的中学缺乏微积分教与学的经验,学生普遍反映难学,所以不久后变为只考察简单的极限计算,其它微积分学知识仅供学生自由选学。从2001年推广的试验本教材又重新将导数等知识纳入考试大纲。[1]
基础知识
[编辑]知识引入
[编辑]导数是一种差商(difference quotient)的极限,也被翻译为微商。最常见的例子就是物理量随时间的瞬时变化率。
导数的定义与直接计算
[编辑]假定函数f(x)在某一点a及其领域上有定义,若函数值在该点附近的平均变化率的极限存在,就将此极限称为f(x)在点a处的导数(derivative),记作“”;若此极限不存在,就称f(x)在a不存在导数,简称在a点不可导。[2]
函数在点a上的导数,就是对应的平面曲线在点(a, f(a))处的切线斜率。[2]
提示:为区别后面会接触到的二阶与高阶导数,我们将这里定义的导数称为函数的一阶导数。
提示:可以类比极限和单侧极限的关系,定义出2种单侧导数:左导数为,右导数为。
导数不存在的例子
[编辑]导函数与常用求导公式
[编辑]若函数f(x)在区间A上的每一点都可求导,就称f(x)在A上是可导的。[2]
按照可导性的定义,对于一个区间A上可导的函数f(x),它在A上的每一个点都有一个确定的导数值。此时,这种点与导数之间的对应关系构成一个新的函数,叫做f(x)的导函数,简称导数[2],记作f'(x)或。
提示:(1)在英文中并不用2个不同的词区分导函数和导数,而只有“函数在一点处的导出量”(derivative of the function at a point)和“函数的导出量(derivative of the function)”的说法。(2)由于导数和另一个叫做微分(differential)的概念之间存在直接联系,所以英文中把“可导”直接叫做可微(differentiable),把“求导的过程”叫做微分化(differentiation)。大体上讲,可导和可微分的概念出发点并不同,但是至少对于一元函数来说,是可以证明其可导性和可微分性是相互等价的。汉语中区分“导数”的概念和“微分”的概念是一个好的做法,但是由于英文中经常不区分二者,所以在英汉互译时会出现术语混淆。例如许多汉语微积分教材都会明确区分“一元函数的导数”和“一元函数的微分”,但是却将“多元函数的微分”译为“多元函数的导数”。还有“全导数”(total derivative)和“全微分”(total differential)到底是否需要作区分也是译法混乱不堪。某些名为《高等数学》的圈钱教材甚至有出现正文中从未定义过全导数是什么,但是在课后习题中却又明确要求读者计算全导数的情况。
- (其中C是常数。)
此公式列表也叫做导数公式表(table of derivatives)。
2个可导函数的四则运算结果的导数公式如下[5]:
- (求导运算的线性(linearity)。)
提示:求导运算是一种从一个函数到另一个函数的映射(函数)。如果按照线性泛函分析的讲法,将函数比作抽象的向量,那么求导就是一种抽象向量之间的线性变换。如果这种变换是可逆的,当然也有可能定义其逆变换。而关于求导的逆运算有何含义,我们将在不定积分与微积分基本定理简介一节中再继续讨论这个话题。
相关例题1: 利用基本函数的求导公式和函数四则运算的求导公式,分别求下列函数的导数:
- (1) ;
- (2) ;
- (3) ;
- (4) ;
- (5) ;
- (6) 。
- (1) ;
- (2) ;
- (3) 。
复合函数求导的链式法则
[编辑]单靠上述几个基础的求导公式,还不足以充分解决复合函数的求导问题。我们实际经常遇到的各种函数往往也是由若干个基本函数复合而成的。关于复合函数的求导,也能摸索出下列公式:
链式法则(chain rule):设和为2个可导函数,则复合函数的导数为[6]:
提示:对于内外复合多次的函数,可以多次使用链式法则,得到像链条一样常常的计算公式,这就是链式法则的得名原因。
- (1) ;
- (2) 双曲正弦函数;
- (3) ;
- (4) ;
- (5) 。
相关例题2: 将下列函数看作复合函数(不进行化简),直接验证链式法则所得结果的合理性:
- (1) ;
- (2) 。
相关例题3:
假设函数f(z)、z = g(x)都是在各自定义域内的可导函数。请利用链式法则验证复合函数的下列单调性规律(即“同增异减”规律):
①如果f(z)与g(x)同为增函数或同为减函数,则复合函数f(g(x))是增函数;
②如果f(z)与g(x)一个是增函数,另一个是减函数,则复合函数f(g(x))是减函数。
由正弦函数与余弦函数的导数关系,结合其周期性和奇偶性,可以猜想下列命题:
- (1) 如果函数f(x)是周期函数,那么导函数f'(x)也是周期函数,且导函数的周期与原函数的周期相同;
- (2) 如果函数f(x)是奇函数,那么其导函数是偶函数;如果函数f(x)是偶函数,那么其导函数是奇函数。
上述事实说明:
相比有关奇偶性与周期性的简单规律之外,求导更多的是用于分析可导函数的单调性。我们将在后续的导数与单调性和极值的关系一节中再继续讨论这个内容。
常用结论与常见模型
[编辑]先变形再求导
[编辑]- (1);
- (2);
- (3)。
- (1) ;
- (2) ;
- (3) 。
知识背景:上例中的这类技巧实际上涉及对隐函数求导的理论,感兴趣的读者可以自行参阅相关章节的知识。
- (1) ;
- (2) ;
- (3) 。
最后,对于实变量的复值函数,也可以以类似的方式定义并求出导函数。并且可以在复数域内作因式分解等化简工作。
相关例题7: 设i是虚数单位,求函数的导函数。
洛必达法则
[编辑]导数是从极限的思想出发来定义的,常见的导数公式也是通过计算极限推知的。不过反过来,有了导数公式以后,也能利用它轻松地求解某些在以往不太好办的未定式极限,这要说到下面的法则。
这个公式叫做洛必达法则(L'Hôpital's rule),以法国学者紀堯姆·德·洛必達(Guillaume de l'Hôpital)命名。
洛必达法则提供了一种对分式型未定式上下同时求导,然后再取极限的办法。在很多习题中,对分子或分母分别求导后,能够降低其解析式的复杂程度(特别是对于多项式可以起到降幂的效果),所以起到简化问题的效果。
玩笑:根据维基百科上似乎来历不明的说法,L'Hôpital古時寫作帶s的L'Hospital。考虑到法语中的字母“h”永远不发音,所以我们有理由称其为“医院法则”(hospital rule)。
提示:洛必达法则是非常顺手的求极限工具,使用它对付考试中的选择题和填空题很好用,但是不建议初学者滥用它,使用基础的方法更能锻炼运算方面的技巧。
- (1);
- (2)。
当使用洛必达法则对未定式处理过一次后,只要仍然符合使用条件,还可以继续使用洛必达法则。话句话说,只要条件合适,洛必达法则可以多次使用。
计算机技术辅助
[编辑]Mathematica
[编辑]在Mathematica软件中,直接使用“D”命令求导函数[7]:
fun[x_] := x^7 + Sin[x] + x * Log[x]; (* 自定义要求导的函数,并取名为fun *)
D[fun[x], x] (* 以x为自变量,求f的导函数 *)
提示:在Mathematica的Wolfram语言中,“=”表示赋值,“==”表示相等,“:=”表示符号的定义。
也可以更痛快一点,直接把定义函数和求导写成一行代码[8][9]:
D[5 Sin[x] + Cos[3x], {x, 2}]
可以直接定义新函数的导函数,而不直接定义函数本身[10]:
fun'[x_] := Sin[x]; (* 直接定义fun(x)的导数为正弦函数 *)
D[fun[x], x] (* 对f(x)求导 *)
D[fun[x^2], x] (* 对复合函数f(x^2)求导 *)
MATLAB
[编辑]使用MATLAB的符号数学工具箱,可以计算函数的导函数。求导运算主要是用到“diff”命令[11]:
syms x %定义一个新的符号量,取名为x
fun = sin( 5*x ); %定义一个以x为自变量的正弦型的函数,取名为fun
diff( fun ) %求f的导函数
对常数求导,也是需要先将其转换为符号才行[11]:
cons = sym('5');
diff( cons )
提示:MATLAB的diff命令其实既可以计算向量的差,也可以计算导函数。它会针对不同类型的参数,自动选择合适的行为(也就是说实现了功能重载)。[12]
MATLAB对于多项式函数可以采用向量式的记法,即将多项式的各个系数按顺序写成向量。MATLAB也单独提供了计算这种形式的多项式的导函数的“polyder()”方法。例如求的导函数(输入和输出都是多项式的系数向量)[12]:
polyder( [ 4 1 0 3 ] )
Octave
[编辑]GNU Octave只提供了计算多项式导函数的“polyder()”方法[13](功能和用法模仿自MATLAB),但未直接提供计算一般函数的导数值或导函数的功能。
Octave虽然像MATLAB一样提供了名为“diff”的命令,但是这个命令只有求2个向量之差的功能,而没有实现求导数的功能[14]。
Python
[编辑]Python的符号计算包SymPy提供了“diff()”方法可以在符号对象上执行求导函数的操作[15]:
from sympy import * #导入SymPy包中的所有功能
x = Symbol('x') #定义x为代数符号
y = x**2 + 1 #定义y与x的解析表达式
y_prime = y.diff( x ) #用y对x求导
print( y_prime ) #输出结果查看
fun = lambdify(x, y_prime) #使用刚才得到的求导结果构造新函数,取名为fun
print( fun(5) ) #输出x=5时的导函数值
除符号式计算外,Python也有其它数值式计算的功能包可以计算函数在特定点处的导数值。
补充习题
[编辑]- 解释这则笑话的数学含义(求导运算就是一种微分算子,是对x求导的运算,而是对y求导的运算):
常函数和指数函数走在街上,远远看到一个微分算子。常函数吓得慌忙躲藏,说:“被它微分一下,我就什么都没有啦!”指数函数不慌不忙道:“它可不能把我怎么样,我是!”指数函数与微分算子相遇,指数函数自我介绍道:“你好,我是。”微分算子道:“你好,我是!”
参考资料
[编辑]- ↑ (简体中文)张哓波.高中微积分教学探究(pdf).华东师范大学.
- ↑ 2.0 2.1 2.2 2.3 人民教育出版社中学数学室. 第3章“导数”第1部分“导数”第3.1节“导数的概念”. 数学. 全日制普通高级中学教科书 (选修). 第3册 (选修2) 1. 中国北京沙滩后街55号: 人民教育出版社. 2004: 108–114. ISBN 7-107-17448-7 (中文(中国大陆)).
- ↑ 人民教育出版社中学数学室. 第3章“导数”第1部分“导数”第3.2节“几种常见函数的导数”. 数学. 全日制普通高级中学教科书 (选修). 第3册 (选修2) 1. 中国北京沙滩后街55号: 人民教育出版社. 2004: 114–115. ISBN 7-107-17448-7 (中文(中国大陆)).
- ↑ 人民教育出版社中学数学室. 第3章“导数”第1部分“导数”第3.5节“对数函数与指数函数的导数”. 数学. 全日制普通高级中学教科书 (选修). 第3册 (选修2) 1. 中国北京沙滩后街55号: 人民教育出版社. 2004: 123–125. ISBN 7-107-17448-7 (中文(中国大陆)).
- ↑ 人民教育出版社中学数学室. 第3章“导数”第1部分“导数”第3.3节“函数的和、差、积、商的导数”. 数学. 全日制普通高级中学教科书 (选修). 第3册 (选修2) 1. 中国北京沙滩后街55号: 人民教育出版社. 2004: 118–120. ISBN 7-107-17448-7 (中文(中国大陆)).
- ↑ 人民教育出版社中学数学室. 第3章“导数”第1部分“导数”第3.4节“复合函数的导数”. 数学. 全日制普通高级中学教科书 (选修). 第3册 (选修2) 1. 中国北京沙滩后街55号: 人民教育出版社. 2004: 121–123. ISBN 7-107-17448-7 (中文(中国大陆)).
- ↑ (简体中文)D——Wolfram语言与系统 参考资料中心.Wolfram语言与系统 参考资料中心.
- ↑ (英文)Michael Carreno.Calculating Derivatives with Mathematica.普林斯顿大学计算机系.
- ↑ 斯蒂芬·沃尔夫雷姆. 第3章“Mathematica中的高级数学”第3.5节“微积分”第3.5.1小节“微分”. The Mathematica Book [Mathematica全书 (特别版)]. 赫孝良 (汉译者); 周义仓 (汉译者) 4. 西安交通大学出版社. 2002: 504. ISBN 9787560515441 (中文(中国大陆)).
- ↑ 斯蒂芬·沃尔夫雷姆. 第3章“Mathematica中的高级数学”第3.5节“微积分”第3.5.5小节“定义导数”. The Mathematica Book [Mathematica全书 (特别版)]. 赫孝良 (汉译者); 周义仓 (汉译者) 4. 西安交通大学出版社. 2002: 508–509. ISBN 9787560515441 (中文(中国大陆)).
- ↑ 11.0 11.1 (英文)Differentiation.MathWorks Help Center.
- ↑ 12.0 12.1 (英文)Robert Smyth.3.3 Differentiation Rules.The Cooper Union for the Advancement of Science and Art.
- ↑ (英文)John W. Eaton(2018年).28.4 Derivatives / Integrals / Transformss.GNU Octave官方网站.
- ↑ (英文)Function Reference: diff.Octave Forge(2018年).
- ↑ (英文)SymPy 1.8 documentation » SymPy Tutorial » Calculus.SymPy官方网站(2021年1月31日).