实验一:Matlab
一、实验目的
操作环境熟悉
1.初步了解Matlab操作环境。
2.学习使用图形函数计算器命令funtool及其环境。
二、实验内容
熟悉Matlab操作环境,认识命令窗口、内存工作区窗口、历史命令窗口;学会使用format命令调整命令窗口的数据显示格式;学会使用变量和矩阵的输入,并进行简单的计算;学会使用who和whos命令查看内存变量信息;学会使用图形函数计算器funtool,并进行下列计算:
1.单函数运算操作。
? 求下列函数的符号导数
(1) y=sin(x);
(2) y=(1+x)^3*(2-x); ? 求下列函数的符号积分
(1) y=cos(x); (2) y=1/(1+x^2); (3) y=1/sqrt(1-x^2); (4) y=(x-1)/(x+1)/(x+2); ? 求反函数
(1) y=(x-1)/(2*x+3); (2) y=exp(x);
(3) y=log(x+sqrt(1+x^2)); ? 代数式的化简
(1) (x+1)*(x-1)*(x-2)/(x-3)/(x-4); (2) sin(x)^2+cos(x)^2;
(3) x+sin(x)+2*x-3*cos(x)+4*x*sin(x); 2.函数与参数的运算操作。
? 从y=x^2通过参数的选择去观察下列函数的图形变化
(1) y1=(x+1)^2 (2) y2=(x+2)^2 (3) y3=2*x^2 (4) y4=x^2+2 (5) y5=x^4 (6) y6=x^2/2
3.两个函数之间的操作 ? 求和
(1) sin(x)+cos(x)
(2) 1+x+x^2+x^3+x^4+x^5 ? 乘积
(1) exp(-x)*sin(x)
(2) sin(x)*x ? 商
(1) sin(x)/cos(x); (2) x/(1+x^2); (3) 1/(x-1)/(x-2); ? 求复合函数
(1) y=exp(u) u=sin(x)
(2) y=sqrt(u) u=1+exp(x^2) (3) y=sin(u) u=asin(x) (4) y=sinh(u) u=-x
三、设计提示
1.初次接触Matlab应该注意函数表达式的文本式描述。
2.在使用图形函数计算器funtool时,注意观察1号和2号窗口中函数的图形。
四、实验报告要求
1.针对图形函数计算器funtool,对每一类型计算记录其中一个图形的曲线。 2.书写实验报告时要结构合理,层次分明,在分析描述的时候,需要注意语言的流畅。
实验二:M文件和Mat文件操作
一、实验目的
1.定制自己的工作环境。 2.编写简单的M文件。
3.保存内存工作区中的变量到.mat文件。 4.学会只用Matlab帮助。
二、实验内容
1.使用format命令和File|Peferences菜单定制自己的工作环境。
2.编写如下M文件,试调整参数a的大小,观察并记录y1、y2的波形特征。
%example1.m t=0:pi/100:4*pi; a=3;
y2=exp(-t/a); y1=y2.*sin(a*t);
plot(t,y1,'-r',t,y2,':b',t,-y2,':b');
3.保存内存工作区变量a、t、y1、y2到example1.mat文件;关闭Matlab,再重新启动;观察内存工作区;重新根据.mat文件恢复原来的工作区变量。
4.在命令窗口中查看exp函数的帮助;运行helpwin查看超文本格式的帮助文件,试翻译并记录下信号处理工具箱(Signal Processing Toolbox)中的函数分类(Functions -- Categorical List)。
三、设计提示
1.可以用命令语句、菜单或按钮等多种方式执行命令。 2.用于编辑M文件的文本编辑器还可以执行和调试程序。
3.不同的工具箱可能包含同名的函数,查看帮助时应注意在左侧栏选择相应的工具箱类别。
四、实验报告要求
1.对实验内容2,说明参数a的大小对y1、y2波形特征的影响。 2.翻译命令窗口中的exp函数的帮助信息。
3.运行helpwin,试翻译并记录下信号处理工具箱(Signal Processing Toolbox)中的函数分类(Functions -- Categorical List)。
4.书写实验报告时要结构合理,层次分明,在分析描述的时候,需要注意语言的流畅。
实验三:矩阵运算与元素群运算
一、实验目的
1.掌握数组与矩阵的创建。 2.掌握矩阵运算与数组运算。 3.掌握基本元素群运算。
4.掌握向量与矩阵的特殊处理。
二、实验内容
1.“:”号的用法。用“:”号生成行向量a=[1 2 3 4 5 6 7 8 9 10]、b=[5 3 1 -1 -3 -5]; 2.用线性等分命令linspace重新生成上述的a和b向量。
3.在100和10000之间用对数等分命令logspace生成10维的向量c。 4.生成范围在[0,10]、均值为5的3×5维的均匀分布随机数矩阵D。
5.利用magic函数生成5×5维的魔方矩阵,取其对角向量e,并根据向量e生成一个对角矩阵E。(所谓魔方矩阵就是各行、各列、各对角线元素之和相等。) 6.另AA是3×3维魔方矩阵,BB是由A旋转180°得到。CC是一个复数矩阵,其实部为AA,虚部为BB。DD是CC的转置,EE是CC的共轭。分别计算CC和EE的模和幅角。
7.f是一个首项为20,公比为0.5的10维等比数列;g是一个首项为1,公差为3的10维等差数列。试计算向量f和g的内积s。
8.生成一个9×9维的魔方矩阵,提取其中心的3×3维子矩阵M,利用sum函数检验其各行和各列的和是否相等。
?1?29.已知T???3??4234??1?2345??,利用函数生成左上三角矩阵T1???3456???567??4234?340??。 400??000?三、设计提示
1.等比数列可利用首项和公比的元素群的幂乘积生成。 2.提取子矩阵,可灵活应用“:”号或空阵[ ]。
3.尽量用Matlab函数生成上述矩阵或向量,不要用手工逐个输入。
四、实验报告要求
1.编写实现第二节实验内容中所使用的函数命令,并记录相应的生成结果。 2.思考题:是否存在2×2维的魔方矩阵?。
3.书写实验报告时要结构合理,层次分明,在分析描述的时候,需要注意语言的流畅。
五,参考答案
1.代码: a=1:10 b=5:-2:-5
a =
1 2 3 4 5 6 7 8 9 10 b =
5 3 1 -1 -3 -5 1. 代码:
linspace(1,10,10) linspace(5,-5,6) ans =
1 2 3 4 5 6 7 8 9 ans =
5 3 1 -1 -3 -5 2. 代码:
logspace(2,4,10) ans =
1.0e+004 *
0.0100 0.0167 0.0278 0.0464 0.0774 0.5995 1.0000 3. 代码:
D=10*rand(3,5) 结果: D =
0.1527 9.3181 8.4622 6.7214 6.8128 7.4679 4.6599 5.2515 8.3812 3.7948 4.4510 4.1865 2.0265 0.1964 8.3180 5.代码:
A=magic(5); e=diag(A); E=diag(e) 结果; E =
17 0 0 0 0 0 5 0 0 0 0 0 13 0 0 0 0 0 21 0 0 0 0 0 9 6.代码:
AA=magic(3); BB=rot90(AA,2); CC=AA+j*BB; DD=CC.'; EE=conj(CC); A=abs(CC) B=angle(CC) C=abs(EE)
10 0.1292 0.2154 0.3594