问题

软件 >> Calculator
Questions in category: Calculator (Calculator).

利用递推公式求定积分 $I_n=\int_0^1 \frac{x^n}{x+5}\mathrm{d}x$.

Posted by haifeng on 2023-02-24 22:33:00 last update 2023-02-28 15:21:33 | Answers (1) | 收藏


北太天元实现《数值分析》中的简单递推式 观察舍入误差的爆炸_哔哩哔哩_bilibili

使用 Calculator 求 $I_n=\int_0^1 \frac{x^n}{x+5}\mathrm{d}x$.

首先易得如下递推公式,

\[
I_n=-5*I_{n-1}+\frac{1}{n}
\]

事实上, 

\[
\begin{split}
I_n&=\int_0^1 \frac{x^n}{x+5}\mathrm{d}x=\int_0^1 \frac{x^{n-1}(x+5)-5x^{n-1}}{x+5}\mathrm{d}x\\
&=\int_0^1 x^{n-1}\mathrm{d}x-5\int_0^1 \frac{x^{n-1}}{x+5}\mathrm{d}x\\
&=\frac{1}{n}x^n\biggr|_0^1 -5I_{n-1}\\
&=\frac{1}{n}-5I_{n-1}.
\end{split}
\]

 


于是, 我们可以使用 Calculator 中的函数 printRecursiveSeries 来求由递推公式所确定的序列 $I_n$, 这也是求积分的一个方法.

>> setprecision(20)
in> setprecision(20)
Now the precision is: 20

------------------------

>> printRecursiveSeries(-5*I_k+1/(k+1),I_k,0.0883922160302268689414,20,\n,linenumber)
in> printRecursiveSeries(0-5*I_k+1/(k+1),I_k,0.0883922160302268689414,20,\n,linenumber)
【1】 0.0883922160302268689414
【2】 0.0580389198488656552930
【3】 0.0431387340890050568650
【4】 0.0343063295549747156750
【5】 0.0284683522251264216250
【6】 0.0243249055410345585450
【7】 0.0212326151519700644150
【8】 0.0188369242401496779250
【9】 0.0169264899103627214850
【10】 0.0153675504481863925750
【11】 0.0140713386681589462150
【12】 0.0129766399925386022550
【13】 0.0120398769603839118050
【14】 0.0112291866266518695450
【15】 0.0105207335334073189450
【16】 0.0098963323329634052750
【17】 0.0093418677469476795050
【18】 0.0088462168208171580350
【19】 0.0084004948432826308750
【20】 0.0079975257835868456250

 

----------------
By Calculator

https://zhuanlan.zhihu.com/p/566572045