matlabun.docx

上传人:b****5 文档编号:7637820 上传时间:2023-01-25 格式:DOCX 页数:39 大小:137.91KB
下载 相关 举报
matlabun.docx_第1页
第1页 / 共39页
matlabun.docx_第2页
第2页 / 共39页
matlabun.docx_第3页
第3页 / 共39页
matlabun.docx_第4页
第4页 / 共39页
matlabun.docx_第5页
第5页 / 共39页
点击查看更多>>
下载资源
资源描述

matlabun.docx

《matlabun.docx》由会员分享,可在线阅读,更多相关《matlabun.docx(39页珍藏版)》请在冰豆网上搜索。

matlabun.docx

matlabun

第二章

利用:

生成等间隔的向量:

>>A=1:

0.5:

2

A=

1.0001.5002.000

利用:

选出矩阵指定行、列及元素

>>A=[147;258;369];

>>A(1:

3,2:

3)取行数为1~3,列数为2~3的元素构成子矩阵。

ans=

47

58

69

>>A(:

3)取所有的行数,列数为3的元素构成子构成子矩阵

ans=

7

8

9

linspace——产生一个线性间隔行矢量

y=linspace(x1,x2)

等间隔产生100维的行向量,使得y

(1)=x1,y(100)=x2

Y=linspace(x1,x2,n)

产生n维等间隔的行向量,使得y

(1)=x1,y(n)=x2

•>>Y=linspace(2,10,5)

•Y=

•246810

logspace——产生一个对数间隔行矢量

•y=logspace(x1,x2):

产生50维的行向量,使得

•y

(1)=10x1,y(50)=10x2

•y=logspace(x1,x2,n):

产生n维的行向量,使

•得y

(1)=10x1,y(n)=10x2

•y=logspace(1,4,4)

•y=10100100010000

rand——随机矩阵(0~1之间均匀分布)

•>>rand(2,2)

•ans=

•0.81320.1389

•0.00990.2028

zeros——全部元素都为0的矩阵

eye——单位矩阵

eye(2,4)eye(3)ans=ans=1000100

0100010

001

ones——全部元素都为1的矩阵

>>ones(2,3)

ans=

111

111

矩阵元素相乘“.*”:

A.*B

功能:

矩阵A和B的对应元素相乘;因此,A和B必须大小相同,或其中之一为标量

矩阵元素右除“A./B”与左除“A.\B”

矩阵元素右除“A./B”表示矩阵元素A(i,j)/B(i,j);

矩阵元素左除“A./B”表示矩阵B(i,j)/A(i,j),

因此,A和B必须行、列数相同,或者其中之一

为标量。

矩阵元素幂“.^”:

A.^B

A.^B表示矩阵元素A(i,j)的B(i,j)次幂,A与B必须大小相同,或者其中之一为标量。

矩阵右除“B/A”与左除“A\B”

如果A为一非奇异矩阵,则B/A与A\B可通过A的逆矩阵与B矩阵得到:

B/A=B*inv(A);A\B=inv(A)*B。

AX=BXA=B

X=A\BX=B/A

a^p——a自乘p次幂式中a为方阵,p>1且为整数。

对于p的其它值,计算将涉及特征值和特征向量,如果p是矩阵,a是标量a^p使用特征值和特征向量自乘到p次幂;如a,p都是矩阵,a^p则无意义。

a^B

a是一个标量

B是一个方阵

算法:

1、B可以分解为(P逆*C*P)

2、其中C是以B的特征值为对角线元素的对角阵。

那么:

a^B=P逆*a.^C*P

A’表示矩阵A的线性代数转置。

对于复矩阵,表示复共轭转置。

A.’表示非共轭转置;对于复矩阵,不包括共轭。

1表示关系式这“真”,即关系式正确;0表示该关系为“假”,即它不成立。

控制流

格式之一

if表达式 

   语句组A 

 end

格式之二:

if表达式

 语句组A 

else

 语句组B 

end

格式之三:

if表达式1

 语句组A 

elseif表达式2

 语句组B 

else

语句组C

end

switch选择表达式

  case情况表达式1

    语句组1

  case情况表达式2

    语句组2

  ………

  otherwise

语句组n

end

while表达式

  语句组A

end

fori=初值:

增量:

终值

  语句组A

end

功能:

把语句组A(亦称为循环体)反复执行N次

循环次数N为:

N=1+(终值-初值)/增量

在每次执行时程序中的i的值按“增量”增加。

键盘输入命令input

格式一:

