文档库

最新最全的文档下载
当前位置:文档库 > Matlab编程与作图实验报告

Matlab编程与作图实验报告

实验二 MATLAB 编程与作图

1、设x 为一个长度为n 的数组,编程求下列均值和标准差

Matlab编程与作图实验报告

11,1n i i x x s n n ===>∑

并以[81,70,65,51,76,66,90,87,77]x =为例计算。 解: function [m,s]=myf_1(x) n=length(x); m=sum(x)/n;

s=sqrt((sum(x.^2)-n*m^2)/(n-1)); >>x=[81,70,65,51,76,66,90,87,61,77]; >> [m,s]=myf_1(x) m = 72.4000 s =

12.1124

2、求满足0

ln(1)100

m

n n =+>∑的最小m 值。

解:>> s=log(1);n=0; >> while s<=100 n=n+1;

s=s+log(1+n); end >> m=n m =

37

3、用循环语句形成Fibonacci 数列

12121,,3,4,k k k F F F F F k --===+=L

,并验证极限

Matlab编程与作图实验报告

1

lim

k k k F F →∞-=

。 解:>> clear;

>> F(1)=1;F(2)=1;k=2;x=0; >> e=1e-8;a=(1+sqrt(5))/2; >> while abs(x-a)>e

k=k+1;F(k)=F(k-1)+F(k-2); x=F(k)/F(k-1); end >> a,x,k a =

1.6180 x =

1.6180 k =

21

4、分别用for 和while

Matlab编程与作图实验报告

循环结构编写程序,求出

6

10

1

2i

i

K

=

=

,并考虑一种避免循环语句的

程序设计,比较不同算法的运行时间。

解:>> clear;tic;s=0;

for i=1:1000000

s=s+sqrt(3)/2^i;

end

s,toc

tic;s=0;i=1;

while i<=1000000

s=s+sqrt(3)/2^i;i=i+1;

end

s,toc

tic;s=0;

i=1:1000000;

s=sqrt(3)*sum(1./2.^i);

s,toc

s =

1.7321

Elapsed time is 0.944317 seconds.

s =

1.7321

Elapsed time is 1.326814 seconds.

s =

1.7321

Elapsed time is 0.461718 seconds.

5

Matlab编程与作图实验报告

⑵用Matlab指令dlmwrite将上述数据输出到一个文本文件中,第一列是时刻,第二列是温度,要求用空格分割数据;

⑶从工具条File选Import data 导入上述数据文件中的数据。

解:>> t=0:24;

c=[15 14 14 14 14 15 16 18 20 22 23 25 28 ...

31 32 31 29 27 25 24 22 20 18 17 16];

plot(t,c)

Matlab编程与作图实验报告

14 16 18 20 22 24 26 28 30 32

6、作出下列函数图像:

⑴曲线

22

sin(2),22

y x x x x

=---≤≤(要求分别使用plot和fplot完成);

解:x=-2:0.1:2;y=x.^2.*sin(x.^2-x-2);plot(x,y) y=inline('x^2*sin(x^2-x-2)');fplot(y,[-2 2])

⑵椭圆

22

1 49

x y

+=

解:t=linspace(0,2*pi,100);

x=2*cos(t);y=3*sin(t); plot(x,y)

Matlab编程与作图实验报告

⑶抛物面

22,3,3 z x y x y

=+<<

解:x=-3:0.1:3;y=x; [x,y]=meshgrid(x,y); z=x.^2+y.^2;

surf(x,y,z)

Matlab编程与作图实验报告

Matlab编程与作图实验报告

⑷曲面

422232226,3,313

z x x y x y x y x y =++---+<-<<;

解:x=-3:0.1:3;y=-3:0.1:13; [x,y]=meshgrid(x,y);

z=x.^4+3*x.^2+y.^2-2*x-2*y-2*x.^2.*y+6; surf(x,y,z)

Matlab编程与作图实验报告

⑸空间曲线sin ,cos ,cos(2),02x t y t z t t π===<<; 解:t=0:0.01:2*pi;

x=sin(t);y=cos(t);z=cos(2*t); plot3(x,y,z)

Matlab编程与作图实验报告

⑹半球面2sin cos ,2sin sin ,2cos ,02,02x y z ?θ?θ?θπ?π===≤≤≤≤; 解:theta=linspace(0,2*pi,50);fai=linspace(0,pi/2,20); [theta,fai]=meshgrid(theta,fai); x=2*sin(fai).*cos(theta);

y=2*sin(fai).*sin(theta);z=2*cos(fai); surf(x,y,z)

Matlab编程与作图实验报告

⑺三条曲线合成图

123sin ,sin sin(10),sin ,0y x y x x y x x π===-<<。

解:

7、作下列x=linspace(0,pi,100);

y1=sin(x);y2=sin(x).*sin(10*x);y3=-sin(x);

plot(x,y1,x,y2,x,y3)分段函数图 1.1 1.1 1.11.1 -1.1x y x x x >??

=≤??-