三角恒等式是处处成立的三角等式:和角、倍角、半角、辅助角四大类。本节手工推导两角差余弦公式(其余公式全是它的后代),演练化简的标准流程,并用辅助角公式完成一个来自测量数据合成的实战案例。第四章收官之节。
单位圆上取角 A 与角 B,它们的终边交圆于 P 与 Q。用余弦定理算弦 PQ 的平方(半径为 1):按角坐标定义,P = (cos A, sin A)、Q = (cos B, sin B),距离平方 = (cos A − cos B) 平方 + (sin A − sin B) 平方。另一方面,PQ 所对圆心角是 A − B,余弦定理给出 PQ 平方 = 1 + 1 − 2cos(A − B)。两式相等,展开左边、用勾股恒等式收拾干净,得:
cos(A − B) = cos A cos B + sin A sin B
这个公式是整串钥匙的母钥匙。和角公式由它换符号得到:cos(A + B) = cos A cos B − sin A sin B;正弦版本用余角转换:sin(A + B) = sin A cos B + cos A sin B。
倍角公式是和角公式的特例(A = B):
降幂公式由倍角反解:sin 平方 A = (1 − cos 2A)/2。它把二次式降到一次,是积分表的常客(第六章会回来用它)。
>>> from sympy import symbols, sin, cos, expand, trigsimp, pi >>> A, B = symbols('A B', real=True) >>> # 验证正弦和角公式:给一组具体角 >>> a, b = pi/6, pi/4 >>> lhs = sin(a + b) >>> rhs = sin(a)*cos(b) + cos(a)*sin(b) >>> trigsimp(lhs - rhs) 0 >>> # 倍角公式验证 >>> trigsimp(sin(2*a) - 2*sin(a)*cos(a)) 0
两处差都精确为 0——公式在符号层面成立,不是数值巧合。
例题:化简 sin x cos x cos 2x。看到 sin x cos x,条件反射用倍角:sin x cos x = sin 2x ÷ 2。原式 = (sin 2x ÷ 2) × cos 2x = (sin 4x) ÷ 4——又一层倍角。三步收工,答案是 sin 4x ÷ 4。
例题:化简 (cos 平方 x − sin 平方 x) ÷ (cos x − sin x)。分子是 cos 2x,但路径更好的是因式分解(平方差):(cos x + sin x)(cos x − sin x) ÷ (cos x − sin x) = cos x + sin x(附条件 cos x ≠ sin x)。先分解后套公式往往是近路——2.1 的因式分解在三角里同样好用。
>>> from sympy import trigsimp, symbols, sin, cos >>> x = symbols('x', real=True) >>> trigsimp((cos(x)**2 - sin(x)**2)/(cos(x) - sin(x))) sin(x) + cos(x)
SymPy 与手算一致。
a sin x + b cos x = 根号(a 平方 + b 平方) × sin(x + φ),其中 tan φ = b ÷ a。几何直觉:正弦与余弦是同一频率的两个波,叠加后仍是这个频率的波,只是振幅变大、相位偏移——振幅恰是向量 (a, b) 的模长(第三章的向量又一次客串)。
手算 3 sin x + 4 sin x 的兄弟式 3 sin x + 4 cos x:振幅 = 根号(9+16) = 5,tan φ = 4/3,φ = arctan(4/3) ≈ 53.13 度。结果:5 sin(x + 53.13 度)。
>>> import math >>> r = math.hypot(3, 4) # 振幅 = 向量模长 >>> phi = math.degrees(math.atan2(4, 3)) # 相位 >>> r, round(phi, 2) (5.0, 53.13) >>> # 验证:任取 x,两种写法应相等 >>> x = math.radians(20) >>> round(3*math.sin(x) + 4*math.cos(x), 10) == round(5*math.sin(x + math.atan2(4,3)), 10) True
任意 x 处两种写法吻合(浮点层面十位小数一致)。
测塔任务收官案例。两台测距仪同时记录塔顶轻微晃动:一台读到分量 3 sin t(单位厘米),另一台读到 4 cos t。总晃动 = 3 sin t + 4 cos t = 5 sin(t + 53.13 度)——峰值晃动 5 厘米,出现时刻由相位 53.13 度给出。没有辅助角公式,"峰值多少"需要逐点求值;有了它,一行读出。工程里电机振动、双声道音频合成全是这套运算。
⚠️ 常见坑:恒等式 tan φ = b/a 在 a 为负时会指错象限,程序里用双参数的 atan2(b, a) 一步到位;手算时以 a、b 的符号确定 φ 所在象限。

sin x 等于 cos x 是方程(只在特定 x 成立,解是 π/4 加 kπ);sin 平方 x 加 cos 平方 x 等于 1 是恒等式(一切 x 成立)。判断的标准动作:整理成一边为零,看能否因式分解或用公式化简到零。恒等式用于化简,方程用于求解——用混了就会把化简题解出"解集"来。
问:化简三角式的通用顺序?
答:一看角(不同角先统一:倍角拆半、和角展开),二看名(切割化弦),三看结构(平方想降幂、乘积想倍角、a sinx + b cosx 想辅助角)。三步之后多数式子已现原形。
问:tan x 的定义域为什么要挖点?
答:tan = sin ÷ cos,cos 为零处分母归零——这正是它图像上竖直渐近线的来源。
第四章完结:塔已测完、误差已清、公式已备。下一章告别确定性,去给掷骰子的世界建立算术。