当前位置:文档之家› matlab作业

matlab作业

matlab作业
matlab作业

MATLAB作业

学号:07082002 姓名:武婷

第一次作业:

1)熟悉Matlab运行环境;简介一下你都做了什么!

首先,安装了Matlab软件,并启动该软件。

Matlab启动后,即出现Desktop操作桌面,为一个高度集成的工作界面。同时

发现有四个界面:指令窗(command window),当前目录浏览器(current directory),历史指令窗(command history),工作空间浏览器(workspace brower)。

指令窗(command window):在该窗内,进行了简单的算术运算,矩阵的不同输入方式的体验,既简单的函数调用等。如在命令窗口中键入一些简单的命令:rand(4,4)生成4*4其元素在0-1之间的随机矩阵,norm(x,1)求向量的1-

范数。

再如输入指令:>> 7*(12^2+66)/21,按下回车键即可得到结果:

ans =

5.6084e+070

当前目录浏览器:为管理方便,首先建立用户目录并将它设置成当前目录,了

解到了有两种方法;交互界面设置法和指令设置法。同时基于对该软件搜索路径知识的学习利用设置路径对话框修改搜索路径,并尝试了两种修改状态:当前

有效修改和永久有效修改。

历史指令窗(command history):该窗口记录了每次开启Matlab的时间,即开

启后再指令窗中运行过的所有指令行。令人惊喜的是,所有指令可以被轻松的

复制和再运行。然后通过参考书籍我对该窗口中的某些指令进行了重新调用。

工作空间浏览器(workspace brower):该窗口的功能是创建新变量,显示变

量内容基变量的保存等。在此,握手先熟悉了一下常用操作指令,然后尝试了

输入clc清除命令窗,以及clear清除当前的数据、变量,如何借助工作空间

浏览器产生保存变量的M文件。

接下来,对于菜单栏进行了详细的了解。

进入菜单栏File选项,了解了文件选项中所包含的各项命令,并尝试新建函数,为此选择了简单的函数进行编写相应的程序,通过调试完成了函数的正确编写,然后进行系统默认目录的保存,同时注意到对该文件进行合适的命名以便于区分。下来进入File选项中的Preferences,更改输出字节长度,字体大小和颜色,及较为简单的设置。然后感受了Matlab友善的用户界面,体验了多窗口和单一窗口的显示。将Desktop调出、移除Editor、Figures等界面框,单击箭

头嵌入界面,通过拖拽调整各界面框的位置,还调整了各界面框的大小。

2)了解MATLAB 帮助系统,并任选一个帮助专题,按其指导运行部分例子代码,建议对其适当修改。介绍一下你的在整个实验过程中的情形,包括出现了什么

问题,怎么解决的,观察到什么结果等。

通过学习我尝试着运行了例子代码,给出运行结果:

>> A=[1 2 3;4 5 6]

A =

1 2 3

4 5 6

>> fliplr(A)

ans =

3 2 1

6 5 4

>> B=[1 2 3 4 5 6]

B =

1 2 3 4 5 6

>> fliplr(B)

ans =

6 5 4 3 2 1

由以上可以看出,该函数的作用是对矩阵进行左右翻转。那么在此我产生一个问题,对于三阶四阶的矩阵系统是如何规定左右的呢,基于这个问题,我进行了如下尝试:

>> a=[1 2 3;4 5 6;7 8 9]

a =

1 2 3

4 5 6

7 8 9

>> fliplr(a)

ans =

3 2 1

6 5 4

9 8 7

>> c=rand(4,4)

c =

0.2769 0.6948 0.4387 0.1869

0.0462 0.3171 0.3816 0.4898

0.0971 0.9502 0.7655 0.4456

0.8235 0.0344 0.7952 0.6463

>> fliplr(c)

ans =

0.1869 0.4387 0.6948 0.2769

0.4898 0.3816 0.3171 0.0462

0.4456 0.7655 0.9502 0.0971

0.6463 0.7952 0.0344 0.8235

分析该结果可以看出对于超过二阶的矩阵,矩阵的左右翻转式对称进行的,而左右翻转的意义已经不明显了。那么这样的翻转是否有效呢?调回help阅读:

Limitations

The array being operated on cannot have more than two dimensions. This limitation exists because the axis upon which to flip a multidimensional array would be undefined。

原来,该函数命令仅限于对于一阶及二阶矩阵进行的左右翻转,二对二节以上的矩阵则不再有意义了。因此,在使用函数命令是我们应仔细阅读函数功能,同时不可忽略命令使用条件的限制,如此才能正确使用该软件解决实际问题。第二次作业

熟悉MATLAB的可视化功能:

1,从数学分析课程中选择较复杂的曲线(平面,空间皆可),用MATLAB编程绘图;

2,从数学分析课程中选择较复杂的空间曲面,用MATLAB编程绘图;

1.选择二维曲线的绘制:

>> t = linspace(0, 8, 401); %Define a vector of times from 0 to 8 s with 401 points

x = t.*exp(-t).*cos(2*pi*4*t); %Define a vector of x values plot(t, x) %Plot x vs

2.选择三维网格曲面的绘制: >> x=-20.5:0.00005;20.5;

y=x;

[x,y]=meshgrid(x,y); R=sqrt(x.^2+y.^2)+eps; z=sin(R)./R; surf(x,y,z)

012345678

-0.4

-0.3-0.2-0.100.10.20.3

0.4

第三次作业

1. 以下两个方程的解。(提示:关于符号变量的假设要注意)

(1) 试写出求三阶方程05.443=-x 正实根的程序。注意:只要正实根,

不要出现其他根。

syms x positive;x=solve(x^3-44.5,x) x =

(2^(2/3)*89^(1/3))/2

(2) 试求二阶方程022=+-a ax x 在0>a 时的根。 clear all

syms a positive;syms x; solve('x^2-a*x+a^2',x)

-25

ans =

a/2 - (3^(1/2)*a*i)/2 a/2 + (3^(1/2)*a*i)/2

2. 求符号矩阵???

?

?

?????=3332

31

232221131211a a a a a a a a a A 的行列式值和逆,所得结果应采用“子表达式置换”简洁化。

syms a_11 a_12 a_13 a_21 a_22 a_23 a_31 a_32 a_33; A=[a_11,a_12,a_13;a_21,a_22,a_23;a_31,a_32,a_33]; S=det(A);F=inv(A); [RS,w]=subexpr(S,'w') RS =

a_11*a_22*a_33 - a_11*a_23*a_32 - a_12*a_21*a_33 + a_12*a_23*a_31 + a_13*a_21*a_32 - a_13*a_22*a_31 w =

[ empty sym ]

>> [RF,W]=subexpr(F,'W') RF =

[ W*(a_22*a_33 - a_23*a_32), -W*(a_12*a_33 - a_13*a_32), W*(a_12*a_23 - a_13*a_22)]

[ -W*(a_21*a_33 - a_23*a_31), W*(a_11*a_33 - a_13*a_31), -W*(a_11*a_23 - a_13*a_21)]

[ W*(a_21*a_32 - a_22*a_31), -W*(a_11*a_32 - a_12*a_31), W*(a_11*a_22 - a_12*a_21)] W =

