三角恒等式以难记著称:这里是如何在不抓狂的情况下学会它们。
从勾股定理和相似三角形出发,我们可以找到sin、cos、tan等之间的关系 (阅读关于三角函数的文章).


我们能更深入吗?也许我们可以将正弦与 自身 (sin-ception)。用数学术语来说,我们在寻找这样的公式 (完整速查表):
![]()
与其记忆这些糟糕的东西,不如学会 绘制 公式。欧拉公式让它变得简单。
代数中的联系(Connections In Algebra)
在代数中,我们研究这样的关系:
![]()
直接计算$17^2$很繁琐。但我们可以简化为:
![]()
在计算机时代,当然我们可以直接计算$17^2$。重要的方面是认识到$(a + b)^2$可以分解成更简单的成分:$a^2, b^2, a, b$。这在因式分解、简化方程等方面很有用。
三角学中的联系(Connections In Trig)
让我们把三角学转化成大白话。这是什么意思?
![]()
记住正弦是“高度(最大值的百分比)”,这个方程问: 如果两角相加,它们的高度总和是多少?
快速猜测可能是个体高度相加:
![]()
看起来简洁,但并不正确。如果我们不断相加角度,它们的高度会增加到最大值(100%),然后开始下降。

角度和高度之间的关系不可能是简单的加法。
现在奇怪的是:我能画出新高度应该是什么(就在那里!),但我无法将我的画转化为方程。
或者我能吗?
用欧拉公式(Euler's Formula)绘图
欧拉公式(Euler's Formula) 让我们用复数创建一个圆形路径:

关键在于,复数乘法 执行旋转。啊哈!我们可以用欧拉公式(Euler's Formula)画出我们需要的旋转:

- 从1.0开始,位于0度。
- 乘以$e^{ia}$,旋转$a$。
- 乘以$e^{ib}$,旋转$b$。
- 最终位置 = $1.0 \cdot e^{ia} \cdot e^{ib} = e^{i(a+b)}$,即位于角度(a+b)处的1.0
复指数 $e^{i(a+b)}$ 相当复杂。就像分解 $17^2$ 一样,我们把这些部分乘出来:
![]()
![]()
![]()
![]()
这才像话!这个版本轻松地将水平位置(实部)和垂直位置(虚部)分离开:
- 组合高度:$ \sin(a + b) = \sin(a)\cos(b) + \sin(b)\cos(a) $
- 组合宽度:$ \cos(a + b) = \cos(a)\cos(b) – \sin(a)\sin(b) $
砰:一次计算就得到了两个难以记忆的三角恒等式。不赖的买卖。
理解这个等式
既然我们已经找到了方程,让我们深入理解其含义。当我们把高度加起来时,情况是这样的:

- 蓝色三角形的完整高度($\sin(a)$)不能直接使用,因为红色三角形延伸得不够远。(为什么?当我们加上角度$b$时,我们以更陡的角度移动,斜边长度相同。我们获得了垂直距离,但损失了水平距离。)实际上,我们是在“回拉”$\sin(a)$,将其乘以$\cos(b)$的因子缩小。
- 红色三角形的完整高度($\sin(b)$)也不能直接使用,因为它处于一个角度。我们是在“旋转”$\sin(b)$,将其乘以$\cos(a)$的因子缩小。
记住正弦(sine)和余弦(cosine)是百分比。在这种情况下,
![]()
或者
![]()
当然,我们会 比如 得到每个三角形的完整高度。但从图中我们看到 $a$ 向后滑动,$b$ 被扭曲,所以我们 实际上 得到的高度是减少的。把每个余弦想象成对你高度的税收,减少了你的实际所得。(高度是0.90?不错,Papa Cosine会让你保留75%。剩下的交出来,小子!).
那么,对于小角度,比如 $\sin(.01 + .02)$ 会怎样?
我们可以硬算。但我猜结果大约是:
![]()
为什么?我对小角度的心理图景是这样的:

理想高度($\sin(a)$ 和 $\sin(b)$)与“税后”版本($\sin(a)\cos(b)$ 和 $\sin(b)\cos(a)$)之间没有可察觉的差异。
- 对于微小角度,$\sin(a + b)$是一条垂直线。由于滑动或扭转部分,它几乎不损失任何高度。
- 对于小角度,余弦(我们保留的百分比)接近100%。我们保留了绝大部分的高度。
- $\sin(x) \sim x$是一个常用的小角度近似(常用于微积分)。本质上,它表明$\sin(x)$在短暂时间内是一条直线。对于小角度,$\sin(a + b) \sim \sin(a) + \sin(b) \sim a + b$。
对于余弦,我们有一个类似的图:

- 这一次,转换因子匹配上了(余弦与余弦,正弦与正弦)。
- 第一个三角形的完整宽度($\cos(a)$)被缩放以匹配第二个三角形的宽度。
- 正弦项为负,因为它向后推我们,减少了我们的高度。我们可以利用相似三角形提取出这一部分。
我通常不会思考图中的各个部分,尽管看几次它们如何工作是不错的。如果你只需要三角恒等式,用欧拉公式(Euler's Formula)代数地推导出来即可。
我们为什么要在意三角恒等式?
好问题。有几个原因:
1. 因为不得不学(最糟糕的理由)。 许多三角学课程让你死记这些恒等式以便日后测验(啊)。你不需要 记忆 它们,你可以在大约一分钟内推导出公式。把珍贵的脑容量留给其他事情吧。
2. 我们现在可以将三角函数“分解”为更简单的部分。 我们现在可以将正弦分解成更小的部分,这在微积分中很有用。
例如,要求正弦的导数,我们需要:
![]()
并让 $dx$ 趋近于零。直接处理很棘手,但利用 $\sin(a + b)$ 公式我们得到
![]()
当 $dx$ 趋近于零时,$\cos(dx) = 1$(零角为全宽),所以我们有:
![]()
当 $dx$ 趋近于零时,$\sin(dx)$ 和 $dx$ 变得相等:
![]()
代入后,我们得到 $\cos(a)$ 是 $\sin(a)$ 的导数。呼!处理三角函数并不总是容易,但至少是可管理的。
3. 计算效率高。 如果你在做计算机图形学,并且频繁计算正弦/余弦(比如点积),三角恒等式是很有用的捷径。在过去,这些恒等式被用作类似对数表的方式来简化手工计算。
4. 数学在于发现联系。 因为三角函数源于圆和指数函数,它们似乎无处不在。有时你可以通过从三角到指数或反之来简化场景。
5. 加深对欧拉公式(Euler's Formula)的理解。 掌握欧拉公式,你就掌握了圆。然后,世界!(编者注:Kalid的小指似乎粘在嘴上了。我们正在处理。)
看,欧拉公式让我们 绘制 一个圆并读出位置。太棒了!我们可以通过几次乘法避免大量繁琐的几何。如果你在做任何高等数学,让莱昂哈德·欧拉深入你的灵魂是值得的。他是好伙伴。
今天就到这里。数学快乐。
附录:资源与扩展公式
你可以修改参数 $a$ 和 $b$ 来创建新的恒等式。
减法公式:用 -b 替换 b
![]()
![]()
倍角公式:用 a 替换 b
![]()
![]()
半角公式:替换并求解
从倍角公式开始,求解 $\sin(a)$,它是 $\sin(2a)$ 中所用角的一半。《Trig without tears》(一个很棒的资料和名字)有更多细节:
http://brownmath.com/twt/double.htm
我找到的其他几个有用参考:
- http://www.tc.umn.edu/~nydic001/docs/unpubs/Eulers_Formula_and_Trig_Identities.pdf
- https://www.wyzant.com/resources/lessons/math/trigonometry/eulers-formula-trig-identities
- http://www.ctralie.com/Teaching/Euler/
- http://kunklet.people.cofc.edu/MATH220/euler.pdf