用Excel进矩阵计算.docx

上传人:b****5 文档编号:14714993 上传时间:2023-06-26 格式:DOCX 页数:14 大小:120.28KB
下载 相关 举报
用Excel进矩阵计算.docx_第1页
第1页 / 共14页
用Excel进矩阵计算.docx_第2页
第2页 / 共14页
用Excel进矩阵计算.docx_第3页
第3页 / 共14页
用Excel进矩阵计算.docx_第4页
第4页 / 共14页
用Excel进矩阵计算.docx_第5页
第5页 / 共14页
用Excel进矩阵计算.docx_第6页
第6页 / 共14页
用Excel进矩阵计算.docx_第7页
第7页 / 共14页
用Excel进矩阵计算.docx_第8页
第8页 / 共14页
用Excel进矩阵计算.docx_第9页
第9页 / 共14页
用Excel进矩阵计算.docx_第10页
第10页 / 共14页
用Excel进矩阵计算.docx_第11页
第11页 / 共14页
用Excel进矩阵计算.docx_第12页
第12页 / 共14页
用Excel进矩阵计算.docx_第13页
第13页 / 共14页
用Excel进矩阵计算.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

用Excel进矩阵计算.docx

《用Excel进矩阵计算.docx》由会员分享,可在线阅读,更多相关《用Excel进矩阵计算.docx(14页珍藏版)》请在冰点文库上搜索。

用Excel进矩阵计算.docx

用Excel进矩阵计算

用Excel进行矩阵计算

 一、Excel的数组、数组名和矩阵函数的设置

  1矩阵不是一个数,而是一个数组。

在Excel里,数组占用一片单元域,单元域用大括号表示,例如{A1:

C3},以便和普通单元域A1:

C3相区别。

设置时先选定单元域,同时按Shift+Ctrl+Enter键,大括弧即自动产生,数组域得以确认。

  2Excel的一个单元格就是一个变量,一片单元域也可以视为一组变量。

为了计算上的方便,一组变量最好给一个数组名。

例如A={A1:

C3}、B={E1:

G3}等。

数组名的设置步骤是:

选定数组域,点“插入”菜单下的“名称”,然后选择“定义”,输入数组名如A或B等,单击“确定”即可。

  3矩阵函数是Excel进行矩阵计算的专用模块。

常用的矩阵函数有MDETERM(计算一个矩阵的行列式)、MINVERSE(计算一个矩阵的逆矩阵)、MMULT(计算两个矩阵的乘积)、SUMPRODUCT(计算所有矩阵对应元素乘积之和)……函数可以通过点击“=”号,然后用键盘输入,可以通过点击“插入”菜单下的“函数”,或点击fx图标,然后选择“粘贴函数”中相应的函数输入。

  二、矩阵的基本计算

  数组计算和矩阵计算有很大的区别,我们用具体例子说明。

  已知A={3-25,603,154},B={23-1,410,52-1},将这些数据输入Excel相应的单元格,可设置成图1的形状,并作好数组的命名,即第一个数组命名为A,第二个数组命名为B。

计算时先选定矩阵计算结果的输出域,3×3的矩阵,输出仍是3×3个单元格,然后输入公式,公式前必须加上=号,例如=A+B、=A-B、=A*B等。

A+B、A-B数组运算和矩阵运算没有区别,“=A*B”是数组相乘计算公式,而“=MMULT(A,B)”则是矩阵相乘计算公式,“=A/B”是数组A除数组B的计算公式,而矩阵相除是矩阵A乘B的逆矩阵,所以计算公式是“=MMULT(A,MINVERSE(B))”。

公式输入后,同时按Shift+Ctrl+Enter键得到计算结果。

图1中的数组乘除写作A*B、A/B,矩阵乘除写作A·B、A÷B,以示区别。

  三、矩阵计算的应用

  下面让我们来计算一个灰色预测模型。

  灰色预测是华中理工大学邓聚龙教授创立的理论,其中关键的计算公式是计算微分方程+B1x=B2的解,{B1,B2}=(XTX)-1(XTY),式中:

XT是矩阵X的转置。

  作为例子,已知X={-45.51,-791,-113.51,-149.51} Y={33,34,35,37}

  在Excel表格中,{B2:

C5}输入X,{E2:

H3}输入X的转置。

处理转置的方法是:

选定原数组{B2:

C5},点“编辑”菜单的“复制”,再选定数组转置区域{E2:

H3},点“编辑”菜单的“选择性粘贴”,再点“转置”即可。

