matlab环境及基本操作_第1页
matlab环境及基本操作_第2页
matlab环境及基本操作_第3页
matlab环境及基本操作_第4页
matlab环境及基本操作_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

试验1Motlb工具熟识

试验目的:

1.熟识Matlab环境,驾驭Matlab的主要窗口与功能;

2.学会Matlab的帮助运用;

3.驾驭向量、矩阵的定义、生成方法和基本运算;

4.驾驭Matlab的基本符号运算;

5.驾驭Matlab中的二维图形的绘制和限制。

试验内容:

1.启动Matlab,说明主窗口、吩咐窗口、当前书目窗口、工作空

间窗口、历史窗口、图形窗口、M文件编辑器窗口的功能。

2.实例操作Matlab的帮助运用。

3.实例操作向量、矩阵的定义、生成方法和基本运算。

4.实例操作Matlab的基本符号运算。

5.实例操作Matlab中的二维图形绘制和限制。

试验仪器与软件:

1.CPU主频在2GHz以上,内存在512Mb以上的PC;

2.Matlab7与以匕版本。

一、Matlab环境与主要窗口的功能

运行Matlab安装书目下的matlab.exe文件可启动Matlab环境,

其默认布局如下图:

其中,

1.主窗口的功能是:主窗口不能进行任何计算任务操作,只用来进

行一些整体的环境参数设置,它主要对6个下拉菜单的各项和1。个按钮

逐一解脱。

2.吩咐窗口的功能是:对MATLAB搜寻路径中的每一个M文件

的注释区的第一行进行扫描,一旦发觉此行中含有所查询的字符串,则

将该函数名与第一行注释全部显示在屏幕上。

3.历史窗口的功能是:历史窗口显示吩咐窗口中的全部执行过的吩

咐,一方面可以查看曾经执行过的吩咐,另一方面也可以重复利用原来

输入的吩咐行,可以从吩咐窗口中干脆通过双击某个吩咐行来执行该吩

咐,

4.当前书目窗口的功能是:显示当前书目下全部文件的文件名、文件

类型、和最终修改的时间,同时还供应搜寻功能,在该窗口下,可以变

更当前书目

5.M文件编辑器窗口的功能是:MATLAN供应了一个内置既有编辑

和调试功能好的程序编辑器;编辑器窗口也有菜单和工具栏,是编辑和

调试程序特别便利

6..发行说明窗口功能是:该窗口显示MATLAB总包和已安装的工

具箱的帮助、演示、GUI工具和产品主页等4个内容。

7.工作空间窗口的功能是:该窗口显示全部目前内存中MATLAB变

量的变量名、数字结构、字节数以与类型,不同的变量类型分别对应不

同的变量名图标

8.图形窗口的功能是:利用图形窗口和工具栏中的选项,可以对图形

进行线性、颜色、标记三维视图、光照和坐标轴等的设置

9.GUI(GraphacalUserInterface)窗口功能是:

二、Matlab的帮助运用

Matlab供应的联机帮助系统运用户在没有任何资料的状况下就能驾

驭它的运用和基本操作,作为Matlab的用户应娴熟驾驭其联机帮助系统

的运用,下面是Matlab联机帮助系统的运用方法。

.Help

FileEditViewGoFavoritesDesktopWindowHelp

X

叶0昌拗

ContentsIndexSearchDemos

BeginHereTitle:Release14...

@ReleaseNotes

◎Installation

©MATLABBeginHere

多ExcelLink

Release14with

MATLABBuilderforCOMServicePack3

§MATLABBuilderforExcel

0MATLABCompiler

IfYouAre

。MATLABDistributedComputin

Upgradingfroma

。MATLABReportGenerator

◎MATLABWebServerPreviousRelease...

@BioinformaticsToolbox

■ReleaseNotes

◎CommunicationsToolbox

Highlightsnewfeatures

。ControlSystemToolbox,installationnotes,

◎CurveFittingToolboxbugfixes,and

◎DataAcquisitionToolboxcompatibilityissues.

@DatabaseToolbox

。DatafeedToolboxIfYouAreUsing

多DistributedComputingToolboxMATLABforthe

通过吩咐窗口中干脆输入help吩咐将会显示当前帮助系统只能怪包

含的全部项目

help

三、向量的定义、生成和基本运算

1:向量的生成

a:逐个元素干脆输入,向量元素须要用括起来,元

素之间可以用空格、逗号或分号分隔。用空格和逗号分隔生成的行向量

用分号分隔生成列向量.

例如:h=[345678]

f=[3;4;5;6;7;8]

b:利用冒号表达式创建通过设定“步长(step)”生成一维行向量,

通过格式为:x=x0:step:xnOx。表达向量的首元素值,xn表示尾元素数

值限,step表示从其次个元素起先,每一个元素与前一个元素的差值。

step=l时,可以省略此项的输入,干脆写成x=x°:xn。例:

y=0:10:100

x=0:100

c:定数线性采样生成设定总点数n下,匀称采样生成一维行向

量。通用格式为x=linspace(a,b,n)。a,b分别是生成向量的第一个和

最终一个元素,n是采样总点数°该指令生成的数组相当于由比3-

b)/(n-l):b生成的数组。缺省n时,生成10。维的行向量。

clear%清除工空间中的全部变量

x=linspace(6,66,8)

y=6:60/7:66

z=linspace(6,66)

d:定数对数采样生成向量设定总点数n下,经“常用对数”匀称

采样生成一维行向量。通用格式为x=logspace(a,b,n)。生成数组的第

一个元素值为10a,最终一个元素值为10b,n为采样总点数,缺省

时,生成5。维的行向量。例如:

clear%清除工作空间的全部变量

x=logspace(1,8,8)

y=l:7/7:8

xx=10.Ay

z=logspace(l,8)

2:向量元素的引用

格式为:向量名(下标范围或元素所满意的条件)。例:

clear

rand('state',O)%把匀称分布伪随机发生器置为初始状态

x=rand(l,8)%产生(1X8)的匀称分布随机数组

x(7)%引用数组x的第7个元素

y=x([l25])%引用数组x的第一、二、五个元素

z=x(l:3)%引用数组x的前三个元素

w=x(3:end)%引用数组x的从第三个元素以后的元素

v=x(3:-l:l)%由数组x的前3个元素倒排构成的了数组

u=x(find(x>0.5))%数组x中大于0.5的元素构成的子数组

t=x([l2344321])%重复引用数组

3:向量与标量、向量与向量的运算

①四则运算符号有—\.\)

a:标量a与向量x进行四则运算是a分别与x中的每个元素进行四

则运算并生一个与x等长的向量。例如

clear

x=[4567891011]

y=3*x+3

z=x/2-l

P=4\x

b:等长的两个向量才能进行四则运算,向量x与y进行四则运算是这两

个向量:的对应元素分别进行四则运算并生成一个与它们等长的向曷。例

clear

x=[l23456]

y=x*2

z=x+y

w=x.*y

n=x./y

d=x.\y

②寤运算(A)

a:向量x与标量a的塞运算是对x的每一个元素施行箱运算,例如

clear

x=[l23456]

y=x.A3

z=3.Ay

b:向量x与向量y的幕运算是元素对元素的幕运算。例如:

clear

x=[l23456]

y=x*2

z=x.Ay

b=y.Ax

③指数运算、对数运算与开方运算等

在MATLAB中,数组的运算实质上是数组内部每个元素的运算,因

此,数组的指数运算、对数运算与开方运算等与标量运算完全一样,运

算函数分别为“exp”、“log"、"sqrt”等。例如:

clear

x=[35791113]

y=exp(x)

z=log(x)

t=sqrt(x)

四、矩阵的定义、生成和基本运算

1.矩阵的创建

①a:逐个元素干脆输入把矩阵元素需用“[]”括起来,同行元素之间

用空格或逗号分隔,行与行之间用分号或回车符分隔矩阵元素可为运算

表达式,无任何元素的矩阵称为空矩阵。例如

x=[l23;456;789]

y=[l,2,3;4,5,6;7,8,9]

k=[sin(pi/7),cos(pi/4)]

T=[]

②编写M文件创建大矩阵对于大型矩阵,可通过编写脚本式M文

件,然后运行该文件来创建。例如:编写一名为ExamplelO.m的M文

件,内容如下。

%ExamplelO.m

%编写一M文件创建矩阵的示例文件。

emn=[4563442245636;0976658645;2950512436;14

3854259178;45954145245233]

ans=

l/2*kA2-l/2*k

ans=

1/2*aA2*xA4+l/2*a*xA2

ans=

l/6*piA2

③通过函数创建特别矩阵

%Example.m

%编写一M文件,通过函数创建特别矩阵的示例文件。

%由函数zeros创建全0矩阵。

N=4;M=3;A=[12345;23561;44425];

Bl=zeros(M,N)%生成MXN阶全0阵。

Cl=zeros(size(A))%生成与A同阶的全0阵。

A2=ones(N)%生成NXN阶全1阵。

B2=ones(M,N)%生成MXN阶全1阵。

C2=ones(size(A))%生成与A同阶的全1阵。

%由函数eye创建单位矩阵。

A2=eye(N)%生成NXN阶单位矩阵

C2=eye(size(A))%生成与A同阶单位矩阵。

%由函数rand或randn创建随机矩阵。

A3=rand(N)%生成NxN阶匀称分布的随机阵,元素值在(0.0,1.0)