1/(a_11*a_22*a_33 - a_11*a_23*a_32 - a_12*a_21*a_33 + a_12*a_23*a_31 + a_13*a_21*a_32 - a_13*a_22*a_31)

3. 对于0>x ,求1

20

11122

+∞

=∑

?

?

? ??+-+k k x x k 。(提示:理论结果为x ln ;注意限定

性假设)

syms x positive;syms k;

f=2/(2*k+1)*[(x-1)/(x+1)]^(2*k+1); s=symsum(f,k,0,inf) s =

piecewise([abs(x - 1) < x + 1, 2*atanh((x - 1)/(x + 1))]) 4. (1)通过符号计算求t t y sin )(=的导数dt

dy 。

syms t;y=abs(sin(t)); diff(y) ans =

sign(sin(t))*cos(t)

(2)然后根据此结果,求

-

=0

t dt

dy 和

2

π

=

t dt

dy 。

f=diff(y);

limit(f,t,0,'left') ans = -1

>> limit(f,t,pi/2) ans = 0 5. 求出dx x e

x

sin 7.15?

--π

π

的具有64位有效数字的积分值。(提示:int,

vpa, ezplot ) syms x;

f=exp(-abs(x))*abs(sin(x)); y=int(f,x,-5*pi,1.7*pi); vpa(y,64) ans =

3617514.635647088707100018393465500554242735057835123431773680704 6. 计算二重积分??

+2

1

1

2

22

)(x

dydx y x 。

syms x y; f=x^2+y^2;

int(int(f,y,1,x^2),x,1,2) ans = 1006/105

7. 在0>n 的限制下,求xdx n y n

?

=

2

s in )(π

的一般积分表达式,并计算

)3

1(y 的32位有效数字表达。(提示:注意限定条件;注意题目要求32位

有效)

syms n positive;syms x; f=sin(x)^n; y=int(f,x,0,pi/2) y =

beta(1/2, n/2 + 1/2)/2 >>beta(1/2,1/6+1/2)/2 ans = 1.2936 >> vpa(ans,32) ans =

1.2935547796148951782413405453553

8. 求方程2,122==+xy y x 的解。(提示:正确使用solve ) syms x y;

s=solve(‘x^2+y^2=1’,’x*y=2’,x,y); x=disp(s.x),y=disp(s.y) x=

(1/2 + (15^(1/2)*i)/2)^(1/2)/2 - (1/2 + (15^(1/2)*i)/2)^(3/2)/2 - (1/2 + (15^(1/2)*i)/2)^(1/2)/2 + (1/2 + (15^(1/2)*i)/2)^(3/2)/2 (1/2 - (15^(1/2)*i)/2)^(1/2)/2 - (1/2 - (15^(1/2)*i)/2)^(3/2)/2 - (1/2 - (15^(1/2)*i)/2)^(1/2)/2 + (1/2 - (15^(1/2)*i)/2)^(3/2)/2 y=

(1/2 + (15^(1/2)*i)/2)^(1/2) -((15^(1/2)*i)/2 + 1/2)^(1/2) (1/2 - (15^(1/2)*i)/2)^(1/2) -(1/2 - (15^(1/2)*i)/2)^(1/2) 9. 求微分方程04

5=+'x

y

y 的通解,并绘制任意常数为1时,如图p2-3所示

的解曲线图形。(提示:通解中任意常数的替代;构造能完整反映所有解的统一表达式,然后绘图。)

图 p2-3 微分方程的解曲线 clear all;

y=dsolve(‘y*Dy/5+x/4=0’,’x’) y =

2^(1/2)*(C3 - (5*x^2)/8)^(1/2) -2^(1/2)*(C3 - (5*x^2)/8)^(1/2) y1=subs(y(1),'C3',1); y2=subs(y(2),'C3',1);

ezplot(y1,[-2,2,-2,2],1) hold on

ezplot(y2,[-2,2,-2,2],1)

10. 求边值问题

1)0(,0)0(,

34,

43==+-=+=g f g f dx

dg g f dx

df 的解。

[y,g]=dsolve('Df=3*f+4*g',’Dg=-4*f+3*g’,'f(0)=0,g(0)=1','x') y =

sin(4*x)*exp(3*x) g =

cos(4*x)*exp(3*x) 第四次作业

1. 采用数值计算方法,画出dt

t

t x y x

?

=

sin )(在]10 ,0[区间曲线,并计算

)5.4(y 。(提示:cumtrapz

快捷,在精度要求不高处可用;quad 也可试。

巧用find 。)

clear; t=0:0.1:10; y=sin(t)./t; s =cumtrapz(t,y); plot(t,y)

> y='sin(t)./t'; quad(y,0,4.5,0.01) ans =

1.6541 2. 求函数x

e

x f 3

sin

)(=的数值积分?

=

π

)(dx x f s ,并请采用符号计算尝试复

算。(提示:各种数值法均可试。) 数值计算:

f=’exp(sin(x).^3)’; s=quad(f,0,pi,pi/10) s =

5.1254 符号计算: syms x;

Isym=vpa(int(exp(sin(x)^3),x,0,pi)) Isym =

5.1370135567176141893469089750876

3. 求函数5.08.12cos 5.1)5(sin )(2

06.02++-=t t t e t t f t 在区间]5,5[-中的最小值点。(提示:作图观察。) syms t;

y=sin(5*t)^2*exp(0.06*t^2)-1.5*t*cos(2*t)+1.8*abs(t+0.5)

tt=-5:pi/200:5;

ytt=subs(y,t,tt);

plot(tt,ytt)

y =

exp((3*t^2)/50)*sin(5*t)^2 + (9*abs(t + 1/2))/5 - (3*t*cos(2*t))/2

t1=-2;t2=0;

yt=@(t)( sin(5*t)^2*exp(0.06*t^2)-1.5*t*cos(2*t)+1.8*abs(t+0.5)); [tn00,fval,exitflag,output]=fminbnd(yt,t1,t2)

tn00 =

-1.2850

fval =

-0.1860 %最小值

exitflag =

1

output =

iterations: 9

funcCount: 10

algorithm: 'golden section search, parabolic interpolation'

message: [1x112 char] 4. 设

0)0(,

1)0(,1)(2)(3

)(22

===+-dt

dy y t y dt

t dy dt

t y d ,用数值法和符号法求

5

.0)

