资源描述:
《实验八:向量运算》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验八:向量运算1、实验目的:掌握与向量运算有关的计算技巧,使用向量工具处理数学问题2、实验指导:在Mathematica屮向量和矩阵就是一个表。{apa2,…,an}表示一个向量。{{an,ai2,…,am},{a2pa22,…,a2n),…,{ami,am2»…,amn}}表示一个m行n列的矩阵,其中每一个了表表示矩阵的一行。1.直接输入矩阵直接输入矩阵的方法有3种,如下所述。(1)按表的形式输入矩阵既然矩阵和向量都是表,表的一般操作对于矩阵和向量仍然适用。但是,按表的格式键入矩阵和向量,会让人很不习惯。因此,Mat
2、hematica也提供了矩阵和向量的常规形式的输入、输出方法。(2)由模板输入矩阵基木输入模板屮有输入2阶方阵的模板,单击该模板输入一个空白的2阶方阵。按“Ctrl+”使矩阵增加一列,按“Ctrl+Enter"使矩阵增加一行。如果矩阵不大,此法较方便。(3)由菜单输入矩阵如果输入行、列数较多的矩阵,可以打开主菜单的Input项,其中CreateTable/Matrix/Palette可用于建立一个矩阵,单击该项出现一个的对话框。选择Make:Matrix,再输入行数和列数,单击0K按钮,于是一个空白矩阵被输入到工作区窗口
3、。空白矩阵的每个小方块代表一个元素的位置,光标所在的小方块与众不同,可以用Tab键将光标从一个方块跳到下一个方块,也可以用鼠标选中一个方块。2.以矩阵形式输出矩阵不管用何种方法输入矩阵,矩阵总是按表的形式输出。这既违背常规,又难于阅读。因此,Mathematica提供了以矩阵形式输出矩阵的函数:MatrixFonn[list]将表list按矩阵的形式输出。例1观察下面矩阵的输出。In[l]:=a={{l,2,3},{4,5,6}}Out[l]={{1,2,3},{4,5,6}}In[2]:=MatrixForm[a]Ou
4、t[2]//MatrixForm=In[3]:=a={{l,2,3},{4,5,6}}IIMatrixFormOut[3]//MatrixForm="23、、456丿52、In[4]:=34Q6,Out[4]={{l,2},{3,4},{5,6}}In[5]:=%//MatrixFormOut[5]//MatrixForm=说明:由上例可以看出,不管输入的形式是否为矩阵,必须使用MatrixForm才能使输出为矩阵形式。这不合习惯且费事,解决的方法是口制一个模板://MatrixForm,以便快速输入。使用函数Matri
5、xForm又会出现另一个问题,可以通过以下例子來说明。例2观察下面矩阵的输出。(=a=Out[l]={{b2},{3,4}}In[2]:=b=2)//MatrixForm4丿Out[2]//MatrixForm^(2)134丿In[3]:=Inverse[a]//MatrixFormOut[3]//MatrixForm^f-21)3_j_<2~2>In[4]:=Inverse[b]//MatrixFormOut[4]//MatrixForm^(2丫InverseLI34丿」说明:以上巾⑶和In[4]是求逆矩阵,M
6、athematica求出a的逆矩阵,对b却失败!变量a形式上是表,但能被Mathematica作为矩阵处理。而变量b虽然表示常规形式的矩阵,但不能对b进行各种矩阵计算,务必注意。技巧:使用括号能够改变表达式的含义,解决上述问题。例3观察下而矩阵的输出//MatrixFormOut[l]//MatrixForm=(2、In[2]:=Inverse[b]//MatrixFormOut[2]//MatrixForm=f-21)3<2~2>应该特别注意Mathematica不区分行向量与列向量,在运算吋会自动处理。口J以通过函
7、数ColumnForm[list]将一个向量显示成列向量。1.用函数建立矩阵也可以通过函数建立一些有规律的矩阵,除了在讲表时已经介绍过的函数创建一个m行、n列的矩阵,元索为a[i,j]。创建一个n阶单位矩阵。创建一个对角线上为表list的元素的方阵。Table外,还有以下专用函数:Array[a,{m,n}]IdentityMatrix[n]DiagonalMatrix[list]例4观察下面矩阵的输出。In[l]:=Array[a,{2,3}]//MatrixFormOut[l]//MatrixForm=4L2]413
8、]'<42,1]42,2]42,3]>In[2]:=Airay[a,{2,3},{0,0}]//MatrixFormOut[2]//MatrixForm=^[0,0]40,1]40,2]"⑴[1,0]<1,1]4L2],ln[3]:=IdentityMatrix[3]//MatrixFormOut[3]//Matri