u=input(‘提示内容’)

在屏幕上显示提示内容,等待从键盘输入,将输入值赋给数据变量u

格式二:

u=input(‘提示内容’,‘s’)

在屏幕上显示提示内容,等待从键盘输入,将输入的符号以字符串赋给文本(字符串)变量u。

菜单输入命令menu

功能:

产生一个供用户输入的选择菜单。

格式:

 k=menu(‘title’,‘选项1’,‘选项2’,,‘选项n’)

显示以字符串变量‘title’为标题的菜单,选择为字符

变量:

‘选项1’,‘选项2’,,‘选项n’,并将所输入的值赋给变量k。

k=menu('学生','张三','李四')

pause常用在M文件中,用于停止执行,直接按任意键继续执行;

pause(n) 暂停执行n秒后继续执行;

pauseon 允许一系列pause命令暂停程序执行;

pauseoff保证任何pause命令和pausea(n)语句不能暂停程序执行。

显示命令disp

功能:

显示指定的变量或变量的内容。

调用格式:

 disp(变量名)

按格式要求输出变量

调用格式:

 sprintf(显示格式,变量)。

sprintf('%s','hello')

文件输入输出命令与函数

格式一:

save

将工作空间中的所有变量保存在一个名为:

“matlab.mat”的二进制格式文件中,该文件可通过load命令来重新装入工作空间。

格式二:

 save 文件名变量名

将工作空间中指定的“变量名”保存在指定“文件名.mat”的二进制格式文件中。

格式三:

 save 文件名选项

使用“选项”指定的ASCII文件格式,将工作空间中所有变量保存到“文件名”所指定的文件中。

格式一:

 load

  将保存在“matlab.mat”文件中的所有变量调入到工作空间。

格式二:

load 文件名

从“文件名.mat”中调入变量,可给出全部路径。

fopen

功能:

打开文件或获得打开文件信息。

格式一:

 f_id=fopen(‘文件名’,’允许模式’)

功能:

用指定的数据“格式”打开数据文件,返回文件标识

格式二:

 [f_id,message]=fopen(文件名,’允许模式’,格式)

功能:

用指定的数据“格式”打开数据文件,返回文件标识和打开文件信息两个参数。

用格式指定“数据格式”。

如果fopen成功打开文件,则返回文件标识f_id,message内容为空,如果不能成功打开,则返回f_id值为-1,message中返回一个有助于判断错误类型的字符串。

有三个值是预先定义的,不能打开或关闭:

0:

表示标准输入,一直处于打开读入状态。

1:

表示标准输出,一直处于打开追加状态。

2:

表示标准错误,一直处于打开追加状态。

fclose

功能:

关闭一个或多个已打开的文件。

格式一:

 status=fclose(f_id)

关闭指定文件,返回0表示成功,返回-1表示失败。

格式二  status=fclose(‘all’)

功能:

关闭所有文件,返回0表示成功,返回-1表示失败。

fread

格式一:

 [A,count]=fread(f_id,size,’精度’)

功能:

从指定文件中读入二进制数据,将数据写入到

矩阵A中;可选输出count返回成功读入元素个

数;f_id为整数文件标识,其值由fopen函数得

到;可选参数size确定读入多少数据,如果不指

定参数size,则一直读到文件结束为止.

参数size合法选择有:

n:

读入n个元素到一个列向量;

inf:

读到文件结束,返回一个与文件数据元素相同的列向量;

[m,n]:

读入足够元素填充一个m×n阶矩阵,填充按列顺序进行,如果文件不够大,则填充0。

‘精度’表示读入数据精度的字符串,控制读入每个值的数据位,这些位可以是整数型、浮点值或字符。

[A,count]=fread(f_id,size,’精度’,skip)

  可选参数skip,指定每次读操作跳过字节数,如果’精度’是某一种位格式,则每次读操作将跳过相应位数。

fwrite

功能:

向文件中写入二进制数据。

格式一:

 count=fwrite(f_id,A,’精度’)

将矩阵A中元素写入指定文件,将其值转换为指定的精度。

格式二:

 count=fwrite(f_id,A,’精度’,skip)

可用参数skip指定每次写操作跳过指定字节。

fscanf

格式一:

 A=fscanf(f_id,’格式’)

从由f_id所指定的文件中读入所有数据,并根据’格式’字符串进行转换,并返回给矩阵A,’格式’字符串指定被读入数据的格式。

格式二:

 [A,count]=fscanf(f_id,’格式’,size)

