MATLAB实验报告第八次.docx

上传人:b****4 文档编号:4818272 上传时间:2023-05-07 格式:DOCX 页数:94 大小:1.84MB
下载 相关 举报
MATLAB实验报告第八次.docx_第1页
第1页 / 共94页
MATLAB实验报告第八次.docx_第2页
第2页 / 共94页
MATLAB实验报告第八次.docx_第3页
第3页 / 共94页
MATLAB实验报告第八次.docx_第4页
第4页 / 共94页
MATLAB实验报告第八次.docx_第5页
第5页 / 共94页
MATLAB实验报告第八次.docx_第6页
第6页 / 共94页
MATLAB实验报告第八次.docx_第7页
第7页 / 共94页
MATLAB实验报告第八次.docx_第8页
第8页 / 共94页
MATLAB实验报告第八次.docx_第9页
第9页 / 共94页
MATLAB实验报告第八次.docx_第10页
第10页 / 共94页
MATLAB实验报告第八次.docx_第11页
第11页 / 共94页
MATLAB实验报告第八次.docx_第12页
第12页 / 共94页
MATLAB实验报告第八次.docx_第13页
第13页 / 共94页
MATLAB实验报告第八次.docx_第14页
第14页 / 共94页
MATLAB实验报告第八次.docx_第15页
第15页 / 共94页
MATLAB实验报告第八次.docx_第16页
第16页 / 共94页
MATLAB实验报告第八次.docx_第17页
第17页 / 共94页
MATLAB实验报告第八次.docx_第18页
第18页 / 共94页
MATLAB实验报告第八次.docx_第19页
第19页 / 共94页
MATLAB实验报告第八次.docx_第20页
第20页 / 共94页
亲,该文档总共94页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

MATLAB实验报告第八次.docx

《MATLAB实验报告第八次.docx》由会员分享,可在线阅读,更多相关《MATLAB实验报告第八次.docx(94页珍藏版)》请在冰点文库上搜索。

MATLAB实验报告第八次.docx

MATLAB实验报告第八次

(此文档为word格式,下载后您可任意编辑修改!

MATLAB学实验报告

姓名:

李犁

学号:

指导老师:

易昆南

专业班级:

统计1203

1循环矩阵的性质…………………………3

2航线连接问题……………………………6

3生物群体模型…………………………….8

4学生成绩管理系统……………………….11

5调和级数问题……………………………14

63N+1问题……………………….….......17

7航程与起点……………………………...20

8ε-δ图的动画绘制……………….……27

9求π………………………………………32

10求函数f的一阶泰勒展式………………33

11蛛网模型的动画显示…………………..36

12音乐制作……..…………………………40

13用matlab做插值计算…………………49

14以g(x)为例作三种插值的比较………...53

15函数的拟合………………...60

16函数

的拟合…...62

172011年数模竞赛A题的作图…………64

18混沌现象……….……………………….77

19分形图案的绘制………………………..79

20古典概型与随机问题的模拟问题……..84

21抽取小球问题……...…………………...86

22追赶火车问题………………………….89

23Galton钉板模型………………………..91

 

学号

班级

统计1203

姓名

李犁

指导教师

易昆南

实验题目

循环矩阵的性质

评分

1、设计(实习)目的:

探究可逆循环矩阵的性质,运用matlab,初步了解程序的编写,再根据结果自行进行证明。

2、实验内容:

编写一个可逆循环矩阵程序,实现矩阵的随机性,在用随机产生的矩阵进行研究,从而研究任意一个可逆循环矩阵的性质,包括矩阵的和、积、逆的性质。

3.详细设计:

此程序只有一个主函数,储存在一个M文件中,实验时调用函数完成。

主函数(matrixrand)

functionoutput=matrixrand(n,a,b)

%UNTITLED2Summaryofthisfunctiongoesgoes));%r向量是一组随机数

N=zeros(n);%把矩阵N初始为一个n阶零矩阵

whilerank(N)~=n%判定是否可逆

N(1,:

)=r;%矩阵第一行是随机向量r

fori=2:

n%以下为循环矩阵的实现,从第二行到第n行

r=[r(1,n)r(1,1:

n-1)];

N(i,:

)=r;

end

end

output=N;%输出可逆循环矩阵

end

4:

实验结果:

在命令窗口输入

>>A=matrixrand(5,1,5)

输出

A=

12344

41234

44123

34412

23441

1.在命令窗口输入

>>B=inv(A)

输出

B=

-0.2412-0.0776-0.00480.24970.1406

0.1406-0.2412-0.0776-0.00480.2497

0.24970.1406-0.2412-0.0776-0.0048

-0.00480.24970.1406-0.2412-0.0776

-0.0776-0.00480.24970.1406-0.2412

2.在命令窗口输入

>>C=matrixrand(5,1,5);

