数学软件Matlab实验报告.docx
- 文档编号:8567926
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:18
- 大小:20.15KB
数学软件Matlab实验报告.docx
《数学软件Matlab实验报告.docx》由会员分享,可在线阅读,更多相关《数学软件Matlab实验报告.docx(18页珍藏版)》请在冰豆网上搜索。
数学软件Matlab实验报告
计算机与信息学院
(数学类课程)
实验报告
课程名称:
数学软件
姓名:
系:
应用数学系
专业:
数学与应用数学
年级:
2010级
学号:
指导教师:
职称:
讲师
2011年12月13日
实验项目列表
序号
实验项目名称
成绩
指导教师
1
MATLAB运算基础
林运国
2
MATLAB矩阵分析与处理
林运国
3
选择结构程序设计,循环结构程序设计
(1)
林运国
4
循环结构程序设计
(2),函数文件
林运国
5
高层绘图操作
林运国
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
计算机与信息学院数学类实验报告
(一)
系:
应用数学专业:
数学与应用数学年级:
2010级
姓名:
***学号:
102260002051实验课程:
数学软件
实验室号:
_田C-513实验设备号:
107实验时间:
2011/09/25
指导教师签字:
成绩:
1.实验项目名称:
MATLAB运算基础
2.实验目的和要求:
1.熟悉启动和退出MTALAB的方法。
2.熟悉MATLAB命令窗口的组成。
3.掌握建立矩阵的方法。
4.掌握MATLAB各种表达式的书写规则以及常用函数的使用。
3.实验使用的主要仪器设备和软件:
联想微机;MATLAB6.5
4.实验的基本理论和方法:
冒号表达式,逻辑表达式,whos,find,length,空矩阵
5.实验内容与步骤:
1
(1)z1=2*sin(pi*85/180)/(1+exp
(2))
(2)x=[2,1+2*i;-0.455];
z2=(1/2)*log(x+sqrt(1+x^2))
(3)a=-3.0:
0.1:
3.0;
z3=(exp(0.3*a)-exp(-0.3*a))/2.*sin(a+0.3)+log((0.3+a)/2)
(4)t=0:
0.5:
2.5;
z4=t.^2.*(t>=0&t<1)+(t.^2-1).*(t>=1&t<2)+(t.^2-2*t+1).*(t>=2&t<3)
2A=[12,34,-4;34,7,87;3,65,7];
B=[1,3,-1;2,0,3;3,-2,7];
(1)A+6*B
A-B+eye(3)
(2)A*B
A.*B
(3)A^3
A.^3
(4)A/B
B\A
(5)[A,B]
[A([1,3],:
);B^2]
3A=[1,2,3,4,5;6,7,8,9,10;11,12,13,14,15;16,17,18,19,20;21,22,23,24,25];
B=[3,0,16;17,-6,9;0,23,-4;9,7,0;4,13,11];
C=A*B
D=C(3:
5,2:
3)
Whos
4
(1)A=100:
999;
B=rem(A,21);
C=length(find(B==0))
A='IlOveMatLAb2051';
a=find(A>='A'&A<='Z');
A(a)=[]
6.实验心得(质疑、建议):
学会了一些Matlab的基础,并利用这些知识进行基本的数值处理。
计算机与信息学院数学类实验报告
(二)
系:
应用数学专业:
数学与应用数学年级:
2010级
姓名:
***学号:
102260002051实验课程:
数学软件
实验室号:
_田C-513实验设备号:
107实验时间:
2011/10/17
指导教师签字:
成绩:
1.实验项目名称:
MATLAB矩阵分析与处理
2.实验目的和要求:
1.掌握生成特殊矩阵的方法。
2.掌握矩阵分析的方法。
3.用矩阵求逆法解线性方程组。
3.实验使用的主要仪器设备和软件:
联想微机;MATLAB6.5
4.实验的基本理论和方法:
单位矩阵eye,随机矩阵rand,零矩阵zeros,对角阵diag,条件数cond,行列式det,迹rank,秩trace,范数norm,逆inv
5.实验内容与步骤:
1E=eye(3);
R=rand(3,2);
O=zeros(2,3);
S=diag([2,3]);
A=[E,R;O,S];
A^2
B=[E,(R+R*S);O,S^2]
2H=hilb(5);
P=pascal(5);
Hh=det(H)
Hp=det(P)
Th=cond(H)
Tp=cond(P)
3A=[1,2,3,4,5;6,7,8,9,10;11,12,13,34,53;6,3,23,7,15;6,26,9,41,28];
det(A)
rank(A)
trace(A)
norm(A)
4A=[-29,6,18;20,5,12;-8,8,5]
[V,D]=eig(A)
5
(1)A=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6];
b=[0.95;0.67;0.52];
x=inv(A)*b
(2)B1=[0.95;0.67;0.53];
X1=inv(A)*B1
(3)N=cond(B)
N1=cond(B1)
6A=fix(10*rand(5))
B=sqrtm(A)
C=sqrt(A)
6.实验心得(质疑、建议):
学会了利用本实验涉及到的代码对矩阵进行各种求解,对计算和解答方便了非常多。
只是求什么量要用哪个代码还不熟练,要查表。
因为没发现规律,又太多,易搞混。
在以后的实验操作中要多多练习,掌握熟练。
计算机与信息学院数学类实验报告(三)
系:
应用数学专业:
数学与应用数学年级:
2010级
姓名:
***学号:
102260002051实验课程:
数学软件
实验室号:
_田C-513实验设备号:
107实验时间:
2011/10/29
指导教师签字:
成绩:
1.实验项目名称:
选择结构程序设计,循环结构程序设计
(1)
2.实验目的和要求:
1.掌握建立和执行M文件的方法。
2.掌握利用if语句实现选择结构的方法。
3.掌握利用switch语句实现多分支选择结构的方法。
4.掌握try语句的使用。
5.掌握利用for语句实现循环结构的方法。
6.掌握利用while语句实现循环结构的方法。
7.熟悉利用向量运算来代替循环操作的方法。
3.实验使用的主要仪器设备和软件:
联想微机;MATLAB6.5
4.实验的基本理论和方法:
If语句,switch语句,try语句,循环结构:
for语句、while语句,向量运算代替循环操作的方法。
5.实验内容与步骤:
3.1x=[-5.0,-3.0,1.0,2.0,2.5,3.0,5.0];
y=[];
forx0=x
ifx0<0&x0~=-3
y=[y,x0*x0+x0-6];
elseifx0>=0&x0<5&x0~=2&x0~=3
y=[y,x0*x0-5*x0+6];
else
y=[y,x0*x0-x0-1];
end
end
x
y
3.2if语句:
x=input('pleaseenteranumberbetween0to100:
');
ifx>100|x<0
disp('Error!
!
thenumberyouinputiswrong!
!
');
else
ifx<=100&x>=90
disp('A');
elseifx<=89&x>=80
disp('B');
elseifx<=79&x>=70
disp('C');
elseifx<=69&x>60
disp('D');
else
disp('E');
end
end
switch语句:
x=input('pleaseenteranumberbetween0to100:
');
while1
ifx<0|x>100
disp('Error!
!
thenumberyouinputiswrong!
!
')
x=input('pleaseinputanumberbetween0to100:
');
else
break;
end
end
switchfix(x/10)
case{9,10}
disp('A')
case8
disp('B')
case7
disp('C')
case6
disp('D')
otherwise
disp('E')
end
3.3n=input('inputtheworker’sID:
');
t=input('inputtheworker’sworkingtime:
');
ift>120
x=(t-120)*84*(1+0.15)+120*84;
elseift<60
x=t*84-700;
else
x=t*84;
end
disp([num2str(n),'worker’ssalaryis',num2str(x)]);
3.4a=fix(10+90*rand(1,2))
x=a
(1);
y=a
(2);
t=input('pleaseinputtheyunsuanfuhao:
','s');
ift=='+'
z=x+y;
elseift=='-'
z=x-y;
elseift=='*'
z=x*y;
elseift=='/'
z=x/y;
end
disp([num2str(x),t,num2str(y),'=',num2str(z)])
3.5a=rand(5,6)
n=input('whilelinedoyouwant?
:
');
ifn>5
disp('overtherange,thelastlineis:
')
a(5,:
)
else
disp(['No.',num2str(n),'''slineis:
'])
a(n,:
)
end
4.1循环结构
pi=0;
n=input('n=');
fori=1:
n
pi=sqrt(pi^2+6*(1/i/i));
end
pi
向量运算
n=input('n=');
i=1:
n;
f=6./i.^2;
pi=sqrt(sum(f))
4.2y=0;
n=1;
while(y<3)
y=y+1/(2*n-1);
n=n+1;
end
y=y-1/(2*(n-1)-1)
n=n-2
4.3a=input('a=');
b=input('b=');
Xn=1;
Xn1=a/(b+Xn);
n=0;
whileabs(Xn1-Xn)>1e-5
Xn=Xn1;
Xn1=a/(b+Xn);
n=n+1;
ifn==500
break;
end
end
n
Xn1
r1=(-b+sqrt(b*b+4*a))/2
r2=(-b-sqrt(b*b+4*a))/2
4.4fori=1:
100
ifi==1
f(i)=1;
elseifi==2
f(i)=0;
elseifi==3
f(i)=1;
else
f(i)=f(i-1)-2*f(i-2)+f(i-3);
end
end
max(f)
min(f)
sum(f)
length(find(f>0))
length(find(f==0))
length(find(f<0))
4.5s=0;
n=0;
fori=2:
49
b=i*(i+1)-1;
m=fix(sqrt(b));
forj=2:
m
ifrem(b,j)==0
break
end
end
ifj==m
n=n+1;
s=s+b;
end
end
n
s
6.实验心得(质疑、建议):
本次实验内容多,而且也比较复杂,但是上机时间太少,个人觉得完成有点仓促。
建议老师能多安排上机时间,毕竟这也是一门操作性比较强的学科。
计算机与信息学院数学类实验报告(四)
系:
应用数学专业:
数学与应用数学年级:
2010级
姓名:
***学号:
102260002051实验课程:
数学软件
实验室号:
_田C-513实验设备号:
107实验时间:
2011/11/14
指导教师签字:
成绩:
1.实验项目名称:
循环结构程序设计
(2),函数文件
2.实验目的和要求:
1.理解函数文件的概念。
2.掌握定义和调用MATLAB函数的方法。
3.实验使用的主要仪器设备和软件:
联想微机;MATLAB6.5
4.实验的基本理论和方法:
建立M文件,并在命令窗口调用。
5.实验内容与步骤:
1建立M文件mat1.m
functiony=mat1(x)
y=[exp(x),log(x),sin(x),cos(x)];
在命令窗口调用mat1.m文件
y=mat(1+2*i)%假设给定的复数为1+2*i
2建立M文件dierti.m
function[a,b,N,M]=dierti(m,n,t)
A=[m*cos(t*pi/180),-m,-sin(t*pi/180),0;m*sin(t*pi/180),0,cos(t*pi/180),0;0,n,-sin(t*pi/180),0;0,0,-cos(t*pi/180),1];
B=[0,9.8*m,0,9.8*n];
C=inv(A)*B';
a=C
(1);
b=C
(2);
N=C(3);
M=C(4);
在命令窗口调用M文件
m1=input('m1=');
m2=input('m2=');
theta=input('theta=');
[a1,a2,N1,N2]=dierti(m1,m2,theta)
建立M文件mat2.m
functionX=mat2(m1,m2,t)
g=9.8;
A=[m1*cos(t*pi/180),-m1,-sin(t*pi/180),0;m1*sin(t*pi/180),0,cos(t*pi/180),0;0,m2,-sin(t*pi/180),0;0,0,-cos(t*pi/180),1];
B=[0;m1*g;0;m2*g];
X=inv(A)*B;
在命令窗口调用M文件
X=mat2(1,1,60)
3建立M文件mat3.m
functionflag=mat3(x)
flag=1;
fori=2:
sqrt(x)
ifrem(x,i)==0
flag=0;
break;
end
end
在命令窗口调用M文件
fori=10:
99
j=10*rem(i,10)+fix(i/10);
ifmat3(i)&mat3(j)
disp(i)
end
end
4建立M文件fx.m
functiony=fx(x)
y=1./((x-2).^2+0.1)+1./((x-3).^4+0.01);
在命令窗口调用M文件
y=fx(3)
a=[1,2,3;4,5,6;7,8,9];
y=fx(a)
5
(1)建立M文件mat4.m
functionf1=mat4(n)
f1=n+10*log(n*n+5);
在命令窗口调用M文件
y=mat4(40)/(mat4(30)+mat4(20))
(2)建立M文件mat5.m
functionf2=mat5(n)
f2=0;
fori=1:
n
f2=f2+i*(i+1);
end
在命令窗口调用M文件
y=mat5(40)/(mat5(30)+mat5(20))
6.实验心得(质疑、建议):
难度有所提高,但实用性也是非常强大的!
通过自己写函数来完成更复杂的题目,完成之后很有成就感。
但实验安排的时间还是不够,一次实验只做了4道题目,课本的知识还掌握不牢固,会找个时间好好巩固下的。
计算机与信息学院数学类实验报告(五)
系:
应用数学专业:
数学与应用数学年级:
2010级
姓名:
***学号:
102260002051实验课程:
数学软件
实验室号:
_田C-513实验设备号:
107实验时间:
2011/11/24
指导教师签字:
成绩:
1.实验项目名称:
高层绘图操作
2.实验目的和要求:
1.掌握绘制二维图形的常用函数。
2.掌握绘制三维图形的常用函数。
3.掌握绘制图形的辅助操作。
3.实验使用的主要仪器设备和软件:
联想微机;MATLAB6.5
4.实验的基本理论和方法:
Linespace,plot,subplot,title,steam,bar,stairs,fill(要把颜色代码填进去),polar等。
5.实验内容与步骤:
1x=linspace(0,2*pi,101);
y=(0.5+3*sin(x)./(1+x.^2)).*cos(x);
plot(x,y)
2
(1)x=linspace(-2*pi,2*pi,100);
y1=x.^2;
y2=cos(2*x);
y3=y1.*y2;
plot(x,y1,'r-',x,y2,'b:
',x,y3,'g--');
text(-4,16,'\leftarrowy1=x^2');
text(3*pi/2,-0.5,'\uparrowy2=cos(2*x)');
text(-1.5*pi,-2.25*pi*pi,'\leftarrowy3=y1*y2');
(2)x=linspace(-2*pi,2*pi,100);
y1=x.^2;
y2=cos(2*x);
y3=y1.*y2;
subplot(2,2,1);
plot(x,y1);
title('y1=x^2');
subplot(2,2,2);
plot(x,y2);
title('y2=cos(2*x)');
subplot(2,2,3);
plot(x,y3);
title('y3=x^2*cos(2*x)');
(3)x=linspace(-2*pi,2*pi,50);
y1=x.^2;
subplot(2,2,1);
bar(x,y1);
title('y1=x^2的条形图');
subplot(2,2,2);
stairs(x,y1);
title('y1=x^2的阶梯图');
subplot(2,2,3);
stem(x,y1);
title('y1=x^2的杆图');
subplot(2,2,4);
fill(x,y1,'b');
title('y1=x^2的填充图');
x=linspace(-2*pi,2*pi,50);
y2=cos(2*x);
subplot(2,2,1);
bar(x,y2);
title('y2=cos(2*x)的条形图');
subplot(2,2,2);
stairs(x,y2);
title('y2=cos(2*x)的阶梯图');
subplot(2,2,3);
stem(x,y2);
title('y2=cos(2*x)的杆图');
subplot(2,2,4);
fill(x,y2,'r');
title('y2=cos(2*x)的填充图');
x=linspace(-2*pi,2*pi,50);
y3=x.^2.*cos(2.*x);
subplot(2,2,1);
bar(x,y3);
title('y3=x^2*cos(2*x)的条形图');
subplot(2,2,2);
stairs(x,y3);
title('y3=x.^2*cos(2*x)的阶梯图');
subplot(2,2,3);
stem(x,y3);
title('y3=x.^2*cos(2*x)的杆图');
subplot(2,2,4);
fill(x,y3,'y');
title('y3=x.^2*cos(2*x)的填充图');
3x=-5:
0.01:
5;
y=[];
forx0=x
ifx0<=0
y=[y,(x0+sqrt(pi))/exp
(2)];
else
y=[y,0.5*log(x0+sqrt(1+x0^2))];
end
end
plot(x,y)
4a=input('a=');
b=input('b=');
n=input('n=');
t=-2*pi:
0.01:
2*pi;
r=a*sin(b+n*t);
polar(t,r)
5x=linspace(-5,5,21);
y=linspace(0,10,31);
[x,y]=meshgrid(x,y);
z=cos(x).*cos(y).*exp(-sqrt(x.^2+y.^2)/4);
subplot(2,1,1);
surf(x,y,z);
subplot(2,1,2);
contour3(x,y,z,50);
6ezsurf('cos(s)*cos(t)','cos(s)*sin(t)','sin(s)',[0,0.5*pi,0,1.5*pi]);
shadinginterp
6.实验心得(质疑、建议):
很实用的绘图方法,可以得出函数的图像,很直观明了。
熟练度还不够,仍需加强。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学 软件 Matlab 实验 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)