
通过该实验的学习,使学生能灵活应用MATLAB软件解决一些简单问题,能借助MATLAB软件的绘图功能,对函数的特性进行探讨,广泛联想,大胆猜想,发现进而证实其中的规律。
二、实验仪器、设备或软件: 电脑,MATLAB软件
三、实验内容 1.MATLAB软件的数组操作及运算练习;
2.直接使用MATLAB软件进行作图练习;
3.用MATLAB语言编写命令M文件和函数M文件。
四、实验步骤
1.在D盘建立一个自己的文件夹;
2.开启软件平台——MATLAB,将你建立的文件夹加入到MATLAB的搜索路径中;
3.利用帮助了解函数max, min, sum, mean, sort, length,rand, size和diag的功能和用法;
4.开启MATLAB编辑窗口,键入你编写的M文件(命令文件或函数文件);
5.保存文件(注意将文件存入你自己的文件夹)并运行;
6.若出现错误,修改、运行直到输出正确结果;
7.写出实验报告,并浅谈学习心得体会。
五、实验要求与任务
根据实验内容和步骤,完成以下具体实验,要求写出实验报告(实验目的→问题→算法与编程→计算结果或图形→心得体会)
1. 已知矩阵,
要求:(1)屏幕输出A与B;(2)A的转置A′;(3)求A+B的值;(4)求A-B的值;(5)求4A;(6)求A×B;(7)求A-1.
2. 有一函数f(x,y)=x2+sinxy+2y,写一程序,输入自变量的值,输出函数值。
3. 用plot,fplot分别绘制函数y=cos(tan(x))图形。
4. 绘制函数在上的图形。
5. 作出下列曲面的三维图形:
6.建立一个M文件:求所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如:153是一个水仙花数,因为153=13+53+33。
六、实验过程(实验步骤、记录、数据、分析)
1. 已知矩阵,
要求:(1)屏幕输出A与B;(2)A的转置A′;(3)求A+B的值;(4)求A-B的值;(5)求4A;(6)求A×B;(7)求A-1.
结果:
>> A=[3 1 1;2 1 2;1 2 3]
B=[1 1 -1;2 -1 0;1 0 1]
A =
3 1 1
2 1 2
1 2 3
B =
1 1 -1
2 -1 0
1 0 1
>> A'=
A'=
|
Error: The expression to the left of the equals sign is not a valid target for an
assignment.
>> A'
ans =
3 2 1
1 1 2
1 2 3
>> A+B
ans =
4 2 0
4 0 2
2 2 4
>> A-B
ans =
2 0 2
0 2 2
0 2 2
>> 4*A
ans =
12 4 4
8 4 8
4 8 12
>> A*B
ans =
6 2 -2
6 1 0
8 -1 2
>> 1./A
ans =
0.3333 1.0000 1.0000
0.5000 1.0000 0.5000
1.0000 0.5000 0.3333
>>
注意:在求解A’等矩阵算法时不能自己加等号。
2. 有一函数f(x,y)=x2+sinxy+2y,写一程序,输入自变量的值,输出函数值。
建立M文件:fun.m
function f=fun(x,y)
f=x^2+sin(x*y)+2*y
在MATLAB命令窗口键入命令:
>> x=1,y=1
fun(x,y)
结果:
x =
1
y =
1
f =
3.8415
ans =
3.8415
注意事项:1,function不能写成funtion,细心
2,文件名与函数名相同。
3. 用plot,fplot分别绘制函数y=cos(tan(x))图形。
程序:
x=linspace(-0.5,0.5,30);
y=cos(tan(pi*x));
plot(x,y)
结果:
fplot('[cos(tan(pi*x))]',[-0.5,0.5])
结果:
注意事项: fplot('[cos(tan(pi*x))]',[-0.5,0.5])不能写成fplot('[cos(tan(pi*x))]',(-0.5,0.5))否则是错误程序。
4. 绘制函数在上的图形。
程序:a=input('please input a=');
t=linspace(0,2*pi,100);
x=a*(sin(t.^3));
y=a*(t-cos(t).^3);
plot(x,y);
please input a=10
5. 作出下列曲面的三维图形:
程序:u=0:pi/50:2*pi;
v=0:pi/50:2*pi;
[u,v]=meshgrid(u,v);
x=(1+cos(u)).*cos(v);
y=(1+cos(u)).*sin(v);
z=sin(u);
plot3(x,y,z);-------也可以是meshz(x,y,z);
图形如下:
6.建立一个M文件:求所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如:153是一个水仙花数,因为153=13+53+33。
程序: >> for m=100:999
m1=fix(m/100);
m2=rem(fix(m/10),10);
m3=rem(m,10);
if m==m1^3+m2^3+m3^3;
disp(m)
end
end
结果:
153
370
371
407
七、指导教师评语及成绩:
