S9G1 圆周率的逼近式 (用 Geogebra 探究 Basel 问题)
在 Pi Day 的到来,来分享一个与 Pi 有关的逼近式 Basel 问题。这问题谈到的就是连续平方数的倒数之和竟然会等于 pi^2/6 。这此要用 Geogebra 来协助演示其中一个证明。

这个证明的主要手法就是观察到 sin(pi x)/pi 的解为 x=0, ±1, ±2, ±3 ,...。 而利用这特性也可以构建一个多项式,通过这些整数点。

而这个多项式的 x^3 系数为 -(1/1+1/4+1/9+....) 。同时,考虑 sin(pi x)/pi 的 Taylor 展开式,其 x^3 的系数就是 -pi^2/6 。这就建立了 Basel pi 的逼近式。

此节主要练习 Geogebra 来作多项式连乘、认识 Taylor 展开、并了解利用文本来动态显示这些数学式。
任务一:sin(pi x)/ pi 的 Taylor 展开


说明:利用 Geogebra 的 Taylor 展开指令就可动态看到多项式逼近 sin(pi)/x 的过程。接着建立多项式 gs(k)=(1-x^2/k^2) 通过点 (0, ±k)。再利用 Product 指令将这些多项式连乘得到 g 为一个过 x=0, ±1, ±2, ±3 , ...,±m 的多项式。
操作
f(x) = sin(pi x)/pi
m = Slider(1,30,1,1,100)
h(x) = TaylorPolynomial(f,0,m)
# h(x) = 泰勒公式(f,0,m)
gs = Sequence( (1-x^2/k^2), k, 1, m)
g = x* Product(gs)
任务二:计算basel 序列的总和

说明:这节主要利用 sequence 来建立 1, 1/4, 1/9,...., n 项的序列 seq,并利用 sum 来取得总和 sseq 。接着再将 ssseq = (sseq*6)^0.5 就可得到 Pi 的近似值 3.14 。
n = Slider(10,10000,10,1,100)
seq = Sequence(1/k^2,k,1,n)
sseq = sum(seq)
ssseq = (sseq*6)^0.5
任务三:利用序列来显示动态文字

说明:本节主要将一连串的分数通过公式文本来显示。 可先從最簡單的形式來了解這個的用法。可比較使用序列(...), sum(序列(...)),

如果要在文本内用 LaTeX 指令 \frac 来显示分数,则需要在文本内用 + 与 " " 将文字与变数串连再一起。

# 建立文本并使用 空白的公式文本
sum(Sequence(FormulaText(" + \frac{1}{" + (k^2) + "}",true),k,2,2))
#总和(序列(公式文本(" + \frac{1}{" + (k^2) + "}",true),k,2,2))
任务四:利用条件显示来控制两类文字的切换

说明:若全部的分数一次输出,会让本本太长。为了让文本可以显示数列的省略好。在本本文输入时就分两段显示。让数列在个数 m<=5 的时候可完整显示这个数列,而 m > 5候显示省略号。可使用两个文本,再利用条件显示来作切换。

对于 g(x) 的设置也是类似,通过两个文本来条件显示。


接着,g(x) 的展开式也是类似的操作。并将 f(x) 的对泰勒展开式设定展开的次数为 3 。 再调整文本的显示就可完成这个搭配文本显示的 Geogebra 演示。
小结
这节主要的重点有两个,一个就是利用多项式的连乘积来探究 Basel 问题。另一个是利用序列搭配公式文本的显示。利用这个序列搭配公式文让 Geogebra 的文本显示更多元,大家也可尝试来用这个写多层的连分数。相关的教学,后续也会再录制视频解说。

相关链接
【GGB】https://www.geogebra.org/classic/jgrehcgw
【Bili】https://www.bilibili.com/video/BV1qX4y1V7Tw/
【YouTube】https://www.youtube.com/playlist?list=PLXH05kw-i_5LBb6UP-5vCy8lGYjB4lo7p