2连续时间信号在MATLAB中的表示
实验2_连续时间信号的Matlab表示与计算
y = rectpuls(t, width)
用以产生一个幅值为 1、宽度为 width、相对于 t=0 点左右对称的矩形波信号。该函数的横 坐标范围由向量 t 决定,是以 t=0 为中心向左右各展开 width/2 的范围。width 的默认值为 1。
用命令:plot(t,f)可得如下图形,显然显示效果较差,这是因为 t 的间隔过大,只要改 变为:t=-10:0.5:10;可得图 1.2。
图 1.1
图 1.2
1. 信号的时域表示方法
MATLAB 提供了大量用以生成基本信号的函数,比如最常用的指数信号、正弦信号等就
是 MATLAB 的内部函数,即不需要安装任何工具箱就可以调用的函数。
1、初步学习 MATLAB 语言,熟悉 MATLAB 软件的基本使用。 2、掌握用 MATLAB 描述连续时间信号方法,能够编写 MATLAB 程序,实现各种信号的时 域变换和运算,并且以图形的方式再现各种信号的波形。
二、实验原理
连续信号是指自变量的取值范围是连续的,且对于一切自变量的取值,除了有若干个不 连续点之外,信号都有确定的值与之对应。严格来说,MATLAB 并不能处理连续信号,而 是用等时间间隔点的样值来近似表示连续信号。当取样时间间隔足够小时,这些离散的样值 就能较好地近似连续信号。
PDF 文件使用 "pdfFactory Pro" 试用版本创建
图 1-5 抽样函数
图 1-6 矩形波信号
周期性矩形波(方波)信号在 MATLAB 中用 square 函数来表示,其调用形式为:
y=square(t,DUTY)
实验- 基本信号在 MATLAB中的表示和运算
实验一基本信号在 MATLAB中的表示和运算一、[实验目的]1.学会常用连续信号的MATLAB表示方法;2.学会用MATLAB进行信号的基本运算,为信号分析和滤波器设计奠定基础;3. 通过信号的求导,观察信号在跳变点处的导数;4. 通过卷积积分运算,观察两个时限信号的卷积积分结果所具有的特点;5. 掌握信号相关与卷积的关系;6. 通过实验熟悉自相关和互相关性质在周期信号识别、延迟信号检测等场合中的应用。
三、[实验内容]1.验证实验原理中所述的有关程序;2.绘出下列信号的时域波形及其导数波形(注意在绘制导数波形图时,为便于观察结果,可调整坐标轴,如t=-3:h:4;并合理利用坐标轴调整函数axis)3.绘制如图所示信号及其积分波形。
4. 求如图所示函数f1(t)和f2(t )的卷积积分,并给出卷积结果的图形。
5. 编写信号相关的函数%Rxy为相关估计,消除步长的影响%tao为相关估计Rxy的序号向量%x为参加相关的信号,xt为信号 x的序号向量%y为需反转的信号,yt为 y的序号向量%dt为xt 或yt的步长(xt,yt的步长要一致)%信号反转可利用:ytf=fliplr(-yt);yf=fliplr(y);6.已知两信号x=rectpuls(t-0.5,1); y=rectpuls(t+0.5,1) ;调用自编函数[Rxy,tao]=my_xcorr(x,xt,y,yt,dt)计算 x 与 y 的时延差,即Rxy 取得最大值的时刻。
7. 已知频率为10Hz的余弦信号,分别求:(1)不带噪声的余弦信号的自相关;(2)分别求带有白噪声干扰的频率为 10Hz 的余弦信号和白噪声信号的自相关函数并进行比较,得出相应的结论。
主要信号如下:N=1000;Fs=500; %数据长度和采样频率n=0:N-1; t=n/Fs; %时间序列x=cos(2*pi*10*t); %频率为10Hz的余弦信号xz=cos(2*pi*10*t)+0.6*randn(1,length(t)); %带有白噪声干扰的频率为10Hz 的余弦信号noise_sig=randn(1,length(x)); %产生一与 x长度一致的随y=cos(2*pi*20*t); %频率为20Hz的余弦信号xy=x+y; 频率为10Hz, 20Hz的余弦信号的叠加信号…..调用 MATLAB 提供的函数[Rxx,tao]=xcorr(x,Lags,'unbiased')完成三个自相关运算。
matlab求连续信号的频谱函数和离散信号频谱函数的方法
matlab求连续信号的频谱函数和离散信号频谱函数的方法Matlab提供了多种方法来求解连续信号和离散信号的频谱函数。
在本文中,我们将分步骤介绍这些方法。
一、连续信号频谱函数的方法连续信号的频谱函数是通过对连续信号进行傅里叶变换得到的。
而在Matlab中,傅里叶变换可以通过fft函数实现。
下面是求解连续信号频谱函数的步骤:1. 定义连续信号首先,我们需要定义一个连续信号,用一个函数来表示。
例如,我们定义一个简单的三角波信号:matlabt = linspace(0, 1, 1000); 定义时间范围x = sawtooth(2*pi*5*t); 定义三角波信号2. 进行傅里叶变换接下来,我们使用fft函数对连续信号进行傅里叶变换。
傅里叶变换将信号从时域转换到频域。
matlabX = fft(x);3. 计算频谱函数通过进行傅里叶变换,我们得到了频谱函数X。
然而,频谱函数X是一个复数数组,其中包含了信号的幅度和相位信息。
为了获得真正的频谱,我们需要计算幅度谱。
matlabP2 = abs(X/length(x));P1 = P2(1:length(x)/2+1);P1(2:end-1) = 2*P1(2:end-1);在上述代码中,我们将频谱函数除以信号长度,然后计算幅度,并使用对称性将频谱函数变换为正频率部分。
最后,我们将频谱函数的第一个和最后一个值乘以2。
4. 绘制频谱图最后,我们可以使用plot函数将频谱函数可视化。
matlabfs = 1000; 采样频率f = fs*(0:(length(x)/2))/length(x);plot(f,P1)xlabel('Frequency (Hz)')ylabel('Amplitude')以上步骤可以用于求解任何连续信号的频谱函数。
二、离散信号频谱函数的方法离散信号的频谱函数可以通过对信号进行离散傅里叶变换(Discrete Fourier Transform,DFT)来获得。
电路、信号与系统(2)实验指导书
描述线性时不变离散系统的差分方程为
编写求解上述方程的通用程序。
[建模]
将方程变形可得(用MATLAB语言表示)
a(1)*y(n)= b(1)*u(n)+…+ b(nb)*u(n-nb+1)- a(2)*y(n-1)-…- a(na)*y(n-na+1)
令us== [u(n),…, u(n-nb+1)]; ys=[y(n-1),…, y(n-na+1)]
x(n)={2,1,-1,3,1,4,3,7}(其中加下划线的元素为第0个采样点)在MATLAB中表示为:
n=[-3,-2,-1,0,1,2,3,4]; x=[2,1,-1,3,1,4,3,7];
当不需要采样位置信息或这个信息是多余的时候,可以只用x向量来表示。
(一)离散信号的MATLAB表述
[问题]
实验一连续时间信号与系统分析
一、实验目的
1、了解连续时间信号的特点;
2、掌握连续时间信号的MATLAB描述;
3、掌握连续LTI系统单位冲激响应的求解方法;
4、掌握连续LTI系统的零状态响应的求解方法。
二、实验内容
严格说来,只有用符号推理的方法才能分析连续系统,用数值方法是不能表示连续信号的,因为它给出的是各个样点的数据。只有当样本点取得很密时才可看成连续信号。所谓很密,是相对于信号变化的快慢而言的。以下均假定相对于采样点密度而言,信号变化足够慢。
elseif lu<lh nh=0; nu=lh-lu;
else nu=0; nh=0;
end
dt=0.1;
lt=lmax;
u=[zeros(1, lt), uls, zeros(1, nu), zeros(1, lt)];
实验一--连续时间信号在Matlab中的运算
实验一连续时间信号在Matlab 中的运算一、实验目的1、学会运用Matlab 进行连续时间信号的时移、反褶和尺度变换。
2、学会运用Matlab 进行连续时间信号相加、相乘、微分、积分和卷积运算。
3、观察并熟悉这些信号的波形和特性。
二、实验原理1、连续时间信号的表示连续信号的表示方法有两种:符号推理法和数值法。
从严格意义上讲,Matlab 数值计算的方法不能处理连续时间信号。
然而,可利用连续信号在等时间间隔点的取样值来近似表示连续信号,即当取样时间间隔足够小时,这些离散样值能被Matlab 处理,并且能较好地近似表示连续信号。
2、信号的时移、反褶和尺度变换信号的平移、反转和尺度变换是针对自变量时间而言的,其数学表达式和波形变换中存在着一定的变化规律。
从数学表达式上来看,信号的上述所有计算都是自变量的替换过程。
所以在使用Matlab 进行连续时间信号的运算时,只需要进行相应的变量代换即可完成相关工作。
3、连续时间信号的微分和积分连续时间信号的微分运算,可使用diff 命令函数来完成,其语句格式为:diff(function, ‘variable ',n) 。
其中,function 表示需要进行求导运算的函数,或者被赋值的符号表达式;variable 为求导运算的独立变量;n 为求导阶数,默认值为一阶导数。
连续时间信号积分运算可以使用int 命令函数来完成,其语句格式为:int(function, ‘variable ',a, b) 。
其中,function 表示被积函数,或者被赋值的符号表达式;variable为积分变量;a为积分下限,b为积分上限,a和b默认时则求不定积分。
4、信号的相加和相乘运算信号的相加和相乘是信号在同一时刻取值的相加和相乘。
因此Matlab 对于时间信号的相加和相乘都是基于向量的点运算。
5、连续信号的卷积运算卷积积分是信号与系统时域分析的重要方法之一。
定义为:f (t) f1(t) f2 (t) -f1( )f2(t )dMatlab 进行卷积计算可通过符号运算方法和数值计算方法实现。
信号与系统MATLAB常见信号的表示及运算
信号与系统——实验指导实验一 常见信号的表示及运算一、实验目的1.熟悉常见信号的意义、特性及波形2. 掌握用matlab软件产生基本信号的方法.3. 应用matlab软件实现信号的加、减、乘、反褶、移位、尺度变换及卷积运算。
二、实验原理1. 信号的表示方法● 常用信号:连续函数()θω+=t t f sin )(, at Ae t f =)(,ttt Sa sin )(= 离散信号()n n f 0sin )(ω=,njw e n f 0)(=,)()(n u a n f n =● 奇异信号:连续函数:冲激函数)(t δ,阶跃函数)(t u ,斜坡函数)(t R 离散信号:冲激函数)(n δ,阶跃函数)(n u ,斜坡函数)(n R2.卷积连续函数的卷积:⎰∞∞--=τττd t f f t g )()()(21离散函数的卷积:∑∞-∞=-=m m n fm f n g )()()(21三、实验要求1.预习实验原理;2.对实验内容编写程序(M文件),上机运行;3.绘出运算或变换后信号的波形.四.实验内容1. 熟悉matlab 工作环境(1) 运行matlab.exe ,进入matlab 工作环境,如图(1)所示。
图1 matlab工作环境(2) matlab工作环境由Command Window(命令窗口)、Current Direcroty(当前目录)、workspace(工作空间)、command History(历史命令)和Editor(文件编辑器)5部分组成。
其中所有文件的编辑和调试、运行在Editor编辑窗口下进行。
程序的运行也可以在命令窗口进行。
程序调试的信息显示在命令窗口。
(3) 程序文件的产生:点击菜单file下的New下的M_files,进入编辑器界面,如图2。
图2 M文件编辑器(4) 在m文件编辑器下键入程序代码,保存程序文件(命名规则同C语言)。
如果所定义的是函数文件,则要求函数名为M文件名。
信号与系统实验报告—连续时间信号
信号与系统实验报告—连续时间信号实验名称:连续时间信号一、实验目的1、熟悉Matlab编程工具的应用;2、掌握利用Matlab进行连续时间信号的绘制、分析和处理。
二、实验原理连续时间信号是指在时间轴上连续存在的信号。
连续时间信号可以用数学函数来描述,并且它们是时间变量t的函数,其幅度可以是任意实数或复数。
连续时间信号可以由物理系统中的物理量得到,比如声音信号、图像信号等。
对于一个连续时间信号x(t),可以对它进行各种变换,如平移、伸缩、反转等,这些操作可以用函数来表示。
其中,平移信号可以用x(t - a)表示,伸缩信号可以用x(at)表示,反转信号可以用x(-t)表示。
另外,通过利用傅里叶变换可以分析连续时间信号的频率构成,了解信号的频域特性,其傅里叶变换公式为:F(jω) = ∫[ -∞ , ∞ ] f(t) · e^(-jωt) · dt其中,F(jω)为信号在频域上的变换值,因此,我们可以通过傅里叶变换来分析信号在频域上的性质。
三、实验内容2、使用Matlab对信号进行平移、伸缩、反转等处理;3、使用Matlab对信号进行傅里叶变换,分析信号的频域特性。
四、实验步骤1、绘制信号首先,我们需要确定信号的形式和表示方法,根据实验要求选择不同的信号进行绘制。
在此以正弦信号为例,使用Matlab中的plot函数绘制正弦函数图形:t = 0: 0.01: 10;x = sin (2* pi* t);plot(t, x);xlabel('Time / s');title('Continuous sinusoidal signal');对信号进行平移、伸缩、反转处理也是十分简单的,只需要在信号函数上添加对应的变换操作即可。
以下是对信号进行平移、伸缩、反转处理的Matlab代码:3、进行傅里叶变换及频域分析Y = fft (x);P2 = abs (Y/L);P1(2:end-1) = 2* P1(2:end-1);title ('Single-Sided Amplitude Spectrum of x(t)');ylabel ('|P1(f)|');根据得到的频域分析结果,我们可以得出连续时间信号的功率、频率等特性。
matlab表示
信号与系统分析一、典型信号的matlab 表示表示连续信号,需定义自变量的范围和取样间隔,如t=0:0.01:3 1. 实指数信号 y=k*exp(a*t)2. 正弦信号 k*sin(w*t+phi) k*cos(w*t+phi)3. 复指数信号 y=k*exp((a+i*b)*t)实部real(y) 虚部imag(y) 模abs(y) 相角angle(y) 共轭conj(y) 4. 抽样信号 Sat=sinc(t/pi)5. 矩形脉冲信号 y=rectpuls(t,width)周期方波信号 y=square(2*pi*f*t,duty) %产生频率为fHZ ,占空比为duty%的方波 6. 三角脉冲信号非周期三角波y=tripuls(t,width,skew) %斜度 skew ,最大幅度出现在t=(width/2)*skew 周期三角波 y=sawtooth(t,width)7. 单位阶跃信号 function y=uCT(t) y=(t>=0)阶跃信号符号函数 Heaviside() y=sym(‘Heaviside(t)’) %调用时必须用sym 定义 冲激信号符号函数 Dirac()二、Matlab 的符号运算 1. 定义符号变量syms 变量名 syms xsym(‘变量名’) x=sym(‘x ’) sym(‘表达式’) sym(‘x+1’)2. 化简符号运算结果 simple 或simplify3. 绘制符号表达式图形 ezplot(y,[a,b])三、连续信号的运算微分和积分运算(用符号表达式来表示) 1. 微分运算Diff(function,’variable ’,n) % variable 为求导变量,n 为求导阶数 例:syms a x y y=sin(a*x^2); dy=diff(y ,’x ’) 2. 积分运算int(function, ’variable ’,a,b) %a 为积分下限,b 为积分上限 3. 信号的反折 fliplr(x) 4. 卷积计算1) 符号运算计算卷积(求解积分的方法) 例:)(*)()(t u e t u et y tTt --=syms T t taoxt1=exp(-t); xt2=exp(-t/T);xt_tao=subs(xt1,t,tao)*subs(xt2,t,t-tao);yt=int(xt_tao,tao,0,t); yt=simplify(yt);2) 数值计算法求卷积 conv( )y = dt*conv(e,h)例:求e(t) = u(t)-u(t-1)和h(t) = u(t)-u(t-1)的卷积 t0 = -2; t1 = 4; dt = 0.01; t = t0:dt:t1; e = u(t)-u(t-1); h = u(t)-u(t-1);y = dt*conv(e,h); % Compute the convolution of x(t) and h(t) subplot(221)plot(t,e), grid on, title('Signal e(t)'), axis([t0,t1,-0.2,1.2]) subplot(222)plot(t,h), grid on, title('Signal h(t)'), axis([t0,t1,-0.2,1.2]) subplot(212)t = 2*t0:dt:2*t1; % the time range to the convolution of e and h.plot(t,y), grid on, title('The convolution of x(t) and h(t)'), axis([2*t0,2*t1,-0.1,1.2]), xlabel('Time t sec')四、连续LTI 系统的时域分析1. 系统响应的符号求解 dsolve(‘eq1,eq2,…’,’cond1,cond2,…’); %eqi 表示微分方程,condi 表示初始条件 例:eq=’D3y+2*D2y+Dy=0’;cond=’y(0)=1,Dy(0)=1,D2y(0)=2’; yzi=dsolve(eq,cond); %零输入响应 simplify(yzi);eq1=’D3y+4*D2y+8*Dy=3*Dx+8*x ’; eq2=’x=Heaviside(t)’;cond=’y(-0.01)=0,Dy(-0.01)= 0,D2y(-0.01)=0’; yzs=dsolve(eq1,eq2,cond);simplify(yzs.y); %零状态响应2. 零状态响应的数值求解1)y=lsim(sys,f,t)%sys 表示系统模型,由sys=tf(b,a)生成的系统函数对象 %f 输入信号向量,t 时间抽样点向量例:)()sin()(),()()()('''t u t t f t f t y t y t y π210665==++ ts=0;te=5;dt=0.01; sys=tf([6],[1,5,6]); t=ts:dt:te;f=10*sin(2*pi*t).*UT(t);y=lsim(sys,f,t);plot(t,y),grid on;xlabel(‘time ’),ylabel(‘y(t)’); title(‘零状态响应’); 2)y=conv(f,impul)3. 连续系统冲激响应 y=impulse(sys,t) %sys 表示系统模型4. 连续系统阶跃响应 y=step(sys,t)五、信号的频域分析 1.傅立叶变换 1)符号运算求法 fourier( )和ifourier( )例:)()(t u e t f t 2-=的傅立叶变换ft=sym(‘exp(-2*t)*Heaviside(t)’); fw=fourier(ft)ezplot(abs(fw)); %或者fw_conj=conj(fw);Gw=sqrt(fw*fw_conj); phase=atan(image(fw)/real(fw));%或者angle(fw) ezplot(phase)211Ω+=Ω)(j F 的傅立叶反变换syms tfw=sym(‘1/(1+w^2’); ft=ifourier(fw,t) 2)数值计算求法[][][]Nk k N en f k F k TN M n j TM TN k ≤≤∆=∆∆=-⨯-∆--⨯-⨯02111111,)()()()()()(πωω例:求)(t G 82的傅立叶变换 1)数值计算dt=0.01; t=-4:dt:4;ft=(t+4)/2.*uCT(t+4)-t.*uCT(t)+(t-4)/2.*uCT(t-4); N=2000; k=-N:N;W=pi*k/(N*dt);F=dt*ft*exp(-j*t'*W); F=abs(F); plot(W,F),grid on; axis([-pi pi -1 9]);title('amplitude spectrum'); 2)符号计算ft=sym('(t+4)/2*Heaviside(t+4)-t*Heaviside(t)+(t-4)/2*Heaviside(t-4)'); Fw=simplify(fourier(ft));ezplot(abs(Fw),[-pi pi]);grid on;2. 系统的频率特性1) [H,w] = freqs(b,a):连续系统频率响应的函数2) 波特图:采用对数坐标的幅频特性和相频特性曲线,可显示频响间的微小差异 bode(sys)例:求11+=s s H )(的频率特性w=0:0.01:8*pi; b=[1]; a=[1 1]; H=freqs(b,a,w); subplot(211); plot(w,abs(H)); subplot(212); plot(w,angle(H)); figure(2); sys=tf(b,a); bode(sys);3. 连续时间LTI 系统的频域分析 例:551+Ω=Ω--=j j H t u t u t x )(),()()(,求系统的响应。
实验一 常用基本信号的MATLAB表示和运算
一.实验目的1.学会用MATLAB 表示常用连续信号的方法;2.学会用MATLAB 进行信号基本运算的方法; 二.实验原理与步骤 原理:1.信号的MATLAB 表示 (1)向量表示法对于连续时间信号()f t ,可以用两个行向量f 和t 来表示,其中向量t 是用形如12::t t p t =的命令定义的时间范围向量,其中,1t 为信号起始时间,2t 为终止时间,p 为时间间隔。
向量f 为连续信号f(t)在向量t 所定义的时间点上的样值。
例如:对于连续信号sin()()()t f t Sa t t==,同时用绘图命令plot()函数绘制其波形。
其程序如下: t2=-10:0.1:10; %定义时间t 的取值范围:-10~10,取样间隔为0.1,%则t2是一个维数为201的行向量 f2=sin(t2)./t2; %定义信号表达式,求出对应采样点上的样值 %同时生成与向量t2维数相同的行向量f2 figure(2); %打开图形窗口2Plot(t2,f2); %以t2为横坐标,f2为纵坐标绘制f2的波形 运行结果如下:(2)符号运算表示法如果一个信号或函数可以用符号表达式来表示,那么我们就可以用前面介绍的符号函数专用绘图命令ezplot()等函数来绘出信号的波形。
例如:对于连续信号sin()()()t f t Sa t t==,我们也可以用符号表达式来表示它,同时用ezplot()命令绘出其波形。
其MATLAB 程序如下: Syms t; %符号变量说明f=sin (t )/t; %定义函数表达式ezplot (f,[-10,10]); %绘制波形,并且设置坐标轴显示范围 运行结果如下:(3)常见信号的MATLAB 表示 单位阶跃信号:方法一:调用Heaviside(t)函数首先定义函数Heaviside(t)的m函数文件,该文件名应与函数名同名即Heaviside.m。
%定义函数文件,函数名为Heaviside,输入变量为x,输出变量为yfunction y=Heaviside(t)y=(t>0);%定义函数体,即函数所执行指令%此处定义t>0时y=1,t<=0时y=0,注意与实际的阶跃信号定义的区别。
连续时间信号在matlab中的表示
连续时间信号在matlab中的表示连续时间信号在Matlab中被表示为一个连续的函数。
下面我们来详细介绍一下如何用Matlab来表示连续时间信号。
一、连续时间信号的定义连续时间信号是定义在连续时间区间上的一种信号,可以用一个经过时间变化的函数来描述。
在Matlab中,我们可以用几个不同的工具箱来表示连续时间信号。
其中,Signal Processing工具箱和Control System 工具箱包含了用于处理和分析信号的函数。
二、信号的表示在Matlab中,我们使用函数来表示连续时间信号,其中最基本的函数是"plot"函数。
这个函数可以用来绘制一类特殊的连续时间信号,即连续时间的模拟信号。
下面是一个简单的例子来说明如何绘制一个sin(t)的连续时间信号:```t = linspace(0,10,1000); % 创建一个时间向量y = sin(t); % 创建信号向量plot(t,y); % 绘制信号```在上面的代码中,我们首先使用linspace函数创建了一个包含1000个元素的向量t,这个向量的范围是从0到10。
然后我们使用sin函数生成了一个与t同样大小的向量y,这个向量包含了sin(t)的值。
最后我们使用plot函数将信号在时间轴上绘制出来。
三、向量的表示在Matlab中,一个连续时间信号通常被表示为一个向量。
这个向量包含了在离散时间点上的信号值。
在Signal Processing工具箱和Control System工具箱中,有很多可以创建信号向量的函数。
比如,我们可以使用linspace函数来创建一个包含N个元素的等间隔时间向量。
另外一个常用的向量表示方法是采用时间采样,即在特定的时间间隔上对信号进行采样。
对于周期性信号,我们可以使用波形发生器来获取采样,并将采样结果存储在一个向量中。
四、信号的操作在Matlab中,我们可以对信号进行很多不同的操作。
比如,我们可以对信号进行加减乘除、傅里叶变换、卷积、滤波等等。
连续时间信号傅里叶级数分析及MAtlAB实现
课程设计任务书学生姓名:专业班级:指导教师:工作单位:题目:连续时间信号傅里叶级数分析及MATLAB实现初始条件:MATLAB 6.5要求完成的主要任务:深入研究连续时间信号傅里叶级数分析的理论知识,利用MATLAB强大的图形处理功能,符号运算功能以及数值计算功能,实现连续时间周期信号频域分析的仿真波形。
1.用MATLAB实现周期信号的傅里叶级数分解与综合。
2.用MATLAB实现周期信号的单边频谱及双边频谱。
3.用MATLAB实现典型周期信号的频谱。
4.撰写《MATLAB应用实践》课程设计说明书。
时间安排:学习MATLAB语言的概况第1天学习MATLAB语言的基本知识第2、3天学习MATLAB语言的应用环境,调试命令,绘图能力第4、5天课程设计第6-9天答辩第10天指导教师签名:年月日系主任(或责任教师)签名:年月日目录摘要 (I)Abstract (II)绪论 (3)1 MATLAB简介 (4)1.1 MATLAB语言功能 (4)1.2 MATLAB语言特点 (4)2 傅里叶级数基本原理概要 (5)2.1 周期信号的傅里叶分解 (5)2.2 三角形式和指数形式傅里叶级数及各系数间的关系 (6)2.3 周期信号的频谱 (7)3 用MATLAB实现周期信号的傅立叶级数分解与综合 (7)3.1 合成波形与原波形之间的关系 (8)3.2 吉布斯现象 (8)4 用MATLAB实现周期信号的单边频谱及双边频谱。
(10)4.1 单边,双边(幅度,相位)频谱及其关系 (10)4.1.1单边,双边(幅度,相位) (10)4.1.2 单边,双边频谱关系 (11)4.2以单边幅度频谱为例,研究脉冲宽度与频谱的关系 (12)4.3以单边幅度频谱为例,研究脉冲周期与频谱的关系 (13)5用MATLAB实现典型周期信号的频谱 (14)5.1 周期方波脉冲频谱的MATLAB实现 (14)5.2 周期三角波脉冲频谱的MATLAB 实现 (16)6 小结及心得体会 (18)参考文献 (19)附录: (20)摘要MATLAB目前已发展成为由MATLAB 语言、MATLAB 工作环境、MATLAB 图形处理系统、MATLAB 数学函数库和MATLAB 应用程序接口五大部分组成的集数值计算、图形处理、程序开发为一体的功能强大的系统。
实验1 信号的时域描述与运算
实验1 信号的时域描述与运算一、实验目的1、掌握信号的MATLAB 表示及其可视化方法。
2、掌握信号基本时域运算的MATLAB 实现方法。
3、利用MATLAB 分析常用信号,加深对信号时域特性的理解。
二、实验原理1、连续时间信号的MATLAB 表示在MATLAB 中连续时间信号可以用两种方法来表示,即向量表示法和符号对象表示法。
在MATLAB 中连续时间信号是用信号等时间间隔采样后的采样值来近似表示的,当采样间隔足够小时,这些采样值就可以很好的近似表示出连续时间信号,这种表示方法称为向量表示法。
表示一个连续时间信号需要使用两个向量,其中一个向量用于表示信号的时间范围,另一个向量表示连续时间信号在该时间范围内的采样值。
例如一个正弦信号可以表示如下:>>t=0:0.01:10; >>x=sin(t); 利用plot(t,x)命令可以绘制上述信号的时域波形。
如果连续时间信号可以用表达式来描述,则还可以用符号表达式来表示信号。
例如对于上述正弦信号,可以用符号对象表示如下:>>syms t; >>x=sin(t); 利用ezplot(x)命令可以绘制上述信号的时域波形。
2、连续时间信号的时域运算对连续时间信号的运算包括两信号相加、相乘、微分、积分,以及移位、反转、尺度变换等。
(1)相加和相乘对于两个采用向量表示的可以直接使用算术运算的运算符“+”和“*”来计算,此时要求表示两信号的向量时间范围和采样间隔相同。
采用符号对象表示的两个信号,可以直接根据符号对象的运算规则运算。
(2)微分和积分对于向量表示法表示的连续时间信号,可以通过数值计算的方法计算信号的微分和积分。
这里微分是用差分来近似求取的,由时间向量[t 1,t 2,⋯,t N ]和采样值向量[x 1,x 2,⋯,x N ]表示的连续时间信号,其微分可以下式实现1()|,1,2,,1k k k t t x xx t k N t+=-'≈=-∆其中∆t 表示采样间隔。
信号与系统实验指导全部实验答案
信号与系统实验指导全部实验答案实验一连续时间信号的MATLAB 表示实验目的 1.掌握MATLAB 语言的基本操作,学习基本的编程功能; 2.掌握MATLAB 产生常用连续时间信号的编程方法;3.观察并熟悉常用连续时间信号的波形和特性。
实验原理:1. 连续信号MA TLAB 实现原理从严格意义上讲,MATLAB 数值计算的方法并不能处理连续时间信号。
然而,可用连续信号在等时间间隔点的取样值来近似表示连续信号,即当取样时间间隔足够小时,这些离散样值能够被MATLAB 处理,并且能较好地近似表示连续信号。
MATLAB 提供了大量生成基本信号的函数。
比如常用的指数信号、正余弦信号等都是MATLAB 的内部函数。
为了表示连续时间信号,需定义某一时间或自变量的范围和取样时间间隔,然后调用该函数计算这些点的函数值,最后画出其波形图。
实验内容:正弦信号抽样信号矩形脉冲信号单位跃阶信号实验编程:(1)t=0:0.01:3;K=2;a=-1.5;w=10; ft=K*exp((a+i*w)*t); A=real(ft); B=imag(ft); C=abs(ft);D=angle(ft);subplot(2,2,1),plot(t,A),grid on;title('实部');subplot(2,2,2),plot(t,B),grid on;title('虚部'); subplot(2,2,3),plot(t,C),grid on;title('取模'); subplot(2,2,4),plot(t,D),grid on;title('相角');实部2211-1-2-1取模相角25100-5(2)t=0:0.001:3;y=square(2*pi*10*t,30);方波信号plot(t,y);axis([0,1,-1,1]); title('方波信号');0.5-0.5-1 00.20.40.60.81(3)t=-2:0.01:2;y=uCT(t+0.5)-uCT(t-0.5); plot(t,y),grid on axis([-2,2,0,1.5]); xlabel('t(s)'),ylabel('y(s)') title('门函数')10.50 -2-1.5-1-0.5门函数y (s )0t(s)0.511.52实验二连续时间LTI 系统的时域分析实验目的1.运用MATLAB 符号求解连续系统的零输入响应和零状态响应; 2.运用MATLAB 数值求解连续系统的零状态响应; 3.运用MATLAB 求解连续系统的冲激响应和阶跃响应;4.运用MATLAB 卷积积分法求解系统的零状态响应。
如何使用MATLAB进行数字信号处理
如何使用MATLAB进行数字信号处理数字信号处理(Digital Signal Processing,简称DSP)是利用数字技术对连续时间信号进行处理和分析的一种方法。
MATLAB作为一种强大的计算软件,具备丰富的信号处理工具箱,可以方便地进行数字信号处理的相关操作。
本文将介绍如何使用MATLAB进行数字信号处理的基本步骤和常用方法。
一、信号的表示与采样在数字信号处理中,首先需要对连续时间信号进行离散化,即将连续时间信号转换为离散时间信号。
通常采用采样(Sampling)的方式,通过在一段时间内定时获取信号的取样值来进行离散化。
MATLAB提供了信号的表示与采样的函数,如sine、square、sawtooth等,可以生成不同类型的信号。
使用这些函数生成信号,并可以通过设置参数来调整信号的幅度、频率等。
例如,生成正弦信号可以使用sine函数,如:```fs = 1000; % 采样频率t = 0:1/fs:1; % 时间向量f = 10; % 信号频率x = sin(2*pi*f*t); % 生成正弦信号```以上代码生成了频率为10Hz的正弦信号,并将其存储在变量x中。
二、离散信号的分析与处理得到离散信号后,便可以对其进行进一步的分析与处理。
MATLAB提供了众多的函数和工具箱,可以方便地进行信号处理操作。
1. 时域分析通过计算信号的时域特性,我们可以了解信号的幅度、频率、相位等信息。
(1)绘制信号波形可以使用plot函数将离散信号的波形绘制出来。
例如,对于上述生成的正弦信号,可以使用以下代码绘制波形图:```plot(t,x);xlabel('时间');ylabel('幅度');title('正弦信号波形');```(2)计算信号的基本特性通过计算均值、方差、能量、功率等指标,我们可以了解信号的基本特性。
对于上述的正弦信号,可以使用以下代码计算信号的均值和能量:```mean_x = mean(x); % 计算信号的均值energy_x = sum(abs(x).^2)/length(x); % 计算信号的能量```2. 频域分析通过对信号进行傅里叶变换,我们可以将信号在频域上进行分析,了解信号的频率、谱形等信息。
用MATLAB实现常用的连续时间信号及其时域运算
用MATLAB实现常用的连续时间信号及其时域运算信息与通信工程学院通信133班卢承慧一.引言1.要求:1.1用MATLAB语言产生连续时间信号1.2对连续时间信号进行时域运算2.任务:①绘制用于产生以下信号的通用程序,要求对于任意给定的参数都能实现所要求的信号。
调试并运行这些程序,具体产生由指导教师制定的信号并绘制信号波形。
t );a. f(t)=δ(t-t )。
b. f (t) = Au(t-②已知信号波形如图7.6所示,使用MATLAB语言求出下列信号的表达式并绘制出各信号波形。
a.f(-t);b.f(t-2);c.f(1-2t)。
图7.6任务②中的f (t )3.思考题编制一通用程序用于产生信号)()cos()(0t t u t Ae t f at -=-ω,要求对于任意给定的参数都能实现所要求的信号。
二.基本原理1.1连续时间信号如果在所讨论的时间间隔内,除若干个不连续点之外,对于任意时间值都可以给出确定的函数值,此信号就称为连续信号。
从严格意义上来讲,MATLAB 不能处理连续时间信号。
在MATLAB 中,使用连续时间信号在等时间间隔点的样值来近似表示连续时间信号的。
当取样时间间隔足够小时,这些离散的样值就能较好的近似出连续时间信号。
由于在MATLAB 中,矩阵的元素个数是有限的,因此MATLAB 无法表示无限序列。
MATLAB 的绘图命令有很多种,其中比较常用的绘制连续时间信号的绘图命令有“plot ”,“stairs ”,“ezplot ”等。
“plot ”适用于绘制平滑的曲线,而“stairs ”适合于绘制具有阶跃形式的图形,“ezplot ”只能用于符号函数的绘图。
1.2单位阶跃信号单位阶跃信号的波形图如图1所示,通常以符号u (t )表示⎩⎨⎧><=)0( 1)0(0)(t t t u在跳变点t=0处,函数未定义,或在t=0处规定函数值u (0)=21。
图1用MATLAB 实现单位阶跃信号%t1:起始时刻;t2:终止时刻;t0:跳变时刻 function u(t1,t0,t2)t=t1:0.01:t2; %步长值越小,图形越精确n=length(t); tt=t0:0.01:t2; n1=length(tt);x=[zeros(1,n-n1),ones(1,n1)]; %产生单位阶跃信号 stairs(t,x),grid on title('单位阶跃信号')axis([t1 t2 -0.2 1.1]) %为方便波形顶部避开图 框,改变图框坐标1.3单位冲激信号单位冲激信号是持续时间无穷小、瞬间幅度无穷大、涵盖面积恒1的理想信号。
连续时间信号卷积运算的MATLAB实现
连续时间信号卷积运算的MATLAB 实现一、实验目的(1)理解掌握卷积的概念及物理意义。
(2)理解单位冲激响应的概念及物理意义。
二、实验原理根据前述知识,连续信号卷积元素按定义为()()()()()1212f t f t f t f f t d τττ∞-∞=*=-⎰卷积计算可以通过信号分段求和来实现,即()()()()()()()121212lim k f t f t f t f f t d f k f t k τττ∞∞∆→=-∞-∞=*=-=∆⋅-∆⋅∆∑⎰如果只求当t n =∆(n 为整数)时()f t 的值()f n ∆,则由上式可得()()()()()1212k k f n f k f n k f k f n k ∞∞=-∞=-∞∆=∆⋅∆-∆=∆⋅∆⋅-⋅∆⎡⎤⎣⎦∑∑式中的()()12k f k f n k ∞=-∞∆⋅∆-∆∑实际上就是连续信号()1f t 和()2f t 经等时间间隔∆均匀抽样的离散序列()1f k ∆和()2f k ∆的卷积和。
当∆足够小时,()f n ∆就是卷积积分的结果——连续时间信号()f t 的较好的数值近似。
三、实验内容1、实验参考程序以下是MA TLAB 实现连续信号卷积的通用函数sconv()。
function [f,k]=sconv(f1,f2,k1,k2,p) f=conv(f1,f2); f=f*p;k0=k1(1)+k2(1);k3=length(f1)+length(f2)-2; k=0:p:k3*p; subplot(2,2,1) plot(k1,f1) title('f1(t)') xlabel('t')ylabel('f1(t)') subplot(2,2,2) plot(k2,f2) title('f2(t)') xlabel('t')ylabel('f2(t)') subplot(2,2,3) plot(k,f);h=get(gca,'position') h(3)=2.5*h(3);set(gca,'position',h)title('f(t)=f1(t)*f2(t)') xlabel('t') ylabel('f(t)') end已知两连续时间信号如图所示,使用MATLAB 求()()()12f t f t f t =*,并绘出()f t 的时域波形图。
实验二 连续信号时域分析的MATLAB实现
实验二 连续信号时域分析的MATLAB 实现一. 实验目的1. 熟悉MATLAB 软件平台;2. 掌握MATLAB 编程方法、常用语句和可视化绘图技术;3. 编程实现常用信号及其运算MATLAB 实现方法。
二. 实验原理信号一般是随时间而变化的某些物理量。
按照自变量的取值是否连续,信号分为连续时间信号和离散时间信号,一般用()f t 和()f k 来表示。
若对信号进行时域分析,就需要绘制其波形,如果信号比较复杂,则手工绘制波形就变得很困难,且难以精确。
MATLAB 强大的图形处理功能及符号运算功能,为实现信号的可视化及其时域分析提供了强有力的工具。
根据MATLAB 的数值计算功能和符号运算功能,在MATLAB 中,信号有两种表示方法,一种是用向量来表示,另一种则是用符号运算的方法。
在采用适当的MATLAB 语句表示出信号后,就可以利用MATLAB 中的绘图命令绘制出直观的信号波形了。
下面分别介绍连续时间信号和离散时间信号的MATLAB 表示及其波形绘制方法。
1.连续时间信号所谓连续时间信号,是指其自变量的取值是连续的,并且除了若干不连续的点外,对于一切自变量的取值,信号都有确定的值与之对应。
从严格意义上讲,MATLAB 并不能处理连续信号。
在MATLAB 中,是用连续信号在等时间间隔点上的样值来近似表示的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。
在MATLAB 中连续信号可用向量或符号运算功能来表示。
⑴ 向量表示法对于连续时间信号()f t ,可以用两个行向量f 和t 来表示,其中向量t 是用形如12::t t p t =的命令定义的时间范围向量,其中,1t 为信号起始时间,2t 为终止时间,p 为时间间隔。
向量f 为连续信号()f t 在向量t 所定义的时间点上的样值。
例如:对于连续信号sin()()()t f t Sa t t== ,我们可以将它表示成行向量形式,同时用绘图命令plot()函数绘制其波形。
信号与系统实验报告2连续时间信号在MATLAB中的运算
信息工程学院实验报告课程名称:实验项目名称:连续时间信号在MATLAB 中的表示 实验时间:班级:通信141 姓名:林志斌 学号: 一、实 验 目 的:1、学会运用进行连续信号的时移、反折和尺度变换;学会运用MATLAB 进行连续信号的相加、相乘运算;学会运用MATLAB 数值计算方法求连续信号的卷积。
二、实 验 设 备 与 器 件三、实 验 原 理1信号的时移、反折和尺度变换信号的时移、反折和尺度变换是针对自变量时间而言的,其数学表达式与波形变换之间存在一定的变换规律。
信号()f t 的时移就是将信号数学表达式中的t 用0t t ±替换,其中0t 为正实数。
因此,波形的时移变换是将原来的()f t 波形在时间轴上向左或者向右移动。
0()f t t +为()f t 波形向左移动0t ;0()f t t -为()f t 波形向右移动0t 。
信号()f t 的反折就是将表达式中的自变量t 用t -替换,即变换后的波形是原波形的y 轴镜像。
信号()f t 的尺度变换就是将表达式中的自变量t 用at 替换,其中,a 为正实数。
对应于波形的变换,则是将原来的()f t 的波形以原点为基准压缩(1a >)至原来的1/a ,或者扩展(01a <<)至原来的1/a 。
上述可以推广到0()f at t ±的情况。
2 MATLAB 数值计算法求连续时间信号的卷积用MATLAB 分析连续时间信号,可以通过时间间隔取足够小的离散时间信号的数值计算方法来实现。
可调用MATLAB 中的conv( )函数近似地数值求解连续信号的卷积积分。
如果对连续时间信号1()f t 和2()f t 进行等时间间隔t ∆均匀抽样,则1()f t 和2()f t 分别变为离散序列1()f m t ∆和2()f m t ∆。
其中m 为整数。
当t ∆足够小时,1()f m t ∆和2()f m t ∆即为连续时间信号1()f t 和2()f t 。
连续时间信号和离散时间信号在MATLAB中的绘制
南京信息工程大学实验(实习)报告实验(实习)名称实验一实验(实习)日期 2019年3月19 指导教师院专业年级班次姓名学号一、实验目的(1)学会使用MA TLAB产生常见的连续时间信号和离散时间信号;(2)学会使用MA TLAB完成一些信号的基本运算;(3)熟悉MATLAB的基本操作,以及一些基本函数的使用,为后续的实验奠定基础。
二、实验内容1.利用MATLAB绘制单位冲击信号,单位阶跃信号,指数信号,单位矩形信号,抽样信号,正弦信号(分别取不同周期)(1)单位冲击信号代码:T=1000;t=linspace(0,10,T);t1=linspace(-5,5,T);f1=stepfun(t1,-1/T)-stepfun(t1,1/T);plot(t1,f1);grid on;axis([-5 5 -1 2])xlabel('t');ylabel('c(t)');title('单位冲击信号');(2)单位阶跃信号T=1000;t=linspace(-5,5,T);f1=stepfun(t,0);plot(t,f1);grid on;axis([-5 5 -1 2]);xlabel('t');ylabel('u(t)');title('单位阶跃信号');(3)指数信号T=1000;t=linspace(-5,5,T);xe=exp(t);subplot(2,1,1);plot(t,xe);grid on;axis([-5 3 -0.5 20]); xlabel('t');ylabel('x(t)');title('指数信号1');subplot(2,1,2);xe=exp(-t);plot(t,xe);grid on;axis([-3 3 -0.5 20]); xlabel('t');ylabel('x(-t)');title('指数信号2');(4)单位矩形信号T=1000;t=linspace(-5,5,T);xt=rectpuls(t,1);plot(t,xt);grid on;axis([-2 2 -0.5 1.5]); xlabel('t');ylabel('x(t)');title('单位矩形信号');(5)抽样信号T=10000;t=linspace(-100,100,T);xt=sinc(t/pi);plot(t,xt);grid on;axis([-100 100 -0.3 1.1]);(6)正弦信号w=100;T=12000;t=linspace(-1,10,T);xt=sin(w*t);subplot(3,1,1);plot(t,xt);grid on;axis([-0.2 0.2 -1.5 1.5]); xlabel('t');ylabel('x(t)');title('w=100');w2=50;T=12000;t=linspace(-1,10,T);xe=sin(w2*t);subplot(3,1,2);plot(t,xe);grid on;axis([-0.2 0.2 -1.5 1.5]); xlabel('t');ylabel('x(t)');title('w=50');w3=200;T=12000;t=linspace(-1,10,T);xr=sin(w3*t);subplot(3,1,3);plot(t,xr);grid on;axis([-0.2 0.2 -1.5 1.5]); xlabel('t');ylabel('x(t)');title('w=200');2.利用MATLAB绘制单位冲击序列,单位阶跃序列,实指数序列(1)单位冲击序列n=50;x=zeros(1,n);x(1)=1;xn=0:n-1;stem(xn,x);grid on;axis([-1 25 0 1.2]);xlabel('n');ylabel('c(n)');title('单位冲击序列');(2)单位阶跃序列n=50;x=ones(1,n);xn=0:n-1;stem(xn,x);grid on;axis([-5 25 0 1.2]);xlabel('n');ylabel('u(n)');title('µ¥Î»½×Ô¾ÐòÁÐ');(3)实指数序列n=0:20;a1=2;a2=-2;a3=0.5;a4=-0.5;xn1=a1.^n;xn2=a2.^n;xn3=a3.^n;xn4=a4.^n;subplot(2,2,1);stem(xn1);grid on;axis([0 20 0 600000]);xlabel('n');ylabel('xn1(n)');title('实指数序列xn1(n)[a>1]');subplot(2,2,2);stem(xn2);grid on;axis([0 20 -150000 300000]); xlabel('n');ylabel('xn2(n)');title('实指数序列xn2(n)[a<-1]');subplot(2,2,3);stem(xn3);grid on;axis([0 20 0 1.3]);xlabel('n');ylabel('xn3(n)');title('实指数序列xn3(n)[1>a>0]');subplot(2,2,4);stem(xn4);grid on;axis([0 20 -0.7 1.3]);xlabel('n');ylabel('xn4(n)');title('实指数序列xn4(n)[0>a>-1]');3.讨论题:已知连续信号,当抽样间隔分别取T=0.08, 0.16,和0.24时所对应的离散余弦信号的波形。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2连续时间信号在MATLAB中的表示2-1.利用MATLAB命令画出下列连续信号的波形图(1)>> t=0:0.01:3;>> ft=2*cos(3*t+pi/4);>> plot(t,ft),grid on;>> axis([0 3 -2.2 2.2]);>> title('2cos(3t+pi/4)')(2)>> t=0:0.01:3;>> ft=2-exp(-t);>> plot(t,ft),grid on;>> title('(2-exp(-t))u(t)')(3)>> t=-1:0.01:1;>> ft=t.*(uCT(t)-uCT(t-1));>> plot(t,ft),grid on>> axis([-1 1 -0.2 1.2]);>> title('t[u(t)-u(t-1)]')(4)>> t=-1:0.01:3;>> ft=(1+cos(pi*t)).*(uCT(t)-uCT(t-2)); >> plot(t,ft),grid on>> axis([-1 3 -0.2 2.2]);>> title('[1+cos(pi*t)][u(t)-u(t-2)]')2-2.利用MATLAB命令画出下列复信号的实部、虚部、模和辐角(1)>> t=0:0.01:3;>> ft=2+exp(i*(pi/4)*t)+exp(i*(pi/2)*t);>> subplot(2,2,1);plot(t,real(ft));title('实部');axis([0 3 0 4]);grid on;>> subplot(2,2,2);plot(t,imag(ft));title('虚部');axis([0 3 0 2]);grid on;>> subplot(2,2,3);plot(t,abs(ft));title('模');axis([0 3 0 4]);grid on;>> subplot(2,2,4);plot(t,angle(ft));title('相角');axis([0 3 0 2]);grid on;(2)t=0:0.01:3;>> ft=2*exp(i*(t+pi/4));>> subplot(2,2,1);plot(t,real(ft));title('实部');axis([0 3 0 2]);grid on;>> subplot(2,2,2);plot(t,imag(ft));title('虚部');axis([0 3 0 2]);grid on;>> subplot(2,2,3);plot(t,abs(ft));title('模');axis([0 3 0 4]);grid on;>> subplot(2,2,4);plot(t,angle(ft));title('相角');axis([0 3 0 4]);grid on;2-3.利用MATLAB命令产生幅度为1、周期为1、占空比为0.5的一个周期矩形脉冲信号>> t=-0.5:0.01:3;>> ft=square(2*pi*t,50);>> plot(t,ft);grid on;axis([-0.5 3 -1.2 1.2]);>> title('幅度为1、周期为1、占空比0.5的周期举行脉冲信号')3连续时间信号在MATLAB中的运算3-1.试用MATLAB命令绘出以下信号的波形图(1)>> syms x t;>> t=-1:0.01:1;>> x=exp(-t).*sin(10*pi*t)+exp(-0.5*t).*sin(9*pi*t);>> plot(t,x)(2)>> syms x t;>> t=-1:0.01:1;>> x=sinc(t).*cos(10*pi*t);>> plot(t,x)3-2.已知连续时间信号f(t)的波形如图3-6所示,试用MATLAB 命令画出下列信号的波形图先画出图3-6:>> t=-2:0.01:2;>>f=(-t-1).*(-uCT(t+2)+uCT(t+1))+uCT(t+1)+uCT(t)-uCT(t-1)-(t-1).*(uCT(t-1)-uCT(t-2))-uC T(t-2);>> plot(t,f)>> axis([-4 4 -1 2])>> title('图3-6')>> t=-2:0.01:2;>> f1=funct2(t-1);>> f2=funct2(2-t);>> f3=funct2(2*t+1);>> f4=funct2(4-t/2);>> f5=(funct2(t)+funct2(-t)).*uCT(t);>> subplot(231);plot(t,f1);grid on;title('f(t-1)');axis([-3 3 -1 2]);>> subplot(232);plot(t,f2);grid on;title('f(2-t)');axis([-3 3 -1 2]);>> subplot(233);plot(t,f3);grid on;title('f(2t-1)');axis([-3 3 -1 2]);>> subplot(234);plot(t,f4);grid on;title('f(4-t/2)');axis([-3 3 -1 2]);>> subplot(235);plot(t,f5);grid on;title('(f(t)+f(-t))u(t)');axis([-3 3 -1 2]);3-3.试用MATLAB命令绘出如图3-7所示信号的偶分量和奇分量>> t=0:0.01:2;>> f=(uCT(t)-uCT(t-2)).*(-t+1);>> plot(t,f);title('图3-7')>> f1=fliplr(f);>> fe=(f+f1)/2;fo=(f-f1)/2;>> subplot(211),plot(t,fe);grid on>> title('fe')>> subplot(212),plot(t,fo);grid on;title('fo')4连续时间信号的卷积计算4-1用MATLAB命令绘出下列信号的卷积积分的时域波形图>> dt=0.001;t1=-0.5:dt:3.5;>> f1=uCT(t1)-uCT(t1-2);>> t2=t1;>> f2=uCT(t2)+uCT(t2-1)-uCT(t2-2)-uCT(t2-3);>> [t,f]=ctsconv(f1,f2,t1,t2,dt);6周期信号的傅里叶级数及频谱分析6-1已知周期三角信号如图6-5所示,试求出该信号的傅里叶级数,利用MATLAB编程实现其各次谐波的叠加,并验证其收敛性。
6-2 试用MATLAB分析图6-5中周期三角信号的频谱。
当周期三角信号的周期和三角信号的宽度变化时,试观察分析其频谱的变化。
7 傅里叶变换及其性质7-1试用MATLAB命令求下列信号的傅里叶变换,并绘出其幅度谱和相位谱。
(1)(2)解:(1)ft1=sym('sin(2*pi*(t-1))/(pi*(t-1))');>> Fw1=simplify(fourier(ft1));>> subplot(211)>> ezplot(abs(Fw1)),grid on>> title('幅度谱')>> phase=atan(imag(Fw1)/real(Fw1));>> subplot(212)>> ezplot(phase);grid on>> title('相位谱')(2)7-2.试用MATLAB命令求下列信号的傅里叶反变换,并绘出其时域信号图。
(1)(2)解:(1)>> syms t>> Fw=sym('10/(3+w*i)-4/(5+w*i)');>> ft=ifourier(Fw,t);>> ezplot(ft),grid on(2)>> syms t>> Fw2=sym('exp(-4*w^2)');>> ft2=ifourier(Fw2,t)ft2 =exp(-t^2/16)/(4*pi^(1/2))3.试用MATLAB数值计算方法求图7-8所示信号的傅里叶变换,并画出其频谱图。
解:4.已知两个门信号的卷积为三角波信号,试用MATLAB命令验证傅里叶变换的时域卷积定理。
解:将门函数先进行时域卷积运算,再将卷积后的结果做傅里叶变换,程序和结果如下:dt = 0.01; t = -2:dt:2.5;f1 = uCT(t+0.5)- uCT(t-0.5);f = conv(f1,f1)*dt;ft=sym('f');Fw = fourier(ft)Fw =2*i*pi*dirac(1,w)将一个门函数先进行傅里叶变换,再将结果与自身相乘,程序和结果如下:dt = 0.01; t = -2:dt:2.5;f1 = uCT(t+0.5)- uCT(t-0.5);ft=sym('f1');Fw = fourier(ft);Fw=Fw*FwFw =-4*pi^2*dirac(1,w)^2由此来验证傅里叶变换的时域卷积定理第8章连续时间LTI系统的频率特性及频域分析8.1试用MATLAB命令求图8-8所示电路系统的幅频特性和相频特性。