3. 画函数曲线,效果
在这一部分中,我们将做出结果如下面的效果图所示。使用的工具是 geogebra。可能需要Excel,并非必需。
用傅里叶级数5级“拟合”类似三角波的函数图形。这个函数是随便选的,在后文中能看到,改变成其他函数图形很容易就能能画出来。
在效果图中,紫色的是待“拟合”的函数,上面的深紫色点代表傅里叶级数之和在函数上的位置。傅里叶5个级数的圆,分别用 红、橙、黄、绿、蓝 表示,圆周上的点与当前级别的圆同一颜色。
5个圆间具有如下关系。
第1个圆上的点是第2个圆的圆心,
第2个圆上的点是第3个圆的圆心,
第3个圆上的点是第4个圆的圆心,
第4个圆上的点是第5个圆的圆心。
连接蓝点和紫点的水平虚线,其目的是为了能更方便观察大轮套小轮的结果与待拟合函数一致。
严格的说,紫色图形并非待“拟合”的函数,而是拟合的结果。待拟合的函数如下图所示。能够看出下图中的波形与紫色波形之间相似。
3.1 变量
共有3种变量。
第一种变量是 t,即 omiga t 中的 t,自变量,角度。定义如下。
设置为 slide,显示在屏幕上,自动播放。
第二种变量是 d1~d5,分别对应红圆到蓝圆的5个半径。
第三种变量是 theta1~theta5,分别分对红圆到蓝圆的5个初始相位。
在Excel中根据待求数的波形,得到d1~d5和theta1~theta5,如下。
把d1~d5和theta1~theta5的值从Excel抄到 geogebra。
以上,共11个变量,我放在了 Layer 0。
3.2 圆周和圆周上的点
第1个级别的圆周c1和圆周上的点a1分别定义如下,放在了 Layer 1中。
其中圆周c1的圆心为原点(0,0),是固定值;半径为第1级数的系数d1,在变量中定义了。
圆周上的点a1,其横坐标为在 半径d1 乘以 cos( 自变量t + 初始相位角theta1)。纵坐标原理类似。
除第1级数以外,其余的4个级数有相似的规律。以级数3为例,我把圆周和圆周上的点放在了 Layer 3中。
其中c3是圆周,(1)以前一级数的圆周上的点a2作为圆心,(2)半径为本级数的系数d3。除第1级数以外,其余的4个级数的共同规律是 圆周的圆心都是前一级数圆周上的点,半径为当前级数的系数d_k。
这里a4是第3级数圆周上的点,其横坐标为 在前一级数圆周上点a2的横坐标的基础上偏移 半径d3 乘以 cos( 自变量t + 初始相位角theta3)。除第1级数以外,其余的4个级数的共同规律是 横坐标都在前一级数的圆周上的点a_(k-1) 的基础上偏移,偏移量为 cos( 自变量t + 当前级数初始相位角theta_(k-1))。纵坐标有类似规律。
在下图的示例中,黄色3代表当前级数,红色2代表前一级数。
这样,就得到了以下元素,如下图所示。
5个圆的半径
5个圆的圆心
5个圆上的点
这是整个项目的核心部分。
3.3 作为背景对比的函数图像
声明如下函数。
每个级数都有 d_k*sin(x+theta_k)组成,这5个级数累加之和为f(x).
设置为紫色,得到了下图,与此前的5个圆叠印在屏幕上。
函数上的点,按下图定义。
其中的t即此前声明的变量t。
设置为紫色,如下图所示,红色箭头所指 紫色曲线上的点。
水平线,按下图定义。
设置线型为虚线,减小粗细,如下图红色箭头所指处。
水平虚线指示函数上的点的纵坐标。
3.4 大轮套小轮-函数曲线横向展开,对比
这一小节只包含解读,不是步骤之一。
水平虚线的纵坐标,与5个圆中第5级数圆周上的点的纵坐标,与函数上的紫色点的纵坐标,三者在动图中始终保持一致。如下图中的4个子图分别所展示的,函数曲线上的紫色点纵坐标始终与第5个圆周上的蓝色点始终保持相同。
因此左侧大轮套小轮的5个圆 与 右侧函数曲线的横向展开 是一致的。
4. 极坐标形式-原位轨迹跟踪
在变量t的settings中,设置增量和重复的方式,这样较易观察到现象。
按t的播放按钮。
得到下图,第5级数所刻画出的极坐标形式点的轨迹。这条轨迹沿x轴展开,对应紫色的函数曲线。如果我们站在原点(0,0)位置向外看,这颗在 均轮-本轮 上的蓝色星球,它所运行的轨迹时快时慢。
我们大胆地修改d1为更小的值,例如d1=2.053836824,可以得到下图。
两个红色箭头所指的地方,站在原点(0,0)看来,星球在自东向西(在北半球向南天看,即顺时钟)运行时,突然回头改为自西向东(逆时钟),过了一段时间,又恢复为自东向西(顺时钟)。可能,古人就会震惊这颗星球轨迹奇异,显然不是运行在球形天穹上,把它命名为荧惑吧。在右上角附近,还能看到这颗星球会停下来几天,是在等候什么大事发生?
5换个函数
我们很容易就能换个函数图像来画,例如下面的波形。
用Excel求得傅里叶系数如下。
把上述系数赋值到geogebra……
这个操作过于繁琐,我们想个快捷的办法。
复制上图,然后 选择性粘贴。先按 数值 粘贴,再 转置。得到箭头所指的区域。
复制箭头所指的区域,贴到记事本中,简单编辑,加等号得到下图。
再从记事本中复制,备用。
在Geogebra 中增加控件 按钮。
把caption改为“换函数”。
这个按钮的Settings | Scripting | On Click,把刚才从记事本中复制到的文字粘贴在这里。
关闭Settings,点击换函数,函数曲线以及系数更换完毕。下图中,左边是 geogebra中的效果,右边是Excel中原函数的曲线,差不多吧。
再换一个。
重复上述步骤,得到下图。
再换一个函数。
得到下图。