{J2:

J5}输入Y,然后选取{L2:

L3}为B1、B2的输出区域,然后输入公式:

  =MMULT(MINVERSE(MMULT(E2:

H3,B2:

C5)),MMULT(E2:

H3,J2:

J5))

  公式输入完毕,同时按Shift+Ctrl+Enter键,B1、B2的答案就出来了,如图2。

  如果计算的矩阵更复杂一些,就必须分步计算。

不过,使用Excel也是很方便的。

  (江苏 陈岁松)

====

POWERPOINT演示文档http:

//web.ntpu.edu.tw/~ccw/manage_math/array.pptEXCEL矩陣運算(繁体中文)

参考文献:

 

如何用excel计算矩阵?

Excel的强大计算功能,不但能够进行简单的四则运算,也可以进行数组、矩阵的计算。

首先讲一下数组和矩阵的定义,Excel的数组、数组名和矩阵函数的设置:

  矩阵不是一个数,而是一个数组。

在Excel里,数组占用一片单元域,单元域用大括号表示,例如{A1:

C3},以便和普通单元域A1:

C3相区别。

设置时先选定单元域,同时按Shift+Ctrl+Enter键,大括弧即自动产生,数组域得以确认。

  一个单元格就是一个变量,一片单元域也可以视为一组变量。

为了计算上的方便,一组变量最好给一个数组名。

例如A={A1:

C3}、B={E1:

G3}等。

数组名的设置步骤是:

选定数组域,单击“插入”菜单,选择“名称”项中的“定义”命令,输入数组名,单击“确定”按钮即可。

更简单的命名办法为:

选择数组域,单击名称框,直接输入名称就行了。

  矩阵函数是Excel进行矩阵计算的专用模块。

用“插入”-“函数”命令打开“粘贴函数”对话框(如图11),选中函数分类栏中的“数学与三角函数”,在右边栏常用的矩阵函数有:

MDETERM--计算一个矩阵的行列式;MINVERSE--计算一个矩阵的逆矩阵;MMULT--计算两个矩阵的乘积;SUMPRODUCT--计算所有矩阵对应元素乘积之和。

其次介绍一下矩阵的基本计算:

 

  数组计算和矩阵计算有很大的区别,比如下面这个例子中,A和B都是定义好的数组,因为这两个数组都是3×3的,输出结果也是3×3个单元格。

计算时先选定矩阵计算结果的输出域,为3×3的单元格区域,然后输入公式。

如果输入“=A+B”或“=A-B”,计算结果是数组对应项相加或相减,输入“=A*B”表示数组A和B相乘,输入“=A/B”表示数组A除数组B。

如果要进行矩阵计算,就要用到相应的矩阵函数。

矩阵相加、相减与数组的加减表达形式是一样的,也是“=A+B”和“=A-B”,表示矩阵相乘可以输入“=MMULT(A,B)”,而矩阵相除是矩阵A乘B的逆矩阵,所以计算公式是“=MMULT(A,MINVERSE(B))”。

公式输入后,同时按Shift+Ctrl+Enter键得到计算结果。

对于更复杂的矩阵计算,可以采用分步计算。

矩阵计算的应用举例

在测量平差过程中,有大多数精力用在矩阵的运算上,只要解决了矩阵求逆的计算,测量平差也并不是很复杂的过程,现在我们就介绍利用大家经常使用的办公软件Excel进行矩阵的求逆计算,示例中使用的是3×3的矩阵,实际工作中对于多阶矩阵,对Excel来说也是小菜一碟:

1、输入待求逆矩阵,如下图:

2、在空白区选择一存放逆矩阵的区域,与待求逆矩阵大小相同,如下图:

3、保持该区域为选中状态,在公式输入栏输入公式“Minverse(a1:

c3)”,并按“Ctrl+Shift+Enter”,特别注意,不能直接回车键,必须在按住“Ctrl”“Shift”后再按回车键,如下图:

4、逆矩阵,如下图:

Excel中的矩阵相乘函数为:

mmult(),具体使用方法请查阅帮助。

本文来自办公与PDF网

用矩阵法解方程组——excel高级应用

2008-07-1215:

57

1理论基础

      根据数学知识将方程组改写成矩阵方程的形式:

      AX=B

      其中,A=(aij)n*n为n阶系数方阵;X=(X1,X2,……,Xn),是n维未知列向量;B=(b1,b2,⋯bn),为n维常数列向量。

       若系数方阵A有逆矩阵则X=A-1B成立,这样一来,就由求解线性方程组的问题转变成求未知向量的问题.系数方程A有逆矩阵的充分必要条件是A所对应的行列式的值不为0.即:

若系数行列式lAl≠0,则方程组必有唯一的解:

X=A-1B,这样求解线性方程组的过程就是进行一系列矩阵运算的过程,而Excel提供了一些矩阵运算的函数,利用这些函数可以很容易地进行相关的矩阵运算,从而得到线性方程组的解.

2实例求解

例如要求解的解线性方程组为:

2X1l+3X2+2X3+3X4=0

3X1+2X2-2X3+3X4=3

3X1+3X2+3X3-4X4=14

2X1-2X2-3X3-3X4=7

求解具体步骤如下:

1)在Excel中输入系数方阵.

       在Excel工作表中任选4行4列的一个区域,如:

A:

D4,将系数行列式的元素依次输入到该区域

中去,如表1所.

2)判断线性方程组是否有解.

      选择另外一个元格,如E1,单击“常用”具栏中“fx函数”按钮.在“函数分类”中选择“数学与三

角数”类,然后选择“MDETERM”函数.在“Array”输入框中输入域A1:

D4。

       单击“确定”按钮,在E1单元格中显示出行列式的值为一145。

由此结果得知该方程组系数行列式的值不为0,此系数矩阵有逆矩阵,方程组有唯一解.

3)求系数矩阵的逆A-1.

     根据数学知识,当一个矩阵所对应的行列式的值不为O时,则该矩阵一定存在逆矩阵,在Excel中

逆矩阵可以用MINVERSE函数求得.

      在Excel工作表中再选4行4列的一个区域F1:

I4,单击“常用”工具栏中“fx函数”按钮.在“函数分类”中选择“数学与三角函数”类,然后选择“MINVERSE”函数.在“Aray”输入框中输入区域A1:

D4并单击“确定”.

      将光标定位在编辑栏中所输入公式的结尾处,然后同时按下Ctrl,Shift,Enter3个键,则在区域FI:

I4

中显示出矩阵A的逆矩阵A-1的系数.

4)求线性方程组的解.

     求线性方程组的解也就是求矩阵的逆矩阵A-1与列向量的乘积:

       X=A-1B

     在上面同一张工作表中的F1:

I4区域存放的是系数矩阵的逆矩阵A~,再选定一个4行1列的区域如J1:

J4,将列向量B输入到该区域中去。

      另外选择一个4行1列的区域如K1:

K4,单击“常用”工具栏中“fx函数”按钮.在“函数分类”中选择“数学与三角函数”类,然后选择“MMULT”函数.

      在“Array1”输入框中输入矩阵的逆A所在区域F1:

I4;在“Array2”输入框中输入列向量所在的

区域J1:

J4,然后单击“确定”.

      将光标定位在编辑栏中所输入公式的结尾处,然后按下Ctrl,Shift,Enter3个键,则区域K1:

K4中显

示出两个矩阵乘积结果,即方程的解:

X1=1;X2=2;X3=一1;X4一2.

      上述方法是在判断线性方程组有解的条件下,利用Excel所提供的相关函数进行矩阵运算,从而

得到线性方程组的解,避免了繁琐的手工运算,提高了工作效率.

EXCEL在矩阵相关计算中的应用

王树梅

(同济大学电信学院上海201804)

摘要:

Excel不但具有强大的数据分析和处理功能,而且具有丰富的函数,在数学计算中发挥着不容忽视的作用。

本文主要介绍Excel在进行计算行列式值、矩阵的转置、矩阵的逆、矩阵的秩、两矩阵的乘积、矩阵的特征向量和特征值以及矩阵在进行解线性方程组时的应用。

关键词:

Excel矩阵函数矩阵秩矩阵逆

中图分类号:

O151.2

ApplicationsofExcelintheRelatedCalculationsofMatrix

WangShumei

(TongjiUniversityElectronicandCommunicationAcademy,Shanghai201804)

AbstractExcelhasnotonlypowerfulabilityofdataanalyzinganddealingwith,butitalsohasabundantfunctions,whichplaylargeeffectonmathematicalcalculations.Inthispaper,someapplicationsincalculationsofmatrixareintroducedparticularly,suchasthecalculationofrangeformular,thetransferingofmatrix,theathwartofmatrix,theproductofmatrixes,thepropervaluesandcharacteristicvectorsofmatrixandtheapplicationinunbindinglinearequations.

Keywords:

ExcelMatrixFunctionOrderofMatrixAthwartofMatrix

Microsoftoffice是常用的办公软件,给我们的工作、学习等方面带来了很大的方便。

