matlab数值符号运算指令.docx
文本预览下载声明
多项式运算
P=Conv(p1,p2)多项式p1和p2相乘,p1,p2是两个多项式的系数向量[q,r]=deconv(p1,p2)P1除以p2,q是商式,r是余式,p2中不能有0P=polyder(p1)求多项式p1的导函数P=polyder(p1,p2)P1,p2乘积的导函数[p,q]=polyder(p1,p2)P1,p2之商的导函数,p,q是导函数的分子分母Y=polyval(p,x)求代数多项式的值,x为一数值或向量X=roots(p)求代数多项式的根,若x为向量,则p=poly(x)可以建立一个以x为根的多项式P=poly(r)根据多项式的根计算多项式的系数数组Z=fzero(‘fname’,x0)求单变量非线性方程的根,x0为搜索的起点,当函数有多个根时,fzero只能给出离x0最近的根b(x)a(x)=r1x-p1+r2x-p2+…+rnx-pn+k(x)[r,p,k]=residue(b,a)由向量b和a表示的有理多项式的部分分式展开[b,a]=residue(r,p,k)将部分分式展开转换回多项式表达式b(x) a(x)[p./(length(p):-1:1),k]多项式积分
极限函数
limx→0f(x)Limit(f)limx→af(x)Limit(f,x,a)或limit(f,a)limx→a-f(x)Limit(f,x,a,’left’)limx→a+f(x)Limit(f,x,a,’right’)
一维插值
Y=interp1(x,y,X,’method’)Method
Linear 线性插值 较快,有足够精度
Cubic 三次多项式插值 较慢,精度高,平滑性好
Spline 三次样条插值 最慢,精度高,最平滑
Nearest 最临近插值 最快,精度低,不平滑二维插值
Y=interp2(x,y,z,X,Y,’method’)Yy=spline(x,y,xx)根据样点数据(x,y)进行三次样条插值运算Yy=spline(x,y)根据样点数据(x,y)进行逐段多项式插值运算
P=polyfit(x,y,m)X为自变量数组,要求单调排列,y为函数值数组,m为拟合的阶次,p为(n+1)个系数构成的拟合多项式的系数数组矩阵除法拟合
根据已知数据点(x1,y1),…(xn,yn),拟合二次函数y=a0x^2+a1x+a2的过程:
将各数据点带入拟合函数,得
微积分
数值微分
1.1数组差分
dx=diff(x) 计算数据向量x的差分/差值
当x为向量时,dx=x(2:n)-x(1:n-1);当x是矩阵时,dx=x(2:n,:)-x(1:n-1,:)。
Dx的长度比x的长度少一个元素
Diff(x,n) 计算数据向量x的n阶差分/差值
当f是向量时,df(1)=f(2)-f(1)(即:df(1)采用向前差值计算),df(end)=f(end)-f(end-1)(即:df(end)采用后向差值计算),df(2:end-1)=[f(3:end)-f(1:end-2)]/2(中心差值)。Df的长度与f的相同
Diff(y)./diff(x) 计算一元函数y=y(x)的数值微分
1.2 梯度
二元函数F=F(x,y)的梯度定义为 ▽F=?F?xi+?F?yj
三元函数F=F(x,y,z)的梯度 ▽F=?F?xi+?F?yj+?F?zk
[fx,fy]=gradient(F,hx,hy) 计算二元函数的梯度/差值,hx,hy为点间距
[fx,fy,fz]= gradient(F,hx,hy,hz) 计算三元函数的梯度/差值,hx,hy,hz为点间距
当f是矩阵时,fx fy 是与f同样大小的矩阵,fx的每行给出f相应元素间的差值,fy的每列给出f相应列元素间的差值
Jacobi矩阵
多元函数阵列f1?fn=f1(x1,?xn)?fm(x1,?xn)的Jacobi矩阵定义为
?f1?x1??f1?xn????fm?x1??fm?xn
Jacobian(F,v) 求解多元函数列阵F的Jacobi矩阵
数值求和与近似数值积分
Sx=sum(X) 沿列方向求和sxk=i=1mXm×n(i,k)
Scs=cusum 沿列方向求累积和
St=trapz(x,y) 采用梯形法沿列方向求函数y关于自变量x的积分
Sct=cumtrapz(x,y) 采用梯形法沿列方向求y关于x的累计积分
显示全部