>>D=matrixrand(5,1,5);

>>F=C+D

输出

F=

74442

27444

42744

44274

44427

3.在命令窗口输入

>>G=C*D

输出

G=

2420212217

1724202122

2217242021

2122172420

2021221724

5:

实验总结

从实验所得矩阵,再用观察的方法可以得知一个可逆循环矩阵的逆、方幂、两个可逆循环矩阵的和、积,都是一个循环矩阵

姓名:

李犁

学号

班级

统计1203

姓名

李犁

指导教师

易昆南

实验题目

航线连接问题

评分

1、设计(实习)目的:

探究航线链接问题,初步接触图论问题,探究矩阵中各个位置元素的意义,从而使实际问题简化处理。

2、实验内容:

编写一个航线问题程序,从而研究是否有航线能够使两次到达目的地,起点与终点可以是任意两个点。

3.详细设计:

此程序只有一个主函数成,存储在一个的M文件中,使用时进行调用

主函数(airline.A)

functionoutput=airline(A,a,b)

%UNTITLED2Summaryofthisfunctiongoesgoes=rank(A);%把矩阵A的秩定义给n

fori=1:

n%对i进行1到n的循环

ifA(a,i)==1&A(i,b)==1%当这两个元素都是1时,便可到达

output=i;%输出连接点

end

end

end

4:

实验结果:

在命令窗口输入

>>A=[01000001

00000100

10010000

00000010

00100000

00010000

00000001

10001000];

>>airline(A,2,4)

输出

ans=

6

在命令窗口输入

airline(A,5,1)

输出

ans=

3

在命令窗口输入

>>B=A*A

输出

B=

10001100

00010000

01000011

00000001

10010000

00000010

10001000

01100001

在命令窗口输入

>>C=A+A*A+A*A*A

输出

C=

12111102

00010110

21011112

10001011

11110011

00010011

11101002

31112101

5:

实验总结

1.有恰好两个航班有可能从C2到达C4(C2到C6到C4);

2.有恰好两个航班有可能从C5到达C1(C5到C3到C1);

3.在矩阵B(即A*A)中,(i,j)元素为1,说明有恰好两个航班有可能从Ci到达Cj;

4.在矩阵C(即A+A*A+A*A*A)中,(i,j)元素的数字表示有恰好一个或两个或三个航班有可能从Ci到达Cj的总数。

从结果中可以预见矩阵的数字可以表示航线的可行性,这对实际问题进行了简化。

姓名:

李犁

学号

班级

统计1203

姓名

李犁

指导教师

易昆南

实验题目

生物群体模型

评分

1、设计(实习)目的:

初次建立数学模型,来探究问题,学习怎样把matlab运用到数学建模中,来研究复杂的问题。

2、实验内容:

编写一个程序,从而研究狐狸和鸡能稳定发展的临界值以及能看到效果的观察次数。

3.详细设计:

此程序只有一个主函数,存储在一个的M文件中,实验时进行调用。

主函数(linjiezhi.)

functionoutput=linjiezhi()

%UNTITLEDSummaryofthisfunctiongoesgoesoutput=cishu()

%UNTITLED3Summaryofthisfunctiongoesgoes;

end

end

4:

实验结果:

在命令窗口输入

>>linjiezhi

输出

ans=

0.1600161.0000

在命令窗口输入

>>haha

输出

5:

实验总结

临界值为0.16能看到效果的观察次数为161次,但经检验,大概在四十次就可看出结果,这是因为精确值的原因,次数多了之后出现了小数点的问题。

也由此验证了(k=0.1),鸡的群体将无限发展,这使得狐狸的群体也无限发展;而捕杀率较大(k=0.18),鸡将被消灭,那么狐狸也将自行消灭。

证明:

Fi=0.6Fi-1+0.5Ci-1;

当数量稳定时,Fi=Fi-1;

得:

Fi-1=1.25Ci-1;

带入Ci=1.2Ci-1-kFi-1;

得:

Ci=(1.2-k*1.25)Ci-1;

当数量稳定时,同理Ci=Ci-1;

所以k=0.16,也即是实验结果。

姓名:

李犁

 

学号

班级

统计1203

姓名

李犁

指导教师

易昆南

实验题目

学生成绩管理系统

评分

2、设计(实习)目的:

运用matlab的各个流程控制来完成程序,如顺序结构,if语句,switch语句,for语句,输出语句等等,充分了解每个语句的作用以及用法;运用求最大值,最小值,平均值,标准差,排序的函数来求相应数据。

2、实验内容:

编写一个学生成绩管理系统,来帮助老师进行成绩的分类,排序等步骤。

3.详细设计:

此程序只有一个主函数,储存在一个M文件中,实验时调用函数完成。

主函数(studentmark)

functiony=studentmark()