特别是文字处理软件-WORD和和数据处理软件EXCEL更是我们日常办公所离不开的两个重要工具。

而EXCEL作为著名的电子表格软件,它所起到的作用远远不是人们所看到制作电子表格和使用一些简单的函数,它仍有很多强大的功能没有被发掘出来并利用。

本文就在矩阵相关计算中如何利用EXCEL的方法作出详细的介绍。

一、方阵对应行列式的值

已知求的值。

在EXCEL中解法如下:

第一步,在A1:

C3范围内输入上述矩阵(如图1所示);

第二步,选中A4单元格,在“插入”菜单中选中“函数”菜单项;

第三步,在打开的“函数”对话框中,选中“MDETERM”函数如图2,并按“确定”按钮;

第四步,在弹出的对话框中输入矩阵所在的地址,按确定即得到行列式的值。

二、矩阵求和

已知,。

第一步,分别在A1:

C3和E1:

G3中输入A和B矩阵如图4;

第二步,在A5单元格中输入公式:

=A1+E1,按回车,这时A5中显示数字7;

第三步,选中A5单元格,移动鼠标至其右下角,鼠标形状变为黑色十字时,按下鼠标左键往右拖至C5,B5和C5中分别显示-3,3。

同样的方法选中A5:

C5,往下拖至A7:

C7,便得到的值。

三、矩阵求逆

第一步,在A1:

C3中输入矩阵A;

第二步,选中A5:

C7,“插入”→“函数”→“MINVERSE”→“确定”;

第三步,在”array”项中输入A1:

C3,按F2,同时按CTRL+SHIFT+ENTER即可如图6。

四、矩阵转置

第一步,在A1:

C3中输入矩阵A,并选中;

第二步,“编辑”“复制”;

第三步,选中A5,“编辑”→“选择性粘贴”→“转置”→“确定”。

五、矩阵求秩

(一)矩阵秩的概念

定义设是矩阵,从中任取行列,由这些行、列相交处的元素按原来的次序所构成的阶行列式,称为矩阵的一个阶子行列式,简称阶子式。

定义矩阵的所有不为零的子式的最高阶数称为矩阵的秩,记作,即。

(二)矩阵秩的数学求法

1.行列式法:

即定义从矩阵的最高阶子式算起,计算出不等于零的子式的最高阶数,此即为该矩阵的秩。

2.行初等变换法:

用初等行变换化矩阵为阶梯形矩阵,此阶梯形矩阵非零行的行数就是该矩阵的秩。

(三)利用EXCEL求矩阵秩

方法一,根据矩阵秩的定义,可以求所有不为零子式的最高阶数。

求矩阵的秩.

.

显然是矩阵,4为其所有子式的最高阶数。

先求的值,若不为零,则矩阵的秩为4。

若为零,求所有阶数为3的子式的值。

若存在阶数为3的子式的值不为零,则矩阵的秩为3,否则继续求所有阶数为2的子式的值,依次类推。

步骤如下:

第一步,按照上面所介绍利用EXCEL求矩阵行列式的方法求的值

,则说明该矩阵的秩小于4;

第二步,取第二、三、四行,第一、二、四列,位于这些行、列相交处的元素所构成的三阶行列式

所以

方法二,从解方程组的角度去求矩阵的秩

若A是满秩的,则齐次方程组AX=0只有零解,否则就有非零解。

从这一思想出发可以得出另外一种求矩阵秩的方法。

在讲这个方法之前,我们先介绍用EXCEL去解方程组。

设此处是阶非奇异矩阵。

将其改变为如下问题:

AX=B

MAXS=

然后利用EXCEL提供的“规划求解”功能,求得的结果就是线性方程组的解。

下面是就如何在“规划求解”过程中得到矩阵A的秩给出具体的步骤。

其步骤是:

第一步,用“规划求解”工具解线性方程组AX=0,如果在“规划求解结果”中出现提示“[设置目标单元格]的值未收敛”,则表示A的秩〈n,也即齐次方程组有非零解。

则转入第二步。

否则停止计算;

第二步,在“规划求解结果”中选“恢复为原值”,然后在“规划求解参数”中增设约束之后再转第一步;

这样反复用步骤一和步骤二,即每次求解后若提示是“[设置目标单元格]的值未收敛”时,就增加一个X的分量不为零作为新的约束,然后再求解,最后直至“规划求解结果”里出现提示“规划求解找到一解,可满足所有约束及最优状况”。

则A的秩就等于n减去人为增加的X的不为零的分量数n-r。

