Mathematica矩阵的各种运算
mathematica 矩阵函数求导

mathematica 矩阵函数求导以mathematica 矩阵函数求导为题,我们将介绍如何使用Mathematica软件来对矩阵函数进行求导操作。
在数学和工程领域中,矩阵函数求导是一个非常重要的操作。
它可以帮助我们研究矩阵函数的性质,以及在实际问题中的应用。
在Mathematica软件中,我们可以使用D函数来对矩阵函数进行求导。
D函数是Mathematica中的一个内置函数,可以用来计算任意函数的导数。
我们需要定义一个矩阵函数。
在Mathematica中,矩阵函数可以使用MatrixFunction函数来定义。
MatrixFunction函数接受两个参数,第一个参数是一个函数,第二个参数是一个矩阵。
例如,我们定义一个矩阵函数f(x)=e^x,其中x是一个3x3的矩阵。
我们可以使用以下代码来定义这个矩阵函数:f[x_] := MatrixFunction[Exp, x]接下来,我们可以使用D函数来计算这个矩阵函数的导数。
D函数的第一个参数是要求导的函数,第二个参数是要对哪个变量进行求导。
例如,我们想要计算f(x)对矩阵x的导数,我们可以使用以下代码:D[f[x], x]这将返回一个矩阵,表示矩阵函数f(x)对矩阵x的导数。
除了求一阶导数,我们还可以使用D函数来求高阶导数。
例如,我们想要计算f(x)对矩阵x的二阶导数,我们可以使用以下代码:D[f[x], {x, 2}]这将返回一个四维张量,表示矩阵函数f(x)对矩阵x的二阶导数。
在实际问题中,矩阵函数求导可以应用于各种领域。
例如,在机器学习中,我们经常需要对损失函数进行求导,以便优化模型的参数。
在信号处理中,我们可以使用矩阵函数求导来计算系统的频率响应。
在控制理论中,我们可以使用矩阵函数求导来分析系统的稳定性。
总结一下,Mathematica软件提供了强大的矩阵函数求导功能,可以帮助我们研究和应用矩阵函数。
通过使用D函数,我们可以轻松地计算任意阶数的矩阵函数导数。
mathematica矩阵指数

mathematica矩阵指数数学中,矩阵指数是指一个矩阵对数学中的e的幂次方形式。
它不仅在数学中有着重要的应用,而且在工程、物理等学科领域也有着广泛的应用。
而mathematica软件则是应用广泛、功能强大的数学软件之一。
本文将围绕mathematica矩阵指数展开介绍。
第一步,定义矩阵在使用mathematica求解矩阵指数的过程中,首先需要定义一个矩阵。
以一个3×3的矩阵为例,其代码如下:matrix = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}第二步,求矩阵指数在mathematica中,求解矩阵指数可以通过调用MatrixExp[]函数实现。
MatrixExp[]函数语法如下:MatrixExp[m]其中,m表示待求解的矩阵。
对应到上面定义的矩阵,代码如下:MatrixExp[matrix]输出结果如下:{{9.78313*10^7, 1.18417*10^8, 1.38902*10^8},{2.26032*10^8, 2.74515*10^8, 3.23098*10^8},{3.54251*10^8, 4.30614*10^8, 5.06977*10^8}}第三步,验证结果在mathematica中,可以通过调用Exp[]函数求解指数函数,然后对比两者的结果来验证矩阵指数的求解是否正确。
Exp[]函数语法如下:Exp[x]其中,x表示幂次方指数。
对应到本例中,代码如下:Exp[1]*matrix输出结果如下:{{9.78313*10^7, 1.18417*10^8, 1.38902*10^8},{2.26032*10^8, 2.74515*10^8, 3.23098*10^8},{3.54251*10^8, 4.30614*10^8, 5.06977*10^8}}可以看到,两者的结果是完全一致的,因此可以得出结论,MatrixExp函数的结果是正确的。
mathematica 行向量 列向量 矩阵 -回复

