MatLab 知识小结

这篇博客详细总结了MatLab中的一些重要概念和常用命令,包括永久变量如ans、i、j、eps等,以及数值计算、矩阵运算、多项式处理、函数求解、图形绘制等方面的操作。例如,介绍了plotval函数用于多项式值计算,roots函数求解多项式根,interp1用于一维插值,以及diff进行微分,还有符号运算、微分方程求解和线性代数的相关操作。此外,还探讨了如何使用各种函数进行数据拟合、插值、傅里叶变换和线性方程组的求解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

matlab常用到的永久变量。
ans:计算结果的默认变量名。
i j:基本虚数单位。
eps:系统的浮点(F10a9Bg个oht):
inf: 无限大,例1/0
nan NaN:非数值(N航a nmnb谢)
pi:圆周率n(n=3.1415926..)。
realmax:系统所能表示的最大数值。
realmin: 系统所能表示的最小数值,
nargin: 函数的输入参数个数:
nargout:函数的输出多数个数

①matlab的所有运算都定义在复数城上。对于方根问题运算只返回处于第一象限的解。
⑦matlab分别用左斜/和右/来表示“左除和“右除”运算。对于标量运算而言,这两者的作用没有区别:但对于矩阵运算来说,二者将产生不同的结果。

多项式的表示方法和运算
p(x)=x^3-3x-5 可以表示为p=[1 0 –3 5],求x=5时的值用plotval(p,5)
也可以求向量:a=[3 4 5],plotval(p,a)
函数roots求多项式的根 roots(p)
p=[1 0 -3 5];
r=roots(p)
由根重组多项式poly(根)
q=poly(r)
real(q) 有时会产生虚根,这时用real抽取实根即可
conv(a,b)函数多项式乘法(执行两个数组的卷积)
a=[1 2 3 4];
b=[1 4 9 16];
c=conv(a,b)
多项式的加减法,低阶的多项式必须用首零填补,使其与高阶多项式有同样的阶次
多项式除法 [q , r]=deconv(c , b) 表示b/c q为商多项式,r为余数
多项式的导数 polyder(f)
f=[ 2 4 5 6 2 1];
s=polyder(f)

多项式的曲线拟合
x=[1 2 3 4 5];
y=[5.6 40 150 250 498.9];
p=polyfit(x,y,n) 数据的n次多项式拟合 poly:矩阵的特征多项式、根集对应的多项式
x2=1:0.1:5; n取1时,即为最小二乘法
y2=polyval(p,x2); 计算多项式的值(polyvalm计算矩阵多项式)
plot(x,y,'*',x2,y2);grid on
最小二乘法
x=[1 2 3 4 5];
y=[5.6 40 150 250 498.9];
plot(x,y,’*’),lsline

多项式插值(p158)
YI=interp1(x,y,XI,’method’) 一维插值
(XI为插值点的自变量坐标向量,可以为数组或单个数。
method为选择插值算法的方法,包括:
linear(线性插值)
cubic(立方插值)
spline(三次样条插值)
nearst(最近临插值)

例如:人口预测
year=1900:10:1900;
number=[78 91 105 ….每十年的人口数];
x=1900:1:2000;
y=interp1(year,number,x,’spline’);
plot(year,numeber,’*’,x,y);grid on

一维博里叶变换插值使用函数interpft实现,计算含有周期函数值的矢量的傅里叶变换
然后使用更多的点进行傅里叶变换的逆变换,函数的使用格式如下:y=interpft(x,n) 其中x是含有周期函数值的矢量,并为等距的点,n为返同等间距点的个数。

求解一元函数的最小值
y=fminbnd('humps',0.3,1) humps为一内置函数
求解多元函数的最小值
函数fminserch用于求多元函数的最小值。它可以指定一个开始的矢量,并非指定一个区间。此函数返回一个矢量为此多元函数局部最小函数值对应的自变量

纹理成图功能
由warp函数的纹理成图功能实现平面图像在空间三维曲面上的显示。
将文件名为flowers.tif的图像分别投影到圆柱形和球星表面上
i=imread('flowers.tif');
[x,y,z]=cylinder;
subplot(1,2,1),warp(x,y,z,i);
[x,y,z]=sphere(50);
subplot(1,2,2),warp(x,y,z,i);
warp(x,y,z,i);

求函数的零点
求函数humps在[1,2]区间上的零点 fzero(‘humps’,[1,2]);
也可以给一个初始值 fzero(‘humps’,0.9);
对于多项式可直接由roots求其根 roots(‘4*x^3+……’);
也可以用solve
c=sym('c','real');
x=sym('x','real');
s=solve(x^3-x+c)

函数定积分
q=quadl(‘humps’,0,1) 求humps函数在0 1区间上的定积分,也可以用quad语句

二重积分首先计算内积分,然后借助内积分的中间结果再求出二重积分的值,类似于积分中的分步积分法。
Result=dblquad(‘integrnd’,xin,xmax.,ymin,ymax) integrnd为被积函数的名称字符串

符号积分运算int(f)
最精确的是符号积分法
计算s=∫12[∫01xydx]dy
sym

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值