并且得到的X的各个分量x1,x2,⋯,xn就是A的列向量的线性组合为0的组合系数。

例 求矩阵A的秩

 第一步,以所给矩阵作为系数矩阵A,用刚才所说的方法求解齐次方程组AX=0,结果提示“[设置目标单元格]的值未收敛”。

第二步, 恢复为原值后,增设约束x4=-1,再用方法2求解,结果提示仍然是“[设置目标单元格]的值未收敛”。

第三步, 再恢复为原值,再增设约束x3=1,用方法2求解,提示为“规划求解找到一解,可满足所有约束及最优状况”。

则A的秩r(A)=2,此时X的存放区域中的数值0,1,1,-1就是使A的列向量的线性组合为0的组合系数,即线性代数教材中的。

如果仅仅是检查一个n阶矩阵是否满秩,采用矩阵运算的求逆就要方便得多。

六、矩阵乘积

设,那么矩阵

称为和的乘积,记为。

当矩阵很大并且乘积矩阵数目很多的时候,人工求其乘积工作量会很大,如果不细心很容易出错,所以找到一种利用计算机去计算矩阵乘积就显得非常必要。

也有很多计算机爱好者用编程的方法去实现,也是不错的方法,但是编程也要一定的时间,我们不如直接利用EXCEL提供的函数直接去求来得快捷和方便。

在EXCEL中有专门用于矩阵乘积的函数MMULIT(array1,array2,…),可以比较快速地得到两个矩阵的乘积矩阵。

例已知,求

第一步,分别在A1:

C3区域和E1:

G3区域中输入A和B如图7;

第二步,选中A5:

C7区域,“插入”→“函数”→“MMULT”;

第三步,在array1中输入A1:

C3,在array2中输入E1:

G3;

第四步,按F2进入“编辑”状态,同时按下CTRL+SHIFT+ENTER

即可得到如图7。

七、矩阵特征向量和特征值

设A是阶矩阵,如果存在数及非零的维向量,使得

(7.1)

成立,就称是矩阵A的特征值,是矩阵A属于特征值的一个特征向量。

如何求的值,由(7.1)可推出

(7.2)

从此可以求出的值。

把得到的代入到(7.1)中求得相应的特征向量。

下面我们通过一个具体的例子来说明特征值和特征向量的求解步骤。

例:

求A的特征值和特征向量。

(一)求特征值

第一步,打开一个EXCEL工作表,将A输入到A1:

C3区域中;

第二步,将A主对角线的单元格分别改为“==5-E1”,“==3-E1”和“==1-E1”,即以一个单元格引用E1代替;

第三步,在A5单元格中输入公式“=MDETERM(A1:

C3)”;

第四步,在单元格E1中,由0开始,逐步加一个小常数,如0.001,观察A5中返回值的符号变化情况,每改变一次符号,说明附近有一个使行列式为0的解。

通过这步操作,得到3个近似值:

0.4158,2.294,6.29;

第五步,用“单变量求解”工具搜索比较精确解,“工具”→“单变量求解”

打开“单变量求解”对话框。

在“目标单元格”中键入A5,在“目标值”中键入0.4158,在“可变单元格”中键入E1,按“确定”,则E1中返回值为0.415758,此为最靠近0的一个解。

同理,分别将另外两个近似值分别输入到E1中,用“单变量求解”工具,求得全部3个更精确的近似解如下:

0.415758,2.294279,6.289944。

(二)求特征向量

分别将三个特征值代入到(7.1)中,得到三个方程组,显然这三个系数矩阵所对应的行列式的值都近似为零。

那么根据矩阵的性质,方程组一定有非零解。

这就转化为解方程组,解方程组的方法虽然在前面已经说过,但那种方法更适合方程右边为非零向量的方程,所以在这里我们引用层次分析法(AHP)里所介绍的求近似特征向量来解所得到的三个方程组;

对应=0.415758的方程组

(1)为归一化矩阵中的每个元素除以相应列的加和值,使矩阵的每一列归一化,即。

(2)各行平均计算机归一化矩阵中每一行的平均值,得到向量。

所以对应的特征向量为。

同样的方法求得和所对应的特征向量分别为:

和。

八、结束语

EXCEL具有强大的数据处理能力,还有很多的函数功能是我们所不经常用到,比如丰富的数学和三角函数、统计函数等,都是需要去发掘并利用的。

只有这样,EXCEL才能真正发挥它作为电子表格应有的功能和魅力。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 临时分类 > 批量上传

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2