大数据分析 - Taylor展开式的应用 - 指数函数 Exp(x)

实验题目:
【大数据分析 - Taylor展开式的应用 - 指数函数 Exp(x)】用Taylor展开式的方式打印出 e^x 的图像
实验代码:

import numpy as np import math import matplotlib as mpl import matplotlib.pyplot as pltdef calc_e_small(x): n=10 f=np.arange(1,n+1).cumprod() b=np.array([x]*n).cumprod() return np.sum(b/f)+1def calc_e(x): reverse = False if x<0: x=-x reverse = True ln2 = 0.69314718055994530941723212145818 c=x/ln2 a=int(c+0.5) b=x-a*ln2 y=(2**a)*calc_e_small(b) if reverse: return 1/y return yif __name__ == "__main__": np.set_printoptions(suppress=False) t1 = np.linspace(-2,0,10,endpoint = False) t2 = np.linspace(0,4,20) t = np.concatenate((t1,t2)) print(t) y=np.empty_like(t) for i,x in enumerate(t): y[i]=calc_e(x) print('e^',x,' = ',y[i],'(近似值)\t',math.exp(x),'(真实值)') plt.figure(facecolor='w') mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = False plt.plot(t,y,'r-',t,y,'go',linewidth=2) plt.title('Taylor展开式的应用 - 指数函数',fontsize=18) plt.xlabel('X',fontsize=15) plt.ylabel('exp(x)',fontsize=15) plt.grid(True,ls=':') plt.show()

实验截图 大数据分析 - Taylor展开式的应用 - 指数函数 Exp(x)
文章图片

欢迎访问作者个人技术博客:BlackvonCode(www.blackvon.top)
作者的微信公众号和小程序
大数据分析 - Taylor展开式的应用 - 指数函数 Exp(x)
文章图片

    推荐阅读