Matlab--从入门到精通(Chapter3 矩阵运算)
数值计算可以分为两类:矩阵运算和矩阵元素运算
3.1 矩阵函数和特殊矩阵
矩阵代数的处理数组大部分以一维数组(向量)和二维数组(矩阵)为主。
常见的矩阵处理函数如下:

特殊矩阵:

稀疏矩阵:
稀疏矩阵的创建通常可以通过使用sparse和spdiags函数来进行:
- sparse(i,j,s,m,n,nz_max)使用[i,j,s]来创建m*n维稀疏矩阵s,其中s为所有非零元素构成的向量,i,j分别为非零元素的行下标和列下标。
- spdiags(B,d,m,n)可以抽取、创建或替代对角稀疏矩阵,其中m和n分别为矩阵的行和列的维数,d表示长度为p的整数向量,B为满矩阵。
- 稀疏矩阵和满矩阵之间可以通过sparse和full函数进行转换。
- spy(A)画出A矩阵
3-2 矩阵分析
- 范数分析:norm()函数可以用来求解向量和矩阵的范数,
如 n2=norm(x),ninf=norm(x,inf),nneg_inf=norm(x,-inf)分别求解二范数,无穷范数和负无穷范数
求解大型矩阵的范数和稀疏矩阵时,可以考虑采用normest来求解。
- 条件数分析:矩阵的条件数总是大于1,正交矩阵的条件数等于1,奇异矩阵的条件数为无穷大,
病态矩阵的条件数是比较大的数据。 矩阵的条件数可以通过函数cond()求解。
3.3 线性方程组
下面介绍三种方程组:恰定方程组、超定方程组、欠定方程组。
- 恰定方程组:方程组的个数和未知数的个数相等,分为奇异和非奇异两种。
%求解非奇异恰定方程组的解
>> A=[1 2 3;4 5 6;7 8 0];
>> y=[366;804;351]
%方法一:判断A的条件数、秩以及增广矩阵[A y]的秩
>> rank(A)
>>rank([A y])
>> cond(A)
>> x_1=inv(A)*y
>> %方法2 通过矩阵左除来求解线性方程组的解,LU分解,速度快
>> x_2=A\y
%求解奇异恰定方程组的解
>> A=[1 3 7;-1 4 4;1 10 18];
>> y=[6;4;15];
>> %方法1:通过矩阵左除来求解线性方程组的解
>> x_1=A\y
>> %方法2 判断A的条件数、A的秩以及增广矩阵[A y]的秩
>> det_A=det(A)
>> rank_A=rank(A)
>> rank_Ay=rank([A y])
>> cond_A=cond(A)
>> x_2=pinv(A)*y;
>> disp(x_2)
- 欠定方程组:方程组的个数小于未知数的个数,存在无数个解。最小范数解,略。
方法1:左除法:x_1=A\y
方法2:伪逆矩阵法(范数最小)
x_2=pinv(A)*y
- 超定方程组:方程组的个数大于未知数的个数,存在无数个解。最小二乘解,略。
3.4 矩阵分解
主要包括Cholesky 分解、LU分解和QR分解
3.5 特征值分析(略)
Matlab--从入门到精通(Chapter3 矩阵运算)的更多相关文章
- Matlab 从入门到精通 Chapter11 文件读取I/O
11.1 工作空间数据读取 将工作空间的变量保存为文件,可以使用save命令. save('filename') 将文件保存在当前目录下,文件名为filename.mat save('filenam ...
- 《Matlab实用案例》系列Matlab从入门到精通实用100例案例教程目录(持续更新)
目录 1. 专栏简介 2. 专栏地址 3. 专栏目录 1. 专栏简介 2. 专栏地址 「 刘一哥与GIS的故事 」之<Matlab使用案例> 3. 专栏目录 [MATLAB统计分析与应用1 ...
- Matlab从入门到精通 Chapter5 数据可视化--
5-1 图形绘制示例 >> x2=-17:0.02:3; >> y2=1./((x2+3).^2+1)+1./((x2+9).^2+4)+5; >> subplot ...
- CUDA从入门到精通
http://blog.csdn.net/augusdi/article/details/12833235 CUDA从入门到精通(零):写在前面 在老板的要求下.本博主从2012年上高性能计算课程開始 ...
- CUDA从入门到精通 - Augusdi的专栏 - 博客频道 - CSDN.NET
http://blog.csdn.net/augusdi/article/details/12833235 CUDA从入门到精通 - Augusdi的专栏 - 博客频道 - CSDN.NET CUDA ...
- MyBatis从入门到精通(1):MyBatis入门
作为一个自学Java的自动化专业211大学本科生,在学习和实践过程中"趟了不少雷",所以有志于建立一个适合同样有热情学习Java技术的参考"排雷手册". 最近在 ...
- 【halcon教程资料】全网汇总如何快速、高效率学习机器视觉从入门到精通
我以八年的视觉工程师开发的工作经验告诉你,你不要再因为学习halcon发愁了,我接触过很多学习halcon的小白,并不是不愿意学,而是不知道怎么快速.高效率的学习精通,一天天的过去了,对学习halco ...
- 【CUDA开发】CUDA从入门到精通
CUDA从入门到精通(零):写在前面 在老板的要求下,本博主从2012年上高性能计算课程开始接触CUDA编程,随后将该技术应用到了实际项目中,使处理程序加速超过1K,可见基于图形显示器的并行计算对于追 ...
- Simulink仿真入门到精通(十九) 总结回顾&自我练习
从2019年12月27到2020年2月12日,学习了Simulink仿真及代码生成技术入门到精通,历时17天. 学习的比较粗糙,有一些地方还没理解透彻,全书梳理总结: Simulink的基础模块已基本 ...
- matlab快速入门
matlab快速入门 1矩阵 生成矩阵 % 直接法 a = [1,2,3;4,5,6;7,8,9]; % 冒号一维矩阵 a = 开始:步长:结束,步长为1可省略 b = 1:1:10; % 1,2 ...
随机推荐
- jqury中$("#div").index($this)在setTimeoutt中返回值一直是-1的问题解决方案
今天遇到一个十分蛋疼的问题,花了我一个多小时才解决,其实十分简单,但我是新手,好了,事情是这样的: 我想让鼠标停留在某个元素一定时间再显示它隐藏的内容(不然你鼠标快速滑上滑下,反反复复,如果碰上sli ...
- 用Latex做介绍自己和团队科研的网页
最近实验室师妹用网上的一些模板改了改做了几个网页.感觉还可以.但是实际上总觉得好像和韩家炜.周志华他们的页面差点什么. 最近找论文时发现奥地利的hornik老先生页面居然latex做的,然后找到了下面 ...
- Win8 Windows Defender default behaviour
Problem Description ********************* Is it possible, to change the default behaviour when findi ...
- ZBrush中Document特性介绍
ZBrush®中的Document调色板用于加载或保存ZBrush文档,导入背景图像.导出背景图像.调整画布大小和设置背景颜色.本文小编来给大家介绍下Document常用的一些基本功能. ZBrush ...
- luoguP4921 情侣?给我烧了! 组合数_容斥原理_计数问题
Code: #include <cstdio> #include <algorithm> #include <cstring> #define setIO(s) f ...
- mySql 使用 SQL 文件脚本 failed to open file 注意事项
1.路径不要有中文,其实最好是全英文 2.路径可以有空格 3.路径两头不要加引号 4.作为一个MySQL命令,source C:/lib/a.sql; 后边的分号是要的. 5.使用 unix 路径风格 ...
- 用 JavaScript 实现简单拼图游戏
本篇主要讲解,如何利用原生的 JavaScript 来实现一个简单的拼图小游戏. 线上体验地址:拼图 一.游戏的基础逻辑 想用一门语言来开发游戏,必须先了解如何使用这门语言来实现一些基础逻辑,比如图像 ...
- 使用iframe标签时如何通过jquery隐藏滚动条
通过mouseover和mouseout事件来控制iframe的滚动条 代码如下:
- Tire树总结(模板+例题)
题目来自<算法竞赛设计指南> Tire树是一种可以快速查找字符串的数据结构 模板 #include<cstdio> #include<algorithm> #inc ...
- 封装HttpClient进行http请求与https请求
一.https忽略证书 /** * 用于进行Https请求的HttpClient * * @author joey * */ public class SSLClient { public stati ...