Matlab讲义

合集下载

matlab讲义汇总

matlab讲义汇总

2.2 矩阵基础与操作(续)

在MATLAB下可方便地进行各种矩阵变换及运算。例如: a=[1 2 3;4 5 6;7 8 9] b=fix(5*randn(2,3)) %正态分布 c=fix(10*rand(3,2)) %均匀分布 d=fix(6*randn(3,3)) e=[1 3 5 7;2 4 6 8], f=[1 2 3 4;-1 -2 -3 -4] x1=a+b, x2=b*a, x3=a*c, x4=a*d, x5=a.*d y1=a-10, y2=diag(a), y3=diag([10 20 30]) z1=fliplr(e), z2=flipud(e), z3=reshape(e,4,2) z4=cat(1,e,f) z5=cat(2,e,f) z6=cat(3,e,f) z7=repeat(c,2,2), z8=fix(100*(10-20*rand(2,5)))/100
4 函数
MATLAB的内部函数、大量的工具箱函数、用户自已编写的专用函数
2.1 MATLAB表达式(续)
表达式举例: a=(1+sqrt(10))/2 b=abs(3+5i) c=sin(exp(-2.3)) d=pi*c e=123*12+345-90 注意: 当变量i和j没有使用过时,则它们表示虚数单位. pi表示圆周率.

2.2 矩阵基础与操作(续)
矩阵转置 例如: a’ b’ d1’ e’ 矩阵重排 例如: f=a(:),d=a(3:6) 矩阵元素求和 例如: sum(a), bs=sum(b), a1=diag(a), as=sum(diag(a))求对角元素之和 矩阵下标 注意: 矩阵元素 例如: a2=a(1,3)+a(3,2) 是按列求和的! b2=sum(b(2:5)) c3=prod(d1(3:5)) g(4,2)=8 b(3,1)=[] %删除一个元素 g(1,:)=[] %删除整个一行

MATLAB讲义(1) matlab教程

MATLAB讲义(1)  matlab教程

MA TLAB讲义一.MA TLAB简介。

1.简要说明MA TLAB的发展历史:1)Matrix Laboratory,最初为矩阵运算的接口程序。

集数值计算,图形处理,图象处理,符号计算,文字处理,数学建模,实时控制,动态仿真,信号处理的功能。

2)最新版本6.52.MA TLAB的构成1)以矩阵为基本的计算单位,拥有各种控制语句,大量的函数。

2)工作环境(打开MA TLAB)Command window3)MA TLAB工具箱。

控制系统,模糊系统,通信等等。

3.安装。

二.MA TLAB入门。

1.视窗环境。

1)Command window. File/ new;preference(更改字体);serpath(搜索路径;字符x 搜索顺序:1变量2内置函数3当前目录m文件4搜索路径中m文件eg.sin);View/Command window;Launch pad2)程序调试/编辑器:单击new2.常用命令。

1)获得帮助:help;lookfor;view/help/demos/control system toolbox2)变量及空间管理:1 变量的空间形式。

即用即删。

who,whos,clear,clc,length,dispeg. A=[0:0.1:1] length(A)2 数值输出format short(缺省显示)/rational(分数近似)/long/long e/short esym(); vpa()3)MA TLAB运算符0.算术运算符:加法减法:>>a=[1 2 3;4 5 6];b=[4 5 6;1 2 3];c=1;>>a+b,a+c,a-b乘法:a的列数=b的行数>>b=magic(3)>>a*b除法:左除/ >>1/2 右除\ >>1\21.关系运算>,>=,<,<=,==,~= 同型矩阵为对应元素比较,返回1为真,0为假eg. >>a=magic(3);b=ones(3)2.逻辑运算符&,|,~,xor(a,b),3.特殊运算符:冒号(1)m:n >>a=1:8(2)m:p:n >>a=1:2:8(3)通配符>>b=magic(4) >>b(:,2),b(2,:),b(:,1:3)>>b=[1:3;5:9](不要太为难计算机)3.数组与矩阵1)矩阵的创建:(1)直接输入>>[1,2;3,4] 或>>[1,23,4](2)使用冒号>>a=[-pi:pi;1:7]由矩阵生成矩阵>>b=a(:,2:4) (生成一般用[],调用一般用())(3)特殊矩阵>>zeros(4) >>ones(4) >>magic(3)>>eye(2,3)(对角为1)2) 数组的创建:(1)直接输入:(2)>>a=linspace(初值,终值,元素个数) 与用冒号区别(3)>>b=logspace(初始指数,终结指数,元素个数)eg. >>b=logspace(0,2,3) (分析两者的内在关系)3) 数组运算:(1) 加,减,标量乘>>a=[0:10] >>a*5(2) 向量的点乘,点除,乘方:向量的对应分量相乘除乘方,点除分左除和右除。

MATLAB入门讲义

MATLAB入门讲义

MATLAB讲稿目录1 MATLAB简介 (2)1.1 MATLAB的特点 (2)1.2 窗口 (2)1.3 联机查询与演示 (3)2 数值计算 (4)2.1 数字及其运算 (4)2.2 常用数学符号及函数: (4)2.3 向量、数组及其运算 (5)2.4 矩阵及其运算 (7)2.5 多项式及其运算 (9)3 符号运算 (10)3.1 定义符号表达式 (10)3.2 符号表达式运算 (10)3.3 符号表达式的因式分解、展开与化简 (11)3.4 符号微积分 (11)3.5 符号方程求解 (12)3.6 调用函数计算器:funtool (13)3.7 级数 (13)3.8 Maple接口 (13)4 绘图 (13)一、绘图命令 (13)二、绘图参数(点标、线型、颜色) (14)三、图形标注处理 (14)四、图形控制 (14)5 程序设计 (16)一、M文件 (16)二、控制语句 (16)三、一些数学问题............................................ 错误!未定义书签。

6 在最优化问题中的应用..................................... 错误!未定义书签。

一、线性优化lp ............................................... 错误!未定义书签。

二、二次优化qp............................................... 错误!未定义书签。

三、非线性无约束优化问题............................ 错误!未定义书签。

四、最小二乘优化问题.................................... 错误!未定义书签。

五、强约束问题................................................ 错误!未定义书签。

MATLAB讲义

MATLAB讲义

Unit 1 MATLAB入门用户界面介绍工作区命令窗口指令历史记录窗命令窗口:命令编辑区,用于输入和显示结果,输入表达式进行计算等。

工作区:接受MATLAB命令的内存区域,存储随着命令窗口输入的命令和程序创建的所有变量变量值。

