0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MATLAB在数学中的应用有哪些?

冬至子 来源:MATLAB睡不着 作者:MATLAB睡不着 2023-07-20 15:18 次阅读
  • 多项式及函数

1.多项式的表示

MATLAB用一维向量来表示多项式,如多项式

图片

表示为图片,缺少的幂次系数用‘0’补充

2.多项式求根

求多项式的根即求使多项式为0的值,也即数学中的零点问题,MATLAB提供了 roots函数求根 ,用法如下:

>> P=[1 2 1];%x^2+2x+1=0
 >> roots(P)
ans =
    -1
    -1

根据多项式的根反求多项式则用 poly函数 ,一般多项式是行向量,根是列向量,例如:

> > r=[-1;-1];
 > > poly(r)
ans =
     1     2     1

3.多项式四则运算

加法:如果两个多项式大小相同时,则多项式相加与标准的数组加法相同

乘法:使用conv函数

除法:使用 deconv函数 ,[a,r]=deconv(b,c)其中a为b除c的商,r为余数

>> a=[1 1];b=[1 -1];%(x+1)*(x-1)
 >> c=conv(a,b)
c =
     1     0    -1
 >> a=[1 3 1];b=[1 1];%x^2+3x+1除x+1
 >> [c,d]=deconv(a,b)
c =
     1     2
d =
     0     0    -1

4.多项式的导数、积分及其计算

导数:函数polyder可以实现多项式的求导

积分:函数 polyint(P,k) 返回多项式P的积分,积分常数项为k,默认值为0

计算:函数 polyval(P,x) 返回多项式在x处的值,x可为标量也可为向量

>> a=[1 2 1];polyder(a)
ans =
     2     2
 >> a=[1 2 1];b=polyder(a)
b =
     2     2
 >> polyint(b,3)
ans =
     1     2     3
 >> polyval(a,1)
ans =
     4

5.有理多项式

函数 [r,p,k]=residue(num,den) 可执行部分分式展开的的运算,等式两边互换可实现逆运算

> > num=[2 -19 29 40];
 > > den=[1 -15 68 -96];
 > > [r p k]=residue(num,den)
r =
    4.0000
    5.0000
    2.0000
p =
    8.0000
    4.0000
    3.0000
k =
     2

本例结果可表示为:

图片

  • 数据插值

数据插值是指数据缺失时所进行的一种处理,在数据分析、图像处理等很多领域经常用到,参加过数学建模比赛的小伙伴可能也用过,有多项式插值、分段插值、三角函数插值等。

  1. 一维函数插值

当插值函数y=f(x)一元函数时为一维插值,使用interp1函数,语法格式为 **Vq=interp1(X,V,Xq,str)** :X为自变量取值范围,V为函数值或一向量,长度与X一致,Xq为插值点向量,str为字符串变量,设定插值方法。

str='nearest': 邻近点插值 。插值点的值为与该插值点最近的数据点函数值。速度快但平滑性差。

str='linear': 线性插值法 。根据相邻数据点的线性函数估计插值点的值。占用的 内存比邻近点多,运算时间长 ,但其结果是连续的,顶点处斜率会改变。

str='spline': 三次样条插值 。在相邻数据点建立三次多项式函数确定插值。运算时间最长,但平滑性最好。此外还有'pchip','cubic','v5cubic'等。

y=interpft(x,n) 为一维快速傅里叶插值。当数据点呈现周期分布时,用傅里叶变换把输入数据x变换到频域,然后用更多点n的傅里叶逆变换变回时域,其结果是对数据进行增采样。

x=0:10;
y=sin(x);
z=interpft(y,20);
xx=linspace(0,10,20);%生成0到10之间20个线性等分点
plot(x,y,'-o',xx,z,':o')
legend('原始数据','插值结果','Location','North')

图片

2.二维数据插值

当插值函数y=f(x)为二元函数时为二维插值,语法格式为 **Vq=interp2(X,Y,V,Xq,Yq,str)** 其中X,Y,V是具有相同大小的矩阵,V(i,j)是数据点[X(i,j),Y(i,j)]上的函数值;Xq,Yq为待插值数据网格,str为字符串变量表示不同的插值方法,和一维的相似,例如

[X,Y]=meshgrid(-10:0.25:10);%产生数据栅格点
Z=peaks(X,Y);  %计算已知点的函数值
[x,y]=meshgrid(-10:0.05:10); %产生更精密的插值点
z=interp2(X,Y,Z,x,y);
mesh(X,Y,Z),hold on;
mesh(x,y,z+20),hold off;
axis([-3 3 -3.5 3.5 -6 30])

图片

  • 函数极限

极限概念很简单,在中学时就有所接触,这里只简单介绍一些使用极限的函数