(=t t y 。(提示:注意ode45和 dsolve 的用法。)

数值法:

编写M 函数文件DyDt.m function ydot=DyDt(t,y) ydot=[y(2);3* y(2)-2*y(1)-1]; %解算微分方程

tspan=[0.5,1]; y0=[1;0]; [tt,yy]=ode45(@DyDt,tspan,y0); figure(1) plot(tt,yy(:,1))

xlabel('t'),title('x(t)')

所以y 0.5=1 符号法:

y=dsolve(‘D2y-3*Dy+2*y+1’,’y(0)=1,Dy(0)=0’,’x ’) y =

3*exp(x) - (3*exp(2*x))/2 - 1/2 y1=3*exp(0.5)-(3*exp(2*0.5))/2-1/2 y 1=

0.3687

5. 求矩阵b Ax =的解,A 为4阶魔方阵,?????

???????=432

1b 。(提示:用rref, inv, /

体验。)

A=magic(4),b=(1:4)’; ra=rank(A), rab=rank([A,b]) ra = 3 rab = 4 X=A\b

Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 1.306145e-017. X =

-562949953421312 -1688849860263935 1688849860263936 562949953421312

6. 求0]sin[sin 105.02.0=-+--t e t t 的实数解。(提示:发挥作图法功用) y_C=inline('-0.5+t-10*exp(-0.2*t) .*abs(sin(sin(t)))','t'); t=-10:0.01:10; Y=y_C(t);

clf, plot(t,Y,'r'); hold on plot(t,zeros(size(t)),'k'); xlabel('t');ylabel('y(t)')

zoom on

[tt,yy]=ginput(5),zoom off [t4,y4]=fzero(y_C,tt(4))

tt =

2.7419

-4.1705

-4.1705

2.7419

2.7419

yy =

0.0731

-15.4825

-15.4825

-0.1316

-0.1316

t4 = 2.7341

y4 =

-4.4409e-016

7. 试产生均值为4,标准差为2的)1

10000

( 的正态分布随机数组 a ,分别用hist和histfit绘制该数组的频数直方图,观察两张图形的差异。除

histfit上的拟合红线外,你能使这两个指令绘出相同的频数直方图吗?(提示:体验normrnd;理解hist(Y, m)指令格式。)

y=normrnd(4,2,10000,1);

hist(y)

histfit(y)

不能

8 已知有理分式)