mathematica 行向量列向量矩阵-回复"Mathematica:行向量、列向量与矩阵"Mathematica是一种功能强大的数学软件,常用于数值计算、符号计算、数据分析和可视化等各个领域。
在数学中,行向量、列向量和矩阵是非常重要的概念。
本文将以这些概念为主题,逐步介绍它们在Mathematica 中的应用。
第一节:行向量行向量是一种包含多个元素的数学对象,这些元素按顺序排列成一行。
在Mathematica中,行向量可以通过{}大括号实现。
例如,行向量{1, 2, 3, 4, 5}表示一个包含5个元素的行向量。
除了直接输入元素构成的行向量外,我们还可以使用Range函数来生成行向量。
例如,Range[1, 5]将生成行向量{1, 2, 3, 4, 5}。
在Mathematica中,我们可以对行向量进行各种操作。
例如,我们可以使用MatrixForm函数将行向量以矩阵形式显示出来。
若有一个行向量vec={1, 2, 3, 4, 5},则输入MatrixForm[vec],Mathematica会将该行向量以矩阵形式显示。
第二节:列向量列向量与行向量类似,不同之处在于元素按列排列而不是按行排列。
在Mathematica中,列向量可以通过Transpose函数将行向量转置得到。
例如,假设colVec={1, 2, 3, 4, 5}是一个列向量,我们可以使用Transpose[colVec]将其转置为行向量{1, 2, 3, 4, 5}。
同样地,我们也可以使用MatrixForm函数将列向量进行矩阵形式的显示。
例如,若有列向量colVec={1, 2, 3, 4, 5},输入MatrixForm[colVec],Mathematica会将其以矩阵形式显示。
第三节:矩阵矩阵是由多行多列元素按规律形成的二维数组。
在Mathematica中,矩阵可以通过使用{}大括号和嵌套的{}来表示。
mathematica 行向量 列向量 矩阵 -回复

mathematica 行向量列向量矩阵-回复Mathematica 是一款功能强大的数学软件,拥有丰富的矩阵操作和向量运算功能。
在这篇文章中,我们将详细介绍Mathematica 中的行向量、列向量和矩阵,并逐步回答与它们相关的问题。
首先,我们来了解什么是向量和矩阵。
在数学中,向量是一组有序排列的数,可以表示为n×1 的列向量或1×n 的行向量。
而矩阵则是具有行和列的二维数组,其中的元素可以是数字、符号或者表达式。
在Mathematica 中,我们可以使用一对大括号{} 来表示向量或矩阵。
例如,以下是一个行向量和一个列向量的例子:行向量v = {1, 2, 3}列向量u = {{1}, {2}, {3}}这里,v 是一个行向量,包含三个元素1、2 和3。
u 则是一个列向量,由三行一列的元素构成。
需要注意的是,在Mathematica 中,列向量通常用于表示向量的默认形式。
接下来,我们将详细介绍如何在Mathematica 中进行向量和矩阵的操作。
首先,让我们回答一些关于行向量和列向量的问题:问题1:如何将一个行向量转换为列向量?要将一个行向量转换为列向量,可以使用Transpose 函数。
例如,将行向量v 转换为列向量,可以使用以下命令:列向量u = Transpose[{1, 2, 3}]这样,向量v 的行向量形式{1, 2, 3} 就会被转换为列向量形式{{1}, {2}, {3}}。
问题2:如何将一个列向量转换为行向量?同样地,要将一个列向量转换为行向量,可以使用Transpose 函数。
例如,将列向量u 转换为行向量,可以使用以下命令:行向量v = Transpose[{{1}, {2}, {3}}]这样,向量u 的列向量形式{{1}, {2}, {3}} 就会被转换为行向量形式{1, 2, 3}。
接下来,让我们回答一些关于矩阵的问题:问题3:如何定义一个矩阵?可以使用两层大括号来定义一个矩阵,其中每一行用一对大括号括起来。
Get清风50Mathematica线性代数运算命令与例题

50Mathematica线性代数运算命令与例题第五章 线性代数运算命令与例题线性代数中常用的工具是矩阵(向量)和行列式。
用这些工具可以表示工程技术,经济工作中一些需要用假设干个数量从整体上反映其数量关系的问题。
用这些工具可以简明凝练而准确地把所要研究的问题描述出来,以提高研究的效率。
在线性代数课程中我们看到了用这些工具研究齐次和非齐次线性方程组解的理论和解的结构,矩阵的对角化,二次型化标准形等问题的有力,便捷.数学上矩阵是这样定义的:由n m 个数排成m 行n 列的数表mnm m n n a a a a a a a a a 212222111211称为m 行n 列矩阵,特别,当m=1时就是线性代数中的向量。
记作:⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=mn m m n n a a a a a a a a a A 212222111211两个n m ⨯矩阵称为同型矩阵。
线性代数中的运算对象是向量和矩阵,因此首先介绍向量和矩阵的输入。
输入一个矩阵命令形式1:Table[f[i,j],{i ,m},{j ,n}] 功能: 输入n m ⨯矩阵,其中f 是关于i 和j 的函数,给出[i , j]项的值.命令形式2:直接用表的形式来输入功能:用于矩阵元素表达式规律不易找到的矩阵的输入。
注意:1.Mathematica 是采用一个二重表的形式来表示矩阵的,即用{{…},{…},…,{…}} 其中表中的每个表元素都是等长的一维表,第一个表元素是矩阵的第一行,第二个表元素是矩阵的第二行,一般,第n 个表元素是矩阵的第n行。
要看通常的矩阵形式可以用命令:MatrixForm[%]2. 对应上述命令形式,输入一个向量的命令为 Table[f[j],{j,n}]或直接输入一个一维表{a1,a2,…,an},这里a1,a2,…,an 是数或字母。
例题例 1.输入矩阵A=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---4138163912145856120312、向量b={1,4,7,-3}。
用Mathematica一步步求逆矩阵

