文档库 最新最全的文档下载
当前位置:文档库 › 实验1 熟悉matlab环境及基本操作

实验1 熟悉matlab环境及基本操作

实验1 熟悉matlab环境及基本操作
实验1 熟悉matlab环境及基本操作

实验1 熟悉Matlb环境及基本操作

实验目的:

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.Matlab 7及以上版本。

实验讲评:

实验成绩:

评阅教师:

年月日

实验1 熟悉Matlab环境及基本操作

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

运行Matlab安装目录下的matlab.exe文件可启动Matlab环境,其默认布局如下图:

其中,

1.主窗口的功能是:主窗口不能进行任何计算任务操作,只用来进行一些整体的环境参数设置,它主要对6个下拉菜单的各项和10个按钮逐一解脱。

2.命令窗口的功能是:对MATLAB搜索路径中的每一个M文件的注释区的第一行进行扫描,一旦发现此行中含有所查询的字符串,则将该函数名及第一行注释全部显示在屏幕上。

3. 历史窗口的功能是:历史窗口显示命令窗口中的所有执行过的命令,一方面可以查看曾经执行过的命令,另一方面也可以重复利用原来输入的命令行,可以从命令窗口中直接通过双击某个命令行来执行该命令,

4.当前目录窗口的功能是:显示当前目录下所有文件的文件名、文件类型、和最后修改的时间,同时还提供搜索功能,在该窗口下,可以改变当前目录

5.M文件编辑器窗口的功能是:MATLAN提供了一个内置既有编辑和调试功能好的程序编辑器;编辑器窗口也有菜单和工具栏,是编辑和调试程序非常方便

6..发行说明窗口功能是:该窗口显示MATLAB总包和已安装的工具箱的帮助、演示、GUI工具和产品主页等4个内容。

7.工作空间窗口的功能是:该窗口显示所有目前内存中MATLAB变量的变量名、数字结构、字节数以及类型,不同的变量类型分别对应不同的变量名图标

8.图形窗口的功能是:利用图形窗口和工具栏中的选项,可以对图形进行线性、颜色、标记三维视图、光照和坐标轴等的设置

9.GUI(Graphacal User Interface)窗口功能是:

二、Matlab的帮助使用

Matlab提供的联机帮助系统使用户在没有任何资料的情况下就能掌握它的使用和基本操作,作为Matlab的用户应熟练掌握其联机帮助系统的使用,下面是Matlab联机帮助系统的使用方法。

通过命令窗口中直接输入help命令将会显示当前帮助系统只能怪包含的所有项目

help

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

1:向量的生成

a:逐个元素直接输入,向量元素需要用“[]”括起来,元素之间可以用空格、逗号或分号分隔。用空格和逗号分隔生成的行向量用分号分隔生成列向量.

例如:h=[3 4 5 6 7 8]

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

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

x=x

0:step:x

n

。x0表达向量的首元素值,xn表示尾元素数值限,step表示从第

二个元素开始,每一个元素与前一个元素的差值。step=1时,可以省略此项的

输入,直接写成x=x

0:x

n

。例:

y=0:10:100 x=0:100

c:定数线性采样生成设定总点数n下,均匀采样生成一维行向量。通用格式为

x=linspace(a,b,n)。a,b分别是生成向量的第一个和最后一个元素,n是采样总点数。该指令生成的数组相当于由a:(a-b)/(n-1):b生成的数组。缺省n时,生成100维的行向量。

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为采样总点数,缺省时,生成50维的行向量。例如:

clear %清除工作空间的所有变量

x=logspace(1,8,8)

y=1:7/7:8

xx=10.^y

z=logspace(1,8)

2:向量元素的引用

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

clear

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

x=rand(1,8) %产生(1×8)的均匀分布随机数组

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

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

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

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

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

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

t=x([1 2 3 4 4 3 2 1]) %重复引用数组

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

①四则运算符号有(+-* / \ .* ./ .\)

a: 标量a与向量x进行四则运算是a分别与x中的每个元素进行四则运算并生一个与x等长的向量。例如

clear

x=[4 5 6 7 8 9 10 11]

y=3*x+3

z=x/2-1

p=4\x

b:等长的两个向量才能进行四则运算,向量x与y进行四则运算是这两个向量的对应元素分别进行四则运算并生成一个与它们等长的向量。例如

clear

x=[1 2 3 4 5 6]

y=x*2

z=x+y

w=x.*y

n=x./y

d=x.\y

②幂运算(.^)

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

clear

x=[1 2 3 4 5 6]

y=x.^3

z=3.^y

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

clear

x=[1 2 3 4 5 6]

y=x*2

z=x.^y

b=y.^x

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

在MATLAB中,数组的运算实质上是数组内部每个元素的运算,因此,数组的指数运算、对数运算与开方运算等与标量运算完全一样,运算函数分别为“exp”、“log”、“sqrt”等。例如:clear

x=[3 5 7 9 11 13]

y=exp(x)

z=log(x)

t=sqrt(x)

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

1. 矩阵的创建

①a:逐个元素直接输入把矩阵元素需用“[ ]”括起来,同行元素之间用空格或逗号分隔,行与行之间用分号或回车符分隔矩阵元素可为运算表达式,无任何元素的矩阵称为空矩阵。例如x=[1 2 3;4 5 6;7 8 9]

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

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

T=[]

②编写M文件创建大矩阵对于大型矩阵,可通过编写脚本式M 文件,然后运行该文件来创建。例如:编写一名为Example10.m的M文件,内容如下。

%Example10.m

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

emn=[456 344 224 56 36;0 97 665 86 45;29 50 5 124 36;14 38 54 259 178;459 54 145 245 233]

ans =

1/2*k^2-1/2*k

ans =

1/2*a^2*x^4+1/2*a*x^2

ans =

1/6*pi^2

③通过函数创建特殊矩阵

%Example.m

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

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

N=4;M=3;A=[1 2 3 4 5;2 3 5 6 1;4 4 4 2 5];

B1=zeros(M,N) %生成M×N阶全0阵。

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

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

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

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

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

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

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

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

A3=rand(N) %生成N×N阶均匀分布的随机阵,元素值在(0.0,1.0)区间内。B3=rand(M,N) %生成M×N阶均匀分布的随机阵。

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

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

2. 矩阵元素的引用

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

②绝对位置引用格式:变量名(绝对位置索引) clear

rand('state',0)

A=rand(5,3)

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

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

3. 矩阵元素的抽取

①抽取行

clear

rand('state',0)

A=rand(5,6)

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

A([2 3],:) %抽取矩阵A的第二行和第三行

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

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

clear

rand('state',0)

A=rand(5,6)

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

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

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

③抽取块

clear

rand('state',0)

A=rand(3,4)

B=A([1 2],[2 3]) %抽取矩阵A的第一、二行与第二、三列交叉的元素赋值给B

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

clear

rand('state',0)

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

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

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

D1=diag(V,2)

D2=diag(V,-2)

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

L=diag(A,-1) %抽取矩阵A的主对角线下方第一条对角线的元素赋值给向量L

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

clear

rand('state',0)

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

U=triu(A,1) %从矩阵A的主对角线上方第一条对角线开始抽取A的上三角部分U=triu(A,-1) %从矩阵A的主对角线下方第一条对角线开始抽取A的上三角部分L1=tril(A,1)

L2=tril(A,-1)

4. 矩阵的基本数学运算

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

A\B=inv(A)*B=A^-1*B。

clear

A=[3 2 3 0;2 1 -4 6]

B=[-1 3;4 1;6 0;7 9]

C=A+B'

D=A*B

E=B/D

F=D\A

②矩阵与常数间的运算(+ - * / \ ^)同线性代数理论一致,需注注的是,当进行数除时,常数通常只能做除数。

clear

A=[1 2 3 0;2 1 -4 6]

C=A+2

D=A*2

E=A/2

F=2\A

G=A([1 2],[1 2])^2

③矩阵的数组运算(.+ .- .* ./ .\ .^)是指同维数组间对应元素之间的加、减、乘、除和幂运算,其中“.+”和“ .-”分别与“+”和“-”相同,所以,“.+”和“ .-”一般不用。

clear

A=[7 2 8 0;5 1 -4 6]

B=A+2

C=A.*B

D=A./B

E=B.\A

F=A.^2

④矩阵的基本初等运算

clear

A=[1 2 3 0;2 1 -4 6;-1 3 4 1;6 0 7 9]

A(2,:)=A(2,:)*2 %2乘A的第二行

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

A([2 3],:)=A([3 2],:) %交换A的第二行和第三行

⑤矩阵的逆运算

clear

A=[1 2 3 0;2 1 -4 6;-1 3 4 1;6 0 7 9] B=inv(A)

⑥矩阵的行列式运算

clear

A=[1 2 3 0;2 1 -4 6;-1 3 4 1;6 0 7 9] B=det(A)

⑦矩阵的指数运算

clear

A=[1 2 3 0;2 1 -4 6;-1 3 4 1;6 0 7 9]

B=expm(A)

⑧矩阵的对数运算

clear

A=[4 2 3 2;2 1 4 6;1 3 4 1;6 4 7 9]

B=expm(A)

C=logm(B)

D1=logm(A)

D2=log(A)

⑨矩阵的开方运算

clear

A=[9 2 3 2;2 1 4 6;1 3 4 1;6 4 7 9]

B=A^2

C=sqrtm(B)

B1=sqrtm(A)

B2=sqrt(A)

5. 矩阵的一些特殊操作

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

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

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

clear

a=1:12;

A=reshape(a,3,4)

c=zeros(2,6);

c(:)=a(:)

②矩阵的变向。

clear

a=1:12;

A=reshape(a,3,4)

k=3;dim=1;

A1=rot90(A);

A2=rot90(A,k);

A3=fliplr(A) ;

A4=flipud(A) ;

A5=flipdim(A,dim) ;

②矩阵的扩展与收缩。

clear

a=1:12;

A=reshape(a,3,4)

B=eye(3,2)

C=ones(2,6)

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

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

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

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

1. 多项式的表示 对于多项式

n n n n n a x a x a x a x P ++++=--1110)(

用行向量],,,[110n n a a a a P -= 表示,把多项式问题转化为向量问题。

2. 多项式的创建 ①直接输入系数向量

由于在MATLAB 中的多项式是以向量形式储存的,因此,直接输入多项式对应的向量,MATLAB 会自动将向量元素按降幂顺序分配给各项系数值,向量可以为行向量,也可以是列向量。例如:

输入多项式:336523-+-x x x

p=[1 -5 6 -33]; poly2sym(p) %poly2sym

②通过特征多项式创建

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

A=[1 2 3;4 5 6;7 8 9] p=poly(A) poly2sym(p)

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

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

p=poly(root)

poly2sym(p)

3. 多项式运算

①求多项式的值

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

p=[1 11 55 125];

b=[6 2;0 -1];

polyval(p,b)

②求多项式的根

求多项式的根可以有两种方法,一种是直接调用函数roots求解多项式的所有根;另一种是通过建立多项式的伴随矩阵再求其特征值的方法得到多项式的所有根。两种方法求得的根是相等的。例如:

p=[2 -5 6 -1 9];

roots(p)

P=compan(p)

eig(p)

3. 多项式的乘除法运算

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

p=[2 -5 6 -1 9];

poly2sym(p)

d=[3 -90 -18];

poly2sym(d)

pd=conv(p,d)

poly2sym(pd)

p1=deconv(pd,d)

4. 多项式的微分

多项式的微分由函数polyder来实现,例如:p=[2 -5 6 -1 9];

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)

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

y1=sin(x1);

y2=polyval(p,x1);

plot(x1,y1,'b-',x1,y2,'r+')

legend('原曲线','拟合曲线')

axis([0 7 -1.2 9])

五、M atlab的基本符号运算

1:符号表达式的生成

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

f='exp(x)';

f='a*x^2+b*x+c=0';

f='Dy-y=x'

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

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

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

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

syms y u;

p=exp(y/u)

2符号表达式的运算

⑴提取分子、分母,例如

f=sym('a*x^2/(b-x)')

[n,d]=numden(f)

3符号表达式的基本运算

4符号表达式的高级运算

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

f=1/x^3;

g=tan(y);

compose(g,f)

compose(g,f,t)

b:符号表达式的反函数运算通过函数finverse来实现;例如f=sym(1/sin(x));

g=finverse(f)

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

k=sym('k');

symsum(k)

symsum(k,0,n-1)

symsum(1/k^2,1,inf)

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

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

p='1+sqrt(2)/2';

eval(p)

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

p=1.7071;

n=sym(p)

n =

17071/10000

4:符号表达式的简化

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

f=taylor(exp(-x)

f=1-x+1/2*x^2-1/6*x^3+1/24*x^4-1/120*x^5

pretty(f)

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

syms x y;

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

f=collect(f)

f=(y-1)*x^2+(y-2)*x

f=collect(f,y)

f=(x^2+x)*y-x^2-2*x

c:对符号表达式进行因式分解;例如

syms x;

f=sym(x^7-1);

f=factor(f)

f=(x-1)*(x^2+x+1)*(x^6+x^3+1)

d:对符号表达式进行展开;例如

syms x y;

f=expand((x+1)^3)

f=x^3+3*x+1

s=expand(sin(x+y))

s=sin(x)*cos(y)*sin(y)

e:对符号表达式进行简化;例如

syms x;

f=sym((x-1)^3/(x-1));

f=simplify(f)

f=(x-1)^2

simple(f)

5:符号微积分

a:符号极限;例如

syms x y;

limit((sin(x+y)-sin(x))/y,y,0) b:符号微分

syms x;

sym((x-1)^3)

c:符号积分;例如

syms u alpha;

int(sin(alpha*u),alpha)

6:符号方程求解

a:符号代数线性方程求解;例如

solve('p*sin(x)=r')

solve('a*x^2+b*x+c','a')

b:符号代数非线性方程求解;例如

六、Matlab中的二维图形绘制和控制

1:绘制一个正弦函数图象

x=0:0.1:2*pi;

y=sin(x);

plot(x,y)

1

2

3

4

5

6

7

-1-0.8-0.6-0.4-0.200.20.40.60.81

在图形中绘制坐标网格 x=0:0.1:2*pi; y=sin(x); plot(x,y) grid on

1

2

3

4

5

6

7

-1-0.8-0.6-0.4-0.200.20.40.60.81

取消坐标中的网格

x=0:0.1:2*pi; y=sin(x); plot(x,y) grid on grid off

1

2

3

4

5

6

7

-1-0.8-0.6-0.4-0.200.20.40.60.81

x=0:0.1:2*pi; y=sin(x); z=cos(x);

plot(x,y,x,z)

实验一 MATLAB基本操作及运算(含实验报告).

实验一 MATLAB 基本操作及运算 一、 实验目的 1、 理解Matlab 数据对象的特点; 2、 掌握基本Matlab 运算规则; 3、 掌握Matlab 帮助的使用方法; 二、 实验的设备及条件 计算机一台(带有MATLAB7.0以上的软件环境)。 三、 实验内容 要求建立一个名为experiment01.m 的,把与实验内容1-7相关的实验命令都放入该文件中,题与题之间用相应注释分割。注意对实验中出现的相关函数或变量,请使用help 或doc 查询相关帮助文档,学习函数的用法。 1、 建立以下标量: 1) a=10 2) b=2.5×1023 3) c=2+3i ,(i 为虚数单位) 4) d=3/2πj e ,(j 为虚数单位,这里要用到exp ,pi ) 2、 建立以下向量: 1) aVec=[3.14 15 9 26] 2) bVec=????? ???????18228871.2 3) cVec=[5 4.8 … -4.8 -5 ] (向量中的数值从5到-5,步长为-0.2) 4) dVec=[100 100.01 … 100.99 101] (产生1到10之间的等对数间隔向量,参考logspace ,注意向量的长度) 3、 建立以下矩阵: 1)???? ??????=2222 aMat aMat 一个9×9的矩阵,其元素全为2;(参考ones 或zeros )

2)??????? ?????????=1000005000001 bMat bMat 是一个9×9的矩阵,除主对角上的元素为[1 2 3 4 5 4 3 2 1]外,其余元素均为0。(参考diag )。 3)100 20109212291111 =cMat cMat 为一个10×10的矩阵,可有1:100的向量来产生(参考reshape ) 4)???? ??????=NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN dMat dMat 为3×4的NaN 矩阵,(参考nan ) 5)?? ????---=8710225113eMat 6)产生一个5×3随机整数矩阵fMat ,其值的范围在-3到3之间。(参考rand 和floor 或ceil ) 4、 使用题1中的变量计算下列等式的x,y,z 的值: 1) ) 6/)15((11--+=a e x 2) g g h h b a y /121,)(=+=提示π,参考sqrt 。 3) c c a d c d c R z ))3/sin()]))([(log(π-+= ,其中R 表示取括号内复数的实数部分,c 表示c 的共轭复数,log 是自然对数。(参考real ,conj ,log ) 5、 使用题2中的向量求解一下等式: 1))25.2/(22 25.221 cVec e xVec -=π, 其中cVec 指的是题2 中定义的向量cVec ,一下雷同。 2)22)(bVec aVec yVec T +=,T aVec 表示aVec 的转置 3) )/1(log 10dVec zVec =,10log 表示已10为底的对数,参考log10 6、 使用题2和题3中所产生的向量和矩阵计算以下等式,注意本题的操作

实验1熟悉matlab环境和基本操作

实验1 熟悉Matlb环境及基本操作 实验目的: 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.Matlab 7及以上版本。 实验讲评: 实验成绩: 评阅教师: 年月日

实验1 熟悉Matlab环境及基本操作 一、Matlab环境及主要窗口的功能 运行Matlab安装目录下的matlab.exe文件可启动Matlab环境,其默认布局如下图: 其中, 1.主窗口的功能是:主窗口不能进行任何计算任务操作,只用来进行一些整体的环境参数设置,它主要对6个下拉菜单的各项和10个按钮逐一解脱。 2.命令窗口的功能是:对MATLAB搜索路径中的每一个M文件的注释区的第一行进行扫描,一旦发现此行中含有所查询的字符串,则将该函数名及第一行注释全部显示在屏幕上。 3. 历史窗口的功能是:历史窗口显示命令窗口中的所有执行过的命令,一方面可以查看曾经执行过的命令,另一方面也可以重复利用原来输入的命令行,可以从命令窗口中直接通过双击某个命令行来执行该命令,

实验1_基于MATLAB的图像基本操作

第1次实验基于MATLAB的图像基本操作 二、实验内容和要求: 1.实现图像Baboon.bmp(MATLAB自带)的读入(可使用imread)和显示(可使用imshow)操作,代码加上足够的注释,需要建立一个M文件实现。 I=imread('F:\标准图像\Baboon.bmp');//读入图像 imshow(I);//显示图像 2.编程实现将一幅RGB图像转换为二值图像,并在一个窗口同时显示处理过程中得到的每一个图像和原图像,同时需要给图像加上标题。(原始数据可以是任意的RGB图像)。需要新建一个M文件实现。 figure,subplot(1,3,1),imshow(I(:,:,1)),title('R'); subplot(1,3,2),imshow(I(:,:,2)),title('G'); subplot(1,3,3),imshow(I(:,:,3)),title('B'); 3.计算图象统计参数: 读取图像(文件名为‘cameraman.tif’); 最大值 最小值 均值 K=imread('cameraman.tif'); d_max=max(K(:)) d_min=min(K(:)) d_mean=mean(K(:)) 4.利用帮助系统了解im2double,imresize,image函数的作用和语法,并利用这些函数处理已知图像pout.tif(MATLAB自带)并显示处理前后效果。 J=imread('pout.tif'); J1=im2double(J); figure,subplot(1,2,1),imshow(J),title('Before') subplot(1,2,2),imshow(J1),title('After') J2=imresize(J,0.3); figure,subplot(1,2,1),imshow(J),title('Before') subplot(1,2,2),imshow(J2),title('After') figure,subplot(1,2,1),imshow(J),title('Before') subplot(1,2,2),image(J);title('After') 1

实验二 Matlab程序设计基本方法1

实验二Matlab程序设计基本方法 覃照乘自092 电气工程学院 一、实验目的: 1、熟悉MATLAB 程序编辑与设计环境 2、掌握各种编程语句语法规则及程序设计方法 3、函数文件的编写和设计 4、了解和熟悉跨空间变量传递和赋值 二、实验基本知识: ◆for循环结构 语法:for i=初值:增量:终值 语句1 …… 语句n end 说明:1.i=初值:终值,则增量为1。 2.初值、增量、终值可正可负,可以是整数,也可以是小数,只须符合数学逻辑。 ◆while 循环结构 语法:while 逻辑表达式 循环体语句 end 说明:1、whiIe结构依据逻辑表达式的值判断是否执行循环体语勾。若表达式的值为真,执行循环体语句一次、在反复执行时,每次都要进行判断。若表达 式的值为假,则程序执行end之后的语句。 2、为了避免因逻辑上的失误,而陷入死循环,建议在循环体语句的适当位 置加break语句、以便程序能正常执行。(执行循环体的次数不确定; 每一次执行循环体后,一定会改变while后面所跟关系式的值。) 3、while循环也可以嵌套、其结构如下:

while逻辑表达式1 循环体语句1 while逻辑表达式2 循环体语句2 end 循环体语句3 end ◆if-else-end分支结构 if 表达式1 语句1 else if 表达式2(可选) 语句2 else(可选) 语句3 end end 说明:1.if结构是一个条件分支语句,若满足表达式的条件,则往下执行;若不满足,则跳出if结构。 2.else if表达式2与else为可选项,这两条语句可依据具体情况取舍。 3.注意:每一个if都对应一个end,即有几个if,记就应有几个end。 ◆switch-case结构 语法:switch表达式 case常量表达式1 语句组1 case常量表达式2 语句组2 …… otherwise 语句组n end

实验一 Matlab基本操作

实验一Matlab基本操作 题目: 1.利用基本矩阵产生 3x3 和15x8 的单位阵,全1 阵,全0 阵,均匀分布的随 机阵([-1,1]之间),正态分布随机阵(方差4,均值1) 2.利用diag()函数和rot90()产生下列矩阵: 然后求解a 阵的逆矩阵aa 及b 阵的特征值和对应特征向量,并利用reshape 将 aa 阵变换成行向量。 3.产生一均匀分布在(-5,5)随机阵(50x2),精确到小数点后一位。 4.编程实现当α∈[-π,π],间隔为1o 时,求解正弦和余弦的值,并利用plot() 函数绘制正弦,余弦曲线。 5.利用rand 函数产生(0,1)间均匀分布的10x10 随机矩阵a,然后统计a 中大于等于0.6 的元素个数。 6.利用randn 函数产生均值为0,方差为1 的10x10 正态分布随机阵,然后统计其中大于-0.5,小于0.5 的元素个数。 7.编程实现下表功能: 8.有一矩阵a,找出矩阵中其值大于1 的元素,并将他们重新排列成列向量b。 9.在一保定市区9 月份平均气温变化测量矩阵temp_Baoding_sep 中(48x30),存在有奇异值(大于42o C,小于0o C),编程实现删除奇异值所在的行。 10.在给定的100x100 矩阵中,删除整行内容全为0 的行,删除整列内容全为0 的列。 程序: 1. %3X3矩阵 a1=eye(3) a2=ones(3) a3=zeros(3) a4=1-2*rand(3) a5=2*randn(3)+1 %15X8矩阵 b1=eye(15,8) b2=ones(15,8) b3=zeros(15,8) b4=1-2*rand(15,8) b5=2*randn(15,8)+1 运行结果:

matlab实验二

实验2 MATLAB数值计算、符号运算功能 一、实验目的 1、掌握建立矩阵、矩阵分析与处理的方法。 2、掌握线性方程组的求解方法。 3、掌握数据统计和分析方法、多项式的常用运算。 4、掌握求数值导数和数值积分、常微分方程数值求解、非线性代数方程数值求解的方法。 5、掌握定义符号对象的方法、符号表达式的运算法则及符号矩阵运算、符号函数极限及导数、符号函数定积分和不定积分的方法。 二、预习要求 (1)复习4、5、6章所讲内容; (2)熟悉MATLAB中的数值计算和符号运算的实现方法和主要函数。 三、实验内容 1、已知 29618 20512 885 A -?? ?? =?? ?? - ?? ,求A的特征值及特征向量,并分析其数学意义。 >> A=[-29,6,18;20,5,12;-8,8,5]; >> [V,D]=eig(A) V = 0.7130 0.2803 0.2733 -0.6084 -0.7867 0.8725 0.3487 0.5501 0.4050 D = -25.3169 0 0 0 -10.5182 0 0 0 16.8351 V为A的特征向量,D为A的特征值,3个特征值是-25.3169、10.5182和16.8351。 >> A*V ans = -18.0503 -2.9487 4.6007 15.4017 8.2743 14.6886 -8.8273 -5.7857 6.8190 >> V*D

ans = -18.0503 -2.9487 4.6007 15.4017 8.2743 14.6886 -8.8273 -5.7857 6.8190 经过计算,A*V=V*D 。 2、 不用rot90函数,实现方阵左旋90°或右旋90°的功能。例如,原矩阵为A ,A 左旋后得到B ,右旋后得到C 。 147102581136912A ????=??????,101112789456123B ??????=??????,321654987121110B ??????=?????? 提示:先将A 转置,再作上下翻转,则完成左旋90°;如将A 转置后作左右翻转,则完成右旋转90°,可用flipud 、fliplr 函数。 >> a=[1 4 7 10;2 5 8 11;3 6 9 12] a= 1 4 7 10 2 5 8 11 3 6 9 12 >> B=rot90(a) B = 10 11 12 7 8 9 4 5 6 1 2 3 >>C= rot90(s,3) C= 3 2 1 6 5 4 9 8 7 12 11 10

matlab操作实验报告

实验一matlab基本操作 一、实验目的 熟悉matlab的安装与启动;熟悉matlab用户界面;熟悉matlab功能、建模元素;熟悉matlab优化建模过程。 二、实验设备与工具 1.计算机 2.matlab软件 三、实验步骤 1. 了解matlab的硬件和软件必备环境; 2. 启动matlab; 3. 学习优化建模过程。 四、实验报告要求 1. 写出matlab系统界面的各个构成;以及系统布局区的组成;以及每一部 分的功能; 2. 优化建模过程应用举例 五、实验内容 (一)、Matlab操作界面 1.命令窗口(command window) 2.命令历史窗口(command history) 3.工作空间管理窗口(workspace) 4.当前路径窗口(current directory) (二)、优化建模过程应用举例 1、简单矩阵 123 456 789 A ?? ?? =?? ?? ?? 的输入步骤。 (1)在键盘上输入下列内容 A = [1,1,3; 4,5,6; 7,8,9] (2)按【Enter】键,指令被执行。 (3)在指令执行后,MATLAB指令窗中将显示以下结果: A = 1 2 3 4 5 6 7 8 9

2、矩阵的分行输入。 A=[1,2,3 4,5,6 7,8,9] A = 1 2 3 4 5 6 7 8 9 3、指令的续行输入 S=1-1/2+1/3-1/4+ ... 1/5-1/6+1/7-1/8 S = 0.6345 4、画出衰减振荡曲线t e y t 3sin 3-=及其它的包络线3 0t e y -=。t 的取值范围是]4,0[π。 t=0:pi/50:4*pi; y0=exp(-t/3); y=exp(-t/3).*sin(3*t); plot(t,y,'-r',t,y0,':b',t,-y0,':b') grid 5、画出2222) sin(y x y x z ++=所表示的三维曲面。y x ,的取值范围是]8,8[-。 clear;x=-8:0.5:8; y=x';

MATLAB实验报告实验二

实验二 MATLAB矩阵及其运算 学号:3121003104 姓名:刘艳琳专业:电子信息工程1班日期:2014.9.20 一实验目的 1、掌握Matlab数据对象的特点以及数据的运算规则。 2、掌握Matlab中建立矩阵的方法以及矩阵处理的方法。 3、掌握Matlab分析的方法。 二实验环境 PC_Windows 7旗舰版、MATLAB 7.10 三实验内容 4、1. (1)新建一个.m文件,验证书本第15页例2-1; (2)用命令方式查看和保存代码中的所有变量;

(3)用命令方式删除所有变量; (4)用命令方式载入变量z。 2. 将x=[4/3 1.2345e-6]在以下格式符下输出:短格式、短格式e方式、长格式、长格式e方式、银行格式、十六进制格式、+格式。 短格式 短格式e 长格式

长格式e方式 银行格式 十六进制格式 3.计算下列表达式的值 (1)w=sqrt(2)*(1+0.34245*10^(-6)) (2)x=(2*pi*a+(b+c)/(pi+a*b*c)-exp(2))/(tan(b+c)+a) a=3.5;b=5;c=-9.8; (3)y=2*pi*a^2*((1-pi/4)*b-(0.8333-pi/4)*a) a=3.32;b=-7.9; (4)z=0.5*exp(2*t)*log(t+sqrt(1+t*t)) t=[2,1-3i;5,-0.65];

4. 已知A=[1 2 3 4 5 ;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20],对其进行如下操作:(1)输出A在[ 7, 10]范围内的全部元素; (2)取出A的第2,4行和第1,3,5列; (3)对矩阵A变换成向量B,B=[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20]; (4)删除A的第2,3,4行元素; (1) (2)

实验一 Matlab基本操作(2016)

实验一 MATLAB 基本操作 一、实验目的 1. 学习和掌握MA TLAB 的基本操作方法 2. 掌握命令窗口的使用 3. 熟悉MATLAB 的数据表示、基本运算 二、实验内容和要求 1. 实验内容 1) 练习MATLAB7.0或以上版本 2) 练习矩阵运算与数组运算 2. 实验要求 1) 每位学生独立完成,交实验报告 2) 禁止玩游戏! 三、实验主要软件平台 装有MATLAB7.0或以上的PC 机一台 四、实验方法、步骤及结果测试 1. 实验方法:上机练习。 2. 实验步骤: 1) 开启PC ,进入MA TLAB 。 2) 使用帮助命令,查找sqrt 函数的使用方法 答: help sqrt 3) 矩阵、数组运算 a) 已知 ??????????=987654321A ,???? ??????=963852741B ,求)2()(A B B A -?+ 答: A=[1, 2, 3; 4, 5, 6; 7, 8, 9]; B=[1, 4, 7; 2, 5, 8; 3, 6, 9]; (A+B)*(2*B-A) b) 已知?? ????-=33.1x ,??????=π24y ,求T xy ,y x T c) 已知??????????=987654321A ,???? ??????=300020001B ,求A/B, A\B. d) 已知???? ??????=987654321A ,求:(1) A 中第三列前两个元素;(2) A 中所有第二行元素;(3) A 中四个角上的元素;(4) 交换A 的第1、3列。(5) 交换A 的第1、2行。(6) 删除A 的第3列。

e) 已知[]321=x ,[]654=y ,求:y x *.,y x /.,y x \.,y x .^, 2.^x ,x .^2。 f) 给出x=1,2,…,7时,x x sin 的值。 3)常用的数学函数 a )随机产生一个3x3的矩阵A ,求:(1) A 每一行的最大、最小值,以及最大、最小值所在的列;(2) A 每一列的最大、最小值,以及最大、最小值所在的行;(3) 整个矩阵的最大、最小值;(4) 每行元素之和;(5) 每列元素之和;(6) 每行元素之积;(7) 每列元素之积。 b) 随机产生两个10个元素的向量x ,y 。(1) 求x 的平均值、标准方差。(2) 求x ,y 的相关系数。(3)对x 排序,并记录排序后元素在原向量中的位置。 4) 字符串操作函数 建立一个字符串向量(如‘ABc123d4e56Fg9’),然后对该向量做如下处理: (1) 取第1~5个字符组成的子字符串。 (2) 将字符串倒过来重新排列。 (3) 将字符串中的小写字母变成相应的大写字母,其余字符不变。 (4) 统计字符串中小写字母的个数。

MATLAB基本操作实验报告

MATLAB基本操作 实验报告 课程名称: 院系: 专业班级: 学号: 学生姓名: 指导教师: 开课时间:至学年第学期

一、学生撰写要求 按照实验课程培养方案的要求,每门实验课程中的每一个实验项目完成后,每位参加实验的学生均须在实验教师规定的时间内独立完成一份实验报告,不得抄袭,不得缺交。 学生撰写实验报告时应严格按照本实验报告规定的内容和要求填写。字迹工整,文字简练,数据齐全,图表规范,计算正确,分析充分、具体、定量。 二、教师评阅与装订要求 1.实验报告批改要深入细致,批改过程中要发现和纠正学生实验报告中的问题,给出评语和实验报告成绩,签名并注明批改日期。实验报告批改完成后,应采用适当的形式将学生实验报告中存在的问题及时反馈给学生。 2.实验报告成绩用百分制评定,并给出成绩评定的依据或评分标准(附于实验报告成绩登记表后)。对迟交实验报告的学生要酌情扣分,对缺交和抄袭实验报告的学生应及时批评教育,并对该次实验报告的分数以零分处理。对单独设课的实验课程,如学生抄袭或缺交实验报告达该课程全学期实验报告总次数三分之一以上,不得同意其参加本课程的考核。 3.各实验项目的实验报告成绩登记在实验报告成绩登记表中。本学期实验项目全部完成后,给定实验报告综合成绩。 4.实验报告综合成绩应按课程教学大纲规定比例(一般为10-15%)计入实验课总评成绩;实验总评成绩原则上应包括考勤、实验报告、考核(操作、理论)等多方面成绩; 5.实验教师每学期负责对拟存档的学生实验报告按课程、学生收齐并装订,按如下顺序装订成册:实验报告封面、实验报告成绩登记表、实验报告成绩评定依据、实验报告(按教学进度表规定的实验项目顺序排序)。装订时统一靠左侧按“两钉三等分”原则装订。

MATLAB实验二(修改)

实验二 信号的表示及其基本运算 一、实验目的 1、掌握连续信号及其MATLAB 实现方法; 2、掌握离散信号及其MA TLAB 实现方法 3、掌握离散信号的基本运算方法,以及MA TLAB 实现 4 熟悉应用MATLAB 实现求解系统响应的方法 4、了解离散傅里叶变换的MA TLAB 实现 5、了解IIR 数字滤波器设计 6、了解FIR 数字滤波器设计1 二、实验设备 计算机,Matlab 软件 三、实验内容 (一)、 连续信号及其MATLAB 实现 1、 单位冲激信号 ()0,0()1,0 t t t dt ε ε δδε-?=≠??=?>??? 例1.1:单位冲击信号的MATLAB 实现程序如下: t1=-4; t2=4; t0=0; dt=0.01; t=t1:dt:t2; n=length(t); x=zeros(1,n); x(1,(-t0-t1)/dt+1)=1/dt; stairs(t,x); axis([t1,t2,0,1.2/dt]); 2、 任意函数 ()()()f t f t d τδττ+∞ -∞ =-? 例1.2:用MA TLAB 画出如下表达式的脉冲序列 ()0.4(2)0.8(1) 1.2() 1.5(1) 1.0(2)0.7(3)f n n n n n n n δδδδδδ=-+-+++++++ 3 单位阶跃函数 1,0()0, t u t t ?≥?=?

t=-0.5:0.001:1; t0=0; u=stepfun(t,t0); plot(t,u) axis([-0.5 1 -0.2 1.2]) 4 斜坡函数 0()()g t B t t =- 例1.4:用MA TLAB 实现g(t)=3(t-1) clear all; t=0:0.01:3; B=3; t0=1; u=stepfun(t,t0); n=length(t); for i=1:n u(i)=B*u(i)*(t(i)-t0); end plot(t,u) axis([-0.2 3.1 -0.2 6.2]) 5 抽样信号 抽样信号Sa(t)=sin(t)/t 在MATLAB 中用 sinc 函数表示。 定义为 )/(sin )(πt c t Sa = t=-3*pi:pi/100:3*pi; ft=sinc(t/pi); plot(t,ft); grid on; axis([-10,10,-0.5,1.2]); %定义画图范围,横轴,纵轴 title('抽样信号') %定义图的标题名字 6 指数函数 ()at f t Ae = 例1.5:用MA TLAB 实现0.5()3t f t e = 7 正弦函数 2()cos( )t f t A T π?=+ 例1.6:用MA TLAB 实现正弦函数f(t)=3cos(10πt+1) 8 虚指数信号 例 虚指数信号 调用格式是f=exp((j*w)*t) t=0:0.01:15;

Matlab实验

MATLAB实验报告 学校:湖北文理学院 学院:物理与电子工程学院 专业:电子信息工程 学号: 2013128182 姓名:张冲 指导教师:宋立新

实验一 MATLAB环境的熟悉与基本运算 一、实验目的: 1.熟悉MATLAB开发环境 2.掌握矩阵、变量、表达式的各种基本运算 二、实验内容 1、学习使用help命令,例如在命令窗口输入help eye,然后根据帮助说明, 学习使用指令eye(其它不会用的指令,依照此方法类推) 2、学习使用clc、clear,观察command window、command history和workspace 等窗口的变化结果。 3、初步程序的编写练习,新建M-file,保存(自己设定文件名,例如exerc1、 exerc2、exerc3……),学习使用MATLAB的基本运算符。 三、练习 1)help rand,然后随机生成一个2×6的数组,观察command window、 command history和workspace等窗口的变化结果。 2)学习使用clc、clear,了解其功能和作用。 3)用逻辑表达式求下列分段函数的值 4)求[100,999]之间能被21整除的数的个数。(提示:rem,sum的用法) 四、实验结果 1)

2)clc:清除命令窗口所有内容,数值不变;clear:初始化变量的值。3) 4)

实验二 MATLAB数值运算 一、实验目的 1、掌握矩阵的基本运算 2、掌握矩阵的数组运算 二、实验内容 1)输入C=1:2:20,则C(i)表示什么?其中i=1,2,3, (10) 2)输入A=[7 1 5;2 5 6;3 1 5],B=[1 1 1; 2 2 2; 3 3 3],在命令窗 口中执行下列表达式,掌握其含义: A(2, 3) A(:,2) A(3,:) A(:,1:2:3) A(:,3).*B(:,2) A(:,3)*B(2,:) A*B A.*B A^2 A.^2 B/A B./A 3)二维数组的创建和寻访,创建一个二维数组(4×8)A,查询数组A第2 行、第3列的元素,查询数组A第2行的所有元素,查询数组A第6列的所有 元素。 4)两种运算指令形式和实质内涵的比较。设有3个二维数组A 2×4,B 2×4 ,C 2×2 , 写出所有由2个数组参与的合法的数组运算和矩阵指令。 5)学习使用表4列的常用函数(通过help方法) 6)学习使用表5数组操作函数。 7)生成一个3行3列的随机矩阵,并逆时针旋转90°,左右翻转,上下翻转。 8)已知a=[1 2 3],b=[4 5 6],求a.\b和a./ b 9)用reshape指令生成下列矩阵,并取出方框内的数组元素。 三、实验结果 1)C(i)表示C中的第i个的数值;

MATLAB环境熟悉及基本操作

实验一 MA TLAB 环境熟悉及基本操作 1. 命令窗口运行入门 1-1 求2 ))39(212(2 -*+的算术运算结果 1-2 简单矩阵A 的生成 1-3 绘制图形比较函数曲线5432x x x x 、、、,要求(一)四个曲线在一个图形文件窗口(二) 子图 2. 命令窗口常用的基本操作 1-4 若用户想计算51) 2sin(21+=πy ,51) 2cos(22+=πy 的值 1-5 变量的保存:save 和load 命令,将已生成的变量保存,名为×××,存入目录C :\my_dir 3. 系统的在线帮助 1-6 help sqrt/help syntax/help (回车) 1-7 lookfor line(查找与直线、线性问题有关的函数) 1-8 help 菜单 实验二 数组(矩阵)及其运算 2-1 用户不能清除的固定变量ans 、eps 、pi 、i 、j 、NaN 、Inf 等 如>>eps Ans=2.2204e-016 2-2 矩阵的创建 (1)>>a=[1 2 3;4 5 6;7 8 9] >>a=[1:2;4:6;7:9]; a1=1:6 (2)利用MA TLAB 内部函数产生矩阵 >>b=eye(3) >>c=ones(2,5) >>d=zeros(3,2) >>e=linspace(-3,6,10) %注意三个参数的含义 >>f=logspace(1,6,5) %注意三个参数的含义 >>R=rand(1,6) (3) 访问元素 >>aa=a(1,2)+a(2,3) >>bb=a(4)+a(8) >>a(end-2:end,2) %在下标中可以直接用end 表示这一维的最后一个元素 (4) 矩阵操作 >>A=[1,2,3;4,5,6;7,8,9] >>B=diag(A) >>C=diag(B) >>D=rot90(A) >>E=reshape(D,1,9) %注意这三个参数的含义 2-3 矩阵运算 (1)算术运算 + - * / \ ^ ‘

实验一MATLAB基本操作及运算.doc

实验一MATLAB基本操作及运算 一、实验目的 二、实验的设备及条件 三、实验内容 1、建立以下标量: 1) a=3 2) b=5+ 3 j,(j为虚数单位) 3) c=e j 2 / 3 2、建立以下向量: 2.71 38 1) Vb= 28 82 2) Vc=[4 3.8-3.8 -4 ] (向量中的数值从 4 到 -4,步长为 -0.2) 3、建立以下矩阵: 1) 3 L 3 Ma M O M 3 L 3 Ma 为一个 7×7的矩阵,其元素全为 3. 2) 1 11 L91 2 12 O92 Mb M M O M 10 20 L100

Mb 为一个 10× 10的矩阵 . 3) 1 14 5 Mc 2 5 17 3 23 8 4、使用题 1 中的变量计算下列等式的x,y,z的值: 1) x1 1 1 e( (a 15)/6) 2)x2 ( a 15 x1) 3)x3 ln( R [( b c)(b c)]sin( a / 3)) ,其中R表示复数实部。 5、求解函数值 y e ct2/(2.252),其中 c 取值见题 1, t 的取值范围为题 2 中行 向量 Vc。 6、使用题 1 和题 3 中所产生的标量和矩阵计算等式 Mx a Mc (Mc) 1 (Mc )T 其中 * 为矩阵所对应行列式的值,参考det 。 7、函数的使用和矩阵的访问。 1)计算矩阵 Mb 每一列的和,结果应为行向量形式。 2)计算整个矩阵 Mb 的平均值。 3)用向量 [1 1 1] 替换 Mb 的最上一行的值 4)将矩阵 Mb 的第 2~5 行,第 3 到 9 列的元素所构成的矩阵赋值给矩阵SubMb。 5)删除矩阵 Mb 的第一行; 6)使用函数 rand 产生一个 1× 10的向量 r ,并将 r 中值小于 0.5 的元素设置为 0。 8、已知 CellA(1, 1)=‘中国’, CellA( 1, 2)=‘北京’, CellA( 2, 1)是一个 3 乘 3 的单位阵, CellA( 2, 2)=[1 2 3],试用 MATLAB创建一个 2 ×2 的细胞数组 CellA。 9、已知结构数组student 中信息包含有姓名,学号,性别,年龄和班级,试用 MATLAB创建相应的结构数组 student。该数组包含有从自己学号开始连续 5 个同学的信息(如果学号在你后面的同学不足 5 个则往前排序),创建完成后查看自己的信息。

Matlab实验二

实验二DFS和DFT 实验任务 1、阅读并输入实验原理中介绍的例题程序,观察输出的图形曲线,理解每一条语句的含义。 2、已知一个信号序列的主值为x(n)=[0,1,2,3,2,1,0],显示两个周期的信号序列波形,要求: (1)用DFS求信号的幅度频谱和相位频谱,用图形表示; (2)求IDFS的图形,并与原信号进行比较。 N = 7; xn = [0,1,2,3,2,1,0]; xn = [xn xn]; n = 0:2*N-1; k = 0:2*N-1; Xk = xn*exp(-j*2*pi/N).^(n'*k); x = (Xk*exp(j*2*pi/N).^(n'*k))/(2*2*N); subplot(2,2,1),stem(n,xn); title('x(n)');axis([-2,2*N,1.1*min(xn),1.1*max(xn)]); subplot(2,2,2),stem(n,abs(x)); title('IDFS|X(k)|');axis([-2,2*N,1.1*min(xn),1.1*max(xn)]); subplot(2,2,3),stem(k,abs(Xk)); title('|X(k)|');axis([-2,2*N,1.1*min(abs(Xk)),1.1*max(abs(Xk))]); subplot(2,2,4),stem(k,angle(Xk)); title('arg|X(k)|');axis([-2,2*N,1.1*min(angle(Xk)),1.1*max(angle(Xk)) ]);

3、已知有限长序列x(n)=[7,6,5,4,3,2],求x(n)的DFT 和IDFT ,要求: (1) 画出DFT 对应的()X k 和()arg X k ????的图形。 (2)画出原信号与傅里叶逆变换IDFT[X(k)]图形进行比较 xn = [7 6 5 4 3 2]; N = length(xn); n = 0:N-1; k = 0:N-1; Xk = xn*exp(-j*2*pi/N).^(n'*k); x = (Xk*exp(j*2*pi/N).^(n'*k))/N; figure,subplot(2,2,1),stem(n,xn); title('x(n)'); subplot(2,2,2),stem(n,abs(x)); title('IDFT|X(k)|'); subplot(2,2,3),stem(k,abs(Xk)); title('|X(k)|'); subplot(2,2,4),stem(k,angle(Xk)); title('arg|X(k)|'); axis([0,N,1.1*min(angle(Xk)),1.1*max(angle(Xk))]) 4、一周期序列的主值x(n)=[7,6,5,4,3,2],求x(n)周期周期重复次数为3次时的DFS 。要求: (1)画出原主值和信号周期序列信号; (2)画出序列傅里叶变换对应的()X k %和()arg X k ????%的图形。 xn = [7 6 5 4 3 2];

实验1 MATLAB集成环境使用

实验四浸出制剂的制备 实验一 MATLAB集成环境使用实验目的: 1.熟悉MATLAB的基本环境 2.掌握MATLAB的基本命令 3.掌握简单线性方程组的求解 4.掌握MATLAB的行编辑和页面编辑 实验内容与要求 1.观察MATLAB 的基本环境,熟悉菜单和工具栏 2.MATLAB基本命令的使用 a.运行demos, 观看演示程序 b.工作空间管理命令: who , whos , clear , which , quit ,exit workspace c.路径编辑命令: path, cd ,addpath rmpath d.显示格式命令: type wall.m , more on , type coneball.m , more off ,type coneball.m e.窗口清理命令: coneball2 clc cla clf close f. 操作系统命令: copyfile pwd dir delete mkdir g. 联机帮助命令:help help . helpwin lookfor zoom which rguizoom help rguizoom what ver signal 3.简单线性方程组的求解 以学号 208040401 为例 A=[ 2 0 8 0 4 0 4 0 1] b=[ 208 40 401] x==A\b 4.行编辑与页面编辑 a.键入magic(4) 使用,调出该命令,并改变为magic(6)执行. b.执行coneball命令 edit命令, 打开coneball.m文件 改变文件中的半径和高, 存盘后,重新执行该命令,比较前后的不同. 页脚内容1

MATLAB实验二运算基础答案

MATLAB实验二运算基础答案 以下是为大家整理的mATLAb实验二运算基础答案的相关范文,本文关键词为mATLAb,实验,运算,基础,答案,实验,mATLAb,运,您可以从右上方搜索框检索更多相关文章,如果您觉得有用,请继续关注我们并推荐给您的好友,您可以在综合文库中查看更多范文。 实验二、mATLAb运算基础 一、实验目的 掌握mATLAb各种表达式的书写规则及常用函数的使用。掌握mATLAb中字符串、元胞数组和结构的常用函数的使用。二、实验内

容及步骤 1、设有矩阵A和b,A=[12345;678910;1112131415;1617 181920;2122232425],b=[3016;17-69;023-4;970;41311] 1)求它们的乘积c 2)将矩阵c的右下角3x2子矩阵赋给D >>A=[1:1:5;6:1:10;11:1:15;16:1:20;21:1:25];b=[3016;17-69;023-4;9 70;41311];...c=A*b,D=c(3:5,2:3)c=9315077258335237423520397588705 557753890717D=5203977055578907172、完成下列操作 1)求[100,999]之间能被61整除的数及其个数(提示:先 利用冒号表达式,再利用find和length函数。) >>A=[100:999];b=find(rem(A,61)==0),b_total=length(b) b=2384145206267328389450511572 633694755816877b_total=15 2)建立一个字符串向量,删除其中的大写字母(提示:利 用find函数和空矩阵。) >>a=['mATLAbisimportant'],b=abs(a);c=find(b A=12222222222s=2047 7、建立矩阵A并回答有关问题 A{1,1}='1';A{1,2}='brenden';A{2,1}=reshape(1:9,3,3);A{2,2}={12,34,2;54,2 1,3;4,23,67}; 1)使用访问的方式如何将brenden改写成bRenDen?2)分别执

MATLAB的实验环境及基本命令

实验一 MATLAB 的实验环境及基本命令 一实验目的: 1. 学习了解MATLAB 勺实验环境 2. 在MATLA 系统命令窗口练习有关 MATLAB^令的使用。 二实验步骤 1. 学习了解MATLAB 勺实验环境: 在 Windows 桌面上,用 mouse 双击MATLAB!标,即可进入 MATLA 啲默认界面: 图1-1 MATLAB 系统命令窗口 MATLAB 勺默认界面由三部分组成: ① Comma nd Win dows 命令窗口 ② Comma nd History 历史窗口 ③ Workspace 工作空间 2. 练习MATLA 療统命令的使用。 ①表达式 MATLAB 勺表达式由变量、数值、函数及操作符构成。实验前应掌握有关变量、数值、函数及操作 符的有关内容及使用方法。 三实验内容 练习1-1 :计算下列表达式: 要求计算完毕后,键入相应的变量名,查看并记录变量的值。 a=(1+{10)/2 b=|3+5| c=sin(e±) d = 250 /sin ( ’) 实验过程及结果:a=(1+sqrt(10))/2 a =2.0811 b= abs(3+5*i) b =5.8310 c= si n(exp(-2.3)) c=0.1001 d=250/s in (pi/6) d=500.0000 ②.向量运算:n 维向量是由n 个成员组成的行或列数组。在 MATLA 中,由分号分隔的方括号中的元 素产生一个列向量;由逗号或空号分隔的方括号中的元素产生一个列向量;同维的向量可进行加减运 算,乘法须遵守特殊的原则。 练习1-2 已知:X=[2 ; -4 ; 8] 求:Y=R ; P=5*R; E=X* Y ; S=X * Y 实验过程及结果:R=[tan(pi/4),sqrt(9),-5] R=1.0000 3.0000 - Y=R' Y=1.0000 P=5*R P =5.0000 15.0000 -25.0000 R=1.0000 3.0000 -5.0000

Matlab figure 基本操作

Matlab figure基本操作 set(gcf,'Position',[300 300 700 220]); %调整Figure位置和大小。前两个为离屏幕左下角的X,Y距离,后两个值为Figure窗口的宽和高 set(gca,'Position',[.05 .1 .9 .8]); %调整绘图范围(比例关系)。0.05+0.9为横向比例,最大为1;0.1+0.8为纵向比例。0.05和0.1为距离Figure左下角的X,Y距离 figure_FontSize=12; set(gca,'FontSize',figure_FontSize,'FontName','Arial'); xlabel('Distance (m)','FontSize',figure_FontSize,'fontweight','b','FontName','Arial'); ylabel('Thickness (m)','FontSize',figure_FontSize,'fontweight','b','FontName','Arial'); box off; %关闭上和右侧刻度线 grid on; %添加网格线 xkd=[10 20 30]; %定义坐标刻度数量 ykd=[100 200 300]; xkd_label=[1 3 5]; %更改刻度 ykd_label=[100 200 300]; set(gca,'xtick',xkd); set(gca,'xticklabel',xkd_label); set(gca,'ytick',ykd); set(gca,'yticklabel',ykd_label); set(gca,'xscale','log'); %改为对数坐标

相关文档
相关文档 最新文档