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')

相关推荐
三道渊21 分钟前
进程通信与网络协议
开发语言·数据库·php
白露与泡影28 分钟前
Java面试题库及答案解析(2026版)
java·开发语言·面试
_李小白28 分钟前
【OSG学习笔记】Day 37: NodeVisitor(顶点访问器)
笔记·学习
疯狂成瘾者44 分钟前
Chroma向量数据库
开发语言·数据库·c#
我是唐青枫1 小时前
C#.NET Monitor 与 Mutex 深入解析:进程内同步、跨进程互斥与使用边界
开发语言·c#·.net
bbq粉刷匠1 小时前
Java--剖析synchronized
java·开发语言
ou.cs1 小时前
c# 信号量和锁的区别
开发语言·c#
Gofarlic_OMS1 小时前
装备制造企业Fluent许可证成本分点典型案例
java·大数据·开发语言·人工智能·自动化·制造
程序员雷欧1 小时前
大模型应用开发学习第八天
大数据·人工智能·学习
Freak嵌入式1 小时前
MicroPython LVGL基础知识和概念:显示与多屏管理
开发语言·python·github·php·gui·lvgl·micropython