limit(fun,x,a) :当x趋于a时,返回函数fun的极限值。

limit(fun):默认当x趋于0时求极限

limit(fun,x,a,'left') :求左极限,还有右极限'right'

  • 函数积分

MATLAB支持三重及以下的积分运算

  1. 一重积分

一元函数的数值积分有三个函数quad, quadl, quadv用法相同

[Q,num]=quad(fun,a,b,tol,str) fun为被积函数句柄,a,b为积分上限和积分下限,tol用于控制误差,增大tol可加快计算速度但精度下降,str非0时输出计算过程中的[num a b-a Q],num为函数计算的次数。此函数适用于精度低、被积函数平滑性较差的数值积分。num,tol,str为可选参数

quadl适用于精度高被积函数较平滑的数值积分

quadv用于被积函数是一些列函数的积分

2.二重积分

Q= dbquad (fun,xmin,xmax,ymin,ymax,tol,@quad)

Q=dbquad(fun,xmin,xmax,ymin,ymax,tol,myfun)

MATLAB默认采用quad函数计算一维积分;@quad表示用户指定采用quadl函数来计算一维积分;myfun表示用自己编写的一维积分函数

3.三重积分

Q= triplequad (fun,xmin,xmax,ymin,ymax,zmin,zmax,tol,@quad)后面两个参数为可选项

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 积分器
    +关注

    关注

    4

    文章

    100

    浏览量

    28445
  • MATLAB仿真
    +关注

    关注

    4

    文章

    176

    浏览量

    19922
  • 傅里叶变换
    +关注

    关注

    6

    文章

    441

    浏览量

    42592
收藏 人收藏

    评论

    相关推荐

    matlab数学手册下载

    matlab数学手册下载 请到网站进行下载:MATLAB6.0数学手册
    发表于 06-19 12:41

    源程序和数据_Matlab在数学建模的应用

    习惯,合理利用源程序,以取得最好的学习效果。希望大家在学习的过程,及时反馈对书中内容和程序的疑问、看法、建议等,让我们 在互动的讨论,彼此能够更深刻地认识Matlab数学建模。也
    发表于 08-02 15:56

    MATLAB在数字图象处理的应用

    MATLAB在数字图象处理的应用
    发表于 08-03 09:59

    matlab工程数学应用pdf

    matlab工程数学应用pdf 第1章 MatLab简介及使用指南第2章 MatLab基础知识介绍第3章 MatLab符号运算及数值运算操
    发表于 06-13 13:26 181次下载

    MATLAB 6.0数学手册(doc版)

    MATLAB是美国MathWorks公司自20世纪80年代中期推出的数学软件,优秀的数值计算能力和卓越的数据可视化能力使其很快在数学软件脱颖而出。到目前为止,其最高版本6.0版已经推
    发表于 10-29 15:57 0次下载

    MATLAB基础及数学软件_阳明盛

    MATLAB数学软件具有十分突出的优点,因此使它能够成为当今世界上最为优秀的数学软件之一。它的主要优点:①书写简捷。全部数学内容的
    发表于 11-29 17:35 0次下载
    <b class='flag-5'>MATLAB</b>基础及<b class='flag-5'>数学</b>软件_阳明盛

    MATLAB数学建模讲义

    该资料用于MATLAB的学习,并且可以将MATLAB应用于数学建模
    发表于 12-30 16:11 0次下载

    MATLAB数学建模算法及实例分析

    MATLAB数学建模算法及实例分析,了解MATLAB
    发表于 01-22 14:06 0次下载

    Matlab数学实验PDF电子书免费下载

    本书着重介绍数学软件 Matlab 的主要使用命令和内容 , 读者在学习了本书之后 , 能很快掌握 Matlab 数学软件的主要功能 , 并能用 M
    发表于 03-19 08:00 5次下载

    《LINGO和Excel在数学建模的应用》pdf

    《LINGO和Excel在数学建模的应用》pdf
    发表于 10-08 11:03 0次下载

    MATLAB数学建模资料01

    MATLAB数学建模资料01
    发表于 10-08 14:27 0次下载

    MATLAB数学建模资料02

    MATLAB数学建模资料02
    发表于 10-08 14:29 0次下载

    MATLAB数学建模资料03

    MATLAB数学建模资料03
    发表于 10-08 14:30 0次下载

    《LINGO和Excel在数学建模的应用》pdf

    《LINGO和Excel在数学建模的应用》pdf
    发表于 11-13 15:49 0次下载

    神经网络在数学建模的应用

    数学建模是一种利用数学方法和工具来描述和分析现实世界问题的过程。神经网络是一种模拟人脑神经元结构和功能的计算模型,可以用于解决各种复杂问题。在数学建模,神经网络可以作为一种有效的工具
    的头像 发表于 07-02 11:29 930次阅读