读入由size指定数量的数据,并根据’格式’字符进行转换,并返回给矩阵A,同时返回成功读入的数据数量count。

fprintf

格式一:

 count=fprintf(f_id,’格式’,A,…)

 将矩阵A或其它矩阵的实部数据以’格式’字符串指定的形式进行规格化,并将其写入指定的文件中,其返回值为写入数据的数量。

格式二:

fprintf(’格式’,A,…)

将A或其它值以’格式’给定的形式输出到标准输出-显示屏幕上。

基本数学函数

三角函数

正弦sin函数与反正弦函数asin函数

格式:

A=sin(X)sin(x+jy)=sin(x)+cos(y)+jcos(x)sin(y)

功能:

对矩阵或数组X的每个元素求正弦值,所有角度用弧度表示。

格式:

X=asin(A)

功能:

对于A的元素求反正弦值,结果为弧度。

余弦cos函数与反余弦函数acos函数

格式:

A=cos(X)

功能:

对矩阵或数组X的每个元素求余弦值,所有角度用

弧度表示。

格式:

X=acos(A)

功能:

对于A的元素求反余弦值,结果为弧度。

正切tan函数与反正切函数atan函数

格式:

A=tan(X)

功能:

对矩阵或数组X的每个元素求正切值,所有角度用弧度表示。

格式:

X=atan(A)

功能:

对于A的每个元素求反正切值,结果为弧度。

四象限反正切atan2函数

格式:

P=atan2(Y,X)

功能:

四象限反正切函数。

返回大小与Y、X相同的矩阵或数组,由Y和X对应元素的实部求反正切值得到,其中虚部忽略。

指数exp函数与自然对数log函数

格式:

A=exp(X)

功能:

返回X每个元素的以e为底的指数值。

格式:

X=log(A)

功能:

返回A的每个元素的自然对数。

2.常用对数logl0函数

格式:

X=logl0(A)

功能:

对A的每个元素求常用对数。

log2函数和幂函数pow2

格式:

X=log2(A)

功能:

对A的每个元素计算其以2为底的对数。

格式:

A=pow2(X)

功能:

A的元素为2对X每个元素求幂得到

平方根函数

格式:

A=sqrt(X)

功能:

返回对数组X每个元素求平方根的数组,如果元素为负或复数,则结果为复数。

求复数实部函数real

格式:

X=real(Z)

功能:

返回复数Z的每个元素的实部。

求复数的虚部函数imag

格式:

Y=imag(Z)

功能:

返回复数Z的每个元素的虚部。

绝对值和复数模函数abs

格式:

A=abs(Z)

功能:

返回Z每个元素的绝对值。

如果Z的元素是复数,则返回其模。

求相角函数angle

格式:

P=angle(Z)

功能:

对Z的每个元素求相角。

共轭函数conj

格式:

C=conj(Z)

功能:

对Z的每个元素求共轭复数。

向0方向取整数函数fix

格式:

I=fix(X)

返回X中每个元素的最靠近零的整数。

若X为复数,则分别对X的实部和虚部取整。

向-∞方向取整数函数floor

格式:

I=floor(X)

返回X中每个元素的最靠近该元素的最小整数。

若X为复数,则分别对X的实部和虚部取最小整。

向∞方向取整数函数ceil

格式:

I=ceil(X)

返回X中每个元素的最靠近该元素的最大整数。

若X为复数,则分别对X的实部和虚部取最大整数。

四舍五入取整数函数round

格式:

I=round(X)

返回X中每个元素的最靠近该元素的整数。

若X为复数,则分别对X的实部和虚部取整数。

模数余函数mod

格式:

M=mod(X,Y)mod(X,Y)=X-Y.*floor(X./Y)

返回X关于Y的余数。

除后余数函数rem

格式:

M=rem(X,Y)rem(X,Y)=X-Y.*fix(X./Y)

功能:

返回X关于Y的余数。

符号函数sign

格式:

s=sign(X)

如果X大于零,则返回1;如果X等于零,则返回0;如果X小于零,则返回-1。

如果X为复数,则算法为:

SIGN(X)=X./ABS(X)

基本绘图方法

figure命令

格式:

figure或figure(N)

功能:

创建一个图形窗口。

使编号为N的图形窗口成为当前图形窗口,即图形窗口处于可视状态。

如果窗口N不存在,则将创建一个句柄为N的图形窗口。

figure

(1)

clf命令:

清除当前图形窗口中的所有的内容

格式:

clf

close命令:

