三角函数变换与周期模型
现实里的周期变化很少正好长成 y=sinx 或 y=cosx。潮水有平均水位,摩天轮有离地高度,日照时间以一年为周期,声波和弹簧振动还会把“每秒循环几次”当作更自然的语言。
这一章要做的事,是把标准正弦、余弦曲线变成能读、能写、能解释的模型。我们会反复使用两种形式:
y=Asin(B(x−C))+D
y=Acos(B(x−C))+D
其中 x 是输入变量,可能是秒、小时、天、月份或角度;y 是被测量的量,可能是高度、水位、温度、日照时长、声压或位移。参数不是装饰,它们各自记录了图像和情境中的一件真实事情。

图:A 控制离中线的最大距离,B 决定一轮循环有多宽,C 记录水平平移,D 决定中线位置。注意周期不是 B 本身,而是 ∣B∣2π。
从标准曲线到带参数模型
标准正弦函数 y=sinx 的中线是 y=0,振幅是 1,周期是 2π。标准余弦函数 y=cosx 也有同样的振幅和周期,只是起点状态不同:余弦在 x=0 时位于最高点,正弦在 x=0 时从中线向上穿过。
把标准曲线放进真实情境时,通常要做四类改变。
振幅永远写成非负数:
振幅=∣A∣
周期由 B 决定:
P=∣B∣2π
如果已知周期 P,就反过来求
∣B∣=P2π
中线是
y=D
相位移动是 C。在 Asin(B(x−C))+D 这种写法里,C>0 表示整体向右移动 C 个单位,C<0 表示整体向左移动。
很多错误来自把 B(x−C) 看成 Bx−C。如果模型写成 y=Asin(Bx−φ)+D,它的相位移动不是 φ,而是 Bφ。先把括号整理成 B(x−C),再读相位。
下面的滑杆模型器可以同时改变 A,B,C,D,观察图像、中线、振幅和周期怎样一起变化。
读出振幅、中线和周期
从图像或数据写模型,先不要急着找公式。最稳的顺序是先读竖直信息,再读水平信息。
如果已知最大值和最小值,中线和振幅可以直接算:
D=2最大值+最小值
∣A∣=2最大值−最小值
周期 P 是完成一次完整循环所需的 x 方向长度。可以用相邻峰值之间的距离读,也可以用相邻谷值之间的距离读,还可以用“同一种穿越中线的方向”之间的距离读。
判断一个周期时,要比较同一状态。一个峰到下一个峰是一周期,一个谷到下一个谷也是一周期;但峰到谷只走了半个周期。
例题:从图像特征写余弦模型
某个周期量的最大值是 7,最小值是 1。它每 8 小时重复一次,并且在 x=2 小时时达到最大值。写出一个余弦模型。
先求中线。最大值和最小值的平均数是 D=27+1=4,所以图像围绕 y=4 上下振动。
再求振幅。最大值到最小值的差是 6,一半是 3,所以 ∣A∣=3。
周期是 P=8,因此 B=82π=4π。
因为 x=2 时达到最大值,而余弦在输入为 0 时正好位于最大值,所以取 C=2,用余弦最自然。
所以一个模型是
y=3cos(4π(x−2))+4
这个模型的 x 单位是小时,B=4π 的单位是“弧度每小时”。这样 B(x−C) 才是可以放进三角函数里的角度量。
正弦还是余弦
正弦和余弦本质上只差一个相位。很多情境既可以写成正弦,也可以写成余弦。选择哪一个,通常看起始时刻的状态。

图:如果起始点从中线向上走,正弦常常更省相位;如果起始点在峰值或谷值,余弦常常更省相位。
当 A>0 时:
- y=Asin(B(x−C))+D 在 x=C 时从中线 D 向上出发;
- y=Acos(B(x−C))+D 在 x=C 时从最高点 D+A 出发;
- y=−Acos(B(x−C))+D 在 x=C 时从最低点 D−A 出发。
这不是硬规则,而是写模型时的省力选择。比如“摩天轮从最低点开始计时”时,使用
h(t)=D−Acos(Bt)
往往比强行使用正弦更直接,因为 t=0 对应谷值。
同一个周期现象可以有多种等价模型。只要振幅、周期、中线和相位状态都对,正弦模型与余弦模型都可以成立。
周期、频率和单位
在数学图像里,我们常说周期是 2π。在真实模型里,周期必须带着单位读。
如果 x 表示秒,周期可能是 0.02 s;如果 x 表示小时,周期可能是 12.42 h;如果 x 表示天,周期可能是 365 d。这些单位不能丢,因为 B(x−C) 必须是角度量。
频率表示单位输入内完成多少次循环:
f=P1
如果每秒完成 5 次循环,频率就是 5 赫兹,周期就是 51 s。用三角函数写成模型时,经常把频率转成角频率:
B=2πf
于是
y=Asin(2πf(x−C))+D
周期和频率互为倒数。周期越大,循环越慢;频率越大,循环越快。不要把“周期大”理解成“波动更频繁”。
圆周运动:从旋转到波形
正弦和余弦最自然的来源之一,是匀速圆周运动的投影。一个点在圆上匀速转动时,它的横坐标或纵坐标不会匀速增加,而是来回振动。把这个投影随时间画出来,就得到正弦或余弦曲线。