%UNTITLEDSummaryofthisfunctiongoesgoesnstmin]=min(Markmat);%求最低分

ave=num2str(mean(Markmat));%求平均分

stdev=num2str(std(Markmat,0));%求标准差

rful=nfulsnum;

rexc=nexcsnum;

rgoo=ngoosnum;

rpas=npassnum;

rfai=nfaisnum;

passratio=1-rfai;

[sortnumsortid]=sort([s.Marks]);%进行排序

disp([blanks(6),'Name',blanks(16),'Marks',blanks(16),'Rank']);disp('');

fori=sortid%以下为输出

disp([s(i).Name,blanks(6),num2str(s(i).Marks),

blanks(6),s(i).Rank]);

end

disp(['average',blanks

(2),ave,blanks(4),'standarddeviation',

blanks

(2),stdev,blanks(4),'passratio',blanks

(2),

num2str(passratio)]);

disp('');

disp(['MaxMark',s(nstmax).Name,num2str(Max),blanks(4),

'MinMark',s(nstmin).Name,num2str(Min)]);

disp([blanks(8),'FullMark',blanks(9),'Excellent',blanks(6),

'Good',blanks(9),'Pass',blanks(12),'Fail']);

disp(['number',blanks

(2),num2str(nful),blanks(18),

num2str(nexc),blanks(18),num2str(ngoo),blanks(15),

num2str(npas),blanks(18),num2str(nfai)]);

disp(['ratio',blanks

(2),num2str(rful),blanks(8),

num2str(rexc),blanks(8),num2str(rgoo),blanks(8),

num2str(rpas),blanks(8),num2str(rfai)]);

end

4:

实验结果:

在命令窗口输入

>>studentmark

输出

NameMarksRank

'Tony''''36''''fail'

'Reter''''56''''fail'

'Jom''''65''''pass'

'Hebe''''65''''pass'

'Jack''''72''''pass'

'John''''79''''pass'

'Marry''''83''''good'

'Sheldon''''86''''good'

'Harry''''89''''good'

'Rose''''94''''excellent'

'Sweet''''96''''excellent'

'Tom''''100''''fullmarks'

average76.75standarddeviation18.7768passratio0.83333

