レポート課題の解答例

級数と調和数列

実数$p (p>0)$に対して、数列$a(k)$を以下のように定義します。

$$ a(k)=\frac{1}{k^p}, \quad k=1,2,3,\cdots $$

数列$a(k)$による級数$\sum_{n=1}^\infty a(n) $を定義します。級数の第$n$部分和$S(n)$を以下の式で計算できます。

$$S(n) = \sum_{k=1}^n a(k) = 1+\frac{1}{2^p}+\frac{1}{3^p}+\frac{1}{4^p} + \cdots + \frac{1}{n^p}$$

特に、$p=1$の時、$\{a(k)\}$は調和数列となります。

演習3

  • 3.1) 数列$\{a(k)\}$を作成してください。ただし、$k$を50までとします。
  • 3.2) $p=0.1, 0.5,1,2,4$に対して、数列$S(n)$ ($n=1,\cdots, 50$)のグラフを描いて、数列が収束しているがとうかを考察してください。
In [1]:
import matplotlib.pyplot as plt

max_N= 100
#for p in [0.1, 0.5, 1,2,4]:
for p in [1]:
    n_list=range(1,max_N+1)
    a_list=[]
    for n in n_list:
        a_list.append( 1/pow(n,p))

    S_list=[]
    sum=0
    for a in a_list:
        sum = sum + a
        S_list.append(sum)
    
    plt.plot(S_list,'.-') #x軸の数列を省略することが可能です。この場合、Pythonによって自動的に設定してくれます。
    plt.title("p=%5.2f"%p)
    plt.grid()
    plt.show()
<matplotlib.figure.Figure at 0x7f3c4c28ea90>

次のコードではすべてのグラフを同じ図形に描いてみます。labelとlegendの使用を組み合わせて、各曲線にラベルを付けることができます。

In [2]:
import matplotlib.pyplot as plt

max_N= 100
n_list=range(1,max_N+1)

for p in [0.1, 0.5, 1,2,4]:
    a_list=[]
    for n in n_list:
        a_list.append( 1/pow(n,p))

    S_list=[]
    sum=0
    for a in a_list:
        sum = sum + a
        S_list.append(sum)
    
    plt.plot(S_list,'-', label="p=%5.2f"%p) 
    
plt.title("Graph of seriry S(n) for differen p")
plt.legend()
plt.grid()
plt.show()

調和数列の発散について

$p=1$のとき、$\{S_n\}$が発散することを証明してみます。

$$ \sum_{n=1}^{\infty} \frac{1}{n} = 1 + \frac{1}{2}+ \frac{1}{3} + \cdots = 1+\frac{1}{2}+(\frac{1}{3}+\frac{1}{4}) + (\frac{1}{5}+\frac{1}{6}+\frac{1}{7}+\frac{1}{8}) + \cdots $$

ここで、以下の不等式を注意してください。 $$ (\frac{1}{3}+\frac{1}{4}) \ge (\frac{1}{4}+\frac{1}{4}) =\frac{1}{2} $$

$$ (\frac{1}{5}+\frac{1}{6}+\frac{1}{7}+\frac{1}{8}) \ge (\frac{1}{8}+\frac{1}{8}+\frac{1}{8}+\frac{1}{8}) = \frac{1}{2} $$

よって、

$$ \lim_{n\to \infty}S(n) = \sum_{n=1}^{\infty} \frac{1}{n} \ge 1 + \frac{1}{2}+ \frac{1}{2} + \frac{1}{2} + \cdots = \infty $$

一般的な$p$に対する級数の収束について

$0<p\le 1$のとき、$\{S_n\}$が発散します。また、$p>1$のとき、$\{S_n\}$が収束します。この結果について、以下の関数の積分を利用して証明することができます。その詳細をここで略します。

  • $p>1$ のとき $$ \sum_{k=2}^\infty \frac{1}{k^p} = \frac{1}{2^p}+ \frac{1}{3^p} + \cdots \le \int_{1}^\infty \frac{1}{x^p} dx = \frac{1}{p-1} <\infty $$