Matlab学习记录05

书籍:Matlab实用教程

工具:Matlab2021a

电脑信息:Intel® Xeon® CPU E5-2603 v3 @ 1.60GHz

系统类型:64位操作系统,基于X64的处理器 windows10 专业版

第2章 MATLAB数值计算

2.4 多项式

2.4.1 多项式的求值、求根和部分分式展开

1、多项式求值

复制代码
p1=[1 21 20 0]
polyval(p1,2)
x=0:0.5:3
polyval(p1,x)
p1 =

    1   21   20    0

ans = 132
x =

         0    0.5000    1.0000    1.5000    2.0000    2.5000    3.0000

ans =

          0    15.3750    42.0000    80.6250   132.0000   196.8750   276.0000

2、多项式求根

复制代码
p1 =

    1   21   20    0

ans = 132
x =

         0    0.5000    1.0000    1.5000    2.0000    2.5000    3.0000

ans =

          0    15.3750    42.0000    80.6250   132.0000   196.8750   276.0000


p1 =

    1   21   20    0

ans = 132
r =

  -20
   -1
    0

p =

    1   21   20    0

p =

    1   19  -20    0

3、特征多项式

复制代码
s=[1 2;3 4]
p2=poly(s)
roots(p2)
eig(s)
s =

   1   2
   3   4

p2 =

   1.0000  -5.0000  -2.0000

ans =

   5.3723
  -0.3723

ans =

  -0.3723
   5.3723

4、部分分式展开

复制代码
p1=[1 21 20 0]
p3=[100 200]
[r,p,k]=residue(p3,p1)
p1 =

    1   21   20    0

p3 =

   100   200

r =

   -4.7368
   -5.2632
   10.0000

p =

  -20
   -1
    0

k = [](0x0)

2.4.2 多项式的乘除和微积分运算

1、多项式的乘法和除法

复制代码
a1=[1 0]
a2=[1 1]
a3=[1 20]
p1=conv(a1,a2)
p2=conv(p1,a3)
[p3,r]=deconv(p2,a3)
conv(p3,a3)+r
a1 =

   1   0

a2 =

   1   1

a3 =

    1   20

p1 =

   1   1   0

p2 =

    1   21   20    0

p3 =

   1   1   0

r =

   0   0   0   0

ans =

    1   21   20    0

2、多项式的微分和积分

复制代码
a1=[1 0]
a2=[1 1]
a3=[1 20]
p1=conv(a1,a2)
p4=polyder(p1)
s=length(p4):-1:1
p1=[p4./s,0]
a1 =

   1   0

a2 =

   1   1

a3 =

    1   20

p1 =

   1   1   0

p4 =

   2   1

s =

   2   1

p1 =

   1   1   0

2.4.3 多项式拟合和插值

1、多项式拟合

复制代码
x1=1:10
p=[2 -1 5 10]
y0=polyval(p,x1)
p1=polyfit(x1,y0,1)
p2=polyfit(x1,y0,2)
p3=polyfit(x1,y0,3)
x1 =

    1    2    3    4    5    6    7    8    9   10

p =

    2   -1    5   10

y0 =

     16     32     70    142    260    436    682   1010   1432   1960

p1 =

   204.80  -522.40

p2 =

    32.000  -147.200   181.600

p3 =

   2.0000  -1.0000   5.0000  10.0000

2、插值运算

3、一维插值

复制代码
x1=1:10
p=[2 -1 5 10]
y0=polyval(p,x1)
y01=interp1(x1,y0,9.5)
y02=interp1(x1,y0,9.5,'spline')
y03=interp1(x1,y0,9.5,'cubic')
y04=interp1(x1,y0,9.5,'nearest')
x1 =

    1    2    3    4    5    6    7    8    9   10

p =

    2   -1    5   10

y0 =

     16     32     70    142    260    436    682   1010   1432   1960

y01 = 1696
y02 = 1682
y03 = 1682.0
y04 = 1960

4、二维插值

zi=interp2(x,y,z,xi,yi,'method')

相关推荐
geovindu5 分钟前
java:Abstract Factory Pattern
java·开发语言·后端·设计模式·抽象工厂模式·创建型模式
geovindu8 分钟前
java: Factory Method Pattern
java·开发语言·后端·设计模式·工厂方法模式·创建型模式
Tom@敲代码9 分钟前
js学习笔记-01
javascript·笔记·学习
m0_5870989928 分钟前
Qt,二进制文件读写建议
开发语言·qt
爱敲代码的小鱼33 分钟前
springsecurity:
java·开发语言·数据库
秋田君35 分钟前
QT_QT信号与槽机制
开发语言·数据库·qt
辞旧 lekkk36 分钟前
【Qt】 系统相关:事件与定时器
开发语言·qt·学习·萌新
Wang's Blog38 分钟前
Java框架快速入门: Spring Bean核心配置与实例化详解
java·开发语言·spring
aaPIXa6221 小时前
C++ TensorRT Edge-LLM 边缘推理框架:从原理到实战
开发语言·c++·edge
zzzll11111 小时前
如何学习AI Agent?
java·人工智能·学习·程序员·大模型