计算机与信息学院
(数学类课程)
实验报告
20##年 12月13日
实验项目列表
计算机与信息学院数学类实验报告(一)
系: 应用数学 专业: 数学与应用数学 年级: 20##级
姓名: *** 学号: 102260002051 实验课程: 数学软件
实验室号:_ 田C-513 实验设备号: 107 实验时间: 2011/09/25
指导教师签字: 成绩:
1.实验项目名称:MATLAB运算基础
2.实验目的和要求:
1.熟悉启动和退出MTALAB的方法。
2.熟悉MATLAB命令窗口的组成。
3.掌握建立矩阵的方法。
4.掌握MATLAB各种表达式的书写规则以及常用函数的使用。
3.实验使用的主要仪器设备和软件:
联想微机;MATLAB 6.5
4.实验的基本理论和方法:
冒号表达式,逻辑表达式,whos,find,length,空矩阵
5.实验内容与步骤:
1 (1) z1=2*sin(pi*85/180)/(1+exp(2))
(2) x=[2, 1+2*i; -0.45 5] ;
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)
2 A=[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]
3 A=[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的基础,并利用这些知识进行基本的数值处理。
计算机与信息学院数学类实验报告(二)
系: 应用数学 专业: 数学与应用数学 年级: 20##级
姓名: *** 学号: 102260002051 实验课程: 数学软件
实验室号:_ 田C-513 实验设备号: 107 实验时间: 2011/10/17
指导教师签字: 成绩:
1.实验项目名称:MATLAB矩阵分析与处理
2.实验目的和要求:
1.掌握生成特殊矩阵的方法。
2.掌握矩阵分析的方法。
3.用矩阵求逆法解线性方程组。
3.实验使用的主要仪器设备和软件:
联想微机;MATLAB 6.5
4.实验的基本理论和方法:
单位矩阵eye,随机矩阵rand,零矩阵zeros,对角阵diag,条件数cond,行列式det,迹rank,秩trace,范数norm,逆inv
5.实验内容与步骤:
1 E=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]
2 H=hilb(5);
P=pascal(5);
Hh=det(H)
Hp=det(P)
Th=cond(H)
Tp=cond(P)
3 A=[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)
4 A=[-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)
6 A=fix(10*rand(5))
B=sqrtm(A)
C=sqrt(A)
6.实验心得(质疑、建议):
学会了利用本实验涉及到的代码对矩阵进行各种求解,对计算和解答方便了非常多。只是求什么量要用哪个代码还不熟练,要查表。因为没发现规律,又太多,易搞混。在以后的实验操作中要多多练习,掌握熟练。
计算机与信息学院数学类实验报告(三)
系: 应用数学 专业: 数学与应用数学 年级: 20##级
姓名: *** 学号: 102260002051 实验课程: 数学软件
实验室号:_ 田C-513 实验设备号: 107 实验时间: 2011/10/29
指导教师签字: 成绩:
1.实验项目名称:选择结构程序设计,循环结构程序设计(1)
2.实验目的和要求:
1.掌握建立和执行M文件的方法。
2.掌握利用if语句实现选择结构的方法。
3.掌握利用switch语句实现多分支选择结构的方法。
4.掌握try语句的使用。
5.掌握利用for语句实现循环结构的方法。
6.掌握利用while语句实现循环结构的方法。
7.熟悉利用向量运算来代替循环操作的方法。
3.实验使用的主要仪器设备和软件:
联想微机;MATLAB 6.5
4.实验的基本理论和方法:
If语句,switch语句,try语句,循环结构:for语句、while语句,向量运算代替循环操作的方法。
5.实验内容与步骤:
3.1 x=[-5.0,-3.0,1.0,2.0,2.5,3.0,5.0];
y=[];
for x0=x
if x0<0&x0~=-3
y=[y,x0*x0+x0-6];
elseif x0>=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.2 if语句:
x=input('please enter a number between 0 to 100:');
if x>100|x<0
disp('Error!!the number you input is wrong!!');
else
if x<=100&x>=90
disp('A');
elseif x<=89&x>=80
disp('B');
elseif x<=79&x>=70
disp('C');
elseif x<=69&x>60
disp('D');
else
disp('E');
end
end
switch语句:
x=input('please enter a number between 0 to 100:');
while 1
if x<0|x>100
disp('Error!!the number you input is wrong!!')
x=input('please input a number between 0 to 100:');
else
break;
end
end
switch fix(x/10)
case {9,10}
disp('A')
case 8
disp('B')
case 7
disp('C')
case 6
disp('D')
otherwise
disp('E')
end
3.3 n=input('input the worker’s ID:');
t=input('input the worker’s working time:');
if t>120
x=(t-120)*84*(1+0.15)+120*84;
elseif t<60
x=t*84-700;
else
x=t*84;
end
disp([num2str(n),' worker’s salary is ',num2str(x)]);
3.4 a=fix(10+90*rand(1,2))
x=a(1);
y=a(2);
t=input('please input the yunsuanfuhao:','s');
if t=='+'
z=x+y;
elseif t=='-'
z=x-y;
elseif t=='*'
z=x*y;
elseif t=='/'
z=x/y;
end
disp([num2str(x),t,num2str(y),'=',num2str(z)])
3.5 a=rand(5,6)
n=input('while line do you want?:');
if n>5
disp('over the range,the last line is:')
a(5,:)
else
disp(['No.',num2str(n),'''s line is :'])
a(n,:)
end
4.1 循环结构
pi=0;
n=input('n=');
for i=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.2 y=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.3 a=input('a=');
b=input('b=');
Xn=1;
Xn1=a/(b+Xn);
n=0;
while abs(Xn1-Xn)>1e-5
Xn=Xn1;
Xn1=a/(b+Xn);
n=n+1;
if n==500
break;
end
end
n
Xn1
r1=(-b+sqrt(b*b+4*a))/2
r2=(-b-sqrt(b*b+4*a))/2
4.4 for i=1:100
if i==1
f(i)=1;
elseif i==2
f(i)=0;
elseif i==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.5 s=0;
n=0;
for i=2:49
b=i*(i+1)-1;
m=fix(sqrt(b));
for j=2:m
if rem(b,j)==0
break
end
end
if j==m
n=n+1;
s=s+b;
end
end
n
s
6.实验心得(质疑、建议):
本次实验内容多,而且也比较复杂,但是上机时间太少,个人觉得完成有点仓促。建议老师能多安排上机时间,毕竟这也是一门操作性比较强的学科。
计算机与信息学院数学类实验报告(四)
系: 应用数学 专业: 数学与应用数学 年级: 20##级
姓名: *** 学号: 102260002051 实验课程: 数学软件
实验室号:_ 田C-513 实验设备号: 107 实验时间: 2011/11/14
指导教师签字: 成绩:
1.实验项目名称:循环结构程序设计(2),函数文件
2.实验目的和要求:
1.理解函数文件的概念。
2.掌握定义和调用MATLAB函数的方法。
3.实验使用的主要仪器设备和软件:
联想微机;MATLAB 6.5
4.实验的基本理论和方法:
建立M文件,并在命令窗口调用。
5.实验内容与步骤:
1 建立M文件 mat1.m
function y=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
function X=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
function flag=mat3(x)
flag=1;
for i=2:sqrt(x)
if rem(x,i)==0
flag=0;
break;
end
end
在命令窗口调用M文件
for i=10:99
j=10*rem(i,10)+fix(i/10);
if mat3(i)&mat3(j)
disp(i)
end
end
4 建立M文件fx.m
function y=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
function f1=mat4(n)
f1=n+10*log(n*n+5);
在命令窗口调用M文件
y=mat4(40)/(mat4(30)+mat4(20))
(2) 建立M文件mat5.m
function f2=mat5(n)
f2=0;
for i=1:n
f2=f2+i*(i+1);
end
在命令窗口调用M文件
y=mat5(40)/(mat5(30)+mat5(20))
6.实验心得(质疑、建议):
难度有所提高,但实用性也是非常强大的!通过自己写函数来完成更复杂的题目,完成之后很有成就感。但实验安排的时间还是不够,一次实验只做了4道题目,课本的知识还掌握不牢固,会找个时间好好巩固下的。
计算机与信息学院数学类实验报告(五)
系: 应用数学 专业: 数学与应用数学 年级: 20##级
姓名: *** 学号: 102260002051 实验课程: 数学软件
实验室号:_ 田C-513 实验设备号: 107 实验时间: 2011/11/24
指导教师签字: 成绩:
1.实验项目名称:高层绘图操作
2.实验目的和要求:
1.掌握绘制二维图形的常用函数。
2.掌握绘制三维图形的常用函数。
3.掌握绘制图形的辅助操作。
3.实验使用的主要仪器设备和软件:
联想微机;MATLAB 6.5
4.实验的基本理论和方法:
Linespace,plot,subplot,title,steam,bar,stairs,fill(要把颜色代码填进去),polar等。
5.实验内容与步骤:
1 x=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,'\leftarrow y1=x^2');
text(3*pi/2,-0.5,'\uparrow y2=cos(2*x)');
text(-1.5*pi,-2.25*pi*pi,'\leftarrow y3=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)的填充图');
3 x=-5:0.01:5;
y=[];
for x0=x
if x0<=0
y=[y,(x0+sqrt(pi))/exp(2)];
else
y=[y,0.5*log(x0+sqrt(1+x0^2))];
end
end
plot(x,y)
4 a=input('a=');
b=input('b=');
n=input('n=');
t=-2*pi:0.01:2*pi;
r=a*sin(b+n*t);
polar(t,r)
5 x=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);
6 ezsurf('cos(s)*cos(t)','cos(s)*sin(t)','sin(s)',[0,0.5*pi,0,1.5*pi]);
shading interp
6.实验心得(质疑、建议):
很实用的绘图方法,可以得出函数的图像,很直观明了。熟练度还不够,仍需加强。
数学实验报告实验名称matlab常微分概率和统计作图学院机械工程学院专业班级姓名学号20xx年11月一实验目的掌握运用Matlab…
数学实验报告实验名称matlab绘图学院机械工程学院20xx年10月一实验目的掌握Matlab绘图的基本知识学会使用matlab绘…
西安交通大学数学实验报告数学实验报告20xx年6月12日2西安交通大学数学实验报告培养容器温度变化率模型一实验目的利用matlab…
济南大学20##~20##学年第二学期数学实验上机考试题班级计科1201学号##姓名##考试时间20##年6月17日授课教师##说…
通过《matlab仿真》实验使我学习掌握了许多知识。首先是对matlab有了一个全新的认识,其次是对matlab的更多操作和命令的…
matlab实验心得体会]这个就是我自己做出来的,发现用soundsc听出来还行,但是用wavwrite就变的很难听。后来发现PB…
华北电力大学实验报告第1页华北电力大学实验报告第2页华北电力大学实验报告第3页华北电力大学实验报告第4页华北电力大学实验报告第5页…
Matlab学习心得数学实验周我们学习了Matlab软件这是一个十分实用和重要的软件初次结识MATLAB感觉这是一个很好的软件语言…
MATLAB教程及实训班级学号姓名实验报告实验1熟悉matlab的开发环境及矩阵操作一实验的教学目标通过本次实验使学生熟悉MATL…