()()(x D x N x R =

,其中)5.0)(3()(33++=x x x x N ,

)125)(22()(2

3

2

++-+=x x x x x D 。

(1)求该分式的商多项式)(x Q 和余多项式)(x r 。 format rat

p1=conv([3,0,1,0],[1,0,0,0.5]); p2=conv([1,2,-2],[5,2,0,1]); [q,r]=deconv(p1,p2);

cq='商多项式为 '; cr='余项多项式为 '; disp([cq,poly2str(q,'s')]), disp([cr,poly2str(r,'s')]) 商多项式为 0.6 s - 1.44

余项多项式为 21.88 s^4 - 5.34 s^3 - 5.52 s^2 + 4.58 s - 2.88 (2)用程序验算)()()()(x N x r x Q x D =+是否成立。(提示:采用范数指令norm 验算。)

qp2=conv(q,p2); % qp2=1 5 1 6 5 pp1=qp2+r; % pp1=1 5 6 10 8 pp1==p1 ans =

Columns 1 through 5

1 1 0 0 1 Columns 6 through 7 1 1

10. 求以下两个方程的解: (提示:关于符

号变量的假设要注意)

(3) 试写出求三阶方程05.443=-x 正实根的程序。注意:只要正实根,

不要出现其他根。

syms x positive;x=solve(x^3-44.5,x) x =

(2^(2/3)*89^(1/3))/2

(4) 试求二阶方程022=+-a ax x 在0>a 时的根。 clear all

syms a positive;syms x; solve('x^2-a*x+a^2',x) ans =

a/2 - (3^(1/2)*a*i)/2 a/2 + (3^(1/2)*a*i)/2

11.求符号矩阵???

?

?

?????=3332

31

232221131211a a a a a a a a a A 的行列式值和逆,所得结果应采用“子表达式置换”简洁化。

syms a_11 a_12 a_13 a_21 a_22 a_23 a_31 a_32 a_33; A=[a_11,a_12,a_13;a_21,a_22,a_23;a_31,a_32,a_33]; S=det(A);F=inv(A); [RS,w]=subexpr(S,'w') RS =

a_11*a_22*a_33 - a_11*a_23*a_32 - a_12*a_21*a_33 + a_12*a_23*a_31 + a_13*a_21*a_32 - a_13*a_22*a_31 w =

[ empty sym ]

>> [RF,W]=subexpr(F,'W') RF =

[ W*(a_22*a_33 - a_23*a_32), -W*(a_12*a_33 - a_13*a_32), W*(a_12*a_23 - a_13*a_22)]

[ -W*(a_21*a_33 - a_23*a_31), W*(a_11*a_33 - a_13*a_31), -W*(a_11*a_23 - a_13*a_21)]

[ W*(a_21*a_32 - a_22*a_31), -W*(a_11*a_32 - a_12*a_31), W*(a_11*a_22 - a_12*a_21)]

W =

1/(a_11*a_22*a_33 - a_11*a_23*a_32 - a_12*a_21*a_33 + a_12*a_23*a_31 + a_13*a_21*a_32 - a_13*a_22*a_31)

12.对于0>x ,求1

20

11122

+∞

=∑

?

?

? ??+-+k k x x k 。(提示:理论结果为x ln ;注意限定

性假设)

syms x positive;syms k;

f=2/(2*k+1)*[(x-1)/(x+1)]^(2*k+1); s=symsum(f,k,0,inf) s =

piecewise([abs(x - 1) < x + 1, 2*atanh((x - 1)/(x + 1))]) 13.(1)通过符号计算求t t y sin )(=的导数dt

dy 。

syms t;y=abs(sin(t)); diff(y) ans =

sign(sin(t))*cos(t)

(2)然后根据此结果,求

-

=0

t dt

dy 和

2

π

=

t dt

dy 。

f=diff(y);

limit(f,t,0,'left') ans = -1

>> limit(f,t,pi/2) ans = 0 14.求出dx x e

x

sin 7.15?

--π

π

的具有64位有效数字的积分值。(提示:int,

vpa, ezplot )

非常全非常详细的MATLAB数字图像处理技术

MATLAB数字图像处理 1 概述 BW=dither(I)灰度转成二值图; X=dither(RGB,map)RGB转成灰度图,用户需要提供一个Colormap; [X,map]=gray2ind(I,n)灰度到索引; [X,map]=gray2ind(BW,n)二值图到索引,map可由gray(n)产生。灰度图n默认64,二值图默认2; X=graylice(I,n)灰度图到索引图,门限1/n,2/n,…,(n-1)/n,X=graylice(I,v)给定门限向量v; BW=im2bw(I,level)灰度图I到二值图; BW=im2bw(X,map,level)索引图X到二值图;level是阈值门限,超过像素为1,其余置0,level在[0,1]之间。 BW=im2bw(RGB,level)RGB到二值图; I=ind2gray(X,map)索引图到灰度图; RGB=ind2rgb(X,map)索引图到RGB; I=rgb2gray(RGB)RGB到灰度图。 2 图像运算 2.1 图像的读写 MATLAB支持的图像格式有bmp,gif,ico,jpg,png,cur,pcx,xwd和tif。 读取(imread): [1] A=imread(filename,fmt) [2] [X,map]=imread(filename,fmt) [3] […]=imread(filename) [4] […]=imread(URL,…) 说明:filename是图像文件名,如果不在搜索路径下应是图像的全路径,fmt是图像文件扩展名字符串。前者可读入二值图、灰度图、彩图(主要是RGB);第二个读入索引图,map 为索引图对应的Colormap,即其相关联的颜色映射表,若不是索引图则map为空。URL表示引自Internet URL中的图像。 写入(imwrite): [1] R=imwrite(A,filename,fmt); [2] R=imwrite(X,map,filename,fmt); [3] R=imwrite(…,filename); [4] R=imwrite(…,Param1,V al1,Param2,Val2) 说明:针对第四个,该语句用于指定HDF,JPEG,PBM,PGM,PNG,PPM,TIFF等类型输出文件的不同参数。例如HDF的Quality,Compression,WriteMode;JPEG的BitDepth,Comment:Empty or not,Mode:lossy or lossless,Quality等。 2.2 图像的显示 方法1:使用Image Viewer(图像浏览器),即运用imview函数。 同时显示多帧图像的所有帧,可用到montage函数。

matlab 三维图形绘制实例

三维图形 一. 三维曲线 plot3(x1,y1,z1,选项1,x2,y2,z2,选项2,…,xn,yn,zn,选项n) 其中每一组x,y,z 组成一组曲线的坐标参数,选项的定义和plot 函数相同。当x,y ,z 是同维向量时,则x,y,z 对应元素构成一条三维曲线。当x,y ,z 是同维矩阵时,则以x,y,z 对应列元素绘制三维曲线,曲线条数等于矩阵列数。 Example1.绘制三维曲线。 程序如下: clf, t=0:pi/100:20*pi; x=sin(t); y=cos(t); z=t.*sin(t).*cos(t); %向量的乘除幂运算前面要加点 plot3(x,y,z); title('Line in 3-D Space'); xlabel('X');ylabel('Y');zlabel('Z'); grid on; 所的图形如下: -1 1 X Line in 3-D Space Y Z 二. 三维曲面 1. 产生三维数据 在MATLAB 中,利用meshgrid 函数产生平面区域内的网格坐标矩阵。

语句执行后,矩阵X 的每一行都是向量x ,行数等于向量y 的元素的个数,矩阵Y 的每一列都是向量y ,列数等于向量x 的元素的个数。 2. 绘制三维曲面的函数 surf 函数和mesh 函数 example2. 绘制三维曲面图z=sin(x+sin(y))-x/10。 程序如下: clf, [x,y]=meshgrid(0:0.25:4*pi); %产生平面坐标区域内的网格坐标矩阵 z=sin(x+sin(y))-x./10; surf(x,y,z); axis([0 4*pi 0 4*pi -2.5 1]); title('surf 函数所产生的曲面'); figure; mesh(x,y ,z); axis([0 4*pi 0 4*pi -2.5 1]); title('mesh 函数所产生的曲面'); -2.5 -2-1.5-1-0.500.51surf 函数所产生的曲面

MATLAB基础训练作业(含答案)

实验一 MATLAB 工作环境熟悉及简单命令的执行 一、实验目的:熟悉MATLAB 的工作环境,学会使用MATLAB 进行一些简单的运算。 二、实验内容:MATLAB 的启动和退出,熟悉MATLAB 的桌面(Desktop ),包括菜单 (Menu )、工具条 (Toolbar )、命令窗口(Command Window)、历史命令窗口、工作空间(Workspace)等;完成一些基本的矩阵操作;学习使用在线帮助系统。 三、实验步骤: 1、启动MATLAB ,熟悉MATLAB 的桌面。 2、在命令窗口执行命令完成以下运算,观察workspace 的变化,记录运算结果。 (1)(365-52?2-70)÷3 (2)>>area=pi*2.5^2 (3)已知x=3,y=4,在MATLAB 中求z : ()2 3 2 y x y x z -= (4)将下面的矩阵赋值给变量m1,在workspace 中察看m1在内存中占用的字节数。 m1=????? ???? ???115 14 4 12679810115 133216 执行以下命令 >>m1( 2 , 3 ) >>m1( 11 ) >>m1( : , 3 ) >>m1( 2 : 3 , 1 : 3 ) >>m1( 1 ,4 ) + m1( 2 ,3 ) + m1( 3 ,2 ) + m1( 4 ,1) (5)执行命令>>help abs 查看函数abs 的用法及用途,计算abs( 3 + 4i ) (6)执行命令 >>x=0:0.1:6*pi; >>y=5*sin(x); >>plot(x,y) (6)运行MATLAB 的演示程序,>>demo ,以便对MATLAB 有一个总体了解。 四、思考题 1、以下变量名是否合法?为什么? (1)x2 (2)3col (3)_row (4)for 2、求以下变量的值,并在MATLAB 中验证。 (1)a = 1 : 2 : 5 ; (2)b = [ a' a' a' ] ; (3)c = a + b ( 2 , : )

MATLAB大作业

选 题 说 明 本人选做第2、4、5、9、11、12、13、14、16、19、24 题。 作业内容题目2:问题描述:在[0 , 2π]范围内绘制二维曲线图y=cos(5x)*sin(x) (1)问题分析 这是一个二维绘图问题,先写出x的取值范围,再用plot函数画出y的图像。 (2)软件说明及源代码 >> x = 0:pi/100:2.*pi; y=cos(5*x).*sin(2*x); >> plot(x,y) (3)实验结果 题目4:问题描述:创建符号函数并求解,要求写出步骤和运行结果 (1)创建符号函数f=ax2+bx+c

(2)求f=0的解 (1)问题分析 这是符号计算问题,首先要确定符号变量,然后创建符号函数,最后利用subs函数求解特值。 (2)软件说明及源代码 >> syms a b c x f; f=a*x^2+b*x+c; subs(f,0) (3)实验结果 ans = c 题目5:问题描述:求积分 (1)问题分析 这是符号计算的积分求解问题,首先需要确定符号变量,然后利用int函数计算积分。 (2)软件说明及源代码 >> syms x y; y=sqrt(1-2*sin(2*x)); >> int(y,x,0,pi/2) (3)实验结果 ans = ellipticE(-pi/4, 4)*1i - ellipticE(pi/4, 4)*1i - ellipticE(-pi/6, 4)*2i + ellipticE(pi/6, 4)*2i 题目9:问题描述:按水平和竖直方向分别合并下述两个矩阵:

(1)问题分析 这是考查矩阵的基本操作,首先定义矩阵,然后合并矩阵。 (2)软件说明及源代码 >> A=[1,0,0;1,1,0;0,0,1]; B=[2,3,4;5,6,7;8,9,10]; >> a=[A,B],b=[A;B] (3)实验结果 a = 1 0 0 2 3 4 1 1 0 5 6 7 0 0 1 8 9 10 b = 1 0 0 1 1 0 0 0 1 2 3 4 5 6 7 8 9 10 题目11:问题描述:计算z=yx2+3y2x+2y3的和: (1)问题分析 这是符号计算问题,首先确定符号变量,然后构造函数,最后利用diff函数进行求导。 (2)软件说明及源代码 >> syms x y z; >> z=y*x^2+3*y^2*x+2*y^3; >> diff(z,y,1),diff(diff(z,y,1),x,1) (3)实验结果 ans = x^2 + 6*x*y + 6*y^2

基于Matlab基本图像处理程序

图像读入 ●从图形文件中读入图像 imread Syntax: A = imread(filename, fmt) filename:指定的灰度或彩色图像文件的完整路径和文件名。 fmt:指定图形文件的格式所对应的标准扩展名。如果imread没有找到filename所制定的文件,会尝试查找一个名为filename.fmt的文件。 A:包含图像矩阵的矩阵。对于灰度图像,它是一个M行N列的矩阵。如果文件包含 RGB真彩图像,则是m*n*3的矩阵。 ●对于索引图像,格式[X, map] = imread(filename, fmt) X:图像数据矩阵。 MAP:颜色索引表 图像的显示 ●imshow函数:显示工作区或图像文件中的图像 ●Syntax: imshow(I) %I是要现实的灰度图像矩阵 imshow(I,[low high],param1, val1, param2, val2,...) %I是要现实的灰度图像矩阵,指定要显示的灰度范围,后面的参数指定显示图像的特定参数 imshow(RGB) imshow(BW) imshow(X,map) %map颜色索引表 imshow(filename) himage = imshow(...) ●操作:读取并显示图像 I=imread('C:\Users\fanjinfei\Desktop\baby.bmp');%读取图像数据 imshow(I);%显示原图像 图像增强 一.图像的全局描述 直方图(Histogram):是一种对数据分布情况的图形表示,是一种二维统计图表,它的两个坐标分别是统计样本和该样本对应的某个属性的度量。 图像直方图(Image Histogram):是表示数字图像中亮度分布的直方图,用来描述图象灰度值,标绘了图像中每个亮度值的像素数。 灰度直方图:是灰度级的函数,它表示图像中具有某种灰度级的像素的个数,反映了图 像中某种灰度出现的频率。描述了一幅图像的灰度级统计信息。是一个二维图,横坐标为图像中各个像素点的灰度级别,纵坐标表示具有各个灰度级别的像素在图像中出现的次数或概率。 归一化直方图:直接反应不同灰度级出现的比率。纵坐标表示具有各个灰度级别的像

MATLAB绘图功能大全

Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数。此外,Matlab 还提供了直接对图形句柄进行操作的低层绘图操作。这类操作将图形的每个图形元素(如坐标轴、曲线、文字等)看做一个独立的对象,系统给每个对象分配一个句柄,可以通过句柄对该图形元素进行操作,而不影响其他部分。 本章介绍绘制二维和三维图形的高层绘图函数以及其他图形控制函数的使用方法,在此基础上,再介绍可以操作和控制各种图形对象的低层绘图操作。 一、二维绘图 二维图形是将平面坐标上的数据点连接起来的平面图形。可以采用不同的坐标系,如直角坐标、对数坐标、极坐标等。二维图形的绘制是其他绘图操作的基础。 (一)绘制二维曲线的基本函数 在Matlab中,最基本而且应用最为广泛的绘图函数为plot,利用它可以在二维平面上绘制出不同的曲线。 1.plot函数的基本用法

plot函数用于绘制二维平面上的线性坐标曲线图,要提供一组x 坐标和对应的y坐标,可以绘制分别以x和y为横、纵坐标的二维曲线。plot函数的应用格式 plot(x,y) 其中x,y为长度相同的向量,存储x坐标和y坐标。 例51 在[0 , 2pi]区间,绘制曲线 程序如下:在命令窗口中输入以下命令 >> x=0:pi/100:2*pi; >> y=2*exp(-0.5*x).*sin(2*pi*x); >> plot(x,y) 程序执行后,打开一个图形窗口,在其中绘制出如下曲线 注意:指数函数和正弦函数之间要用点乘运算,因为二者是向量。 例52 绘制曲线 这是以参数形式给出的曲线方程,只要给定参数向量,再分别求出x,y向量即可输出曲线: >> t=-pi:pi/100:pi; >> x=t.*cos(3*t); >> y=t.*sin(t).*sin(t); >> plot(x,y) 程序执行后,打开一个图形窗口,在其中绘制出如下曲线 以上提到plot函数的自变量x,y为长度相同的向量,这是最常见、最基本的用法。实际应用中还有一些变化。

MATLAB第一章作业答案

第一章 M A T L A B 概况与基本操作 1.选择题(每题2分,共20分): (1)最初的MATLAB 核心程序是采用D 语言编写的。 (2)即将于2011年9月发布的MATLAB 新版本的编号为C 。 2011Ra 2011Rb R2011b R2011a (3)在默认设置中,MATLAB 中的注释语句显示的颜色是B 。 A.黑色 B.绿色 C.红色 D.蓝色 (4)如果要以科学计数法显示15位有效数字,使用的命令是A 。 long e long long g long d (5)在命令窗口新建变量a 、b ,如果只查看变量a 的详细信息,使用的命令为A 。 a a (6)如果要清除工作空间的所有变量,使用的命令为C 。 all C.两者都可 D.两者都不可 (7)在创建变量时,如果不想立即在命令窗口中输出结果,可以在命令后加上B 。 A.冒号 B.分号 C.空格 D.逗号 (8)如果要重新执行以前输入的命令,可以使用D 键。 A.下箭头↓ B.右箭头→ C.左箭头← D.上箭头↑ (9)如果要查询函数det 的功能和用法,并显示在命令窗口,应使用命令C 。 D.三者均可 (10)如果要启动Notebook 文档,下列D 操作是可行的。 A.在命令窗口输入notebook 命令 B.在命令窗口输入notebook filename 命令 C.在Word 中启动M-book 文档 D.三者均可 2.填空题(每空1分,共20分): (1)MATLAB 是matrix 和laboratory 两个单词前三个字母的组合,意为“矩阵实验室”,它的创始人是Cleve Moler 和Jack Little 。 (2)在MATLAB 的默认设置中,关键字显示的字体为蓝色,命令、表达式、计算结果显示的字体为黑色,字符串显示的字体为褐红色,注释显示的字体为绿色,错误信息显示的字体为红色。 (3)在命令窗口中,输出结果显示为各行之间添加空行的命令为format loose ,各行之间不添加空行的命令为format compact 。 (4)在MATLAB 中,各种标点符号的作用是不同的。例如,空格的作用是分隔数组每行各个元素,逗号的作用是分隔数组每行各个元素或函数的各个输入参数,分号的作用是作为不显示命令结果的命令行的结尾或分隔数组各列,冒号的作用是生成一维数组或表示数组全部元素,百分号的作用是引导一行注释,…的作用是连接相邻两行,感叹号的作用是调用操作系统命令。 3.程序设计题(每题10分,共40分) (1)以25m/s 的初速度向正上方投球(g=s 2 ),计算到达最高点的时间tp 以及球从出发点到最高点的距离hp 。 解:根据物理学知识,物体上抛运动的速度与经过的时间之间的关系为0p p v v gt =-,因此所需要的时间为0p p v v t g -= 。而到达最高点时的速度0p v =,因此可根据此公式求出tp : v0=25;g=;vp=0; tp=(v0-vp)/g tp =

MATLAB大作业

MATLAB大作业 作业要求: (1)编写程序并上机实现,提交作业文档,包括打印稿(不含源程序)和电子稿(包含源程序),以班为单位交,作业提交截止时间6月24日。 (2)作业文档内容:问题描述、问题求解算法(方案)、MATLAB程序、结果分析、本课程学习体会、列出主要的参考文献。打印稿不要求MATLAB程序,但电子稿要包含MATLAB 程序。 (3)作业文档字数不限,但要求写实,写出自己的理解、收获和体会,有话则长,无话则短。不要抄袭复制,可以参考网上、文献资料的内容,但要理解,要变成自己的语言,按自己的思路组织内容。 (4)从给出的问题中至少选择一题(多做不限,但必须独立完成,严禁抄袭)。 (5)大作业占过程考核的20%,从完成情况、工作量、作业文档方面评分。 第一类:绘制图形。(B级) 问题一:斐波那契(Fibonacci)螺旋线,也称黄金螺旋线(Golden spiral),是根据 斐波那契数列画出来的螺旋曲线,自然界中存在许多斐波那契螺旋线的图案,是自然界最完美的经典黄金比例。斐波那契螺旋线,以斐波那契数为边的正方形拼成的长方形,然后在正方形里面画一个90度的扇形,连起来的弧线就是斐波那契螺旋线,如图所示。 问题二:绘制谢尔宾斯基三角形(Sierpinskitriangle)是一种分形,由波兰数学家谢 尔宾斯基在1915年提出,它是一种典型的自相似集。其生成过程为:取一个实心的三角形(通常使用等边三角形),沿三边中点的连线,将它分成四个小三角形,然后去掉中间的那一个小三角形。接下来对其余三个小三角形重复上述操作,如图所示。

问题三:其他分形曲线或图形。分形曲线还有很多,教材介绍了科赫曲线,其他还有皮 亚诺曲线、分形树、康托(G. Cantor)三分集、Julia集、曼德布罗集合(Mandelbrot set),等等。这方面的资料很多(如https://www.doczj.com/doc/6518505180.html,/content/16/0103/14/5315_525141100.shtml),请分析构图原理并用MATLAB实现。 问题四:模拟掷骰子游戏:掷1000次骰子,统计骰子各个点出现的次数,将结果以下表的形式显示,并绘制出直方图。 点数 1 2 3 4 5 6 出现次数166 150 164 162 184 174 问题五:利用MATLAB软件绘制一朵鲜花,实现一定的仿真效果。 提示:二维/三维绘图,对花瓣、花蕊、叶片、花杆等的形状和颜色进行详细设置。 第二类:插值与拟合。(B级) 问题一:有人对汽车进行了一次实验,具体过程是,在行驶过程中先加速,然后再保持匀速行驶一段时间,接着再加速,然后再保持匀速,如此交替。注意,整个实验过程中从未 (1)分别使用最近点插值、线性插值、三次埃尔米特插值和三次样条插值进行计算[0,110]时间段50个时间点的速度。 (2)绘制插值图形并标注样本点。 问题二:估算矩形平板各个位置的温度。已知平板长为5m,宽为3m,平板上3×5栅格 点上的温度值为44,25,20,24,30;42,21,20,23,38;25,23,19,27,40。 (1)分别使用最近点插值、线性插值和三次样条插值进行计算。 (2)用杆图标注样本点。 (3)绘制平板温度分布图。 问题三:自行车道的设计。对9条道路上的自行车道宽度以及自行车与过往机动车之间 (1)对数据进行线性拟合。 (2)绘制拟合曲线和样本点。 (3)如果自行车与过往机动车之间安全距离的最小距离是1.8m,试计算相应的自行车道宽度的最小值。 问题四:在水资源工程学中,水库的大小与为了蓄水而拦截的河道中的水流速度密切相 关。对于某些河流来说,这种长时间的历史水流记录很难获得。然而通常容易得到过去若干年间关于降水量的气象资料。鉴于此,推导出流速与降水量之间的关系式往往特别有用。只

MATLAB图像处理相关函数

一、通用函数: colorbar显示彩色条 语法:colorbar \ colorbar('vert') \ colorbar('horiz') \ colorbar(h) \ h=colorbar(...) \ colorbar(...,'peer',axes_handle) getimage 从坐标轴取得图像数据 语法:A=getimage(h) \ [x,y,A]=getimage(h) \ [...,A,flag]=getimage(h) \ [...]=getimage imshow 显示图像 语法:imshow(I,n) \ imshow(I,[low high]) \ imshow(BW) \ imshow(X,map) \ imshow(RGB)\ imshow(...,display_option) \ imshow(x,y,A,...) \ imshow filename \ h=imshow(...) montage 在矩形框中同时显示多幅图像 语法:montage(I) \ montage(BW) \ montage(X,map) \ montage(RGB) \ h=montage(...) immovie 创建多帧索引图的电影动画 语法:mov=immovie(X,map) \ mov=immovie(RGB) subimage 在一副图中显示多个图像 语法:subimage(X,map) \ subimage(I) \ subimage(BW) \ subimage(RGB) \ subimage(x,y,...) \ subimage(...) truesize 调整图像显示尺寸 语法:truesize(fig,[mrows mcols]) \ truesize(fig) warp 将图像显示到纹理映射表面 语法:warp(X,map) \ warp(I ,n) \ warp(z,...) warp(x,y,z,...) \ h=warp(...) zoom 缩放图像 语法:zoom on \ zoom off \ zoom out \ zoom reset \ zoom \ zoom xon \ zoom yon\ zoom(factor) \ zoom(fig,option) 二、图像文件I/O函数命令 imfinfo 返回图形图像文件信息 语法:info=imfinfo(filename,fmt) \ info=imfinfo(filename) imread 从图像文件中读取(载入)图像 语法:A=imread(filename,fmt) \ [X,map]=imread(filename,fmt) \

Matlab大作业

Matlab 大作业 (组内成员:彭超杰、南彦东、江明伟) 一、研究模型 (电车)通过控制油门(保持一定角度)来调节电动机能输出稳定的转速,从而控制车速稳定。 数学依据说明如下: 由图可知存在以下关系:a d a a u w k R i dt di L =++ (w k e d d =) L M M dt dw J -= a m i k M = L a m M i k dt dw J -=

k为反电势常数,m k为电动机电磁力矩常数,这里忽略阻尼力矩。d

二、数学模型 再看整个研究对象,示意图以课本为依据,不同点是这里将数控的进给运动,转换为汽车行驶所需要的扭矩。(这里不说明扭矩的具体产生过程,仅仅说明输出车轮旋转的角速度w ) 对照课本不同,() s θ变为()s N ,1 221z z w w =,1w 为电动机的转速,2w 为轮胎的转速,1z 为电动机的光轴齿轮的齿数,2z 为与轮胎相连光轴的 齿轮齿数。 )(*10110w x w k x ==,1 21z z k = ()c a m m d b a m x K K K k s k k JRs JLs K K K k s G i 1231+++= () c a m m d M K K K k s k k JRs JLs R Ls K s G L 1231)(++++-= 同理,忽略电枢绕组的电感L ,简化系统传递函数方框图如下

()JR K K K k JR s k k s JR K K K k s G c a m m d b a m x i 121++= ()JR K K K k JR s k k s K K K K k s k k Rs R K s G c a m m d c a m m d M L 121121++-=++-=

基于MATLAB图像处理报告

基于M A T L A B图像处理报告一、设计题目 图片叠加。 二、设计要求 将一幅礼花图片和一幅夜景图片做叠加运算,使达到烟花夜景的美图效果。 三、设计方案 、设计思路 利用matlab强大的图像处理功能,通过编写程序,实现对两幅图片的像素进行线性运算,利用灰度变换的算法使图片达到预期的效果。 、软件介绍 MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB 也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户直接进行下载就可以用。

MATLAB作业4参考答案

MATLAB 作业四参考答案 1、 用2sin(103)y t =+在(0,3)区间内生成一组较稀疏的数据,并用一维数据插值的方法对给出的数据进行曲线拟合,并将结果与理论曲线相比较。 【求解】类似于上面的例子,可以用几乎一致的语句得出样本数据和插值效果。 >> t=0:0.2:3; y=sin(10*t.^2+3); plot(t,y,'o') ezplot('sin(10*t^2+3)',[0,3]); hold on x1=0:0.001:3; y1=interp1(t,y,x1,'spline'); plot(x1,y1) 由于曲线本身变换太大,所以在目前选定的样本点下是不可能得出理想插值效果的,因为样 本数据提供的信息量不够。为了得到好的插值效果,必须增大样本数据的信息量,对本例来 说,必须在快变化区域减小样本点的步长。 >> hold off t=[0:0.1:1,1.1:0.04:3]; y=sin(10*t.^2+3); plot(t,y,'o') ezplot('sin(10*t^2+3)',[0,3]); hold on x1=0:0.001:3; y1=interp1(t,y,x1,'spline'); plot(x1,y1) 2、 用2422 3 1(,)sin()3x y f x y e xy x y x y --= ++原型函数生成一组网络数据或随机数据,分别拟合出曲面,并和原曲面进行比较。 【求解】由下面的语句可以直接生成一组网格数据,用下面语句还可以还绘制出给定样本点是三维表面图。 >> [x,y]=meshgrid(0.2:0.2:2); z=exp(-x.^2-y.^4).*sin(x.*y.^2+x.^2.*y)./(3*x.^3+y); surf(x,y,z) 选择新的密集网格,则可以通过二元插值得出插值曲面。对比插值结果和新网格下的函数值精确解,则可以绘制出绝对插值误差曲面。由插值结果可见精度是令人满意的。 >> [x1,y1]=meshgrid(0.2:0.02:2); z1=interp2(x,y,z,x1,y1,'spline'); surf(x1,y1,z1) >> z0=exp(-x1.^2-y1.^4).*sin(x1.*y1.^2+x1.^2.*y1)./(3*x1.^3+y1); surf(x1,y1,abs(z1-z0)) 现在假设已知的样本点不是网格形式分布的,而是随机分布的,则可以用下面语句生成样本点,得出分布的二维、三维示意图。 >> x=0.2+1.8*rand(400,1); y=0.2+1.8*rand(400,1); % 仍生成(0.2,2) 区间的均匀分布随机数 z=exp(-x.^2-y.^4).*sin(x.*y.^2+x.^2.*y)./(3*x.^3+y); plot(x,y,'x') figure, plot3(x,y,z,'x')

matlab与数学实验大作业

《数学实验与MATLAB》 ——综合实验报告 实验名称:不同温度下PDLC薄膜的通透性 与驱动电压的具体关系式的研究学院:计算机与通信工程学院 专业班级: 姓名: 学号: 同组同学: 2014年 6月10日

一、问题引入 聚合物分散液晶(PDLC)是将低分子液晶与预聚物Kuer UV65胶相混合,在一定条件下经聚合反应,形成微米级的液晶微滴均匀地分散在高分子网络中,再利用液晶分子的介电各向异性获得具有电光响应特性的材料,它主要工作在散射态和透明态之间并具有一定的灰度。聚合物分散液晶膜是将液晶和聚合物结合得到的一种综合性能优异的膜材料。该膜材料能够通过驱动电压来控制其通透性,可以用来制作PDLC型液晶显示器等,具有较大的应用范围。已知PDLC薄膜在相同光强度及驱动电压下,不用的温度对应于不同的通透性,不同温度下的阀值电压也不相同。为了尽量得到不同通透性的PDLC薄膜,有必要进行温度对PDLC薄膜的特性的影响的研究。现有不同温度下PDLC 薄膜透过率与驱动电压的一系列数据,试得出不同温度下PDLC薄膜通透性与驱动电压的具体关系式,使得可以迅速得出在不同温度下一定通透性对应的驱动电压。 二、问题分析 想要得到不同温度下PDLC薄膜通透性与驱动电压的具体关系式可以运用MATLAB多项式农合找出最佳函数式,而运用MATLAB多项式插值可以得出在不同温度下一定通透性所对应的驱动电压。 三、实验数据 选择10、20、30摄氏度三个不同温度,其他条件一致。

(1)、10摄氏度 实验程序: x=2:2:40; y=[5.2,5.4,5.8,6.4,7.2,8.2,9.4,10.8,12.2,14.0,16.6,22.0, 30.4,39.8,51.3,55.0,57.5,58.8,59.6,60.2]; p3=polyfit(x,y,3); p5=polyfit(x,y,5); p7=polyfit(x,y,7); disp('三次拟合函数'),f3=poly2str(p3,'x') disp('五次拟合函数'),f5=poly2str(p5,'x') disp('七次拟合函数'),f7=poly2str(p7,'x') x1=0:1:40; y3=polyval(p3,x1); y5=polyval(p5,x1); y7=polyval(p7,x1); plot(x,y,'rp',x1,y3,'--',x1,y5,'k-.',x1,y7); legend('拟合点','三次拟合','五次拟合','七次拟合') 实验结果:

用matlab数字图像处理四个实验

数字图像处理 实验指导书

目录 实验一MATLAB数字图像处理初步实验二图像的代数运算 实验三图像增强-空间滤波 实验四图像分割 3

实验一 MATLAB数字图像处理初步 一、实验目的与要求 1.熟悉及掌握在MATLAB中能够处理哪些格式图像。 2.熟练掌握在MATLAB中如何读取图像。 3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。 4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。 5.图像间如何转化。 二、实验原理及知识点 1、数字图像的表示和类别 一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f 在任何坐标处(x,y)处的振幅称为图像在该点的亮度。灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由单个二维图像组合形成的。例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。因此,许多为黑白图像处理开发的技术适用于彩色图像处理,方法是分别处理三副独立的分量图像即可。 图像关于x和y坐标以及振幅连续。要将这样的一幅图像转化为数字形式,就要求数字化坐标和振幅。将坐标值数字化成为取样;将振幅数字化成为量化。采样和量化的过程如图1所示。因此,当f的x、y分量和振幅都是有限且离散的量时,称该图像为数字图像。 作为MATLAB基本数据类型的数值数组本身十分适于表达图像,矩阵的元素和图像的像素之间有着十分自然的对应关系。 图1 图像的采样和量化 根据图像数据矩阵解释方法的不同,MA TLAB把其处理为4类: ?亮度图像(Intensity images)

用matlab绘制的漂亮图形

用matlab绘制的漂亮图形 1.不同坐标系下的图形对比 theta=0:pi/20:4*pi; phi= theta.^2- theta; [t,p]=meshgrid(theta,phi); r=t.*p; subplot(1,2,1);mesh(t,p,r); ylabel('x');xlabel('y');zlabel('z'); [x,y,z]=sph2cart(t,p,r); subplot(1,2,2);mesh(x,y,z); ylabel('x');xlabel('y');zlabel('z'); 2.球曲面的法线 [x,y,z]=sphere; Surfnorm(x,y,z)

3. x=rand(100,1)*16-8; y=rand(100,1)*16-8; r=sqrt(x.^2+y.^2)+eps; z=sin(r)./r; xlin=linspace(min(x),max(x),33); ylin=linspace(min(y),max(y),33); [X,Y]= meshgrid(xlin,ylin); Z=griddata(x,y,z,X,Y); mesh(X,Y,Z); axis tight;hold on; ylabel('x');xlabel('y');zlabel('z'); plot3(x,y,z,’r’,’MarkerSize’,15)

x=rand(1000,1)*16-8; y=rand(1000,1)*16-8; r=sqrt(x.^2+y.^2)+eps; z=sin(r)./r; xlin=linspace(min(x),max(x),99); ylin=linspace(min(y),max(y),99); [X,Y]= meshgrid(xlin,ylin); Z=griddata(x,y,z,X,Y); mesh(X,Y,Z); axis tight;hold on; ylabel('x');xlabel('y');zlabel('z'); plot3(x,y,z,'r','MarkerSize',30);

基于matlab的可视化界面制作

MATLAB可视化设界面计(上) 一个可发布的应用程序通常都需要具备一个友好的图形界面(比如,我们开课时或给学生上课而使用课件时,我们一般就会用到可视化界面)。这样用户不需要知道应用程序究竟是怎样执行各种命令的, 而只需要了解可见界面组件的使用方法用户也不需要知道命令是如何执行, 只要通过与界面交互就可以使指定行为得以正确执行。MA TLAB可视化界面的设计, 一般有两种方法, 一是直接通过编辑M脚本文件产生GUI(这个方法就是我们在前面学习过的如何编写、调用M文件), 二是通过MA TLAB图形用户界面开发环境GUIDE(Graphical User Interface Development Environment)来形成相应文件。这里只讲述在GUIDE环境中利用控件实现可视化界面功能, 不探讨直接通过编辑脚本文件实现可视化界面的方法。 MA TLAB软件GUIDE为用户提供了一个方便高效的集成环境, 所有GUI支持的用户控件都集成在这个环境中, 并提供界面外观、属性和行为响应方式的设置方法。GUIDE将用户保存设计好的GUI界面保存在一个FIG资源文件中, 同时自动生成包含GUI初始化和组件界面布局控制代码的M文件, 为实现回调函数提供了一个参考框架。 下面以一个具体实例来说明GUIDE的开发使用以下所讲解的关于各控件的使用, 我们以MA TLAB7.0版本为调试环境, 如果版本的环境和版本略有不同,但基本思想和方法一致。为了方便大家学习,此处提供二个版本(即文字和视频,文字的即为下面的叙述,视频请点击此处。) 实例要完成的功能如下: 首先运行M文件后,出现一个主画面

MATLAB作业答案

题4.1 控制系统结构如图4.A 所示: 图4.A 习题 (1) 利用MA TLAB 对以上单位负反馈控制系统建立传递函数模型; (2) 将第一问中求得的传递函数模型转化为零极点增益形式和状态空间形式。 解:(1)MA TLAB 程序代码如下: z=[-1];p=[-1,-3];k=2 [num,den]=zp2tf(z,p,k) g_tf=tf(num,den) 程序运行结果如下: Transfer function: 2 s + 2 ------------- s^2 + 4 s + 3 由计算结果可知,系统的传递函数模型为: G (s )= 3 4222 +++s s s (2) MA TLAB 程序代码如下: num=[2,2];den=[1,4,3] [z,p,k]=tf2zp(num,den) [A,B,C,D]=tf2ss(num,den) g_zpk=zpk(z,p,k) g_ss=ss(A,B,C,D) 程序运行结果如下: Zero/pole/gain: 2 (s+1) ----------- (s+3) (s+1) a = x1 x2 x1 -4 -3 x2 1 0 b = u1 x1 1 x2 0

c = x1 x2 y1 2 2 d = u1 y1 0 由计算结果可知,系统的零极点增益模和状态空间模型分别为: G (s )=)1)(3()1(2+++s s s 和[]? ????=??????+??????-=x y u x x 2 2010 13- 4. 题5.1 设单位负反馈控制系统的开环传递函数为G (s )= ) 177(2 ++s s s K 。 (1) 试绘制K=10、100时闭环系统的阶跃响应曲线,并计算稳态误差、上升时间、超调 量和过渡过程时间; (2) 绘制K=1000时闭环系统的阶跃响应曲线,与K=10、100所得结果相比较,分析增 益系数与系统稳定性的关系; (3) 利用roots 命令,确定使系统稳定时K 的取值范围。 解:(1) 题 6.1 已知单位负反馈控制系统的前向传递函数分别为G (s )= ) 4)(2()1(2 +++s s s s K 、 ) 164)(1() 1(2 ++-+s s s s s K 和 ) 15)(7)(5)(3() 8(2 +++++s s s s s s K ,试利用MA TLAB 分别绘制各系 统的根轨迹图。 解:(1)G (s )= ) 4)(2()1(2 +++s s s s K MA TLAB 程序代码如下: num=[1,1];den=conv([1,0],conv([1,0],[1,6,8])); sys=tf(num,den)

MATLAB期末大作业模版

《MATLAB》期末大作业 学院土木工程与建筑学院 专业 班级 姓名 指导教师李琳 2018 年 5 月16 日

明 作业内容题目2:问题描述:在[0 2π]范围内绘制二维曲线图y=cos(5x)*sin(x) (1)问题分析 这是一个二维绘图问题,先划定x的范围与间距,再列出y的表达式,利用plot函数绘制二维曲线。 (2)软件说明及源代码 >> x = 0:pi/10:2*pi; >>y = cos(5*x).*sin(x); >>plot(x,y) (3)实验结果 题目4:问题描述:创建符号函数并求解,要求写出步骤和运行结果 (1)创建符号函数f=ax2+bx+c (2)求f=0的解 (1)问题分析 这是一个符号函数显示以及符号函数的求解问题,第一问先定义常量与变量,在写出f表达式,利用pretty函数显示f。第二问利用solve函数求解f=0时的解。 (2)软件说明及源代码

第一问 >> syms a b c x; >> f=a*x^2+b*x+c; >> pretty(f) 第二问 >>syms a b c x; >>f=a*x^2+b*x+c; >> solve(f) (3)实验结果 1、 2、 题目5:问题描述:求积分 (1)问题分析 这是一个利用符号函数求积分的问题,先定义变量x,再列出I1表达式,利用int函数求在范围0到Pi/2上的积分。 (2)软件说明及源代码 >> syms x; >> I1=(1-2*sin(2*x))^0.5; >> int(I1,0,0.5*pi) (3)实验结果 题目6:问题描述:分别随机产生一个6×6的整数矩阵(元素可在[-20,20]之间),求该随机阵的秩,特征值和特征向量。 (1)问题分析 这是一个矩阵运算问题,先利用rand函数产生一个6*6的元素在-20到20

相关主题
文本预览
相关文档 最新文档