使用MATLAB计算多项式的泰勒级数展开系数
使用MATLAB计算多项式的泰勒级数展开系数
clear;clc;
syms x a;
m=5;%自己改
y=(11/6-3*x+3/2*x^2-1/3*x^3)^a
f=taylor(y,m+1,x);
w=sym(zeros(m+1,1));
w(1)=subs(f,x,0);
f=f-w(1);
for n=m:-1:2
w(n+1)=subs(f-subs(f,x^n,0),x^n,1);
f=f-w(n+1)*x^n;
end
w(2)=subs(f,x,1)
注意,因为matlab数组下标从1开始,因此我这里w(1)是常数项,w(2)是一次项,以此类推,即
y=w(1)+w(2)*x+w(3)*x^2+....+w(m+1)*x^m
matlab如何解待定系数的问题
【1】把函数变形
>>f=sym('2*x^3+3*x^2+21*x+4-(3*a*x^3+b*x^2+c*x+d)=0')
f =
2*x^3+3*x^2+21*x+4-(3*a*x^3+b*x^2+c*x+d)=0
【2】用collect合并同类项
>>ff=collect(f):
(2-3*a)*x^3+(3-b)*x^2+(21-c)*x+4-d = 0
【3】用maple提取多项式系数,如果很多,可以用循环语句。
>>c3=maple('coeff',ff,x,3)
c3 =2-3*a
>>c1=maple('coeff',ff,x,1)
c1 =21-c
>>c2=maple('coeff',ff,x,2)
c2 =3-b
>>c0=maple('coeff',ff,x,0)
c0 =4-d
补充:
这次变成这样,程序倒是通了,我不是很满意,咱们共同把它整理好,如何?
syms a b c d x
%【1】把函数变形
f=sym('2*x^3+3*x^2+21*x+4-(3*a*x^3+b*x^2+c*x+d)')
N=3;
for i=0:N
temp=maple('coeff',f,x,N-i);
cp(1,i+1)={temp};
end
celldisp(cp);
再补充:这次总算是解决了,就是看起来很笨,不是很理想,凑合着用,当然我相信可以修改的很漂亮。
syms a b c d x
f=sym('2*x^3+3*x^2+21*x+4-(3*a*x^3+b*x^2+c*x+d)')
N=3;
for i=0:N
temp=maple('coeff',f,x,N-i);
temp1(i+1)=temp;
end
cp=temp1
a=solve(cp(1)), b=solve(cp(2)), c=solve(cp(3)), d=solve(cp(4))
运行结果:
a =2/3
b =3
c =21
d =4
多项式Px anxn an1xn1 a1x a0的值的函数式M文件用
首先,多项式是动态的,所以这必须是matlab的输入项;
其次,多项式的matlab表达要清楚,是将多项式降幂排列后提取其系数来表示该多项式的-n次多项式用n+1维向量表示;比如多项式 3*x^2 + 5 在matlab中的表示为 [3 0 5];
最后,多项式函数值的matlab法要明白,就是命令polyval。
综合上述,M文件如下:
function val = fpolyval(p,x)
% 函数 fpolyval 功能:多项式 p 在 x 处的函数值 val.
% 输入项 p 是多项式按降幂排列后的系数;
val = polyval(p,x);
比如:3*x^2 + 5在x=1,2处的值
>>p=[3 0 5];
>>x=[1 2];
>>val=fpolyval(p,x)
val =
8 17
以上是使用MATLAB计算多项式的泰勒级数展开系数的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

如果您怀疑自己的硬盘遇到问题,可以检查Windows 7上的错误。此php.cn帖子讨论了FixDisk Windows 7。您可以遵循该指南以检查Windows 7上的错误。

在Windows 10/11中安装了像NVIDIA驱动程序这样的图形驱动程序之后,您是否曾经遇到过黑屏?现在,在PHP.CN的这篇文章中,您可以找到一些值得尝试的NVIDIA驱动程序更新黑屏的解决方案。

如果您需要基于Windows 11 23H2的自定义LITE系统,则可以选择Windows X-Lite最佳11 23H2 HOME或OVERMIM 11 PRO。继续阅读,PHP.CN将向您展示如何下载最佳11 23H2 ISO并在PC上安装Pro或Home。

许多Surfacebook用户报告说,他们符合Windows 11/10上的“由EW_USBCCGPFILTER.SYS阻止的核心隔离”问题。 PHP.CN的这篇文章有助于解决烦人的问题。继续阅读。

KB2267602是Windows Defender的保护或定义更新,旨在修复Windows中的漏洞和威胁。一些用户报告说他们无法安装KB2267602。这篇来自PHP.CN的帖子介绍了如何修复“ KB2267602 FAI

提示和建议通知是Windows 11的新设计。它将为您提供有关某些新功能的建议和提示。但是你们中的一些人可能会被弹出窗口所困扰。您可以从php.cn阅读此帖子,以了解如何关闭技巧和建议

如果您有多个显示器,则必须熟悉Windows P快捷方式。但是,窗口P无法正常工作,可能会偶尔发生。如果您面临此问题,则PHP.CN的这篇文章确实可以为您提供帮助。

数据恢复始终是一个加热的话题。要成功地从设备恢复数据,您应该知道它如何存储数据。您可以从此PHP.CN帖子中学习RAID恢复和硬盘恢复之间的区别。
