Excel 应用MINVERSE函数和MMULT函数计算逆矩阵和矩阵乘积

MINVERSE函数的功能是计算数组中存储的矩阵的逆矩阵。MMULT函数的功能是,计算两个数组的矩阵乘积。结果矩阵的行数与参数array1的行数相同,矩阵的列数与参数array2的列数相同。两函数的语法分别如下:


MINVERSE(array)
MMULT(array1,array2)

其中参数array是行数和列数相等的数值数组。参数array1、array2是要进行矩阵乘法运算的两个数组,可以是单元格区域、数组常量或引用。

【背景知识】在MINVERSE函数中,提到了一个概念逆矩阵。图13-33所示的是计算二阶方阵逆矩阵的示例。假设A1:B2中包含以字母a、b、c和d表示的四个任意的数,则该表表示矩阵A1:B2的逆矩阵。

图13-33 矩阵A1:B2的逆矩阵

【典型案例】使用MINVERSE函数和MMULT函数,求下面的三元一次方程组的解。

本例的原始数据如图13-34所示。

步骤1:求解系数矩阵的逆矩阵。选中A13~C15单元格区域,在编辑栏中输入公式“=MINVERSE(A7:C9)”,然后按组合键“Ctrl+Shift+Enter”,计算出系数矩阵的逆矩阵,结果如图13-35所示。

图13-34 原始数据

图13-35 计算系数矩阵的逆矩阵

步骤2:求三元一次方程组的数值矩阵。选中F13~F15单元格区域,在编辑栏中输入公式“=MMULT(A13:C15,E7:E9)”,然后按组合键“Ctrl+Shift+Enter”,计算出方程组的数值矩阵,即方程组的解,结果如图13-36所示。

步骤3:检查方程组的解是否正确。在G7单元格中输入公式“=A7*$F$13+B7*$F$14+C7*$F$15=E7”,用来检查方程组的解是否满足第一个方程,然后使用自动填充功能来检查下面的两个方程,检查结果如图13-37所示。

图13-36 求三元一次方程组的数值矩阵

图13-37 检查结果

【使用指南】与求行列式的值一样,求解逆矩阵常被用于求解多元联立方程组。所以将MINVERSE函数和MMULT函数合在一起,求解一个方程组。

在MINVERSE函数中,参数array可以是单元格区域,或单元格区域和数组常量的名称。如果参数array中的单元格为空、包含文字或行和列的数目不相等,则函数MINVERSE将返回错误值“#VALUE!”。对于一些不能求逆的矩阵,MINVERSE函数将返回错误值“#NUM!”。不能求逆的矩阵的行列式值为零。

在MMULT函数中,参数array1的列数与参数array2的行数必须相同,而且两个数组中都只能包含数值。如果参数array1和参数array2中的单元格为空、包含文字或行和列的数目不相等,MMULT函数将返回错误值“#VALUE!”。