Matlab学习笔记--数值计算

这篇博客介绍了Matlab在数值计算中的应用,包括数据拟合和多项式运算。在多项式运算部分,详细讲解了如何创建、求值、求根、乘法、除法及微积分。此外,还讨论了如何使用Matlab解决代数方程,如利用逆运算找到方程的解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据拟合

>> x0=0:0.1:1;
>> y0=[-0.447 1.978 3.11 5.25 5.02 4.66 4.01 4.58 3.45 5.35 9.22];
>> p=polyfit(x0,y0,3)                 %数据拟合为3次函数型

p =

   56.6915  -87.1174   40.0070   -0.9043

>> xx=0:0.01:1;yy=polyval(p,xx);     %计算函数的预计值
>> plot(xx,yy,'-b',x0,y0,'or')       %绘制拟合曲线和离散数据点

多项式运算

多项式创建

>> p=[1 -5 -4 3 -2 1];
>> y=poly2sym(p)

y =x^5 - 5*x^4 - 4*x^3 + 3*x^2 - 2*x + 1

>> y=poly2str(p,'x')

y = x^5 - 5 x^4 - 4 x^3 + 3 x^2 - 2 x + 1

多项式求值

>> p1=polyval(p,6)

p1 =529

多项式求根

roots用于根据多项式系数的行向量求解多项式的根。
poly用于根据根矢量返回多项式系数的形式。
roots与poly互为逆操作

>> p=[1 2 3 4];%
>> y=poly2sym(p)                 

y =x^3 + 2*x^2 + 3*x + 4        %得到多项式

>> r=roots(p)                   %求多项式的根

r =

  -1.6506 + 0.0000i
  -0.1747 + 1.5469i
  -0.1747 - 1.5469i

>> p2=poly(r)

p2 = 1.0000    2.0000    3.0000    4.0000      %由多项式的根得到原多项式

%-------------------------------------------------------------------

>> p=[1 2 1];
>> y=poly2sym(p)

y =x^2 + 2*x + 1

>> r=roots(p)

r =
    -1
    -1

>> r=[0 2];
>> p2=poly(r)

p2 = 1    -2     0

tips:知道多项式的根 x1,x2,x3xn .那么多项式就是 y=(xx1)(xx2)(xx3)(xxn) 展开即可

多项式乘法运算

conv(a,b) a,b为两个多项式的系数向量
c(x)=a(x)b(x)=(x2+2x+3)(4x2+5x+6)

>> a=[1 2 3];b=[4 5 6];
>> c=conv(a,b)

c = 4    13    28    27    18

>> poly2str(c,'x')

ans = 4 x^4 + 13 x^3 + 28 x^2 + 27 x + 18

多项式除法运算

deconv(a,b) 参数a,b表示为两个多项式系数的行向量,表示多项式a除以多项式b

>> a=[1 2 3];c=[4 13 28 27 18];
>> [d,r]=deconv(c,a)

d = 4     5     6                   %返回商多项式

r = 0     0     0     0     0       %返回余多项式

多项式的微积分

polyder(p):求p的微分
polyint(p):求p的不定积分,常数项为0

>> a=[1 2 3 4 5];poly2str(a,'x')

ans = x^4 + 2 x^3 + 3 x^2 + 4 x + 5

>> b=polyder(a)                   %微分

b =   4     6     6     4

>> poly2str(b,'x')

ans = 4 x^3 + 6 x^2 + 6 x + 4     

>> c=polyint(a)                    %不
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值