《太原理工大学MATLAB复习课件》由会员分享,可在线阅读,更多相关《太原理工大学MATLAB复习课件(104页珍藏版)》请在金锄头文库上搜索。
1、Matlab电子信息应用,课时安排,教学内容,第一章概述 第二章基本语法 第三章图形绘制基础 第四章M文件 第五章动态仿真集成环境Simulink 第六章Matlab在信号处理中的应用,第一章 概述,1 Matlab发展史 70年代后期,Cleve Moler,MATLAB (MATrix LABoratory) ,即Matrix和Laboratory的组合。 1984,1.0,第一个商业化的版本,DOS版 1990,3.5,增加动态仿真集成工具simulink 1993,4.2,图形界面设计,windows版,增加Maple 1994,4.2c(版本编号),R7(建造编号) 1997,5.0
2、,增加单元数据、多维矩阵、对象与类等数据结构 1999,5.3,32位计算 2001,6.1版 2003,6.5版 2006,7.2,R2006a 2006,7.3,R2006b 2008,7.6,R2008a 2009,7.9,R2009b 现在一般每年发布两个版本,上半年a版本,下半年b版本 .,Matlab 数值计算 Mathematic 符号计算 Maple 数学和工程计算, “数学家的软件” MathCAD 计算,图形,文字,2 Matlab语言的特点和功能,一、特点 1、起点高 以矩阵为基本运算单元 每一个元素可以看作复数 所有的运算对矩阵和复数有效 2、编程效率高,界面友好 语法
3、简单 矩阵行列数不需预先定义 键入算式立即得到结果,解释性程序设计语言,3、图形功能方便灵活 二维、三维图形 可选不同坐标系 修饰图形 4、功能强大、可扩展性强 5、在线帮助丰富,二、功能,1、高质量、强大的科学计算功能 2、数据分析与可视化功能 3、强大的符号计算功能,以Maple做核心 4、强大的非线性动态系统建模与仿真,simulink 5、灵活的应用程序接口功能,API,C,Fortran 6、文字处理功能,3 Matlab界面环境,Command window命令窗口 Launch Pad发射台 Workspace工作空间窗口,变量 Command History命令历史记录窗口 C
4、urrent Directory 当前目录,基本命令,语句 表达式(变量、运算符、数字)-ans 变量=表达式;表达式运行结果不显示 快捷键 EscHomeEnd (续行符),数据格式,short短格式,5位,最多显示小数点后4位 long 长格式,15位,最多显示小数点后14位 short e 短格式科学格式,5位 long e长格式科学格式,15位 short g选择5位short和short e中较好的表示 long g 选择15位long和long e中较好的表示 rational (rat) 近似的有理数的表示 hex 十六进制的表示 bank 用元 角分(美制)定点表示 compa
5、ct 变量之间没有空行 loose 变量之间有空行 +只显示符号 设置格式的命令行方式: format 显示格式,常用命令,mkdir创建目录 cd跳转目录 rmdir删除目录 clc清屏 edit打开编辑器 exit(quit)退出 dir(ls)列出目录内容 help 命令名 查询所列命令的帮助信息,工作空间操作,clear 变量从工作空间清除所有变量 clear all 从工作空间清除所有变量和函数 who 列出当前工作空间中的变量 whos 列出当前工作空间中的变量及信息 savename 保存工作空间变量到文件name.mat savenamexy保存工作空间变量 x y到文件nam
6、e.mat loadname 加载name.mat文件中的所有变量到工作空间 loadnamexy 加载name.mat文件中的变量x y到工作空间,文件名和变量名的特殊用法 load mydata a*b save mydata a*,Matlab文件类型,文件类型说明扩展名 M-filesM文件.m Mat-files数据文件.mat Mex-filesMEX文件.mex(c语言编译的执行文件) FIG-filesFIG文件.fig (图形文件 P-filesP文件.p (加密的文件 Models模型文件.mdl (Simulink模型),第二章 基本语法,1 表达式和变量 一、表达式 表
7、达式由运算符、函数、变量和数字组成 基本形式: 表达式 变量=表达式,1、数值表达式,一般形式 11.2-3.541.2e73.5e-3 数据精度 eps=2-52 复数 i,j表示复数单位1.3+j-2.4-5*j,2、常用运算符,+ - * / (左除,矩阵运算中用于求解方程组),二、变量,一般变量 z1=1+i;z2=1-i; z3=z1/z2;z4=z1*z2 永久变量 变量名含义 realmin最小的浮点数2-1022=2.225110-308 realmax最大的浮点数21024=1.797710308 eps浮点运算误差限,也叫容差变量,定义为0到最近浮点数的距离,若某个量的绝对
8、值小于eps,就认为这个量为0,其值为 2-52 pi圆周率的近似值 inf正无穷大 ,定义为1/0 nan非数,产生于0/0, / ,0* 等运算 i,j虚数单位,i=j=,2 Matlab基本运算,数组运算 矩阵 关系与逻辑 字符与字符串 符号,等 差 数 列,一、数组运算,1、一维数组的创建 (1)直接创建 数字 ,数字 ,数字 中间以“,”或空格来间隔 表达式,表达式,表达式 (2)冒号表达式 初值:终值生成整数数组,增量为1,可以用括起来 (3)初值:增量:终值 (4)linspace(初值,终值,n) 以初值为起始值,终值为结束值均匀地取n个点 (5)logspace(a,b,n)
9、 以10a为初值,10b为终值,取n个点,使数列为等比数列,2、一维子数组的寻访与赋值,对一个已经创建的一维数组x,可以用下列方式对其寻访或赋值: 如果x=2:2:10,n=4 x(n) x(1:3) x(3:-1:1) x(2:end) x(1 3 3 2 4 5) x(3)=0 x(1,3)=3 9,8 2 4 6 6 4 2 4 6 8 10 2 6 6 4 8 10 2 4 0 8 10 3 4 9 8 10,3、2维数组的创建与寻访,直接创建 , , ; , , ; , , a=1:3;4:6;7:9 eye(n) eye(3) - magic(n) magic(3),寻访 x(m,
10、n) x(m,n) x(m) 例如a= a(2 3) - 4 7,4、数组运算,+ - * 矩阵乘 .* 数组乘(对应元素相乘) / 矩阵除 ./ 数组除(对应元素相除) 矩阵幂. 数组幂(各个元素求幂) conj 共轭 共轭转置 例:a=1:4 b=1:2:7 c=1 2;3 4 a-b a.*b a*b 2.c,5、数组操作,已知x=4:6,求下列操作 1)插入A=x-3;x;x+3 2)重新排列B=A(3:-1:1,1:3) 3)提取C=A(1:2,2:3) 4)按列拉长D=C(:) 5)置空B(:,2)= 6)置零B(2,2)=0,7)用单下标操作一个矩阵B(2:4) 8)用逻辑表达式
11、操作一个矩阵 x=-3:3 abs(x)2 9)按指定条件求子数组 求数组x=-4:4中满足|x|2的元素 find()作用于逻辑数组时,返回逻辑数组中非零元素的下标 find(abs(x)2) x(find(abs(x)2) 10)求数组的大小 size(x)返回x的行列值,用n,m表示 length(x)返回x的行数和列数中较大的一个 a=1:3;4:6 size(a) -2 3 r,c=size(a),6、数组操作函数,diag(A)提取矩阵A的对角线元素,返回给列向量 diag(V)以向量V为对角线元素,创建对角矩阵 flipud(A)将矩阵A上下翻转 fliplr(A)将矩阵A左右翻
12、转 rot90(A)将矩阵A逆时针翻转90度 reshape(A,m,n)返回一个mxn矩阵,其元素以列方式从A中获得,A必须包含mxn个元素 tril(A)提取矩阵A的下三角矩阵 triu(A)提取矩阵A的上三角矩阵,例,i1=imread(cameraman.tif); %256x256 subplot(121);%分割绘图区域 imshow(i1) %绘图 i2=reshape(i1, 1, 256*256); %变形 i3=double(i2); %变成浮点数 i4=i3+30*randn(size(i3); %加随机噪声 i5=reshape(i4,256,256); %变形 i6=
13、uint8(i5); %变成无符号8位整数格式 subplot(122); % imshow(i6) %,二、矩阵运算,1、常用的特殊矩阵函数 zeros(m,n)零矩阵 ones(m,n)1矩阵 eye(m)单位阵 randn(m,n)正态分布随机矩阵,范围(- ,+) rand(m,n)均匀分布的随机矩阵,范围(0,1) magic(n)n阶魔方阵 2、矩阵运算 + - * / ,三、数组函数和矩阵函数,1.基本数组函数 三角函数 sincostan asinacosatan sinhcoshtanh双曲 asinhacoshatanh反双曲 csc余割sec正割coh余切 acscase
14、cacoh,指数函数 exp以e为底求指数 log求自然对数 log2以2为底求对数 log10以10为底求对数 pow2求2的幂 sqrt开方 nextpow2(x)求比x大而且最接近的2的幂,复数函数 abs求绝对值,复数模 angle相角 real实部 imag虚部 conj求共轭复数 isreal是实数时为真,取整函数 round四舍五入为整数 fix向0舍入为整数 floor向-舍入为整数 ceil向舍入为整数 sign求符号 rem(a,b)a整除b求余数 mod(x,m)x整除m求正余数,2. 基本矩阵函数 cond(A)计算A的2-范数下的条件数 det(A)矩阵A的行列式值,
15、|A| dot(A,B)矩阵A和B的点积 inv(A)方阵A的逆阵 (V,D)=eig(A)矩阵A的特征值和特征向量 V为A的特征向量,D的对角线值为其特征值,A*V=V*D norm(A)A的范数 norm(A,1)1范数 norm(A,2)2范数 norm(A,fro)F范数,rank(A)A的秩 trace(A)A的迹 expm(A)A的指数 logm(A)A的对数 sqrtm(A)A的平方根 x.(1/2) - sqrt(x) x(1/2) - sqrtm(x) pinv(A)A的伪逆 A*NE, 但满足A*N*A=A, N*A*N=N polg(A)A的特征多项式系数 roots(A
16、)A的特征根,3. 矩阵分解函数 eig(A)特征值分解 lu(A)lu分解,也叫三角分解 l,u=lu(A), 则有A=l*u l : 准下三角矩阵 u: 上三角矩阵 qr(A)qr分解,也叫正交分解 q,r=qr(A),则有A=q*r q: 正交阵r:上三角阵 svd(A)svd分解,也叫奇异值分解 s,v,d=svd(A) , 则有A=s*v*d s,d:酉阵 v:与A同大小的对角阵,奇异值,矩阵分解函数的使用 线性方程组求解 如有A*x=b,A= b=13,-9,6,0,求x? 1) 直接法 x=Ab 2) 矩阵分解法 lu分解: l,u=lu(A);x=u(lb) qr分解: q,r=qr(A);x=r(qb),四、关系与逻辑运算,1. 关系运算 = = 2. 逻辑运算 1 1 -1 1;1 -1/4 -1 1;-8 -1 1 1 b=0;10;0;1 x=Ab linsolve(A,b),一般代数方程求解 solve(f) 例1:求解方程(