关闭图形窗口

格式一:

close或close(N)关闭当前图形窗口或指定编号N的图形窗口。

格式二:

closeall关闭所有图形窗口。

hold命令

格式:

holdon(off)

功能:

hold命令的功能就是保持当前图形窗的内容,使后续绘制函数仍可该图形窗口中完成绘图,实现一张图中绘制多个图形。

若再键入hold命令就解除冻结。

这种拉线开关式的控制有时会造成混乱,可以用holdon和holdoff命令来得到确定的状态。

subplot命令

功能:

将一个图形窗口划分为多个子图形窗口

格式:

subplot(m,n,p)或 subplot(nmp)

将图形窗口分成nm个子图形窗口,并选择第p个子图形窗口作为当前图形窗口,供绘制函数作图使用。

二维图形绘制命令plot

格式一:

plot(y)--输入一个数组的情况

功能:

1、如果y是一个数组,该二维图以y中元素的下标作为X坐标,y中元素的值作为Y坐标,一一对应画在X—Y坐标平面图上,而且将各点以直线相连。

2、y的元素是复数,则plot(y)等价于plot(real(y),imag(y)),其中real(y)是y的实部,imag(y)是y的虚部。

若y是矩阵,就按列绘制曲线,曲线的条数等于y矩阵的列数。

格式二:

plot(x,y)--输入两个数组的情况

功能:

绘出以x元素为横坐标、y元素为纵坐标的曲线。

数组x和y必须具有相同长度。

线型、标记符号及颜色的设置

为了设定线型、颜色以及标记符号,用户只需在plot的输入变量组后面,加一个引号,在引号内部放入线型、颜色以及标记符号的标志符即可完成。

格式一:

plot(y,’字符串’)

格式二:

plot(x,y,’字符串’)

图形的标注、网格以及图例说明

(1)添加图形标题命令title

格式:

title(‘string’) 

功能:

在当前坐标系的顶部加一个文本串string,作为该图形的标题。

(2)添加坐标轴标志函数xlabe、ylabel、zlabel

格式:

xlabel(‘text’)或ylabel(‘text’)或

zlabel(‘text’)

功能:

给当前X轴或Y轴或Z轴标注文本标注。

设置网格线命令grid

格式:

gridon(off)

功能:

对当前坐标图加上网格线或撤消网格线。

若直接调用

grid命令即可设置或撤消网格线。

图形标注函数legend

格式:

legend(string1,string2,string3,….)

功能:

在当前图中添加图例。

格式:

Legendoff

功能:

撤消当前坐标图上的图例。

x=0:

0.2:

5;y=x;

figure

(1)

subplot(1,2,2)

plot(x,y)

subplot(1,2,1)

plot(x,sin(x));subplot(1,2,1)

title('sin函数')

xlabel('x轴')

ylabel('y轴')

subplot(1,2,2)

title('line函数')

xlabel('x2轴')

ylabel('y2轴')

subplot(1,2,2)

gridon

坐标轴的形式与刻度  

(1)设置坐标轴函数axis

格式一:

axis([xmin,xmax,ymin,ymax])

功能:

对当前二维图形对象的X轴和Y轴进行标定。

格式二:

axis([xminxmaxyminymaxzminzmax])

功能:

对当前三维图形对象的X、Y和Z轴进行标定。

格式三:

axisoff(on)

功能:

使坐标轴、刻度、标注和说明变为不显示(显示)状态。

格式四:

axis(‘manual’)

功能:

将冻结当前的坐标比例,以后的图形均以此比例绘出。

对数坐标轴命令semilogx、semilogy、loglog

格式:

semilogx(…..)

功能:

在X轴上采用常用对数来进行标定。

该命令的调用格式与plot函数的调用格式相同。

格式:

semilogy(…..)

功能:

在Y轴上采用常用对数来进行标定。

该命令的调用格式与plot函数的调用格式相同。

极坐标函数polar

格式:

polar(theta,rho)

功能:

绘制极角为theta,极径为rho的极坐标图形。

格式:

polar(theta,rho,s)

功能:

绘制由S指定样式、颜色的极坐标图形。

图形边框控制命令box

格式:

boxon(off)

对所绘制的图形添加图形边框(默认状态),或关闭图形边框。

boxonboxoff

 

二维图形其它的相关函数命令

(1)获取函数ginput

格式:

[X,Y]=ginput(N)

功能:

从当前的坐标图上获得N个点的数据,并返回这N个点的相应X、Y坐标向量。

