expx和ln2泰勒展开的数值计算
expx和ln2泰勒展开的数值计算
代码实现:
expx:
import matplotlib.pyplot as plt
import numpy as npx=input("请输入e^x中x的取值:")
x=int(x)
n=input("请输入计算阶数n的取值:")
n=int(n)def method_expx(num):expx_collection=[] #空列表expx_collection用于存放指数函数值expx_tolerance=[] #空列表expx_tolerance用于存放计算误差expx = 0 # 指数函数的初值为0temp = 0 # 计数器初始为0tolerance=np.math.exp(x)-expx #初始误差expx_collection.append(expx)expx_tolerance.append(tolerance)for i in range(num):print("第{}阶expx值为{},误差为{}。".format(i,expx,tolerance))expx=expx+(x**temp)/(np.math.factorial(temp)) #计算expx的值temp+=1 #计算结束后expx_collection.append(expx) #将指数函数值加入列表expx_collectiontolerance=np.math.exp(x)-expxexpx_tolerance.append(tolerance)return expx_tolerance #函数返回计算后的列表x_method_expx=np.arange(n+1)
y_method_expx=method_expx(n)
plt.scatter(x_method_expx,np.array(y_method_expx))
plt.title("e^x")
plt.xlabel("times")
plt.ylabel("tolerance")
plt.show()
ln2(两种展开):
import matplotlib.pyplot as plt
import numpy as npdef method01_ln2(num):ln2_collection=[]ln2=0temp=-1for i in range(num):temp =temp*(-1)ln2=ln2+temp*(1/(i+1))ln2_collection.append(ln2)return ln2_collectiondef method02_ln2(num):ln2_collection2=[]ln2=0temp2=1/3for i in range(num):temp1=2*i+1temp2=temp2*9ln2=ln2+1/(temp1*temp2)ln2_collection2.append(ln2*2)return ln2_collection2n=100x_method01_ln2=np.arange(n)
x_method02_ln2=np.arange(n)y_method01_ln2=method01_ln2(n)
y_method02_ln2=method02_ln2(n)plt.scatter(x_method01_ln2,np.array(y_method01_ln2))
plt.scatter(x_method02_ln2,np.array(y_method02_ln2))plt.title("ln2")
plt.xlabel("x")
plt.ylabel("y")
plt.tick_params(axis='both')
plt.legend(['method01','method02'])
plt.show()
expx和ln2泰勒展开的数值计算相关推荐
- 使用傅里叶变换(包括差分傅里叶和傅里叶谱方法)及切比雪夫谱方法(配点)法求解PDE
傅里叶变换及切比雪夫谱方法(配点)法求解PDE 以下的内容介绍的是傅里叶谱方法求解PDE.切比雪夫谱方法求解PDE(这里指的是配点法)以及一种先进行差分离散,再对离散系统的每个变量使用离散傅里叶级数展 ...
- 研究一下exp, ln, pow的数值计算
研究一下exp, ln, pow的数值计算 pow计算 exp的算法 泰勒级数展开 快速算法 进一步减少尾数 利用双精度表达提高运算效率 实验 ln(x)计算 实验 参考 pow计算 ab=elnab ...
- 非线性最小二乘法 python_[数值计算] 数据拟合——非线性最小二乘法
前面分析了 线性最小二乘 的解法YcoFlegs:[数值计算] 数据拟合--线性最小二乘法zhuanlan.zhihu.com 现在来看另一个问题:非线性最小二乘法 1. 定义 首先是如何定义这里这 ...
- 数值计算与MATLAB微积分
目录 前言 数值微分 导数的差分公式 偏微分的差分公式 数值积分 微分运算 积分运算 符号工具箱 总结 前言 本文主要介绍了数值微分.数值积分的方法,以及MATLAB利用数值微积分方法进行微积分运算的 ...
- 数值计算之 线搜索法,Armijo,Wolfe,Goldstein条件,回溯法
数值计算之 线搜索法,Wolfe conditions 前言 梯度法的步长 线搜索法 非精确线搜索法 Armijo条件 Wolfe条件 Goldstein条件 回溯法 后记 前言 本篇是基于梯度的优化 ...
- 数值计算之 拟牛顿法
数值计算之 拟牛顿法 前言 拟牛顿条件 几何解释 DFP算法 BFGS算法 Broyden类算法 代码示例 后记 前言 无论是牛顿法,高斯牛顿法,还是LM算法,都需要计算海森矩阵或其近似,然后求海森矩 ...
- 数值计算之 Levenberg-Marquardt算法
数值计算之 Levenberg-Marquardt算法 前言 高斯牛顿法 LM算法 阻尼牛顿法 阻尼系数λ\lambdaλ 置信域法 置信域ddd LM算法的流程 代码示例 前言 本篇是牛顿法的最后一 ...
- 数值计算之 牛顿法与函数极值
数值计算之 牛顿法与函数极值 前言 最速下降法 牛顿法 牛顿法分析 代码示例 后记 前言 本篇继续优化理论的算法学习,牛顿法. 最速下降法 首先回顾上次提到的梯度下降法(其实就是最速下降法):通过求取 ...
- 数值计算之 梯度下降法与函数极值
数值计算之 梯度下降法与函数极值 前言 微积分基础 一元函数的极值,导数与泰勒展开 多元函数的泰勒展开 梯度下降法 梯度方向 终止条件 代码举例 后记 前言 本篇将开始介绍优化算法.首先是梯度下降法, ...
最新文章
- 芝麻HTTP:Scrapy-Splash的安装
- thinkphp学习笔记7—多层MVC
- +[NSTimer scheduledTimerWithTimeInterval:repeats:block:]: unrecognized selector sent to xxx
- SQL SERVER 2012 修改数据库默认位置不立即生效
- 高低配系统直流控制电源技术知识点
- TypeScript 入门
- 第十五期:真相了,中台到底“出路”还是“末路”?
- 用python简单查找大文件
- 离散数学视频、书籍推荐及学习体会
- 卡巴斯基2010(9.0)key激活商用授权文件安装方法
- dnf服务器字幕乱码win10系统,主编帮你win10系统玩dnf字体模糊的方案
- python汉化idle_idle python
- 郴州:安仁消防工作纳入智慧城市顶层设计
- HTML设置水平居中的几种方式
- 以太坊学习笔记(持续更新,欢迎指正)
- 实现简单的自定义音乐播放器
- 《程序员》约稿:多任务下的时间管理,目标计划与任务分解
- java人名识别_HanLP-基于HMM-Viterbi的人名识别
- MAPJOIN来解决实际的问题
- 如何做好一个跨团队协作项目