MATLAB实验教案11Word格式.docx
- 文档编号:16230763
- 上传时间:2022-11-21
- 格式:DOCX
- 页数:16
- 大小:185.05KB
MATLAB实验教案11Word格式.docx
《MATLAB实验教案11Word格式.docx》由会员分享,可在线阅读,更多相关《MATLAB实验教案11Word格式.docx(16页珍藏版)》请在冰豆网上搜索。
t=[0:
2*pi]
x=cos(t).*a
y=sin(t).*sqrt(25-a.^2)
holdon
plot(x,y)
end
4.三次抛物线方程为y=ax3+x,当参数a分别为-3、-2、-1、0、1、2、3时在同一坐标绘制其波形图,试探讨参数a对其图形的影响,其中x∈[-2,2],步长为0.1。
fora=-3:
3;
x=-2:
0.1:
2;
y=a.*x.^3+x
5.画出对数和指数函数曲线,并加上标题,轴标记和曲线说明。
x=-2*pi:
y=sin(x);
semilogx(x,y)
title('
duishu'
)
xlabel('
logx'
ylabel('
y'
legend('
semilog'
6.将图形窗口分成两个窗格,分别绘制出函数:
y1=2x+5,y2=x2-3x+1在[-3,3]区间上的曲线,并利用axis调整轴刻度,使它们具有相同的缩放尺寸。
x=-3:
y1=2*x+5;
y2=x.^2-3*x+1;
subplot(2,1,1);
plot(x,y1);
subplot(2,1,2);
plot(x,y2);
axisequal
7.绘制三维圆柱螺线:
要求给相应的坐标轴和标题附加标注,螺线为兰色虚线。
t=-2*pi:
x=sin(t);
y=cos(t);
z=t;
plot3(x,y,z,'
:
b'
x'
zlabel('
z'
tuxing'
8.画出函数的三维曲线和网格曲线:
z=(x-2)2+(y-1.2)2。
x=2:
5;
y=3:
6;
z=(x-2).^2+(y-1.2).^2;
plot3(x,y,z)
[x,y]=meshgrid(-8:
8);
mesh(x,y,z);
实验四MATLAB文件编程
掌握MATLAB基本编程语句,能够编写出简单的命令文件和函数文件,并学会对所编写的程序进行调试。
主要针对在理论课上讲的第四个专题来做实验。
这部分内容是MATLAB的重点内容。
要求学生能够独立编写出MATLAB程序,并能够对编成过程中出现的问题加以解决。
某些实验内容的程序如下:
2、编写程序,计算1+3+5+7+…+(2n+1)的值(n值由用户输入)。
n=input('
n='
);
sum=0;
x=1;
forx=1:
2:
2*n+1
sum=sum+x;
sum
3、编写分段函数
的函数文件,存放于文件ff.m中,计算出
,
的值。
x=input('
x='
ifx>
=0&
x<
1
y=x
elseifx>
=1&
x<
=2
y=2-x
else
y=0
4、编写求两个正数最大值的函数文件,然后通过具体例子来调用该函数。
functionnummax(a,b)
if(a<
0|b<
0)
disp('
inputerror'
return;
elseifa>
b
fprintf('
thelargernumberis%f'
a)
elseifa<
b)
else
fprint('
%fequals%f'
b,a)
end
clear
a=input('
pleaseinputanumber:
'
b=input('
nummax(a,b)
实验五MATLAB符号运算
掌握符号变量的生成并能灵活进行使用,能进行一些符号运算;
掌握符号函数可视化命令。
主要针对在理论课上讲的第五个专题来做实验。
1.编写求函数傅立叶级数的函数,并编写程序求f=x的傅立叶级数(在编写函数时候要使用simple进行化简)。
function[a0,an,bn]=sfour(f)
symsxn
a0=int(f,-pi,pi)/pi
an=int(f*cos(n*x),-pi,pi)/pi;
an=simple(an)
bn=int(f*sin(n*x),-pi,pi)/pi;
bn=simple(bn)
symsx
f=x;
[a0,ak,bk]=sfour(f)
已知求(在复合函数的计算中,一定要注意变量的赋值顺序)
symstx
x=t^2*sin(t);
y=log(x^3);
dydt=diff(y,t)
2.
符号积分变换计算二重不定积分
计算定积分
F=int(int('
x*exp(-x*y)'
'
),'
symsx;
f=1/(x^2+2*x+3);
F1=int(f,2,pi)
F2=int(f,-inf,inf)
3.解方程组x+y+z=1x-y+z=22x-y-z=1
g1='
x+y+z=1'
g2='
x-y+z=2'
g3='
2*x-y-z=1'
[x,y,z]=solve(g1,g2,g3)
x=2/3
y=-1/2
z=5/6
4.求微分方程的解(画出解的图形)
y=dsolve('
D2y=-2*Dy-2*y'
y(0)=1'
Dy(0)=0'
y=
exp(-t)*cos(t)+exp(-t)*sin(t)
ezplot(y)
5.利用泰勒展开式计算把展开到6阶,把关于变量t展开到3阶
symsxt
t1=taylor(exp(-x))
t4=taylor(x^t,3,t)
实验六Simulink动态仿真工具箱的使用
了解matlab中的工具箱,对于Simulink动态仿真工具箱,掌握动态系统的创建过程,也就是一个方框图的绘制过程。
主要针对在理论课上讲的第六个专题来做实验。
对正弦波进行取绝对值运算的仿真
设计一个矩形波和正弦波相加的仿真程序
实验七MATLAB在电子信息中的应用
(1)
把理论课上讲过的关于MATLAB的知识应用到电子信息中
主要针对在理论课上讲的第七个专题来做实验。
编写M文件求解线性常微分方程
在输入u(t)为单位脉冲及单位阶跃信号的解析解(画出图形并加相应的标注)。
用拉普拉斯变换(脉冲输入u(s)=1,阶跃输入u(s)=1/s)
单位脉冲输入时的响应
a=[1,5,4,7];
b=[3,0.5,4];
[r,p,k]=residue(b,a)
t=0:
0.2:
10;
yi=r
(1)*exp(p
(1)*t)+r
(2)*exp(p
(2)*t)+r(3)*exp(p(3)*t);
subplot(1,2,1);
h=plot(t,yi);
阶跃输入时的响应(此时分母由于乘了一个s,a将提高一阶,右端多加一个零)
a=[1,5,4,7,0];
ys=r
(1)*exp(p
(1)*t)+r
(2)*exp(p
(2)*t)+r(3)*exp(p(3)*t)+r(4);
subplot(1,2,2),
h=plot(t,ys);
编写M文件求n阶LTI系统的冲激响应。
输入信号和时间数组由用户自己确定并输入画出图形并加标注。
(画图命令和循环语句的练习)
a=input(‘多项式分母系数a=poly([0,-1+2i,-1-2i,-2,-5])‘);
b=input('
多项式分子系数向量b=[8,3,1]'
[r,p]=residue(b,a),%求留数
disp('
解析式h(t)=Σr(i)*exp(p(i)*t)'
给出时间数组t=[0:
dt:
tf]'
dt=input('
dt='
%给定时间数组
tf=input('
tf='
tf;
h=zeros(1,length(t));
%h的初始化
fori=1:
length(a)-1%根数为a的长度减1
h=h+r(i)*exp(p(i)*t);
%叠加各根分量
plot(t,h),grid
set(gcf,'
color'
w'
)%设置图形背景色为白色
编写M文件求得预备知识三的电流电压值。
(MATLAB顺序结构和矩阵运算的练习)
R1=2;
R2=4;
R3=12;
R4=4;
R5=12;
R6=4;
R7=2;
a11=R1+R2+R3;
a12=-R3;
a13=0;
a21=-R3;
a22=R3+R4+R5;
a23=-R5;
a31=0;
a32=-R5;
a33=R5+R6+R7;
b1=1;
b2=0;
b3=0;
us=input('
us='
A=[a11a12a13;
a21a22a23;
a31a32a33];
B=[b1;
0;
0];
I=A\B*us;
ia=I
(1);
ib=I
(2);
ic=I(3);
i3=ia-ib
u4=R4*ib
u7=R7*ic
实验八MATLAB在电子信息中的应用
(2)
1.编写MATLAB程序来产生下列基本离散时间序列(画出图形并进行标注)
(1)单位脉冲序列,起点n0,终点nf,在ns(取ns=5)处有一单位脉冲(n0≤ns≤nf)
(2)单位阶跃序列,起点n0,终点nf,,在ns(取ns=5)前为0,在ns后为1(n0≤ns≤nf)
(3)正弦序列(参数取值自己确定)
(4)复指数序列(参数取值自己确定分别画出实部和虚部的图形)
clear,n0=0;
nf=10;
ns=3;
n1=n0:
nf;
x1=[zeros(1,ns-n0),1,zeros(1,nf-ns)];
%单位脉冲序列的产生
%n1=n0:
x1=[(n1-ns)==0];
%显然,用逻辑式是比较高明的方法
n2=n0:
x2=[zeros(1,ns-n0),ones(1,nf-ns+1)];
%单位阶跃序列的产生
%也有类似的用逻辑比较语句的方法,留给读者思考
n3=n0:
x3=exp((-0.2+0.5j)*n3);
%复数指数序列
subplot(2,2,1),stem(n1,x1);
单位脉冲序列'
subplot(2,2,3),stem(n2,x2);
单位阶跃序列'
subplot(2,2,2),stem(n3,real(x3));
%画x3实部序列
line([0,10],[0,0])%画横坐标
复指数序列'
),ylabel('
实部'
subplot(2,2,4),stem(n3,imag(x3));
%画x3虚部序列
line([0,10],[0,0]),%画横坐标
虚部'
2.编写MATLAB程序来产生基本连续时间序列(画出图形并进行标注)单位冲激函数,单位阶跃函数,复指数函数(函数表达式自己确定)
clear,t0=0;
tf=5;
dt=0.05;
t1=1;
t=[t0:
tf];
%
(1)单位脉冲信号,
%在t1(t0≤t1≤tf)处有一持续时间为dt,面积为1的脉冲信号,其余时间均为零。
t=[t0:
st=length(t);
n1=floor((t1-t0)/dt);
%求t1对应的样本序号
x1=zeros(1,st);
%把全部信号先初始化为零
x1(n1)=1/dt;
%给出t1处的脉冲信号
subplot(2,2,1),stairs(t,x1),grid%绘图,注意为何用stairs命令
axis([0,5,0,1.1/dt])
%
(2)单位阶跃信号,
%信号从t0到tf,在t1(t0≤t1≤tf)前为0,到t1处有一跃变,以后为1.
%程序前几句即求t,st,n1的语句与上同,只把x1处改为x2
x2=[zeros(1,n1-1),ones(1,st-n1+1)];
%产生阶跃信号
subplot(2,2,3),stairs(t,x2),grid%绘图
axis([0,5,0,1.1])
%(3)复数指数信号
u=-0.5;
w=10;
x3=exp((u+j*w)*t);
subplot(2,2,2),plot(t,real(x3)),grid%绘图,
subplot(2,2,4),plot(t,imag(x3)),grid%绘图,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 实验 教案 11