Python数学小实验(1)——自然对数e的理解

    xiaoxiao2022-07-02  98

    Python数学小实验(1)——自然对数e的理解

    先来输出一下自然对数e:

    >>>from math import e >>>print (e) 2.718281828459045

    一个神奇的数字

    import numpy as np import matplotlib.pyplot as plt x = np.logspace(0,4,num=100,dtype=float) y = (1+1/x)**x plt.plot(x,y) plt.show()

    复利极限的理解

    >>>k_1=1*(1+1) #假设我有1块,年利率是100%,一年定期后,我有 >>>k_2=1*(1+1/2)**2 #存两个半年 >>>k_365=1*(1+1/365)**365 #存365天 >>>print(k_1) 2 >>print(k_2) 2.25 >>print(k_365) 2.7145674820219727

    理解e是复利增长的极限,有1块钱,复利100%,不管分成多少次,本利和都不会超过e≈2.718

    从泰勒展开式来看

    泰勒展开式: f ( x ) = f ( x 0 ) + f ′ ( x 0 ) ( x − x 0 ) + 1 2 f ′ ′ ( x 0 ) ( x − x 0 ) 2 + . . . + f ( n ) ( x − x 0 ) n n ! + R n ( x ) f(x)=f(x_0)+f'(x_0)(x-x_0)+\frac{1}{2}f''(x_0)(x-x_0)^2+...+\frac{f^{(n)}(x-x_0)^n}{n!}+R_n(x) f(x)=f(x0)+f(x0)(xx0)+21f(x0)(xx0)2+...+n!f(n)(xx0)n+Rn(x) 其中n阶泰勒余项 R n ( x ) = f ( n + 1 ) ( ξ ) ( n + 1 ) ! ( x − x 0 ) n + 1 R_n(x)=\frac{f^{(n+1)}(\xi)}{(n+1)!}(x-x_0)^{n+1} Rn(x)=(n+1)!f(n+1)(ξ)(xx0)n+1

    f ( x ) = e x , x = 1 , x 0 = 0 f(x)=e^x,x=1,x_0=0 f(x)=ex,x=1,x0=0可得: e = 1 + 1 1 ! + 1 2 ! + . . . + 1 n ! + R ( n ) e=1+\frac{1}{1!}+\frac{1}{2!}+...+\frac{1}{n!}+R(n) e=1+1!1+2!1+...+n!1+R(n)

    def factorial(n): result = 1 for i in range(1,n+1): result *= i return 1/result ee=1 for i in range(1,10): ee += factorial(i) print(ee)

    计算到第10项,可得e=2.7182815255731922,已经非常吻合。

    可进一步了解: https://en.wikipedia.org/wiki/E_(mathematical_constant)

    最新回复(0)