Matlab 在线性代数中的应用
目录
1 向量组的线性相关性
2 线性方程组
3 相似矩阵及二次型
3.1 使用 sym 函数直接创建符号矩阵
3.2 将数值矩阵转化为符号矩阵
3.3 符号矩阵的索引和修改
1 向量组的线性相关性
求列向量组 A 的一个最大线性无关组可用命令 rref(A)将 A 化成阶梯形的行最简形 式,其中单位向量对应的列向量即为最大线性无关组所含向量,其它列向量的坐标即为 其对应向量用最大线性无关组线性表示的系数。
例 1 求下列矩阵列向量组的一个最大无关组。
解 编写 M 文件 ex1.m 如下:
format rat
a=[1,-2,-1,0,2;-2,4,2,6,-6;2,-1,0,2,3;3,3,3,3,4];
b=rref(a)
解 编写 M 文件 ex2.m 如下:
format rat
a=[2,2,-1;2,-1,2;-1,2,2];b=[1,4;0,3;-4,2];
c=rref([a,b])
2 线性方程组
Matlab 中解线性方程组可以使用“\”。虽然表面上只是一个简简单单的符号,而它 的内部却包含许许多多的自适应算法,如对超定方程用最小二乘法,对欠定方程它将给出范数最小的一个解,解三对角阵方程组时用追赶法等。 另外欠定方程组可以使用求矩阵 A 的阶梯形行最简形式命令 rref(A),求出所有的基础解系。
解 编写 M 文件 ex3.m 如下:
format rat
a=[2,1,-5,1;1,-3,0,-6;0,2,-1,2;1,4,-7,6];
b=[8;9;-5;0];
solution=a\b
求得 solution=[3 -4 -1 1]'。
例 4 求超定方程组
解 编写 M 文件 ex4.m 如下:
a=[2,4;3,-5;1,2;2,1];
b=[11;3;6;7];
solution=a\b
求得 solution=[ 3.0403 1.2418]'。
例 5 求解方程组
解 编写 M 文件 ex5.m 如下:
format rat
a=[1,-1,-1,1,0;1,-1,1,-3,1;1,-1,-2,3,-1/2];
b=rref(a)
3 相似矩阵及二次型
有时我们需要精确的特征值和特征向量,就须利用 Matlab 的符号运算功能。 在 Matlab 中创建符号矩阵和创建数值矩阵的形式很相似,只不过要用到符号定义 函数 sym。下面介绍使用此函数创建符号函数的几种形式。
3.1 使用 sym 函数直接创建符号矩阵
此方法和直接创建数值矩阵的方法几乎完全相同。矩阵元素可以是符号表达式,各 符号表达式的长度可以不同,矩阵元素之间可用空格或逗号分隔。 例如:
x=sym('[a+sin(d),b;1/c,d]');
y=det(x)
求得 y=(d*c*a+d*c*sin(d)-b)/c
3.2 将数值矩阵转化为符号矩阵
在 Matlab 中,数值矩阵不能直接参与符号运算,必须先转化为符号矩阵。 例如:
a=[2/3,sqrt(2);3,1]
a= 0.6667 1.4142 3.0000 1.0000
b=sym(a)
b=[ 2/3, sqrt(2)] [ 3, 1]
3.3 符号矩阵的索引和修改
Matlab 的符号矩阵索引和修改同数值矩阵的索引和修改完全相同。 例如:对上例中的矩阵 b 进行修改
b(2,2)='log(9)'
3.4 举例
A=[0,1,1,-1;1,0,-1,1;1,-1,0,1;-1,1,1,0];
[P,D]=eig(A)
上面求得的正交矩阵 P 是数值解,下面我们求正交矩阵的精确解。
a=sym('[0,1,1,-1;1,0,-1,1;1,-1,0,1;-1,1,1,0]');
[v,d]=eig(a)
即求得矩阵 A的特征值为 1、1、1、3,对应的特征向量分别是矩阵 v 的第 1、2、 3、4 列。再把对应于特征值 1 的 3 个特征向量正交化、单位化,我们就容易求出正交 矩阵P 。
Matlab 在线性代数中的应用相关推荐
- 【MATLAB】(四)MATLAB在线性代数中的应用
文章目录 前期教程 概述 一.矩阵 1 矩阵的创建 a. 直接创建 b. 创建等距数组 c. 创建等比数组 d. 特殊矩阵 e. 创建对角矩阵 f. Vandermonde矩阵 g. 符号矩阵的生成 ...
- matlab在线性代数中的应用开题报告,矩阵应用开题报告.doc
矩阵应用开题报告 山西大同大学 09 届本科毕业论文(设计)开题报告及任务书学院:数计学院 系别:数学系 专业(专业方向):数学与应用数学 论文题目矩阵的秩及其应用指导教师施智杰职称讲师学生姓名靳倩学 ...
- matlab 培训 长春,MATLAB在线性代数中的应用
教材简介: 随着现代科学和计算机技术的高速发展,线性代数在计算技术中的地位日益突出,用代数方法解决实际问题已渗透到科学的各个领域.因此,提高大学生的科学计算能力,培养学生实践能力和创新能力,以适应新世 ...
- matlab在线性代数中的应用
chapter1 function test1format rat a=[1,-2,-1,0,2;-2,4,2,6,-6;2,-1,0,2,3;3,3,3,3,4]; %求a的最大无关组 b=rref ...
- Matlab在线性代数中的应用(一):向量组的线性相关性
前言 求列向量组A的一个最大线性无关组可用命令rref(A)将A化成行最简形,其中单位向量对应的列向量即为最大线性无关组所含向量,其它列向量的坐标即为其对应向量用最大线性无关组线性表示的系数. 以下是 ...
- MATLAB(五)在线性代数中的应用
MATLAB在线性代数中的应用 (一)向量组的线性相关性 求列向量组A的一个最大线性无关组,可用命令rref(A)将A化成行最简形,其中单位向量对应的列向量即为最大线性无关组所含向量,其他列向量的坐标 ...
- 科学计算:Python VS. MATLAB(3)----线性代数基础
科学计算:Python VS. MATLAB(3)----线性代数基础 按:在介绍工具之前先对理论基础进行必要的回顾是很必要的.没有理论的基础,讲再多的应用都是空中楼阁.本文主要设涉及线性代数和矩阵论 ...
- Python在高等数学和线性代数中的应用
Python在高等数学和线性代数中的应用 科学运算设计数值运算和符号运算,数值运算可以使用Numpy库和Scipy库,符号运算则可以使用Sympy工具库,数值计算的表达式.矩阵变量中不允许有未定义的自 ...
- matlab 找到数组中第一个不连续点_1.基础知识(1) Matlab基础知识
前言: 前两次文章有读者私信说Matlab初学,基础较差,本次分享一下Matlab的基础内容,熟练者可以跳过本文,后续的文章也会在文后加上一些基础内容分享. 关键字:Matlab.数组.函数.计算.绘 ...
最新文章
- linux仿mac os10,Win10就是不如Mac顺手?几款仿Mac小工具推荐
- el-table 树形表格 自定义展开图标_耍好控件 | 产品图标体系是如何炼成的?
- 【Python】2.x与3​​.x版本的选用版本间的区别
- 超详细讲解,带你零基础入门 kafka!
- 图片变色_一张图看懂手机CMF史,附带手机渐变色工艺解析
- 2020-01-14 IP/TCP/UDP 对应的RFC编号
- Zephyr在编译时将二进制文件转化成c语言数组
- NYOJ--289--苹果
- Linq 操作XML文件
- 循序渐进之Spring AOP(2) - 基本概念
- 单片机C51产生正弦波可控制周期(通过计时器)
- HTML表格表格标签的属性
- Python GUI编程—Tkinter实战一(生日快乐小程序)
- 教资(信息技术学科知识与教学能力)13-1信息技术课程知识
- 请你讲讲wait方法的底层原理
- Windows下强制删除文件的批处理文件
- 大多数人没听过的FreeEIM飞鸽传书,超炫酷的仿QQ,九零后都爱玩
- 软件测试基础知识回顾复习
- 聊天消息敏感词屏蔽系统(字符串替换 str.replace(str1, *) )
- 线性反馈移位寄存器(LFSR)和 Berlekamp-Massey 算法