许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  Matlab使用经验分享:常用函数与矩阵计算技巧

Matlab使用经验分享:常用函数与矩阵计算技巧

阅读数 3
点赞 0
article_banner

Matlab 使用经验分享

大家好!最近有很多朋友询问我关于 Matlab 的使用,于是我决定写一篇博客来分享一下我的经验。对于数学和编程爱好者来说,Matlab 是一个非常有用的工具。我自己在数学 实验 和数学建模竞赛中也经常使用它。那么,为什么 Matlab 这么受欢迎呢?

Matlab 的起源

MATLAB 是美国MathWorks 公司自20 世纪 80 年代中期推出的数学软件, 优秀的数值 计算能力和卓越的 数据可视化  能力使其很快在数学软件中脱颖而出。

为什么选择 Matlab?

由于 Maltab 编程方便,有大量内部函数和工具箱可以使用,作图也十分方便,因此在 数学实验和 数学建模竞赛 中,我们就常使用 Matlab 作为我们的编程工具。

一些常用函数介绍

  • 三角函数
  • 指数函数与对数函数
  • 与复数有关的函数
  • 舍入函数及其它数值函数

矩阵常见计算

矩阵输入

矩阵输入最简单的方法是把矩阵的元素直接排列在方括号中。每行内的元素间用空格或逗号隔开,行与行之间用分号隔开。例如:

A=[1,4,7;3,6,9;6,7,4]

矩阵的转置

矩阵的转置用符号´来表示。例如:

A=[1,4,7;3,6,9;6,7,4];
B=A´

矩阵的加减

矩阵的加减使用的是”+”和”-“ 运算符  。进行矩阵加减运算必须是同型矩阵。例如:

   A=[1,3,6;4,5,7;7,8,9];

   B=[3,5,7;2,4,6;1,3,9];

   C=A+B

   以下是关于矩阵与标量进行加减运算的内容:

   矩阵可以与一个数进行加减运算,运 算法  则是对应每个元素加减同一个数。例如:

Z=C-1

结果为:

   Z =

   3

   5

   …

矩阵乘法

矩阵乘法用符号*表示。要求前一矩阵的列数与后一矩阵的行数相同。例如:

A=[1,4,7;2,5,8];
B=[4,5,9;1,7,8;3,2,1];
C=A*B

在 Matlab 中,还可以进行矩阵与数的乘法。其规则是矩阵的每个元素与该数相乘。例如:

A=[1,5,8;2,6,9];
B=3*A

结果为:

   B =

   3 15 24

   6 18 27

矩阵的行列式

求方阵 A 的行列式,用 det(A) 表示。例如:

   A=[1,3,6;2,5,8;3,9,11];

   Z=det(A)

矩阵求逆

非奇异矩阵 ( A ) 的求逆用 inv(A) 表示。例如:

A=[1,3,6;2,5,8;3,9,11];
Z=inv(A)

结果为:

   Z =

   -2.4286 3.0000 -0.8571

   0.2857 -1.0000 0.5714

   …

   以下是关于如何验证矩阵的逆以及如何使用逆矩阵来解方程组的内容:

   要验证矩阵的逆是否正确,可以计算 ( C = A \times Z )。例如:

C =
   1.0000 0 -0.0000
   0 1.0000 -0.0000
   ...

利用逆矩阵可以解方程组。例如:

   AX=b

   其中:

   A=[1,3,6;…

   以下是关于如何使用矩阵来解方程组和函数拟合的内容:

   例如,给定以下方程组:

A=[1,3,6;2,5,8;3,9,11];
b=[3,6,7]';
X=inv(A)*b

结果为:

   X =

   4.7143

   -1.1429

   0.2857

   或者,使用 X=A\b 也可以求解。此外,X=A\b 还可以求解矛盾方程组。

函数拟合

假设因变量 y 与自变量 x 之间存在以下关系:

   y = a + b * exp(-x)

   观测数据为:

   | x | 0.0 | 0.3 | 0.8 | 1.1 | 1.6 | 2.3 |

   | y | 0.82| 0.72| 0.63| 0.60| 0.55| 0.5 |

   基于这些数据,我们可以建立矛盾方程组 AX=y,其中X=[a,b] ′

   以下是关于如何使用 m 文件进行函数拟合的内容:

   我们可以创建以下 m 文件来进行拟合:

   t=[0.0, 0.3, 0.8, 1.1, 1.6, 2.3]‘;

   y=[0.82, 0.72, 0.63, 0.60, 0.55, 0.5]’;

   A=[ones(size(t)),exp(-t)];

   X=inv(A’*A)*A’*y;

   或者

   X=A\y;

   计算结果为:

   X = 0.4760 0.3413

   即:a=0.4760,b=0.3413。

   函数拟合为:y=0.476+0.3413×e^x 。

   我们可以使用图形来表示结果。
在这里插入图片描述

   以下是 M 文件的内容:

   M 文件如下

   t=[0.0 0.3 0.8 1.1 1.6 2.3]’

   y=[0.82 0.72 0.63 0.60 0.55 0.5]’

   A=[ones(size(t)),exp(-t)]

   x=inv(A’*A)*A’y
n=500
tt=zeros(n,1);
yy=zeros(n,1);
dt=2.3/n;
for i=1:n
tt(i)=i
dt;

   yy(i)=x(1)+x(2)*exp(-tt(i));

   end
plot(t,y,‘*b’,tt,yy,‘r’)

   b—表示蓝色,代表原数据

   r-----表示红色,代表拟合曲线

矩阵特征值

如果 A 为方阵,满足 AX=λX 的 λ 称为 A 的特征值,X 称为 A 的特征向量。计算 A 的特征值用 eig(A)表示。

   例如:

   A=[1 3 6; 2 5 8; 3 6 8];

   Z=eig(A)

   结果为:

   Z =

   15.2382

   -1.3365

   0.0982

   如要同时求出特征向量,采用 表达式   [X,V]=eig(A)。

   结果为:

   X = -0.4135 -0.6094

   -0.6765

   V =

   15.2382

   0

   0

需要直接看PDF文件,直接在博主主页的资源里免费下载,因为博主写的时候可能个别的会有缺漏,需要看原文档的直接下载即可。


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空