📄 ctfstpshsym.m
字号:
function [A_sym,B_sym]=CTFStpshsym
syms t n y a a1
if nargin<3;Nf=input('please input 所需展开的最高谐波的次数:');end
T=input('please input 信号的周期=')
if nargin<5;Nn=32;end
M=input('周期与脉冲宽度之比M=');
A=1;tao=T/M;a=tao/2;
y1=sym('Heaviside(t+a1)')*A;
y=y1-sym('Heaviside(t-a1)')*A;
y=subs(y,a1,a);
y=simple(y);
A0=2*int(y,t,0,T)/T;
As=int(2*y*cos(2*pi*n*t/T)/T,t,0,T);
Bs=int(2*y*sin(2*pi*n*t/T)/T,t,0,T);
A_sym(1)=double(vpa(A0,Nn));
for k=1:Nf
A_sym(k+1)=double(vpa(subs(As,n,k),Nn));
B_sym(k+1)=double(vpa(subs(Bs,n,k),Nn));end
if nargout==0
S1=fliplr(A_sym)
S1(1,k+1)=A_sym(1)
S2=fliplr(1/2*S1)
S3=fliplr(1/2*B_sym)
S3(1,k+1)=0
S4=fliplr(S3)
S5=S2-i*S4;
S6=fliplr(S5)
N=Nf*2*pi/T;
k2=-N:2*pi/T:N;
S7=[S6,S5(2:end)];
subplot(3,3,3)
x=time_fun_e
subplot(3,1,3)
stem(k2,abs(S7))
title('连续时间周期矩形脉冲的双边幅度谱')
axis([-80,80,0,0.12])
line([-80,80],[0,0])
line([0,0],[0,0.12])
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -