
好久没做过这类地解答了,希望我说的还算明白
_________________________
function pr1()
%11差分方程
a=[1,-1,09]; %通过a,b构造了一个滤波器,传递函数为H(z)=1/(1-z^(-1)+09z^(-2)),a构造分母,b构造分子
b=1;
x=impseq(0,-20,120) %impseq是用来构造单位冲击函数,时间t的范围为[-20,120],当且仅当t=0处为1,即x(21)=1,其余均为零
n=-20:120;
h=filter(b,a,x); %以a,b构造的的滤波器,当输入为x时,输出为h,因为x是单位冲击函数,所以h就是该滤波器的单位冲击响应了
figure(1)
stem(n,h); %以n为横轴,h为纵轴画出火柴杆图
title('冲激响应');
xlabel('n');
ylabel('h(n)');
%
figure(2)
[z,p,g]=tf2zp(b,a) % [Z,P,K] = TF2ZP(NUM,DEN) finds the zeros, poles, and gains:
% z为零点,p为极点,g为增益,如下:
% (z-z1)(z-z2)(z-zn)
% H(z) = K ------------------------
% (z-p1)(z-p2)(z-pn)
zplane(z,p) %画出极零图
function [x,n]=impseq(n0,n1,n2)
n=[n1:n2];
x=[(n-n0)==0];
function pr2()
%12 experiment
__________________________________________
b=[00181,00543,00543,00181]; %其实虚线框中的这部分的作用和上面函数中的FILTER函数的作用一样,就是构造一个滤波器,H(z)还是b为分母,a为分子
a=[1000,-176,11829,-02781];
m=0:length(b)-1;
l=0:length(a)-1;
K=500;
k=1:K;
w=pik/K;
H=(bexp(-jm'w))/(aexp(-jl'w)); %求出单位冲击响应函数
__________________________________________________________________________________
magH=abs(H); %求出单位冲击响应函数的幅值
angH=angle(H); %求出单位冲击响应函数的相位
figure(1)
subplot(2,1,1); %做出子图
plot(w/pi,magH);
grid; %添加栅格
axis([0,1,0,1]); %调节坐标轴范围
xlabel('w(pi)');
ylabel('|H|');
title('幅度,相位响应');
subplot(2,1,2);
plot(w/pi,angH);
grid;
xlabel('w(pi)');
ylabel('angle(H)');
1、在电脑桌面上打开MATLAB。
2、当你没有把你编辑好的子函数放入正确的文件夹时,不管你输入的程序是否有错,当你执行时,系统都会提示“没有定义”,这个时候就是没有子函数文件放到主函数库文件夹中。
3、首先,输入“editconv”这个“conv”是我准备编辑的子函数的主函数名,每个人所需的主函数名都不一样,这里可以不要那么在意。然后就可以打开相应的主函数,这是可以看到主函数所在文件夹位置。如图所示,※记住这个位置。
4、然后进行子函数的编辑,首先新建一个新的m文件,然后在编辑框中输入所要的子函数,例如我就是输入了convnem的函数,这是conv的子函数。然后点击保存。
5、接下来,在“conv”所在文件位置,将位置记录下来,将子函数的文件保存到主函数所在的文件夹即可,然后在重新的将你所需的程序(含有子函数的)输入并且执行,这时你会发现原来提示的错误没有了,那么这时调用自己添加的子函数成功了。以后有相应的子函数都可以通过这样的方法进行添加子函数。
是这样的,如果你再程序开始添加holdon这个的画,表示这之后的每一次作图都保留以前的图,这样就可以连续画图了
反之holdoff,表示打开这个之后,每次画图,删除以前的图,
%假设将租金定在x元
%根据题意:减少的间数为(x-1000)/50取整
%于是可得利润=(50-(x-1000)/50))(x-100)
%整理可得:max=-002x^2+72x-7000;st:x>=1000,x<=3500
%程序(问题等价于求以上二次函数在[1000 3500]的最大值)
f = inline('-(-002x^2+72x-7000)');
[xmax,fval] = fminbnd(f,1000,3500);% 求f最小值
dingjia=xmax%最优定价
fmax=-fval%取反得最大值
% 结果:最优定价:dingjia = 18000e+003=1800 最大利润:fmax = 57800e+004=57800
以上就是关于关于matlab的两个小程序的解释说明全部的内容,包括:关于matlab的两个小程序的解释说明、怎么实现matlab子程序的放置以及调用、matlab程序画图等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)