数学实验(Matlab语言环境和线性代数实验)
一、Matlab语言环境和线性代数实验
1.Matlab语言环境
Matlab简介
·Matlab:Matrix Laboratry 矩阵实验室
·Matlab 提供了强大的科学计算、灵活的程序设计流程、高质量的图形可视化与界面设计等功能,被广泛应用于科学计算、控制系统、信息处理等领域的分析、仿真和毕业设计。
·Matlab 功能强大、简单易学、编程效率高,深受广大科技工作者的欢迎
Matlab的特点
·Matlab 是一个交互式软件系统
·Matlab 以矩阵为数据操作的基本单位,但无需预先指定矩阵维数
·提供十分丰富的数值计算函数,方便计算
·命令与数学中的符号、公式非常接近,可读性强
·Matlab 丰富的工具箱(toolbox)
Matlab的命令窗口
·交互式的命令执行方式
-在Command Window内的提示符(>>)之后输入运算式,并按Enter键即可
-缺省变量名ans
-若不想在屏幕上输出结果,可以在语句最后加分号“ ;”
·M命令文件的程序设计方式
-(M文件的编辑、存储、执行和个性化路径)
Matlab变量
·变量命名原则
-以字母开头,后面可以跟字母、数字和下划线,例如:x1
-变量名称区分字母的大小写:ABC和abc不同
-字母间不可留空格,可以用下划线,例如:dhy_func1
·Matlab语句的通常形式
变量=表达式
-例如:
·系统预定义变量
-pi 圆周率π,其值为imag(log(-1))=imag(pi*i)
-inf / Inf 无穷大
-nan / NaN Not-aNumber,一个不定值,如0/0
-eps 浮点运算相对精度
-i / j 虚部单位,即
注意:应尽量避免给系统预定义变量重新赋值
·特殊变量 ans
Matlab数值运算
·数学运算符
常用数学函数
上机练习
1.求29的自然对数
2.自然指数e
3.计算
矩阵
·Matlab的操作对象是 矩阵
·矩阵的直接输入
例:A=[1 2 3;4 5 6;7 8 9]
-矩阵用方括号 “[ ]” 括起
-矩阵同一行中的元素之间用空格或逗号分隔
-矩阵行与行之间用分号分开
-直接输入法中,分号可以用回车代替
向量的生成
·向量的生成
-直接输入;a=[1,2,3,4]
-冒号创建:x=a:step:b
-生成线性等分向量:x=linspace(a,b,n)
矩阵操作
·提取矩阵的部分元素:冒号运算符
矩阵下标
矩阵的各种处理
矩阵元素赋值
·大矩阵可以把小矩阵作为其元素
例:A=[A;11 12 13](在原矩阵的下方加一行)
常见矩阵生成函数
矩阵操作
·矩阵的转置与共轭转置
' 共轭转置
·查看矩阵的大小:size()
逆矩阵与行列式计算
·矩阵的逆矩阵:inv(A)
·矩阵的行列式:det(A)
·矩阵的秩:rank(A)
矩阵的数组运算
·数组运算:对应元素进行运算
-数组运算包括:点乘、点除、点幂
-相应的数组运算符为:“ .* ”、“ ./ ”、“ .\ ”和“ .^”
向量特殊运算介绍
变量的存储
·存储当前工作空间中的变量
-save 将所有变量存入文件 matlab.mat
-save mydata 将所有变量存入文件 mydata.mat
·存储指定的变量
save 文件名 变量名列表
例:
变量的读取
·将数据文件中的变量载入当前工作空间
·清除当前工作空间中的变量
几个小技巧
Matlab帮助系统
·联机帮助
help 显示指定命令的简短使用说明
·详细使用帮助
doc 以网页形式显示指定命令的帮助页
·Google或Baidu:Matlab矩阵的操作
2.线性代数实验
矩阵的特征值和特征向量
设矩阵A是一个n阶方阵,如果存在数和一个非零列向量X,使AX=
X,则数
称为A的特征值,向量X称为A对应于特征值
的特征向量
例:
相关应用:
·写出二次型的标准型
·基因遗传等实验
线性方程组Ax=b求解
当A为满秩矩阵(方阵)时,则x=A^(-1)*b,在Matlab中有两种方式计算上市(推荐使用第二种形式,因为与第一种相比,其求解速度更快,数值更精确)
·x=inv(A) .*b
·x=A . \ b
例:
注意:矩阵运算不要忘记 “ . ”
齐次方程组Ax=0求解
若A不满秩,则方程有非零解
例:
非齐次线性方程组Ax=b求解
·r(A)=r(A,b)=n,方程有唯一解
x=A/b 或 x=inv(A)*b
·r(A)=r(A,b)<n,方程有无穷解
特解:A\b
·用null(A,'r')求得Ax=0的基础解析
例: