《计算机仿真及应用》实验教案
实验三 MATLAB在数值计算方面的应用
一、实验目的
1、掌握数值微积分的常用命令。
2、熟悉运用MATLAB指令进行矩阵和代数方程的求解。 3、了解MATLAB在概率分析和统计分析方面的应用。 4、熟练掌握多项式运算和卷积运算。 5、区别符号计算和数值计算。
二、实验主要仪器与设备
装配有MATLAB7.6软件的计算机
三、预习要求
做实验前必须认真复习第四章MATLAB的数值计算功能。
四、实验内容及实验步骤
1、求积分s(x)/20本例演示:trapzy(t)dt,其中y0.2sint。试编写M脚本文件并运行之。
用于数值积分时的的基本原理;sum的用法及注意事项。
clear
d=pi/8; %分区间的区间间隔
t= ; %包含5个采样点的一维数组 y=0.2+sin(t);
s= ; %求出的是:所有函数采样值之和 s_sa= ; %高度为函数采样值的所有小矩形之和 s_ta=d*trapz(y); disp([s_sa, s_ta]) t2=[t,t(end)+d]; y2=[y,nan]; stairs(t2,y2,':k') hold on
plot(t,y,'r','LineWidth',3) h=stem(t,y,'LineWidth',2); set(h(1),'MarkerSize',10) axis([0,pi/2+d,0,1.5]) hold off shg 运行结果:
disp(['sum求得积分',blanks(3),'trapz求得积分'])
湖北理工学院电气学院 第 1 页 共 3 页
《计算机仿真及应用》实验教案
122、求方程34591314610x的解。编写M脚本文件并运行之。本例演示:如何确定解的性状1571181216(唯一与否,准确与否);如何求特解和齐次解;如何检查解的正确性。
①创建待解方程的A和b
A=reshape(1:12,4,3); %方程系数矩阵 b= ; %方程右边的列向量b
②检查b是否在A的值空间中(由此确定解的性状:不唯一、准确解) ra= ; 运行结果: ra = 2 rab = 2
③求特解和通解,并对由它们构成的全解进行验算 xs=A\\b; xg=null(A); c=rand(1); ba=A*(xs+c*xg) norm(ba-b)
运行结果如下:
%A的秩
rab=rank([A,b])
(s22)(s4)(s1)3、求的“商”及“余”多项式,写出输入的指令及运行结果。本例演示:多项式3ss1系数向量的正确表达;指令conv,deconv,poly2str的使用;如何验算。
①求“商”及“余”多项式 format rat
p1= ; %计算分子多项式
p2=[1 0 1 1]; %定义分母多项式的系数向量。注意缺项补零 [q,r]= ; %求商多项式和余多项式 cq='商多项式为 '; cr='余多项式为 '; disp([cq,poly2str(q,'s')]),disp([cr,poly2str(r,'s')])
湖北理工学院电气学院 第 2 页 共 3 页
《计算机仿真及应用》实验教案
运行结果为:
②利用计算所得“商”和“余”验算分子多项式 qp2= ; %计算“商”与“分母”的乘积 pp1=qp2+r; %重算得到分子多项式 pp1==p1 运行结果为:
4、有序列A(n)现。
N1=3;N2=12; M1=2;M2=9;
A=ones(1,(N2-N1+1)); B=ones(1,(M2-M1+1)); C= ; KC=Nc1:Nc2; KC,C 运行结果:
%计算两个序列卷积结果
Nc1=N1+M1;Nc2=N2+M2;
1n3,4,,121n2,3,,9和B(n),求这两个序列的卷积。试编程实
elseelse00五、实验报告与思考题
1、试说明符号计算和数值计算的不同特点。
2、在MATLAB的数值计算中,为什么没有专门的求极限和求导数的指令?
3、为什么要谨慎使用数值导数?
湖北理工学院电气学院 第 3 页 共 3 页