在matlab中实现矩阵的乘法(一个易犯错误)

 时间:2024-10-12 16:43:35

1、首先不用说,矩阵的乘法肯定得遵循矩阵乘法的规定:左边矩阵的列数一定要等于右边矩阵的行数,即:要求a*b,则a和b的规模应该是m*n和n*m。

2、但是刚开始使用matlab的时候,在matlab中输入矩阵时,我的输入形式是这样的:a={1/3,1/2,0;1/3,0,1/2;1/3,1/2,1/2}b={1/3;1/3;1/3}

3、于是在enter之后就会出现:a= [1/3 ] [1/2 ] [ 0 ] [1/3 ] [ 0 ] [1/2 ] [1/3 ] [1/2 ] [1/2 ]b= [1/3 ] [1/3 ] [1/3 ]

4、计算两者的乘积:c=a*b结果出现如下的提示信息:??? Funct坡纠课柩ion 'mtimes' is 荏鱿胫协not defined for values of class 'cell'.Error in ==> mtimes at 18 [varargout{1:nargout}] = builtin('mtimes', varargin{:});也就是说不对呗

5、后面才发现,原来在一开始时我的艏婊锬曛矩阵的表示方法就错了,实际上应该是这样的:a=[1/3,1/2,0;1/3,0,1/2;1/3,1/2,1/2]b=[1/3;1/3;1/3]enter之后分别显示的是a= 1/3 1/2 0 1/3 0 1/2 1/3 1/2 1/2 b= 1/3 1/3 1/3

6、然后计算c=a*b,enter后显示c= 5/18 5/18 4/9

7、看出差别了吗?也就是说矩阵的表示不适用{ },而是使用的是[ ]。使用{ },其类型就为对象类型了;而[ ]才是矩阵类型,才能正确地进行矩阵的运算。

  • 如何使用matlab的函数图像计算器的系统操作按钮
  • vscode下的latex如何进行换行和新段落操作?
  • matlab怎么在平面坐标系中绘图之二维绘图plot
  • matlab butter函数
  • matlab的line对象属性及操作技巧
  • 热门搜索
    国内旅游景点排行 日照旅游 青海旅游攻略 邮轮旅游 大同旅游 6月份适合去哪里旅游 蓟县旅游 烟台旅游 清迈旅游攻略 山西旅游景点