图:圆上点匀速转动,投影却在一条线上往复运动;这种往复运动可以用正弦或余弦描述。
如果圆的半径是 R,中心高度是 D,角速度是 ω,那么竖直投影常写成
y(t)=Rsin(ω(t−C))+D
或
y(t)=Rcos(ω(t−C))+D
这里的 R 就是振幅,ω 就是每单位时间转过的弧度数,也就是模型中的 B。
例题:摩天轮高度
一座摩天轮半径为 18 m,圆心离地 22 m,转一圈需要 40 s。乘客从最低点开始计时。写出乘客离地高度 h(t) 的模型。
半径就是离圆心的最大偏离,所以振幅是 18。圆心高度是平均高度,所以中线是 D=22。
周期是 40 s,因此 B=402π=20π。
乘客从最低点开始,而 cos0=1。为了让 t=0 时高度是 22−18=4,使用负余弦。
所以模型可以写成
h(t)=22−18cos(20πt)
检查一下:t=0 时 h(0)=4,是最低点;t=20 秒时转到最高点,h(20)=40,与半圈后的状态一致。
潮汐:模型是近似,不是硬套
潮汐常被拿来作为三角函数建模的例子,因为水位会周期性升降。一个入门模型可以把某地一天中的水位近似写成一条正弦或余弦曲线。

图:一条正弦曲线可以抓住水位升降的主要节奏,但真实潮汐数据通常会在平滑曲线附近上下偏离。
假设某港口一次高潮水位约为 4.2 m,低潮水位约为 0.8 m,下一次高潮大约在 12.42 小时后出现。若凌晨 3 点达到高潮,以午夜后的小时数 t 为输入,可以这样建模:
D=24.2+0.8=2.5
A=24.2−0.8=1.7
B=12.422π
因为 t=3 时是高潮,用余弦最方便:
h(t)=1.7cos(12.422π(t−3))+2.5
这个模型适合做初步预测:水位大约围绕 2.5 m 上下波动,最高约 4.2 m,最低约 0.8 m。但真实潮汐受月球、太阳、地形、气压、风和海湾形状影响,常常不是一条完美的正弦曲线。更精细的潮汐预报会把多个不同周期、不同相位的余弦项叠加起来。
“能用三角函数建模”不等于“所有点都必须落在曲线上”。模型的作用是抓住主要周期和变化范围,再用残差判断它是否足够好。
下面的实验可以在真实感更强的散点数据上调节参数,观察模型曲线怎样靠近数据。
日照长度:相位来自季节位置
日照时长也是周期现象。在北半球中纬度地区,一年中白昼通常在夏至附近最长,在冬至附近最短。用天数 d 表示一年中的第几天,可以把日照时长近似写成年周期模型。

图:日照时长的周期约为一年。相位可以用夏至附近的峰值或冬至附近的谷值来确定。
例如,某地一年中最长白昼约为 14.8 小时,最短白昼约为 9.2 小时,最长白昼大约出现在第 172 天。先求
D=214.8+9.2=12
A=214.8−9.2=2.8
周期约为 365 天,所以
B=3652π
因为第 172 天附近是最高点,用余弦模型写成
L(d)=2.8cos(3652π(d−172))+12
这里的 L(d) 单位是小时。模型说的不是“每天都严格按这条曲线变化”,而是用一条平滑曲线描述白昼长度的主要季节趋势。
声波、弹簧和高频模型
弹簧振动、摆动、声压变化和电信号常常把频率放在中心位置。比如声波的频率可能是每秒几百次,直接说周期会得到很小的小数;这时用 f 表示频率更自然。