区间内。

B3=rand(M,N)%生成MXN阶匀称分布的随机阵。

C3=rand(size(A))%生成与A同阶阶匀称分布的随机阵。

H=hilb(N)%生成NXN阶Hilbert矩阵。

2.矩阵元素的引用

①相对位置引用格式:变量名(行标,列标)

②肯定位置引用格式:变量名(肯定位置索引)

clear

rand(*state',0)

A=rand(5,3)

A(4)%引用距阵A的第四个元素

A(2,3)%引用矩阵A的其次行第三列元素

3.矩阵元素的抽取

①抽取行

clear

rand('state',O)

A=rand(5,6)

A(4,:)%抽取矩阵A的第四行

A([23],:)%抽取矩阵A的其次行和第三行

B=A([33],:)%抽取矩阵A的第三行和第三行赋值给B

C=A(3:end,:)%抽取矩阵A的第三行至最终一行赋值给B

②抽取列

clear

rand('state',O)

A=rand(5,6)

A(:,3)%抽取矩阵A的第三列

A(:,[l3])%抽取矩阵A的第一列和第三列

B=A(:,[31])%抽取矩阵A的第三列和第一列赋值给B

③抽取块

clear

randCstate',O)

A=rand(3,4)

B=A([12],[23])%抽取矩阵A的第一、二行与其次、三列交叉的元

素赋值给B

④抽取矩阵对角线上的元素

clear

rand('state\O)

A=rand(6)%产生(6x6)的匀称分布随机数组

V=diag(A)%抽取矩阵A的主对角线上的元素赋值给向量V

D=diag(V)%以向量V为对角线元素生成对角矩阵

Dl=diag(V,2)

D2=diag(V,-2)

U=diag(A,l)%抽取矩阵A的主对角线上方第一条对角线的元素赋

值给向量U

L=diag(Arl)%抽取矩阵A的主对角线下方第一条对角线的元素赋

值给向量L

⑤抽取矩阵上三角部分和下三角部分

clear

rand(,state',O)

A=rand(5)%产生(5x5)的匀称分布随机数组

U=triu(A,l)%从矩阵A的主对角线上方第一条对角线起先抽取

A的上三角部分

U=triu(A,-l)%从矩阵A的主对角线下方第一条对角线起先抽取

A的上三角部分

Ll=tril(A,l)

L2=tril(A,-l)

4.矩阵的基本数学运算

①矩阵的四则运算(+・*/\)与线性代数理论一样,其中,

A

A\B=inv(A)*B=A-l*Bo

clear

A=[3230;21-46]

B=[-l3;41;60;79]

C=A+B'

D=A*B

E=B/D

F=D\A

②矩阵与常数间的运算(+-*/\勺同线性代数埋论一样,需注注的

是,当进行数除时,常数通常只能做除数。

clear

A=[l230;21-46]

C=A+2

D=A*2

E=A/2

F=2\A

G=A([12],[12])A2

③矩阵的数组运算(.+./.\J)是指同维数组间对应元素之间的

加、减、乘、除和塞运算,其中和“分别与“+”和“J相

同,所以,“•+”和“」'一般不用。

clear

A=[7280;51-46]

B=A+2

C=A.*B

D=A./B

E=B.\A

F=A.人2

④矩阵的基本初等运算

clear

A=[l230;21-46;-1341;6079]

A(2,:)=A(2,:)*2%2乘A的其次行

A(1,:)=A(1,:)+A(2,:)%2乘A的其次行,加到A的第一行

A([23],:)=A([32],:)%交换A的其次行和第三行

⑤矩阵的逆运算

clear

A=[l230;21-46;-1341;6079]

B=inv(A)

⑥矩阵的行列式运算

clear

A=[l230;21-46;-l341;6079]

B=det(A)

⑦矩阵的指数运算

clear

A=[l230;21-46;-l341;6079]

B=expm(A)

⑧矩阵的对数运算

clear

A=[4232;2146;1341;6479]

B=expm(A)

C=logm(B)

Dl=logm(A)

D2=log(A)

⑨矩阵的开方运算

clear

A=[9232;2146;1341;6479]

B=AA2

C=sqrtm(B)

Bl=sqrtm(A)

B2=sqrt(A)

5.矩阵的一些特别操作

①变维方法:"'和函数"reshape”。

reshape(A,M,N)%将已知矩阵变维成MxN阶矩阵

reshape(A,M,N,p,-)%将已知矩阵变维成MxNxPx…阶矩阵

clear

a=l:12;

A=reshape(a,3,4)

c=zeros(2,6);

c(:)=a(:)

②矩阵的变向。

clear

a=l:12;

A=reshape(a,3,4)

k=3;dim=l;

Al=rot90(A);

A2=rot90(A,k);

A3=fliplr(A);

A4=flipud(A);

A5=flipdim(A,dim);

②矩阵的扩展与收缩。

clear

a=l:12;

A=reshape(a,3,4)

B=eye(3,2)

C=ones⑵6)

D=[AB;C]%利用小矩阵的组合来生成大矩阵

D(6:10,9:10)=4%利用对矩阵标识块的赋值吩咐生成大矩阵

D(:,3:end)=[]%将矩阵标识块置为空以收缩矩阵

五、多项式的定义、生成和基本运算

1.多项式的表示

对于多项式

nnx

Pn(x)=a^x+axx~++%

用行向量产=7,%]表示,把多项式问题转化为向量问题。

2.多项式的创建

①干脆输入系数向量

由于在MATLAB中的多项式是以向量形式储存的,因此,干脆输入

多项式对应的向量,MATLAB会自动将向量元素按降塞依次安排给各项

系数值,向量可以为行向量,也可以是列向量。例如:

输入多项式:x3-5x2+6.V-33

p=[l-56-33];

poly2sym(p)

%poly2sym

②通过特征多项式创建

也就是从矩阵求其特征多项式获得。例如:

A=[l23;456;789]

p=poly(A)

poly2sym(p)

③由多项式的根创建多项式

root=[7-3+6i-3-4i];

p=poly(root)

poly2sym(p)

3.多项式运算

①求多项式的值

一般调用函数polyval进行计算,例如:

p=[l1155125];

b=[62;0-l];

polyval(p,b)

②求多项式的根

求多项式的根可以有两种方法,一种是干脆调用函数roots求解多

项式的全部根;另一种是通过建立多项式的伴随矩阵再求其特征值的方

法得到多项式的全部根。两种方法求得的根是相等的。例如:

p=[2-56-19];

roots(p)

P=compan(p)

eig(p)

3.多项式的乘除法运算

多项式的乘法由函数conv来实现,除法则由函数deconv来实现,

例如:

p=[2-56-19];

poly2sym(p)

d=[3-90-18];

poly2sym(d)

pd=conv(p,d)

poly2sym(pd)

p1=deconv(pd,d)

4.多项式的微分

多项式的微分由函数polyder来实现,例如:

p=[2-56-19];

poly2sym(p)

Dp=polyder(p)

poly2sym(Dp)

5.多项式拟合

多项式拟合的实现,一面可以由矩阵的除法求解超定方程来进行;

另一方面可调用函数polyfit来实现,调用方法如下:

[p,s]=polyfit(X,Y,n)

其中,X、Y为拟合数据,n为拟合多项式的次,p为拟合多项式的系数

向量,s为拟合多项式系数向量的结构信息,例如:

x=0:pi/20:pi/2;

y=sin(x);

p=polyfit(x,y,5)

xl=0:pi/30:pi*2;

yl=sin(xl);

y2=polyval(p,xl);

plot(xl,yl,,b-',xl,y2,'r+,)

legen”原曲线;拟合曲线,)

axis([07-1.29])

五、Matlab的基本符号运算

1:符号表达式的生成

⑴用引号来生成符号表达式,例如

f='exp(x)';

f=1a*xA2+b*x+c=O';

f='Dy-y=x'

⑵用sym来生成符号表达式,例如

f=sym('exp(x)');

f=sym('a*xA2+b*x+c=0')

⑶用函数syms来生成符号函数,例如

symsyu;

p=exp(y/u)

2符号表达式的运算

⑴提取分子、分母,例如

f=sym(,a*xA2/(b-x),)

[n,d]=numden(f)

3符号表达式的基本运算

4符号表达式的高级运算

a:符号表达式的复合函数运算通过compose来实现;例如

symsxyt;

f=l/xA3;

g=tan(y);

compose(g,f)

compose(g,f,t)

b:符号表达式的反函数运算通过函数finverse来实现;例如

f=sym(l/sin(x));

g=finverse(f)

c:符号表达式的符号和运算通过函数symsum来实现;例如

k=sym('k');

symsum(k)

symsum(k,O,n-l)

symsum(l/kA2,l,inf)

3符号与数值间的转换与符号的可变精度运算

a:符号表达式转换成数值表达式

p=,l+sqrt(2)/2,;

eval(p)

b:数值表达式转换成符号表达式;例如

p=1.7071;

n=sym(p)

n=

17071/10000

4:符号表达式的简化

a:见符号表达式类似于数学课本中的形式显示;例如

symx;

f=taylor(exp(-x)

f=l-x+l/2*xA2-l/6*xA3+l/24*xA4-l/120*xA5

pretty(f)

b:合并符号表达式中的同类项;例如

symsxy;

f=sym(xA2*y+y*x-xA2-2*x);

f=collect(f)

f=(y-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论