- 注册时间
- 2007-12-27
- 最后登录
- 1970-1-1
- 威望
- 星
- 金币
- 枚
- 贡献
- 分
- 经验
- 点
- 鲜花
- 朵
- 魅力
- 点
- 上传
- 次
- 下载
- 次
- 积分
- 40155
- 在线时间
- 小时
|
发表于 2017-9-7 08:17:24
|
显示全部楼层
上面计算过程主要依据就是子数列$a_{2^k-1}, a_{2^k}, a_{2^k+1}, ..., a_{2^{k+1}-1}$是以$a_k$为公差的等差数列
而根据链接:
http://bbs.emath.ac.cn/forum.php ... tid=2390&page=2
或
http://bbs.emath.ac.cn/forum.php?mod=viewthread&tid=8806
或外部链接:
http://en.wikipedia.org/wiki/Digamma_function
我们得出
$\sum_{n=2^k}^{2^{k+1}-1}1/{a_n}=\sum_{h=1}^{2^k}1/{a_{2^k-1}+ha_k}=1/{a_k}\sum_{h=1}^{2^k}1/{{a_{2^k-1}}/{a_k}+h}=1/{a_k}(\psi({a_{2^k-1}}/{a_k}+2^k+1)-\psi({a_{2^k-1}}/{a_k}+1))$
另外由于$a_{2^{k+1}-1}=a_{2^k-1}+2^k a_k$
在计算出$a_1,....,a_k$以后,我们就可以快速利用上面递推式得出$a_{2^1-1}=a_1,a_{2^2-1},...,a_{2^k-1}$
而实际在计算机中计算,由于$a_{2^k-1}$数值会非常大,容易超出计算机浮点数表达范围,一种比较好的方法是设$a_{2^k-1}=2^k s_k$
于是我们有$2^{k+1} s_{k+1}=2^k s_k + 2^k a_k$,或者说$s_{k+1}={s_k+a_k}/2$,这个递推公式非常简洁
然后我们有
$\sum_{n=2^k}^{2^{k+1}-1}1/{a_n}=1/{a_k}(\psi({a_{2^k-1}}/{a_k}+2^k+1)-\psi({a_{2^k-1}}/{a_k}+1))=1/{a_k}(ln({{a_{2^k-1}}/{a_k}+2^k}/{{a_{2^k-1}}/{a_k}})+1/2(1/{{a_{2^k-1}}/{a_k}+2^k}-1/{{a_{2^k-1}}/{a_k}})-1/12(1/({a_{2^k-1}}/{a_k}+2^k)^2-1/({a_{2^k-1}}/{a_k})^2)+1/120(1/({a_{2^k-1}}/{a_k}+2^k)^4-1/({a_{2^k-1}}/{a_k})^4)-...)$
然后
$\sum_{n=2^k}^{2^{k+1}-1}1/{a_n}=1/{a_k}(ln({s_k+a_k}/{s_k})+1/{2 xx 2^k}({a_k}/{s_k+a_k}-{a_k}/{s_k})-1/{12 xx 2^{2k}}(({a_k}/{s_k+a_k})^2-({a_k}/{s_k})^2)+1/{120 xx 2^{4k}}(({a_k}/{s_k+a_k})^4-({a_k}/{s_k})^4)-...) $
现在分别用这个公式将k=4,5,...,15代入累加,可以得出$\sum_{n=16}^{65535}1/{a_n}$,这个和实际值为0.8819357929,其中上面估计式只取一项(只有对数那一项),得出和为0.8958675243,如果再多取一项,得出近似值为0.8815820484,再取一项为0.8819364911,而四项全取为0.8819357863,误差已经小于$10^-8$,而对于更大的n只有精度更加高。
而用同样方法,将k=16,17,...,65535代入估算得出$\sum_{n=65536}^{2^65536-1}1/{a_n}=0.6394177558$
而对于后面更大的$n>=2^65536$,而$s_k$和$a_k$比例非常接近,所以第一项接近$ln2$,而第二项和它相对已经非常小,完全可以忽略,所以上面公式中只需要取前面一项即可,所以我们有$\sum_{n=2^k}^{2^{k+1}-1}1/{a_n} ~=1/{a_k}ln({s_k+a_k}/{s_k})$,所以我们只要能够给出$ln({s_k+a_k}/{s_k})$良好的估计即可得出后面各项更加精确的估计,而且这里$k>=65536$.
我们可以归纳得出$s_k>=a_k-2a_{floor(log_2 k)}$,于是可以得出${s_k+a_k}/{s_k}<=2+2/{{a_k}/{a_{floor(log_2 k)}}-2}<=2+4/{k-4}<=2+6.104xx10^-5$,而实际计算这时这个比列应该在$2+3.338xx10^-5$左右,
所以这种方法可以计算到小数点后第四位完全精确。但是如果要达到更高精度就有困难了
|
|