图:弹簧和声波都围绕某个平衡状态振动。周期 T 是一次循环所用时间,频率 f 是单位时间内的循环次数。
如果一个弹簧小车围绕 0.30 m 的平衡位置振动,最大偏离是 0.04 m,频率是 2 次每秒,并且 t=0 时在最右端,那么
B=2πf=4π
模型可以写成
x(t)=0.04cos(4πt)+0.30
这里 0.04 的单位是米,0.30 的单位也是米;4π 的单位是弧度每秒。不同参数的单位不能混在一起看,否则模型会失去物理意义。
振幅的单位跟 y 一样,周期和相位的单位跟 x 一样,B 的单位是“弧度每个 x 单位”。如果 x 用小时,B 就不能按“每秒”来读。
从情境到方程
写周期模型时,可以把问题拆成一个固定流程。

图:先定范围,再定循环宽度,最后用起始状态或某个关键点确定相位。
先定义变量和单位。说明 x 代表什么,y 代表什么。没有单位的模型很难解释 B 和周期。
用最大值和最小值求中线 D 与振幅 ∣A∣。如果数据有噪声,可以先用大致峰值和谷值估计。
用相邻同类状态之间的距离求周期 P,再求 B=P2π。如果给的是频率 f,就用 B=2πf。
根据起始状态选择正弦或余弦。中线向上出发常用正弦,峰值或谷值出发常用余弦。
代入一个已知时间或关键点检查模型。至少检查最大值、最小值、周期和起始状态是否都对。
下面的构建器把这套流程拆成可选择的步骤。你可以从文字情境出发,逐项决定最大值、最小值、周期和初始状态,再生成模型。
常见误区
把振幅写成负数
A 可以是负数,但振幅是 ∣A∣。负号表示图像关于中线翻折,不表示“振幅为负”。
把 B 当作周期
在 y=Asin(B(x−C))+D 中,B 越大,图像越横向压缩,周期越小。真正的周期是
P=∣B∣2π
忽略相位的单位
C 和 x 用同一种单位。如果 x 是“午夜后的小时数”,C=3 的意思是“午夜后 3 小时”,不是 3 弧度。
只看一个点就确定模型
一个点只能告诉你曲线经过哪里。完整模型至少需要变化范围、周期和相位信息。真实数据还需要看整体误差。
练习
参数读取
- 求函数 y=−4sin(3(x−2))+5 的振幅、周期、中线和相位移动。
振幅是 ∣−4∣=4。周期是 32π。中线是 y=5。相位移动是向右 2 个单位。负号表示图像关于中线翻折。
- 函数 y=2cos(6π(x+1))−3 的周期是多少?相位移动是多少?
周期是 π/62π=12。因为 x+1=x−(−1),所以相位移动是向左 1 个单位。中线是 y=−3,振幅是 2。
- 某图像最大值是 11,最小值是 3。求中线和振幅。
中线 D=211+3=7,振幅 A=211−3=4。
写模型
- 一个周期量每 10 秒重复一次,最大值 8,最小值 2,并且 t=0 时达到最大值。写出一个余弦模型。
中线 D=5,振幅 A=3,B=102π=5π。从最大值开始,用余弦:y=3cos(5πt)+5。
- 一个弹簧位移围绕 0 振动,振幅为 0.12 m,频率为 4 赫兹,t=0 时从平衡位置向上运动。写出位移模型。
频率 f=4,所以 B=2πf=8π。从平衡位置向上出发适合正弦:s(t)=0.12sin(8πt)。
- 一地日照时长最长约 15 小时,最短约 9 小时,周期为 365 天,最长日约在第 172 天。写出一个余弦模型。
中线 D=12,振幅 A=3,B=3652π。最长日在第 172 天,用余弦峰值:L(d)=3cos(3652π(d−172))+12。
- 某潮汐模型最低水位 0.5 m,最高水位 3.1 m,相邻高潮间隔约 12.4 小时。若 t=2 时达到高潮,写出一个模型。
中线 D=23.1+0.5=1.8,振幅 A=23.1−0.5=1.3,B=12.42π。高潮适合余弦峰值:h(t)=1.3cos(12.42π(t−2))+1.8。
判断与解释
- 一个学生说:“y=5sin(0.2x) 的周期是 0.2。”这个说法哪里错?
0.2 是 B,不是周期。周期是 0.22π=10π。
- 为什么 y=2sin(4x−8)+1 的相位移动不是向右 8?
先把括号整理成 4(x−2),所以相位移动是向右 2。写成 Bx−φ 时,要用 Bφ 才能得到水平移动。
- 真实潮汐数据没有完全落在一条正弦曲线上,这是否说明三角函数模型无用?
不是。单个正弦或余弦模型可以描述主要周期、平均水位和大致振幅。真实潮汐受多个周期因素影响,精细模型会叠加多个余弦项。入门模型是否有用,要看它是否足够解释当前问题需要的精度。