指针可以由鼠标或键盘上的除回车以外的任意键来进行输入,回车键是用来在N个数

据点输完以前强行停止输入的。

图形填充函数fill

格式:

fill(X,Y,C)

功能:

填充二维多边形,多边形由向量X,Y来定义,填充的色由C来确定。

说明:

1、多边形的顶点是由一组X,Y元素来确定,必要时应组成一个闭合的曲

线。

2、C可从’r’,’g’,’b’,’c’,’m’,’k’选出一种色填充也可以是一个GRB向量[r,g,b],用它来确定所填充的色。

y=0:

0.2:

2*pi;

fill(y,sin(y),'r')

多条曲线的绘制

1.使用plot(t,[y1,y2,…])命令

该语句中t是向量,y=[y1,y2…]是矩阵,若t是列(行)向量,则y的列(行)长应与t长度相同。

Y的列(行)数就是曲线的条数。

2.使用hold(on/off)命令

在画完前一张图形后,用hold命令保持住该图形窗口中的内容,再画下一条曲线。

3.利用plot(x1,y1,x2,y2,….,xn,yn)语句

在该语句中,x1,y1,x2,y2,….,xn,yn等分别为向量对。

每一对X-Y向量可以绘出一条图线,这样就可以在一张图上画出多图线,每一组向量对的长度可以不同,在其后面都可加线型标志符。

4使用plotyy命令:

plotyy(x1,y1,x2,y2)

它设有两个坐标,左纵坐标对应y1,右纵坐标对应y2,以便绘制两个y尺度不同的变量,但x仍用同一个比例尺。

复数的绘图

当plot(z)中的z为复数变量时(即含有非零的虚部),MATLAB把复数的实部作为横坐标、虚部作为纵坐标绘图,即相当于plot(real(z),imag(z))。

第三章

Matlab数据类型

变量和常量

变量(包括函数)的命名规则:

由英文字母、数字和下划线混合组成,不得包含空格和标点;第一个字符必须是英文字母,最多包括31个字符;对字母的大小写敏感。

局部变量和全局变量

永久变量(常量)

只能在某一函数体内使用,而不能从其他函数和Matlab工作空间访问的变量,就是局部变量。

在几个函数及Matlab函数中都能使用的变量就是全局变量。

(全局变量名应尽可能大写,并由globe声明)

数字变量

Matlab内部的每一个数据元素都是用双精度数(double)来表示和存储的。

变量输出时用户可以用format命令设置或改变输出格式。

字符串

所有字符串都用单引号括起来。

>>s='matlab'

字符中的每个字符(包括空格)都是字符串变量(矩阵或向量)中的一个元素。

字符串中的字符以ASCII码形式储存并区分大小,用函数abs可以看到字符的ASCII码。

在Matlab中,字符串和字符矩阵基本上是等价的。

>>s=['matlab']等价于>>s='matlab'

>>A='China''中国'''

A=

China'中国'

>>B='我是好学生'

B=

我是好学生

>>ab=[A,'',B,'.']

ab=

China'中国'我是好学生.

>>b=num2str

(2)  ;数字转换为字符串

b=

2

>>b*2 

ans=ASCII码相乘

100 

>>str2num(b)*2

ans=

4

s3=char(‘l’,‘i’);

s3=

l

i

>>abs(s3');字符的ASCII码值

ans=

111108

单元型变量

单元型变量是一种比较特殊的数据类型,本质上讲,单元型变量实际上是一种以任意形式的数据为元素的多维数组。

单元型变量可以存放任何类型、任何大小的数据,其大小是不定的。

>>clear;A=[1,2;3,4]

A=

12

34

>>B={1:

4,A,'abcd'}

B=

[1x4double][2x2double]'abcd'

B为单元型变量(用花括号)

冒号“:

可以用来产生向量;用作矩阵的下标,部分地选择矩阵元素;进行行循环操作。

续号“…”表示一行未完,而在下一行继续;

分号“;”

在方括号中,表示矩阵中行的结尾;用在每行的结尾,则不显示该行运算的结果。

MATLAB的关系操作符运算法则:

当两个变量是标量a和b时

◆若a、b之间关系成立,则关系运算结果为1;

◆若a、b之间关系不成立,则关系运算结果为0;

当两个维数相同的矩阵A和B比较时,矩阵A、B比较的是相同位置的元素,按标量的运算规则逐个进行。

关系运算的结果是一个和A维数相同的矩阵,它的元素由0和1组成。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 卡通动漫

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1