|
我们所考虑过的补偿拟合的误差,差不多在 \(10^{-5}\) 的数量级. 这是有原因的。
椭圆周长的多项式拟合的极致就是超几何级数。使用了无穷多个自由度(级数系数)
这就解释了寥寥几个参变量是不足以突破 \(10^{-5}\) 这个坎的。要突破,考虑以
下简单方案:
给定\(k\),取最小\(m\)使\(\;r_m\small=\displaystyle\sum_{n = m+1}^\infty\binom{1/2}{n}^2\le 10^{-k},\)令\(\small G(x)=\displaystyle\sum_{n=0}^m\binom{1/2}{n}^2x^{2n}\)
考虑 \(\small\dfrac{{\scriptsize\displaystyle\sum_{n = m+1}^\infty\binom{1/2}{n}^2}x^{2n}}{\binom{1/2}{m+1}^2 x^{2m+2}}\) 的形如 \(\small 1+\big(\dfrac{4}{\pi}-r_m\big)\varphi(x)\) 的拟合,其中\(\small0\le\varphi\le 1.\)
注意以下椭圆周长的高精度极速算法。数值积分望尘莫及
F(x)=my(t=x^2/4,s=1+t,k=1);if(x==1,return(4/Pi));while((t=t*x^2*((2*k-1)/(2*(k+1)))^2)&&(t> 10^(-100))&&(s=s+t),k=k+1);return(s); |
|