'MaxMark''Tom''100''''MinMark''Tony''36'

FullMarkExcellentGoodPassFail

number12342

ratio0.0833330.166670.250.333330.16667

5:

实验总结

编程得到了一个成绩管理系统,能够表格式输出所求数据。

这个实验帮助我了解了更多的关于matlab的编程方法,合理应用各个语句来完成实验目的,来解答实际应用中的难题。

姓名:

李犁

学号

班级

统计1203

姓名

李犁

指导教师

易昆南

实验题目

调和级数问题

评分

3、设计(实习)目的:

探究调和级数和的极限以及其性质,说明其收敛性。

2、实验内容:

=,=-,做以及的图像,从而研究其性质,以及它们的极限

3.详细设计:

此程序只有一个主函数和两个分函数,储存在三个M文件中,实验时分别调用函数完成。

主函数一(daoshuhe.n)

functionoutput=daoshuhe(n)

%UNTITLEDSummaryofthisfunctiongoesgoes

s=s+1i;

end

output=s;

end

分函数一(Sn)

functionoutput=Sn

%UNTITLED3Summaryofthisfunctiongoesgoes.n)

functionoutput=Hn(n)

%UNTITLED2Summaryofthisfunctiongoesgoes%此函数为画出n为某一固定值时的函数图象

fork=1:

2*j

s(k)=daoshuhe(k);

end

t(j)=s(2*j)-s(j);

end

x=1:

n;

plot(x,t,'b');

end

4:

实验结果:

1.在命令窗口输入

>>Sn

输出

2.在命令窗口输入

>>Hn(100)

输出

5:

实验总结

与都存在极限,且随着n的增大,与都趋向平缓

姓名:

李犁

 

学号

班级

统计1203

姓名

李犁

指导教师

易昆南

实验题目

3N+1问题

评分

1、设计(实习)目的:

探究3N+1问题,用matlab的方法证明其正确性,并研究其规律

2、实验内容:

问题:

任给自然数n,如果n是偶数,则将n除2;如果n是奇数,则将n乘3加1。

重复上述过程得到一个无穷数列。

例如,

上述数列可递归地定义为如果n为偶

如果n为奇

编写程序,来研究是否在有限次数中其保持正确性。

3.详细设计:

此程序有两个主函数成,存储在两个的M文件中,使用时进行调用

主函数一(Syracuse.n)

functionoutput=Syracuse(n)

%UNTITLED3Summaryofthisfunctiongoesgoes

whilei~=1%当i不等于1时进行以下循环

ifmod(i,2)==0%判断i是否为偶数

i=i2;

else

i=3*i+1;

end

end

ifi==1%i到1时便跳出循环

s=s+1;%计算到达1的数字的个数

end

output=s;%输出结果来探究是否每一个数是否都会落于421的循环中

end

主函数二(Syracusetu.m)

functionoutput=Syracusetu(m)

%UNTITLED6Summaryofthisfunctiongoesgoes

(1)=m;%作出当m为某一固定值时的图像

i=2;

while

(1)

switch(mod(n(i-1),2))

case0

n(i)=n(i-1)2;

case1

n(i)=3*n(i-1)+1;

end

ifn(i)==1

break;

end

i=i+1;

end

j=1:

i;

plot(j,n(j),'k');

end

4:

实验结果:

在命令窗口输入

>>Syracuse(100000)

输出

ans=

100000

在命令窗口输入

Syracusetu(27)

输出

5:

实验总结

对1到100000中任意一个数n,从n开始产生的数列最后都落于421的循环中,因为只有这一种可能才能使结果为1,否则不会出现1。

从而推测对任意正整数n,从n开始产生的数列最后都落于421的循环中。

根据n=27的图像可以看出出列变化的幅度很大,但总会落到1上。

数列在落于421循环之前,其规律为总会出现5,16,32,8这些数字,若出现一次,则不会出现第二次。

姓名:

李犁

 

学号

班级

统计1203

姓名

李犁

指导教师

易昆南

实验题目

航程与起点

评分

1、设计(实习)目的:

初次建立数学模型,来探究问题,学习怎样把matlab运用到数学建模中,来研究复杂的问题。

2、实验内容:

编写一个程序,从而研究航程与起点问题,探索其1)航程与起点的关系;2)保持高度航程与起点关系;3)最大飞行高度与起点的关系;4)偶变换与奇变换的关系。

更进一步研究它们各自有何规律。

3.详细设计:

此程序有四个主函数,存储在四个的M文件中,实验时分别进行调用。

主函数(output=goesgoes

(1)=m;

i=2;

s=0;

while

(1)

switch(mod(n(i-1),2))

case0

n(i)=n(i-1)2;

s=s+1;

case1

n(i)=3*n(i-1)+1;

s=s+1;%没进行一次s便+1,到循环结束时便可求出航程

end

ifn(i)==1

break;

end

i=i+1;

end

if(m>200)&(s

t=t+1;

end

plot(m,s,'.k');

output=keepheight

%UNTITLEDSummaryofthisfunctiongoesgoes

(1)=m;

i=2;

s=0;

while

(1)

switch(mod(n(i-1),2))

case0

n(i)=n(i-1)2;

case1

n(i)=3*n(i-1)+1;

end

ifn(i)>n

(1)

s=s+1;%求保持高度航程的数量

else

break;%高度低于初始高度便跳出循环

end

ifn(i)==1

break;

end

i=i+1;

end

plot(m,s,'.k');

axis([.9])

output=goesgoes

(1)=m;

i=2;

s=n

(1);

while

(1)

switch(mod(n(i-1),2))

case0

n(i)=n(i-1)2;

case1

n(i)=3*n(i-1)+1;

end

ifn(i)>s%用循环来求最高高度

s=n(i);

end

ifn(i)==1

break;

end

i=i+1;

end

plot(m,s,'.k');

axis([00])

output=jioubianhua

%UNTITLED3Summaryofthisfunctiongoesgoes

(1)=m;

i=2;

s=0;

t=0;

while

(1)

switch(mod(n(i-1),2))

case0

n(i)=n(i-1)2;

case1

n(i)=3*n(i-1)+1;

end

ifn(i)

s=s+1;%偶循环次数加一

else

t=t+1;%奇循环次数加一

end

ifn(i)==1

break;

end

i=i+1;

end

k=ts;%求奇循环与偶循环只之比

ifp

p=k;

end

plot(m,k,'.k');

axis([.6])

holdall

end

disp(p);

end

4:

实验结果:

在命令窗口输入

>>hangcheng

输出

2000

在命令窗口输入

>>keepheight

输出

在命令窗口输入

>>highest

输出

在命令窗口输入

>>jioubianhua

输出

0.5857

5:

实验总结

1)航程与起点的关系:

从实验结果得知当n适当大后,有f(n)

2)保持高度航程与起点关系:

G(2^p-1)>2p(对N=2^p-1,a_2=3*2^p-2,a_4=3^2*2^p-1,

a_2p=3^p-1.)

3)最大飞行高度与起点的关系。

4)偶变换与奇变换的关系:

O(N)E(N)的上界是0.5857(N=5000时)且其极限

姓名:

李犁

学号

班级

统计1203

姓名

李犁

指导教师

易昆南

实验题目

ε-δ图的动画绘制

评分

1、设计(实习)目的:

初步认识用matlab制作动画的原理以及方法,并把其应用于数学分析中求极限

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

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2