2 2
以下每两行为一个单元,前一行为输入的命令,后 一行为运行后的结果。
四、结语 荀子在其《劝学篇》中提出 “ 善假于物 ” 的重要性, 作为一名教师,如果能主动挖掘数学软件的教学功能, 对提高多媒体授课的质量自是益处多多 . 而 “ 身教重于 言教 ”,教师对数学软件的热情,亦能潜移默化地唤起 学生使用、探索数学软件的兴趣。 徐州工程学院数理学院) (作者单位 :
1 1
Feb. 2016 MAGAZINE 147
南风论坛
N ANFENGLUNTAN
用Mathematica一步步求逆矩阵
夏传武
本文基于 Mathematica6.0,对应于传统板书教学法 的一步步推导过程,给出了用 Mathematica 加以实现的 具体方式。 Maple 与 Mathmatica, 是 当 今 比 较 流 形 的 两 大 符 号处理软件 , 两者各有千秋 . 拥有各自相对固定的用 户群 . 二者中 Maple 的教学功能考虑得比较周到,文献 [1] 给出了在 Maple 平台上一步步求逆矩阵的过程,完 全类似教师在课堂上的板书方式,教学效果相当不错 . 在 Mathematica 中没有直接给出相应施行矩阵初等行变 换的命令,但鉴于使用 Mathematica 的用户也相当广泛, 本文将参照 Maple 中的处理方式,利用 Mathematica 的 基层命令,给出在 Mathematica 平台上施行矩阵初等行 变换的相应命令,并通过一个实例加以展示、验证。 一、自定义矩阵初等行变换及其他相关命令 (1) 两行互换命令 SwapRow[A_ , r1_ , r2_] : =Module[{AA=A , tmp=A[[r1]]},AA[[r1]]=AA[[r2]];AA[[r2]]=tmp;AA] (2) 倍乘命令 MulRow[A_,r_,m_]:=Delete[Insert[A,A[[r]]*m, r],r+1] (3) 倍加命令 AddRow[A_ , r1_ , r2_ , m_] : =Delete[Insert[A , A[[r1]]*m+A[[r2]],r2],r2+1] 二、实例展示 例 求可逆矩阵
mathematica 四元数旋转矩阵
mathematica 四元数旋转矩阵四元数旋转矩阵是一种用于描述三维空间中物体旋转的数学工具。
它是一种四维向量,由一个实部和三个虚部组成。
四元数旋转矩阵可以用于表示旋转的方向和角度,并且在计算机图形学、机器人学等领域有广泛的应用。
在Mathematica中,我们可以使用Quaternions包来进行四元数旋转矩阵的计算。
首先,我们需要定义一个旋转轴和旋转角度,然后使用Quaternions函数来计算旋转矩阵。
例如,假设我们要将一个物体绕向量(1, 1, 1)旋转90度。
我们可以使用以下代码来计算旋转矩阵:```rotationAxis = {1, 1, 1};rotationAngle = Pi/2;rotationQuaternion = Quaternions[rotationAxis, rotationAngle];rotationMatrix = RotationMatrix[rotationQuaternion];```在上面的代码中,我们首先定义了旋转轴和旋转角度。
然后,我们使用Quaternions函数将旋转轴和旋转角度转换为一个四元数。
最后,我们使用RotationMatrix函数将四元数转换为一个旋转矩阵。
通过上述代码,我们可以得到一个3x3的旋转矩阵,表示绕(1, 1, 1)轴旋转90度的变换。
这个旋转矩阵可以用于将一个点或一个物体在三维空间中进行旋转。
除了使用Quaternions包,Mathematica还提供了许多其他函数来处理四元数旋转矩阵。
例如,我们可以使用QuaternionRotate函数来将一个向量绕指定轴旋转指定角度,如下所示:```vector = {1, 0, 0};rotatedVector = QuaternionRotate[rotationQuaternion, vector];```在上面的代码中,我们定义了一个向量,并使用QuaternionRotate 函数将该向量绕旋转轴和旋转角度进行旋转。
mathematica 对称矩阵特征值
mathematica 对称矩阵特征值Mathematica 是一种数学软件,可以用于计算和绘制各种数学问题,包括对称矩阵的特征值。
下面是在Mathematica 中计算对称矩阵特征值的基本步骤:1. 定义对称矩阵:使用SymmetricMatrix 函数定义一个对称矩阵,例如:```A = SymmetricMatrix[{{1, 2}, {3, 4}}]```这将定义一个2x2 的对称矩阵,其中第一行和第二行的元素分别为1和2,第三行和第四行的元素分别为3和4。
2. 计算特征值和特征向量:使用Eigenvalues 和Eigenvectors 函数计算对称矩阵的特征值和特征向量,例如:```eigenvalues = Eigenvalues[A]eigenvectors = Eigenvectors[A]```这将返回对称矩阵A 的所有特征值和特征向量。
3. 可视化特征向量:使用Graphics 函数和Text 函数可视化特征向量,例如:```Graphics[{PointSize[Large], Point[{eigenvectors[[1, 1]]}, {eigenvectors[[2, 1]]}]},PlotLabel -> "Eigenvector 1"]Graphics[{PointSize[Large], Point[{eigenvectors[[2, 1]]}, {eigenvectors[[1, 2]]}]},PlotLabel -> "Eigenvector 2"]```这将返回两个图形,分别显示对称矩阵A 的两个特征向量。
需要注意的是,在计算对称矩阵的特征值和特征向量时,可以使用一些优化算法,如随机梯度下降算法(Stochastic Gradient Descent)和谱聚类算法(Spectral Clustering),以提高计算效率和精度。
Mathematica语言
附录Mathematica 软件简介Mathematica是一个功能强大的数学软件.它集数值计算、符号运算,绘图功能于一身,堪称众多数学软件中的佼佼者.加之其语法规则简单,操作使用方便,深受广大科技工作者的喜爱,得到广泛的使用.数学函数和常数Mathematica提供了大量的数学函数,给运算带来很大方便.下面列出一些常用的函数.注:Mithematica提供的函数,其名称中的字母大小写是固定的(特别开头字母均为大写),不得误用;函数的自变量以方括号[ ]括起来.Mathemaica还提供了许多数学常数,下面列出了一些常数(均以大写字母开头).Pi -------------------π; E---------------------e; Infinity--------------∞I----------------------1函数和常数均可参与运算,下面是一些运算的例子.In[ l]:=Pi^2Out[ 1]=π2In[2]:=N[ Pi,11]Out[2]=3.1415626535In[3]:=Log[E^8]Out[3]=8In[4]:=Sin[Sqrt[%1]/6]Out[4]=1/2用户不仅可以使用Mathemaica提供的函数和常数,还可以自定义函数和常数.方法如下:形式功能f[x_]:= expr-------------定义函数ff[x_,y_]:=exp r-----------定义多变量的函数f?f------------------------显示函数的定义Clear[f]-----------------清除f的定义x=value-------------给变量x赋值x=.清除变量x的值注:定义函数时,在等式左端的方括号中的变量必须跟随下到线符号“_”;定义的函数或变量的名称不要使用大写字母开头,以免和Mathemaica的函数或常数混淆.例:In[1]:=f[x_]:=x^5;f[x_,y_]:=Sqrt[x^2+y^2];z=3;其中输入语句后的分号“;”表示不显示输出结果,定义了函数、变量以后,便可以在运算中使用.In[4]:=f[2]Out[4]=32In[5]:=f[1+b]Out[5]=(1+b)2In[6]:=g[z,4]Out[6]=5如果忘记了已定义的函数的内容,可以使用?f查询f的定义.当函数或变量使用完以后,最好将其清除,以免带来麻烦.3.符号运算符号运算即代数式的运算.它是Mathemaica的重要功能.下面简介符号运算的主要功能.(1)符号赋值Mathemaica不仅可以把一个常值赋给一个符号,还可以把一个表达式赋给一个符号.其规则如下:x =value--------------------将value 赋给x x =.-----------------------清除赋给x 的值expr/.x-> value -------------用value 替换expr 中的xexpr/.{x->xvalue,y->yvalue}----------用xvalue,yvalue 分别替换expr 中的x,y. 例:In[1]:=t =l +x Out[1]=1+x In[2]:= l- t^ 2 Out[2]=1-(1+x)2 In[3]:=t =. Out[3]=1-(1+x)2 In[4]:=l- t^ 2 Out[4]=1-t 2 In[5]:=%2/.x->2Out[5]=-8(2)代数式变换Mathernatica 提供了许多进行代数式变换的一些函数,下面列出常用的函数. Expand[expr]-----------------------展开exprExpandAll[expr]--------------------展开expr 的分子、分母 Factor[expr]-------------------------对expr 进行因式分解 Together[expr]----------------------对expr 进行通分 Apart [expr ]---------------------将 expr 分解为简单分式 Cancel[expr]----------------------消去exp r 的分子、分母的公因式 Simplify[expr]--------------------把expr 化为最少项形式 例: In[1]:=t=(x-1)^2(2+x)/((1+x)(x-3)^2),)x ()x ()x ()x (++-++-=1321Out[1]22 In[2]:=Expand[t] (展开分子,分母不变)x)(1x)3(x)(1x)3(3x)(1x)(-32Out[2]2322++-+++--++=x x In[3]:=ExpandAll[t] (展开分子、分母)323323253953935392Out[3]x x x x x x x x x x x +-+++-+-+-+=In[4]:=Together[%] (通分)32353932Out[4]x x x x x +-++-=In[5]:=Apart[%] (化为部分分式)x )4(11x )4(-319x )(-351Out[5]2++++++= In[6]:=Factor[%] (分解因式)x)(1x)(-3x)(2x)(-1Out[6]22++++= In[7]:=Simplify[%5] (将表达式化简)322539x )(2x )(-1Out[7]xx x +-+++= 除了上述常用的变换外,Mathematica 还可以进行许多种类型的变换.下面再看一些例子.In[8]:=Expand[2Cos[x]^3*Sin[2x]^2, Trig->True] (展开三角函数)Out[8]:=Cos @x D 3-Cos @x D 7+6Cos @x D 5Sin @x D 2-Cos @x D 3Sin @x D4In[9]:=Factor[%,Trig->True] Out[9]=8 Cos[x]5Sin[x]2In[10]:=ComplexExpand[Sin[x+y*I]] (展开复函数) Out[10]:=Cosh[y]Sin[x]+ICos[x]Sin[y]In[11]:=s=Expand[(x+y)^3];In[12]:=Coefficient[s,x^2] (取出s 中x^2项的系数) Out[12]=3yIn[13]:=Numerator[%1] (取出%1中的分子) Out[13]=(-1+x)2(2+x)In[14]:=Denominator[%1] (取出%1中的分母) Out[14]=(-3+x)2(1+x)Mathematica 还允许用户自己定义变换规则,例如: In[15]:=mysin=Sin[2*x_]->2Sin[x]Cos[x]; In[16]:=Sin[2*(x+y)^2]/.mysin Out[16]=2Cos[(x+ y)2]Sin[(x+ y)2]总之Mathematica 进行变换的功能是非常强的.(3)解方程Mathematica 可以用多种方法求解符号方程.下面列出主要的解法: Solve[equ,vars]-------------------求方程的一般解 Reduce[equ,vars]-----------------求方程的全部解 NSolve[equ,vars]----------------求方程的数值解FindRoot[equ,{x,a}]--------------求方程在 a 附近的数值解 其中,equ 是待求解的方程,var 是未知量. 例 In[1]:=Solve[a*x+b==0,x]注:方程中,等号必须用“= =” Out[1]={{x->-b/a}} In[2]:=Reduce[a*x+b==0,x]Out[2]=a == 0 && b == 0 || x ==-b/a && a != 0使用Reduce 给出了a!=0时的解和a=0,b=0时的解,(此时x 为任意值).对四次及四次以下的代数方程, Mathematica 总能给精确解.四次以上的方程,若能分解因式,亦可给出精确解.In[3]:=Solve[x^3+3x^2+ 3x+ 2== 0,x]Out[3]=8x ?-2<,8x ?-H -1L 1?3<,8x ?H -1L 2?3<当求不出精确解时,Mathemaica 以符号形式给出结果In[4]:=x^5+5x+1==0; In[5]:=Solve[%4,x]Out[5]=8x ?Root @1+5#1+#15&,1D <,8x ?Root @1+5#1+#15&,2D <,8x ?Root @1+5#1+#15&,3D <,8x ?Root @1+5#1+#15&,4D <,8x ?Root @1+5#1+#15&,5D <上述方程求不出精确解,此时可求数值解. In[6]:=NSolve[%4,x]Out[6]= 8x ?-1.0045-1.06095?<,8x ?-1.0045+1.06095?<,8x ?-0.199936<,8x ?1.10447-1.05983?<,8x ?1.10447+1.05983?<如果要求在某点附近的数值解,使用FindRoot In[7]:=FindRoot[x*Sin[x]==1/2,{x,1}] Out[7]={x->0.740841}使用 Solve 还可以求解方程组.Out[8]三 微积分进行高等数学中的各种运算是Mathematica 的主要功能.Mathematica 可进行微积分、线性代数和工程数学中的许多运算.特别是其符号运算能力,令人惊叹.现在Mathematica 已受到越来越多科技工作者的欢迎和使用。
mathematica求解矩阵方程
mathematica求解矩阵方程Mathematica是一款十分优秀的数学软件,它提供了许多强大的功能,可以用来解决数学方程、函数图像绘制、数据分析等多个领域的问题。
在矩阵方程的求解方面,Mathematica也拥有非常强大的功能,下面我们来一步一步详细讲解。
1.创建矩阵我们首先需要创建一个矩阵,以便后续进行方程的求解。
在Mathematica中,可以使用MatrixForm函数来创建一个二维的矩阵,函数的参数是由若干个列表组成的,每个列表代表一行矩阵,例如创建一个3*3的矩阵,可以使用以下代码:MatrixForm[{{1,2,3},{4,5,6},{7,8,9}}]2.解决方程在创建好矩阵之后,我们就可以使用Mathematica的方程求解功能来解决矩阵方程了。
Mathematica提供了相关的函数来处理线性方程组,例如LinearSolve和Solve函数,这里我们就以LinearSolve函数为例来讲解。
LinearSolve函数可以用来求解形如Ax=b的线性方程组,其中A代表系数矩阵,b代表常数向量,x代表未知变量向量。
在Mathematica中,我们可以直接使用LinearSolve函数进行求解,例如:LinearSolve[{{1,2},{3,4}}, {5,6}]以上代码表示求解如下方程组:x + 2y = 53x + 4y = 6输出结果为{x -> -4, y -> 4.5},即x=-4,y=4.5。
3.求逆矩阵在矩阵方程求解中,求逆矩阵也是一个非常重要的步骤。
在Mathematica中,我们可以使用Inverse函数来求解一个矩阵的逆矩阵,例如:Inverse[{{1,2,3},{4,5,6},{7,8,9}}]以上代码表示求解如下矩阵的逆:1 2 34 5 67 8 9输出结果为:-0.333333 -0.666667 0.333333-0.000000 0.000000 0.0000000.333333 0.333333 -0.3333334.广义逆矩阵除了求逆矩阵之外,还有一种广义逆矩阵的求解方法,可以在一些不满秩的矩阵上使用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Mathematica可进行矩阵的各种运算,如矩阵求逆、矩阵的转置、矩阵与向量的乘法等.下面列出主要的运算.记k为常数,u,v为向量,A,B为矩阵
k*A------------------------常数乘矩阵
k+u-----------------------向量u的每一个元素加上k
u+v----------------------向量的对应元素相加
向量的内积
u*v-----------------------向量的对应元素相乘
矩阵乘向量
向量乘矩阵
矩阵乘矩阵
Transpose[A]-----------------求矩阵A的转置阵
Inverse[A]--------------------求矩阵A的逆矩阵
Det[A]-------------------------求矩阵A的行列式
Eigenvalues[A]-----------------求数字阵A的特征值
Eigentvectors[A]---------------求数字阵A的特征向量
LinearSolve[A,v]---------------求解线性方程组Ax=v
Chop[%n]-------------------舍去第n个输出中无实际意义小量
矩阵可以左乘以向量或右乘以向量, Mathematica也不区分“行”,或“列”向量,自动进行可能的运算.
例:
In[1]:=A={{a,b},{c,d}}; v={x,y};
In[2]:= (A左乘以v)
Out[2]={ax+by,cx+dy}
In[3]:= (A右乘以v)
Out[3]={ax+cy,bx+dy}
In[4]:=Inverse[A]
Out[4]=
如果矩阵的元素是近似数,则求出的逆矩阵也是近似的。
In[5]:=B={{,},{,}}; Inverse[B]
Out[5]=
In[6]:=%.B
Out[6]=
结果与单位矩阵有微小误差,用函数Chop消去无实际意义小量
In[7]:=Chop[%]
Out[7]={{1.,0},{0,1.}}
前面已介绍了用Solve解线性方程组,但对于矩阵形式Ax=v的线性方程组,用 LinearSolve[A,v]更方便.
In[8]:=M={{2,1},{1,4}}; LinearSolve[M,{a,b}]
有些符号打不出来,你也可以参见()
Out[8]=。