利用Excel进行矩阵计算
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
利用Excel 进行矩阵计算
目前有很多软件可进行矩阵运算,特别是Matlab ,其矩阵运算功能尤为强
大。但这些专业软件所占空间很大,价格昂贵。其实Excel 就有矩阵运算功能,
虽然比不上专业软件,但不比一些数学小软件差多少。下面把从网上搜集到的一些有关利用Excel进行矩阵计算的资料整理如下:
资料一:
(1)数组和矩阵的定义
矩阵不是一个数,而是一个数组。在Excel里,数组占用一片单元域,单元域用大括号表示,例如{A1: C3},以便和普通单元域A1:C3相区别。设置时先选定单元域,同时按Shift +Ctrl+Enter 键,大括弧即自动产生,数组域得以确认。
一个单元格就是一个变量,一片单元域也可以视为一组变量。为了计算上的方便,一组变量最好给一个数组名。例如A={A1:C3} B={E1:G3等。数组名的
设置步骤是:选定数组域,单击“插入”菜单,选择“名称”项中的“定义”命令,输入数组名,单击“确定”按钮即可。更简单的命名办法为:选择数组域,单击名称框,直接输入名称就行了。
矩阵函数是Excel进行矩阵计算的专用模块。用插入”-函数”命令打开粘贴函数”对话框(如图11),选中函数分类栏中的“数学与三角函数”,在右边栏常用的矩阵函数有:MDETERM-计算一个矩阵的行列式;MINVERSE计算一个矩阵的逆矩阵;MMULT-计算两个矩阵的乘积;SUMPRODUCT计算所有矩阵对应元素乘积之和。
(2)矩阵的基本计算
数组计算和矩阵计算有很大的区别,比如下面这个例子中,A和B都是定义
好的数组,因为这两个数组都是3X3勺,输出结果也是3X3个单元格。计算时先选定矩阵计算结果的输出域,为3X3勺单元格区域,然后输入公式。如果输入“ =A + B'或“ =A”计算结果是数组对应项相加或相减,输入“ =A*B表示数组A和B 相乘,输入“ =A/B表示数组A除数组B。如果要进行矩阵计算,就要用到相应的矩阵函数。矩阵相加、相减与数组的加减表达形式是一样的,也是“=件B'和“ =B”,表示矩阵相乘可以输入“ =MMULT(,B)”,而矩阵相除是矩阵A乘B的逆矩阵,所以计算公式是“ =MMULT(,MINVERSE( B))”。公式输入后,同时按Shift+Ctrl+Enter 键得到计算结果。对于更复杂的矩阵计算,可以采用分步计算
资料二:
矩阵转置!
通常用复制-选择性粘贴-转置,或transpose( )可以实现转置功能!
资料三:矩阵运算函数
用途:返回一个数组的矩阵行列式的值。
语法:MDETERM(array)
参数:Array 是一个行列数相等的数值数组。Array 可以是单元格区域,例如
A1:C3;或是一个数组常量,如{1, 2, 3;4, 5, 6;7, 8, 9};也可以是区域或数组常量的名称。矩阵行列式的值多用于求解多元联立方程。
实例:如果A1=1、A2=2、B仁3 B2=4,则公式“=MDETERM(A1:B'返回-2。
用途:返回数组矩阵的逆距阵。
语法:MINVERSE(array)
参数:Array是具有相等行列数的数值数组,它可以是单元格区域,例如
A1:C3;也可以是常数数组如{1, 2, 3;4, 5, 6;7, 8, 9};或者是两者的名称。
实例:公式“=MINVERSE({41;2, 0})返回{0, ;-1, 2};=MINVERSE({1 2, 1;3,4,-1;0,2,0})返回{,,;0,0,;,,}。
用途:返回两数组的矩阵乘积。结果矩阵的行数与array1 的行数相同,矩阵的列数与array2 的列数相同。
语法:MMULT(array1,array2)
参数:Array1 和array2 是要进行矩阵乘法运算的两个数组。Array1 的列数必须与array2 的行数相同,而且两个数组中都只能包含数值。Array1 和array2 可以是单元格区域、数组常数或引用。
实例:公式“=MMULT({1 2;2,3},{3,4;4,5}) ”返回11。