[Python에 의한 과학·기술 계산] 합계 계산, 수치 계산

내용



$ e ^ x $의 값을 테일러 배포의 n 다음 항까지의 합계
e^{x} = 1+\frac{x}{1!} +\frac{x^{2}}{2!}+ .... \frac{x^{n}}{n!}


에 의해 계산한다.

코드


from math import pi,e, log, factorial
import matplotlib.pyplot as plt

"""
e^xのテイラー展開
例: x=1としてeを計算する
"""

def calc_e(n,x):
    dum=0.0
    for nn in range(n+1):  # x^n/n!の計算
        dum+=x**nn/factorial(nn)
    return dum

#main
sol=[]
for j in range(8):  # n=7次までの計算
    sol.append(calc_e(j,1)) #n=1 ~ 8までの次数で打ち切った場合のeをsolという名のリストへ格納する

# for plot
plt.plot(sol)
plt.xlabel('x',fontsize=24)
plt.show()



결과



엄밀한 값은 e = 2.718281828459045...
n=4에서 오차는 1% 이내이다.

n e
0 1.0
1 2.0
2 2.5
3 2.66666666666666665
4 2.708333333333333
5 2.7166666666666663
6 2.71805555555555544
7 2.7182539682539684

좋은 웹페이지 즐겨찾기