指令历史记录窗口:记录用户每一次开启MA TLAB的时间,以及每一次开启MATLAB后在MA TLAB命令窗口中运行过的所有命令行,这些命令记录可以补复制到命令窗口中再运行,以减少重新输入的麻烦MATLAB的帮助系统:help命令、lookfor命令(1)当准确知道要求帮助的主题词或指令名称时,用help 命令求助,此命令最常用例如,要获得关于函数sqrt的使用说明(包括用途,语法等),可在命令窗口输入命令行:>> help sqrt然后回车确定,将有以下显示: SQRT Square root.SQRT(X) is the square root of the elements of X. Complex results are produced if X is not positive. See also SQRTM. Overloaded methodshelp sym/sqrt.m(2)当不清楚要求助的主题词和批令名,只掌握求助项目的相关关键词时,用 lookfor 搜索MA TLAB 下help 子目录中含有相关关键词的条目 例如,执行以下命令: >> lookfor sqrt回车确定后有以下显示: REALSQRT Real square root. SQRT Square root.SQRTM Matrix square root. vsqrtm.m: % function out = vsqrtm(mat)SQRT Symbolic matrix element-wise square root.BLKSGNSQRT This block defines a function that returns the square root of the BLKSQRT This block defines a function that returns the square root of the input.命令行编辑入门(1)简单的运算:例1,求23)47(212÷-⨯+的算术运算结果,其步骤为: a. 在命令窗口输入>> (12+2*(7-4)) / (3^2)b. 在上述表达式输入后,按[ENTER]确认并执行c. 在命令窗口将有以下结果输出:ans = 2 (2)表达式的输入例2,建立变量y 使其值为3,并计算y y x -=3时x 的值a. 在命令窗口输入>>y=3; >>x=y^3-sqrt(y) b. 回车确认执行 c. 结果输出 x = 25.2679 注意:a. 同一行中若有多个表达式,则必须用分号或逗号隔开,若表达式后面跟分号,将不显示结果。

matlab讲义第一章

matlab讲义第一章

• MATLAB中的关键字不能用作变量名(包括for、end、if
while、function、return、elseif、case、otherwise、 switch、continue、else、try、catch、global、break、 persistent等)。
• MATLAB能识别一般常用的加(+)、减(—)、乘(*)、除 (/)、幂次(^)等数学运算符号。 • 在MATLAB下进行基本运算,最快速简单的方式是在命 令窗口(Command Window)内的提示符号>>之后输入表达式, 并按下Enter键即可。例如: >>(5*2+3.5)/5 ans= 2.7000 • MATLAB会将运算结果直接存入默认变量ans,代表运算 后的答案(Answer),并在屏幕上显示其运算结果的数值 (为2.7000)。
灵活运用这几种矩阵处理的方式,可以产生意想不到 的效果。 提示: 在MATLAB的内部数据储存结构中,每一个矩阵都是一 个以列为主(Column-oriented)的向量(Vector),因此对于 矩阵内各元素的存取,可用一维或二维的索引(Index)或下 标(Subscript)来寻址。
1.4 常用数学函数
MATLAB会将所有在百分比符号(%)之后的文字视为程 序的注解(Comments),如: >>y=(5*2+3.5)/5; %将运算结果储存于变量y,但 不用显示于屏幕 >>z=y^2 %将运算结果储存于变量2,并 显示于屏幕 z= 7.2900 在上例中,百分比符号之后的文字会被MATLAB忽略不 执行,但它的使用可使MATLAB程序的具有很好的可读性。
学时安排与考试形式
总学时:32 讲授:约12学时 上机实验:约20学时 考试方式:实验报告+综合报告

MATLAB讲义

MATLAB讲义

第二章数值数组及其运算数值数组(Numeric Array)和数组运算(Array Operations)始终是MATLAB的核心内容。

自MATLAB5.x版起,由于其“面向对象”的特征,这种数值数组(以下简称为数组)成为了MATALB最重要的一种内建数据类型(Built-in Data Type),而数组运算就是定义在这种数据结构上的方法(Method)。

本章系统阐述:一、二维数值数组的创建、寻访;数组运算和矩阵运算的区别;实现数组运算的基本函数;多项式的表达、创建和操作;常用标准数组生成函数和数组构作技法;高维数组的创建、寻访和操作;非数NaN、“空”数组概念和应用;关系和逻辑操作。

顺便指出:(1)本章所涉内容和方法,不仅使用于数值数组,而且也将部分地延伸使用于在其他数据结构中。

(2)MATLAB5.x和6.x 版在本章内容上的差异极微。

(3)MATLAB6.5版新增的两种逻辑操作,在第2.13.2节给予介绍。

数组是指由一组实数或复数排成的长方阵列(Array)。

它可以是一维的“行”或列,可以是二维的“矩阵”,也可以是三维的“若干同维矩形的堆叠,甚至更高维数”。

数组运算:是指无论在数组上施加什么运算(加减乘除或函数),总认定那种运算对被运算数组中的每个元素(Element)平等地实行同样的操作。

2.1一维数组的创建和寻访2.1.1一维数组的创建(1)无特殊规律数组,直接创建(逐个元素输入):X=[3.4 exp(5.2) -4*pi] x=[3.4 exp(5.2) -4*pi]x =3.4000 181.2722 -12.5664(2)等步长数组:①冒号生成法:通用格式:x=a:inc:b% inc是采样点之间的间隔,即步长。

若(b-a)是inc的整数倍,则所生成数组的最后一个元素等于b,否则小于b。

inc可以省略,省略时默认inc=1。

如:x=0:2*pi/50:2*pi,②定数线性采样法:通用格式T=linspace(a,b,n),其作用与指令:x=a:(b-a)/(n-1):b相同。

MATLAB课件第一讲

MATLAB课件第一讲
save([file int2str(i)], [xstr int2str(i)]); end
这时得到了6个文件mfile1.mat~mfile6.mat, 分别保存x1~x6。这可通过load命令检验 :
clear, load mfile1 load mfile3 for i=1:6 load([‘mfile’ int2str(i)]) %读取所有6个的以mfile开头的.mat文件 end
tempdir
返回系统临时工作目录名
tempname 产生临时文件的唯一文件名
3.5: 启动和退出MATLAB
matlabrc startup quit
启动MATLAB的M文件 启动MATLAB的M文件 终止(退出)MATLAB
第一章: 练习
结合下列指令练习:
ver,help,disp,length,size,dir,cd,等
Practice !
第一章: MATLAB系统概述
3. 通用命令
1. 管理命令和函数 2. 管理变量和工作空间 3. 控制命令窗口 4. 使用文件和工作环境 5. 启动和退出MATLAB
第一章: MATLAB系统概述
3.1: 管理命令和函数
help
MATLAB函数和M文件的在线帮助
ver(version) 显示MathWorks产品的版本信息(MATLAB版本号)
1997年仲春,MATLAB5.0版问世,紧接着是5.1、5.2,以及和1999年春的5.3版 先如今已发展到MATLAB7.1,2008,2009版本
MATLAB基本组成
8个主要部分
➢工作空间中的变量
MM编AA程TT与LLAA数BB据数开类学发型函环数境库提绘供制一二组维读曲ggsprr写aae面ppc文ghh、r23a件➢➢➢➢dd三提提M p输开估处h的维供供A二三入算于发专T命曲许运维维L/、Mg业输A线令多算e图 图n文管图B出e数 所形 形编r件理形数a据 需程l的、的据类 的技执调目型 操术行试录作效M符率文件

Matlab讲义

Matlab讲义

第一章MATLAB软件的基本操作1.1矩阵的建立和基本运算一、实验的目的熟悉MATLAB软件中关于矩阵的建立以及矩阵运算的各种命令二、实验内容与要求1.启动与退出2.数、数组、矩阵的输入(1)数的输入>> a=5a =5>> b=2-5ib =2.0000 - 5.0000i>> b=[1,3,5,7,9,11]b =1 3 5 7 9 11>> c=1:2:11c =1 3 5 7 9 11>> d=linspace(1,11,6)d =1 3 5 7 9 11>> b=linspace(0,2*pi,22)b =Columns 1 through 60 0.2992 0.5984 0.8976 1.1968 1.4960 Columns 7 through 121.79522.0944 2.3936 2.6928 2.99203.2912 Columns 13 through 183.5904 3.88964.1888 4.4880 4.78725.0864 Columns 19 through 225.3856 5.6848 5.98406.2832(2)数组的输入>> A=[2,3,4;1,3,5;6,9,4]A =2 3 41 3 56 9 43.矩阵大小的测定和定位>> A=[3,5,6;2,5,8;3,5,9;3,7,9]A =3 5 62 5 83 7 9>> d=numel(A) %测定矩阵A的元素数d =12>> [n,m]=size(A) %测试A的行(n),列(m)数n =4m =3>> [i,j]=find(A>3) %找出A中大于3的元素的行列数i =12341234j =222233334.矩阵的块操作>> A(2,:) %取出A的第2行的所有元素ans =2 5 8>> A([1,3],:) %取出A的第1、3行的所有元素ans =3 5 63 5 9>> A(2:3,1:2) %取出A的2、3行与1、2列交叉的元素ans =2 53 5>> A([1,3],:)=A([3,1],:) %将A的第1行和第3行互换A =3 5 93 5 63 7 9问题:如何将A的2,3列互换?>> A(2,:)=4 %将A的第2行的所有元素用4取代A =3 5 94 4 43 5 63 7 9>> A(find(A==3))=-3 %将A中等于3的所有元素换为-3A =-3 5 94 4 4-3 5 6-3 7 9>> A(2,:)=[] %删除A的第2行A =-3 5 9-3 5 6-3 7 9>> A=[3,5,6;2,5,8;3,5,9;3,7,9]A =3 5 62 5 83 5 93 7 9>> reshape(A,2,6) %返回以A的元素重新构造的2×6维矩阵ans =3 3 5 5 6 92 3 5 7 8 9>> reshape(A,3,4)ans =3 3 5 82 5 7 93 5 6 9>> A(4,5)=3 %扩充A的维数,A成为4×5维矩阵,未定义元素为3A =3 5 6 0 02 5 8 0 03 5 9 0 03 7 9 0 3注意:“:”表示全部5.矩阵的翻转操作>> A=[3,5,6;2,5,8;3,5,9;3,7,9]A =3 5 62 5 83 5 93 7 9>> flipud(A) % A进行上下翻转ans =3 7 93 5 92 5 83 5 6>> fliplr(A) % A进行左右翻转ans =6 5 38 5 29 5 39 7 3>> rot90(A) % A逆时针旋转900ans =6 8 9 95 5 5 73 2 3 3问题:尝试操作>> rot90(A,2)和rot90(A,-2),结果有区别吗? >> rot90(A,2)ans =9 7 39 5 38 5 26 5 3>> rot90(A,-2)ans =9 7 39 5 38 5 26 5 36.特殊矩阵的产生>> A=eye(n) %产生n维单位矩阵A =1 0 0 00 1 0 00 0 1 00 0 0 1>> A=ones(n,m) %产生n×n维1矩阵A =1 1 1 11 1 1 11 1 1 11 1 1 1>> A=zeros(n,m) %产生n×n维0矩阵A =0 0 00 0 00 0 00 0 0>> A=rand(n,m) %产生n×n维随机矩阵(元素在0~1之间)A =0.9501 0.8913 0.82140.2311 0.7621 0.44470.6068 0.4565 0.61540.4860 0.0185 0.7919>> A=rand(n,m)A =0.9218 0.9355 0.05790.7382 0.9169 0.35290.1763 0.4103 0.81320.4057 0.8936 0.00997.数的运算>>4+2;>>4*2;>> 4/2; % 4右除2,等于2>> 4\2; % 4左除2,等于0.5>> 4^3; % 4的3次方>> sqrt(4); % 4的算术平方根>> exp(3); %e的三次方>> log(4); %4的自然对数>> log2(4); %4的以2为底的对数>> log10(4); %4的以10为底的对数8.矩阵的运算A=[2,3,4;1,3,5;6,9,4];B=[3,5,1;2,6,2;1,8,3];>> A'; %A的转置>> det(A); %A的行列式,A必须是方阵>> rank(A); %A的秩>> 3*A; %常数与矩阵相乘>> A+B;>> A-B;>> A*B; %(和A. *B进行比较)>> A/B; %(和A. /B 进行比较) >> A\B; %(和A. \B 进行比较)>>A^2; % A^2相当于A*A (和A.^2进行比较) 二、练习与思考(1)熟悉MATLAB 的启动和退出。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MATLAB讲义第一章 MATLAB系统概述1.1 MATLAB系统概述MATLAB(MATrix LABoratory)矩阵实验室的缩写,全部用C语言编写。

特点:(1)以复数矩阵作为基本编程单元,矩阵运算如同其它高级语言中的语言变量操作一样方便,而且矩阵无需定义即可采用。

(2)语句书写简单。

(3)语句功能强大。

(4)有丰富的图形功能。

如plot,plot3语句等。

(5)提供了许多面向应用问题求解的工具箱函数。

目前,有20多个工具箱函数,如信号处理、图像处理、控制系统、系统识别、最优化、神经网络的模糊系统等。

(6)易扩充。

1.2 MATLAB系统组成(1)MATLAB语言MATLAB语言是高级的矩阵、矢量语言,具有控制流向语句、函数、数据结构、输入输出等功能。

同时MATLAB又具有面向对象编程特色。

MATLAB语言包括运算符和特殊字符、编程语言结构、字符串、文件输入/输出、时间和日期、数据类型和结构等部分。

(2)开发环境MATLAB开发环境有一系列的工具和功能体,其中大部分具有图形用户界面,包括MATLAB桌面、命令窗口、命令历史窗口、帮助游览器、工作空间、文件和搜索路径等。

(3)图形处理图形处理包括二维、三维数据可视化,图像处理、模拟、图形表示等图形命令。

还包括低级的图形命令,供用户自由制作、控制图形特性之用。

(4)数学函数库有求和、正弦、余弦等基本函数到矩阵求逆、求矩阵特征值和特征矢量等。

MATLAB数学函数库可分为基本矩阵和操作、基本数学函数、特殊化数学函数、线性矩阵函数、数学分析和付里叶变换、多项式和二重函数等。

(5)MATLAB应用程序接口(API)MATLAB程序可以和C/C++语言及FORTRAN程序结合起来,可将以前编写的C/C++、FORTRAN语言程序移植到MATLAB中。

1.3 MATLAB的应用范围包括:MATLAB的典型应用包括:●数学计算●算法开发●建模、仿真和演算●数据分析和可视化●科学与工程绘图●应用开发(包括建立图形用户界面)以矩阵为基本对象第二章 Matlab基础2.1 MATLAB快速入门(1)搜索路径搜索路径也被看作是MATLAB的路径,其包含的文件被认为在路径上。

搜索路径设置存放在文件pathdef.m中,称为当前目录,当要在MATLAB中打开一个文件时,就以当前目录为开始点。

当输入一变量value时,MATLAB的搜索路径次序:value是否为变量value是否为内部函数当前目录中是否存在value.m文件搜索路径上是否存在value.m文件path函数可以控制MATLAB的目录搜索路径,主要使用的格式:path 显示当前的搜索路径p=path 把当前的搜索路径存到字符变量P中path('newpath') 设置路径为'newpath'path(path,'newpath') 向当前路径添加一个新目录addpath函数向MATLAB的搜索目录中添加一个新目录。

addpath 路径名path(path,‟路径名‟):增加搜索路径rmpath函数从MATLAB的搜索路径删除一个目录。

rmpath 路径名:删除路径还可以利用菜单:File->setpath(路径浏览器)what:显示出搜索路径上的文件名what路径名:路径名中的文件名type value:显示变量内容edit 文件名:对m文件进行编辑(2)工作空间(Workspace)工作空间是一个重要而且比较抽象的概念,它是指运行MATLAB 程序或命令所生成和存储在内存中的所有变量和MATLAB提供的常量构成的集合。

通过使用函数、运行M文件和装载保存的工作空间,可以向工作空间增加变量。

●save保存整个工作空间或一部分变量,使用方式:save workspace as 文件名或save 文件名 [变量名]●load恢复工作空间,使用方式:load workspaceload 文件名●工作空间浏览器:File->Show Workspace●还有一组命令来管理这些变量。

who,whos:显示出工作空间中的变量列表。

clear [变量名]:清除变量(3)MATLAB命令窗口●输入命令和输出结果。

如输入:help [函数名]a=62.2 矩阵、变量、运算和表达式(1)矩阵的输入A.直接输入:注意:(1)行元素间用空格或逗号(,)隔开;(2)行与行之间用分号(;)或回车;(3)整个元素列表用[]括起。

直接输入的矩阵为一全局变量,一直保存在内存中。

例: a=[1 2 3;4 5 6]a=1 2 34 5 6a=[1,2,3;4,5,6;7,8,9] ⇔ a=[1 2 3; 4 5 6; 7 8 9]矩阵元素:可以灵活地描述矩阵元素,●矩阵元素a[i,j] 按列存放通过下标单独对元素赋值例:a(1,1)=1,a(3,2)=a(1,1) 得到a =1a =1 00 00 1即自动形成一个3行2列矩阵,对未赋值的元素充值0。

●矩阵的元素可以用任意形式的表达式例:算术表达式x=[-1,sqrt(5),(2+7)^4]x =1.0e+003 *-0.0010 0.0022 6.5610●大矩阵可以用小矩阵作为元素例:a=[1 2;3 4]b=[a a+5;a-5 zeros(size(a))]例:A=[1,2,3;4,5,6]A =1 2 34 5 6B=[A;7,8,9]B =1 2 34 5 67 8 9●可以从矩阵中抽取某些元素构成新矩阵C=A(1:2,:)C =1 2 34 5 6例:a=[3,4,5;6,7,8]b=[+2,4*5,6]c=[sin(0.5*pi),sqrt(4),0]d=[a;b;c]●复数的表示MATLAB支持复数的运算,复数的虚部用i或j表示。

例:a=1+2i或a=1+2j 二者表示的结果一样。

复数可以直接运算,例:a=3+4i;b=5+6ja+b输出:ans=8.0000+10.0000i复数运算的一些常用函数:①abs 返回复数的模②angle 返回复数的相角③conj 返回共轭复数④imag 返回复数的实部⑤real 返回复数的虚部B.用语句或函数产生:a=randn(5,5) 产生正态分布5*5的随机矩阵。

C.用M-文件或外部数据文件产生:M-文件是一个以.m为后缀的文本文件,文件内容为一系列MATLAB命令,在MATLAB环境下键入该文件名(不包括后缀),文件中的全部命令会依次逐个执行;M-文件名(不包括后缀)相当于一个宏命令.例如:一个名为magik.m的文件包含了如下的内容,(假设magik.m在当前目录下)A = [16.0 3.0 2.0 13.05.0 10.0 11.0 8.09.0 6.0 7.0 12.04.0 15.0 14.0 1.0 ]在Matlab环境下执行如下命令:magikAA =16 3 2 135 10 11 89 6 7 124 15 14 1D.用矩阵编辑器创建和修改矩阵:使用File->Show workspace(2)矩阵运算运算符 +,-,*,/(右除),\(左除) 和^(幂)。

右除:C=A/B即C满足CB=A,当B可逆时,A/B=AB-1左除:C=A\B即C满足AC=B,当A可逆时,A\B=A-1B幂A^n = A*…*A; A必须是方阵。

例:矩阵的加减法:a=[1:3;4:6;7:9]b=a; c=a+b; c=a-b注:矩阵相加减必须有相同的维数。

例:矩阵的点乘运算,^运算时矩阵必须为方阵,且只能与数字运算。

d=a*b 必须符合m*n与n*l的结构。

d=a.*b 矩阵的点乘运算例:\(左除):A\B=inv(A)*B,其中inv(A)表示A逆阵,例如求解AX=B。

A=[1 0 0;0 4 0;0 0 9];B=[1 2 3;0 1 0;0 1 1];X=A\B/(右除): A/B=A*inv(B),例如求解XA=B。

X=B/A(3)变量与表达式●Matlab的赋值语句有两种形式:其一为:<变量>=表达式;其二为:表达式,将表达式的值赋于一个自动定义的变量ans。

注:A:如果以;结尾,则不显示计算结果,否则显示计算结果。

B:除保留字外,变量可以用字母开头,后跟19个字母或数字。

变量名区分大小写,变量使用时不需要先定义,也不必定义变量的类型。

●可以用who或whos来显示已定义的变量例如:whoYour variables are:A B C a answhosName Size Bytes ClassA 2x3 48 double arrayB 3x3 72 double arrayC 2x3 48 double arraya 3x2 48 double arrayans 1x1 8 double arrayGrand total is 28 elements using 224 bytes一些常用的变量pi 3.14159265 //π值i sqrt(-1 ) //虚数单位j same as ieps floating-point relative precision, 2.2204e-016 //容量变量realmin smallest floating-point number, 2.2251e-308 //最小浮点数realmax largest floating-point number, 1.7977e+308 //最大浮点数inf infinity (任意一个非零数除以0) //正无穷大nan Not-a-number (0/0 或inf-inf) //非数如:r=1/0r=inf1/rans=0(4)矩阵的其他简单运算:A‟: 矩阵转置inv(A):A-1sum(A):得到一个行向量,其元素为A的每一列的和a=[1 2 3;4 5 6]sum(a) sum(a’)diag(A):得到一个列向量,其元素为A的对角元sum(diag(a))冒号(:)运算符:a:b:c:生成一个由等差数列构成的行向量X,X(i+1)-X(i)=b例:0:pi/4:pians =0 0.7854 1.5708 2.3562 3.1416如果省略b,则等差数列的公差为1a=0:0.05:1x=linspace(0,1,75)a=1:4;b=1:2:7;c=[b,a]等比数列:logspace(0,2,11) 创建起点为10,终点为102,11个元素,公比为100.2 矩阵的变换:rot90: 矩阵逆时针旋转n*90度。

fliplr: 矩阵左右翻转。

flipud: 矩阵上下翻转。

稀疏矩阵的存储:sparse(A):用于把完全矩阵压缩为稀疏矩阵。

相关文档
最新文档