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

相关推荐
_饭团11 分钟前
字符串函数全解析:12 种核心函数的使用与底层模拟实现
c语言·开发语言·学习·考研·面试·蓝桥杯
Larry_Yanan11 分钟前
Qt网络开发之基于 QWebEngine 实现简易内嵌浏览器
linux·开发语言·网络·c++·笔记·qt·学习
2401_8318249618 分钟前
嵌入式C++驱动开发
开发语言·c++·算法
芯跳加速18 分钟前
AI 视频自动化学习日记 · 第三天
人工智能·学习·ai·自动化·音视频
qingcyb24 分钟前
重复 id 对应的多个对象
开发语言·python
li星野34 分钟前
[特殊字符] 模拟试卷一:C++核心与系统基础(90分钟)答案版
开发语言·c++·算法
天下无贼!41 分钟前
【Python】2026版——FastAPI 框架快速搭建后端服务
开发语言·前端·后端·python·aigc·fastapi
Irissgwe1 小时前
c++特殊类设计
java·开发语言·c++
小陈phd1 小时前
多模态大模型学习笔记(二十一)—— 基于 Scaling Law方法 的大模型训练算力估算与 GPU 资源配置
笔记·深度学习·学习·自然语言处理·transformer
丝斯20111 小时前
AI学习笔记整理(75)——Python学习4
人工智能·笔记·学习