MATLAB使用符号工具箱计算函数的5阶麦克劳林多项式的四种方法(附指定阶数、指定点的泰勒展开)
此篇博客是对MATLAB符号工具箱taylor
的用法进行总结和拓展。
先通过两个具体的例子进行讲述:
1.MATLAB中使用符号工具箱计算exp(x)的5阶麦克劳林多项式
%计算exp(x)的5阶麦克劳林多项式
>> syms x
s = taylor(exp(x))
s = taylor(exp(x),'order',6)
s = taylor(exp(x),x,0,'order',6)
s = taylor(exp(x),'order',6,'ExpansionPoint',0)
%运行的结果均为:
s =
1 + x + x^2/2 + x^3/6 + x^4/24 + x^5/120
2.MATLAB中使用符号工具箱计算sin(x)的5阶麦克劳林多项式
%计算sin(x)的5阶麦克劳林多项式
>> syms x
>> s = taylor(sin(x))
s = taylor(sin(x),'order',6)
s = taylor(sin(x),x,0,'order',6)
s = taylor(sin(x),'order',6,'ExpansionPoint',0)
%运行的结果均为:
s =
x^5/120 - x^3/6 + x
展开阶数:(展开越多阶数,图像越接近原式子)
要让我们展开多项式的图像更加接近sin(x),我们必须要让MATLAB返回更多项,假设我们要得到m项展开式,使用order命令,后面跟上想要展开的阶数m-1(m项)。我们知道,泰勒公式可以在任意一点展开,在零点处展开我们称为麦克劳林公式。
syms x
s = taylor(sin(x),x,0,'order',6)
还有一个问题是我们的泰勒展开式的阶数是从高到低,这不是我们想要的,我们要让它从低到高,可以使用sympref命令:
sympref('PolynomialDisplayStyle','ascend');
同时,我们还可以使用命令’ExpansionPoint’在指定点展开。例如上述的两个例子当中,s1命令的意思就是在点x=0处,求解5阶泰勒展开式:
syms x
s1 = taylor(exp(x),'order',6,'ExpansionPoint',0)
s2 = taylor(sin(x),'order',6,'ExpansionPoint',0)
另附数学实验的一个题目和求解参考答案:(可以看到,最终的结果的阶数是从低到高的)
function y6=exe2_2
%计算y=1/(1+x^2)的6阶麦克劳林多项式
syms x
y=1/(1+x^2);
y6=taylor(y,x,0,'order',7);
%展开式的阶数从低到高sympref('PolynomialDisplayStyle','ascend');
end
实验结果如下:
y2 =
1 - x^2 + x^4 - x^6
参考博客:MATLAB与高等数学–泰勒展开
MATLAB使用符号工具箱计算函数的5阶麦克劳林多项式的四种方法(附指定阶数、指定点的泰勒展开)相关推荐
- 【MATLAB编程实战】【例题实战】绘制曲面、曲线,求解偏导,计算极值点,二重积分,曲线积分,收敛性,麦克劳林展开式
欢迎关注,本专栏主要更新MATLAB仿真.界面.基础编程.画图.算法.矩阵处理等操作,拥有丰富的实例练习代码,欢迎订阅该专栏!(等该专栏建设成熟后将开始收费,快快上车吧~~) [MATLAB编程实战] ...
- C#:实现麦克劳林级数计算非线性函数算法(附完整源码)
C#:实现麦克劳林级数计算非线性函数算法 using System; using System.Linq;namespace Algorithms.Numeric.Series {public sta ...
- 14.0高等数学五- 函数的幂级数展开(泰勒级数或者麦克劳林级数)
函数的幂级数展开 问题引入 泰勒级数的概念 定理1(单项的表示) 定理1推导 泰勒级数或者麦克劳林级数 泰勒级数展开的条件 定理2,余项充要条件 定理3,有界充分条件 泰勒级数展开的方法 公式法 间接 ...
- 用泰勒展开式(麦克劳林展开式)计算ln2(C++版本)
公式一: (该图片来自网络) 本人在VS2017中,对于以1.0e-5为单位的误差下只能将误差精确到2.0e-5. 代码如下: #include<iostream> #include< ...
- 【MATLAB】符号数学计算(七):符号微积分、符号微分方程求解、符号代数方程求解
一.符号表达式的极限 limit(F,x,a):求当时,符号表达式F的极限. limit(F,a):符号表达式F采用默认自变量(可由函数findsym求得),该函数求F的自变量趋于a时的极限值. li ...
- 四种方法计算字符串的长度
在这里我提供四种方法计算字符串的长度: 1.使用递归函数. 2.数数,从第一个字符开始数数,没遇到一个字符,长度加一,直到遇到"\0",停止数数. 3.使用strlen函数,使用此 ...
- matlab中单独存图_Matlab中图片保存的四种方法
Matlab 中图片保存的四种方法 matlab 的绘图和可视化能力是不用多说的, 可以说在业内是家喻户晓的. Matlab 提供了丰富 的绘图函数,比如 ez** 系类的简易绘图函数, surf . ...
- matlab图像拼接融合(四种方法)
matlab图像拼接的四种方法 1.直接拼接, 2.亮度调整后拼接, 3.按距离比例融合, 4.亮度调整后按距离比例融合 流程: 1.读入左,右图,并取出重合部分,并转化为亮度图 2.分别把每 ...
- Matlab中将数据保存为txt或dat格式四种方法
转载于 Tsingke 老师的文章--Matlab中将数据保存为txt或dat格式四种方案 - Tsingke - 博客园. ...
最新文章
- POJ 1189 记忆化搜索
- 腾讯发布2020人工智能白皮书:泛在智能
- sql server 与 mysql在自定以数据类型的区别
- tar exclue文件夹
- 排除万难,我终于入了程序员的坑!
- 并发编程——线程——线程的理论和创建以及守护线程
- 序列变换(Lis变形)
- jsp通过include指令引入html乱码的解决方法
- emlog博客网站后台登录模板 上传到模板目录即可
- 集成学习:Boosting与Bagging
- eclipse设置Tomcat超级详细
- JAVA三大框架SSH和MVC
- SM4算法 C语言 (从OpenSSL库中分离算法:七)
- PUN搭建大厅与网络同步
- 显示器带宽测试软件,三种常见的上行带宽测试方法
- implode( -(php),php implode()函数 语法
- HDFS与HBASE的动态节点的扩容(增删)小白级(一)
- fMRI与MRI区别+名词解释+MRI中T1和T2的含义与区分
- Google表单初学者指南
- 输入a,b,c三个整数求其中最大值(C语言实现)
热门文章
- eclipse出现Package jdk.internal.jimage.decompressor in both module java.base and module jrt.fs错误解决办法
- 小程序获取用户openid,php获取微信小程序openid的方法
- java stdin怎么用_如何用Java编写ssh的stdin?
- 阿里直播SDK,直播推流地址和播流地址生成
- python链接sql报错_python3.7连接sqlserver数据库失败报错20002, DB-Lib error message 20002
- windows下网络诊断基本命令
- ansible之判断语句jinja2模板的使用 与roles角色的配置使用
- Android之自定义动画框架实现ScrollView滚动动画总结(雷惊风)
- 三星手机「我的文件」应用闪退问题的解决方法
- 宝塔linux webshell提权,linux提权 Root权限WebShell提权