Matlab基础

  1. Matlab 里的基本运算量包括标量、矢量、矩阵和数组。基本运算可分为数组运算和点运算
    数组运算要求参与运算的两个数组具有相同的尺寸。特别是数组的乘法要求第一个数组的列数等于第二个数组的行数。比如A*B,是指数组乘法,即按照数组相乘规律进行运算。数组的除法相当于乘法的逆运算,即相当于参与运算的一个数组与另一个数组的逆数组相乘。除法分为左除和右除,即分子分母位置不一样。
    点运算,顾名思义运算符中多了个点。如A.*B,表示的是A中的元素分别与B中的元素相乘,即对应位置上的元素相乘所得结果即存放在原来位置坐标中。
    特别强调的是,Matlab中有很多内置的运算函数,都是对数组的逐个元素进行运算的。如sqrt、exp、log、sin等。

  2. 数组的扩展与剪裁
    可以在变量编辑器中对数组尺寸进行更改,也可以用cat函数进行操作。

  3. 曲线拟合
    Matlab中可以用polyfit()函数采用最小二乘法对给定的数据进行多项式拟合,得到该多项式的系数。

polifit(x,y,n)
找到次数为n的多项式系数,对于数据集合,满足差的平方和最小。
[p,E]=polyfit(x,y,n)

返回同上的多项式P和矩阵E。多项式系数在向量p中,矩阵E用在函数中计算误差。

x=[0.3 0.4 0.7 0.9 1.7 1.9 2.8 3.2 3.7 4.5];
y=[1 2 3 4 5 2 6 9 2 7];
p5=polyfit(x,y,5);
y5=polyval(p5,x);
p5=vpa(poly2sym(p5),5);
p9=polyfit(x,y,9);
y9=polyval(p9,x);
figure;
plot(x,y,'bo');
hold on;
plot(x,y5,'r:');
plot(x,y9,'g--');
legend('原始数据','5阶多项式拟合','9阶多项式拟合');
xlabel('x');
ylabel('y');

运行结果:

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值