matlab频域分析.doc
如何在Matlab中进行时间频域分析
如何在Matlab中进行时间频域分析在Matlab中进行时间频域分析引言随着数字信号处理的发展,时间频域分析成为了信号处理领域中重要的研究方法之一。
在Matlab中,我们可以使用多种工具和函数来进行时间频域分析,从而深入了解信号的时频特性。
本文将介绍如何在Matlab中进行时间频域分析,并探讨其在实际应用中的意义。
一、时频分析概述时频分析是一种用于研究信号频率随时间变化的方法。
传统的频域分析方法(如傅里叶变换)只能提供信号在整个时间段上的频谱信息,无法反映信号频率随时间的变化。
而时频分析则可以更细致地描述信号的时频特性,对于研究非平稳信号具有很大的价值。
二、时频分析方法1. 短时傅里叶变换(Short-time Fourier Transform,STFT)STFT是一种经典的时频分析方法,它通过将信号分成若干个时间窗口并对每个窗口进行傅里叶变换来得到时频谱。
在Matlab中,我们可以使用stft函数进行STFT分析。
该函数可以指定窗口长度、重叠率等参数,以适应不同类型的信号。
2. 连续小波变换(Continuous Wavelet Transform,CWT)CWT是一种基于小波分析的时频分析方法,它不仅可以提供信号的时频信息,还可以得到信号在不同尺度上的局部特征。
在Matlab中,我们可以使用cwt函数进行连续小波变换。
该函数提供了不同类型的小波基函数和尺度参数的选择。
3. 离散小波变换(Discrete Wavelet Transform,DWT)DWT是CWT的离散化版本,它通过对信号进行多级离散小波分解得到时频谱。
在Matlab中,我们可以使用dwt函数进行DWT分析。
该函数可以指定小波基函数、分解层数等参数,以满足不同应用的需求。
三、实例演示为了更好地理解和应用时频分析方法,我们以一个简单的实例进行演示。
假设我们有一个包含多个频率成分的信号,我们希望利用时频分析方法来提取这些成分并分析它们在时间和频率上的变化情况。
利用Matlab进行频谱分析的方法
利用Matlab进行频谱分析的方法引言频谱分析是信号处理和电子工程领域中一项重要的技术,用于分析信号在频率域上的特征和频率成分。
在实际应用中,频谱分析广泛应用于音频处理、图像处理、通信系统等领域。
Matlab是一种强大的工具,可以提供许多功能用于频谱分析。
本文将介绍利用Matlab进行频谱分析的方法和一些常用的工具。
一、Matlab中的FFT函数Matlab中的FFT(快速傅里叶变换)函数是一种常用的频谱分析工具。
通过使用FFT函数,我们可以将时域信号转换为频域信号,并得到信号的频谱特征。
FFT 函数的使用方法如下:```Y = fft(X);```其中,X是输入信号,Y是输出的频域信号。
通过该函数,我们可以得到输入信号的幅度谱和相位谱。
二、频谱图的绘制在进行频谱分析时,频谱图是一种直观和易于理解的展示形式。
Matlab中可以使用plot函数绘制频谱图。
首先,我们需要获取频域信号的幅度谱。
然后,使用plot函数将频率与幅度谱进行绘制。
下面是一个示例:```X = 1:1000; % 时间序列Y = sin(2*pi*10*X) + sin(2*pi*50*X); % 输入信号Fs = 1000; % 采样率N = length(Y); % 信号长度Y_FFT = abs(fft(Y)); % 计算频域信号的幅度谱f = (0:N-1)*(Fs/N); % 频率坐标plot(f, Y_FFT);```通过上述代码,我们可以得到输入信号在频谱上的特征,并将其可视化为频谱图。
三、频谱分析的应用举例频谱分析可以应用于许多实际问题中。
下面将介绍两个常见的应用举例:语音信号分析和图像处理。
1. 语音信号分析语音信号分析是频谱分析的一个重要应用领域。
通过对语音信号进行频谱分析,我们可以探索声波的频率特性和信号的频率成分。
在Matlab中,可以使用wavread 函数读取音频文件,并进行频谱分析。
下面是一个示例:```[waveform, Fs] = wavread('speech.wav'); % 读取音频文件N = length(waveform); % 信号长度waveform_FFT = abs(fft(waveform)); % 计算频域信号的幅度谱f = (0:N-1)*(Fs/N); % 频率坐标plot(f, waveform_FFT);```通过上述代码,我们可以获取语音信号的频谱特征,并将其可视化为频谱图。
《自动控制原理》MATLAB用于频域分析实验
[mag,phase,w]=bode(num,den,w)
四、实验内容及步骤
1、曲线1
k = 500;
num = [1,10];
den = conv([1,0],conv([1,1],conv([1,20],[1,50])));
《自动控制原理》MATLAB用于频域分析实验
一、实验目的
1、加深了解系统频率特性的概念。
2、学习使用Matlab软件绘制Nyquist图、
Matlab2014b版
三、实验原理
1、奈奎斯特图(幅相频率特性图)
MATLAB为用户提供了专门用于绘制奈奎斯特图的函数nyquist
五、实验原始数据记录与数据处理
六、实验结果与分析讨论
通过使用Matlab2014b版,加深了解系统频率特性的概念以及典型环节的频率特性。
七、结论
本实验验证的典型环节的频率特性。
八、实验心得体会(可略)
常用格式:
nyquist (num,den)
或nyquist (num,den,w) 表示频率范围0~w。
或nyquist (num,den,w1:p:w2) 绘出在w1~w2频率范围内,且以频率间隔p均匀取样的波形。
举例:
2、对数频率特性图(波特图)
MATLAB为用户提供了专门用于绘制波特图的函数bode
常用格式:
bode (num,den)
或bode (num,den,w) 表示频率范围0~w。
或bode (num,den,w1:p:w2) 绘出在w1~w2频率范围内,且以频率间隔p均匀取样的波形。
举例:系统开环传函为 绘制波特图。
matlab信号频域分析实验报告
matlab信号频域分析实验报告Matlab信号频域分析实验报告引言:信号频域分析是一种重要的信号处理技术,通过将信号从时域转换到频域,可以更好地理解信号的频率特性和频谱分布。
本实验旨在利用Matlab软件进行信号频域分析,探索信号的频域特性,并通过实验结果验证频域分析的有效性。
一、实验目的本实验的主要目的是通过Matlab软件进行信号频域分析,了解信号的频域特性和频谱分布,验证频域分析的有效性。
二、实验原理信号频域分析是将信号从时域转换到频域的过程,常用的频域分析方法有傅里叶变换和功率谱估计等。
傅里叶变换可以将信号分解为不同频率的正弦和余弦分量,从而得到信号的频谱分布。
功率谱估计则可以估计信号在不同频率上的功率。
三、实验步骤1. 生成信号:首先,使用Matlab生成一个包含多个频率分量的复合信号。
可以选择正弦信号、方波信号或者其他复杂信号。
2. 时域分析:利用Matlab的时域分析函数,如plot()和stem(),绘制信号的时域波形图。
观察信号的振幅、周期和波形特征。
3. 频域分析:使用Matlab的傅里叶变换函数fft(),将信号从时域转换到频域。
然后,利用Matlab的频域分析函数,如plot()和stem(),绘制信号的频域谱图。
观察信号的频率分量和频谱分布。
4. 功率谱估计:使用Matlab的功率谱估计函数,如pwelch()或periodogram(),估计信号在不同频率上的功率。
绘制功率谱图,观察信号的功率分布。
四、实验结果与分析通过实验,我们生成了一个包含多个频率分量的复合信号,并进行了时域分析和频域分析。
实验结果显示,信号的时域波形图反映了信号的振幅、周期和波形特征,而频域谱图则展示了信号的频率分量和频谱分布。
在时域波形图中,我们可以观察到信号的振幅和周期。
不同频率分量的信号在时域波形图中呈现出不同的振幅和周期,从而反映了信号的频率特性。
在频域谱图中,我们可以观察到信号的频率分量和频谱分布。
实验三利用MATLAB进行系统频域分析
实验三利用MATLAB进行系统频域分析系统频域分析是指通过对系统的输入输出信号进行频域分析,从而分析系统的频率响应特性和频率域特征。
利用MATLAB进行系统频域分析可以方便地实现信号的频谱分析、滤波器设计等功能。
下面将介绍如何利用MATLAB进行系统频域分析的基本步骤。
一、信号频谱分析1. 将信号导入MATLAB环境:可以使用`load`函数导入数据文件,或者使用`audioread`函数读取音频文件。
2. 绘制信号的时域波形图:使用`plot`函数绘制信号的时域波形图,以便对信号的整体特征有一个直观的了解。
3. 计算信号的频谱:使用快速傅里叶变换(FFT)算法对信号进行频谱分析。
使用`fft`函数对信号进行频域变换,并使用`abs`函数计算频谱的幅度。
4. 绘制信号的频谱图:使用`plot`函数绘制信号的频谱图,以便对信号的频率特征有一个直观的了解。
二、滤波器设计1.确定滤波器类型和要求:根据系统的要求和信号的特性,确定滤波器的类型(如低通滤波器、高通滤波器、带通滤波器等)和相应的频率响应要求。
2. 设计滤波器:使用MATLAB中的滤波器设计函数(如`fir1`、`butter`、`cheby1`等)来设计滤波器。
这些函数可以根据指定的滤波器类型、阶数和频率响应要求等参数来生成相应的滤波器系数。
3. 应用滤波器:使用`filter`函数将滤波器系数应用到信号上,得到滤波后的信号。
三、系统频率响应分析1. 生成输入信号:根据系统的要求和实际情况,生成相应的输入信号。
可以使用MATLAB中的信号生成函数(如`square`、`sine`、`sawtooth`等)来生成基本的周期信号,或者使用`randn`函数生成高斯白噪声信号。
2.绘制输入信号的频谱图:使用前面提到的信号频谱分析方法,绘制输入信号的频谱图。
3. 输入信号与输出信号的频域分析:使用`fft`函数对输入信号和输出信号进行频谱分析,并使用`abs`函数计算频谱的幅度。
自动控制原理的MATLAB仿真与实践第5章 线性系统的频域分析
函数模型,如:tf(), zpk(), ss()。 bode(num,den):num,den分别为传递函数的分子与
margin(G);[Gm,Pm,Wcg,Wcp]= margin(G): 直接求出系统G的幅值裕度和相角裕度。 其中:Gm幅值裕度;Pm相位裕度;Wcg幅值裕度 处对应的频率ωc;Wcp相位裕度处对应的频率ωg。
nichols(G);nichols(G,w):绘制单位反馈系统开环传 递尼科尔斯曲线。
20
>>clear; num=[2, 3];den=[1, 2, 5, 7]; %G(s)的分子分母 多项式系数向量
p=roots(den) 求根结果:
%求系统的极点
p=
-0.1981 + 2.0797i
-0.1981 - 2.0797i
-1.6038 可见全为负根,则s右半平面极点数P=0。 绘制Nyquist曲线: >> nyquist(num,den) %绘制Nyquist曲线
本节分别介绍利用MATLAB进行频域绘图和频 率分析的基本方法。
6
5.2.1 Nyquist曲线和Bode图
MATLAB频率特性包括幅频特性和相频特性。 当用极坐标图描述系统的幅相频特性时,通常称为 奈奎斯特(Nyquist)曲线;用半对数坐标描述系 统的幅频特性和相频特性时,称为伯德(Bode) 图;在对数幅值-相角坐标系上绘制等闭环参数( M和N)轨迹图,称为尼克尔斯(Nichols)图。
matlab 信号 频谱分析实验报告
matlab 信号频谱分析实验报告《Matlab 信号频谱分析实验报告》实验目的:通过Matlab软件对信号进行频谱分析,了解信号的频谱特性,并掌握频谱分析的基本方法。
实验原理:信号的频谱分析是指将信号在频域上进行分析,得到信号的频谱特性。
频谱分析可以帮助我们了解信号的频率成分,频率分布情况,以及信号的频谱密度等信息。
在Matlab中,可以使用fft函数对信号进行频谱分析,得到信号的频谱图像。
实验步骤:1. 生成信号:首先在Matlab中生成一个信号,可以是正弦信号、方波信号或者任意复杂的信号。
2. 采样信号:对生成的信号进行采样,得到离散的信号序列。
3. 频谱分析:使用fft函数对采样的信号进行频谱分析,得到信号的频谱特性。
4. 绘制频谱图像:将频谱分析得到的结果绘制成频谱图像,观察信号的频谱分布情况。
实验结果分析:通过频谱分析,我们可以得到信号的频谱图像,从图像中可以清晰地看出信号的频率成分,频率分布情况,以及信号的频谱密度等信息。
通过对信号频谱图像的观察和分析,可以更好地了解信号的频谱特性,为后续的信号处理和分析提供参考。
实验结论:通过本次实验,我们成功使用Matlab对信号进行了频谱分析,得到了信号的频谱特性,并且掌握了频谱分析的基本方法。
频谱分析是信号处理和分析的重要工具,对于理解信号的频率特性和频率分布情况具有重要意义。
希望通过本次实验,能够对信号的频谱分析有更深入的了解,并且能够在实际工程中应用到相关领域。
通过本次实验,我们对Matlab信号频谱分析有了更深入的了解,对信号处理和分析有了更深入的认识,也为我们今后的学习和工作提供了更多的帮助。
希望通过不断地实践和学习,能够更加深入地掌握信号频谱分析的相关知识,为实际工程应用提供更多的帮助。
MATLAB用于控制系统频域分析
例5-9-1超前校正 超前校正
K 20 = G0 ( s ) = s (0.5s + 1) 0.5s 2 + s 20(0.25s + 1) 5s + 20 =Байду номын сангаасGe ( s ) = Gc ( s )G0 ( s ) = s (0.5s + 1)(0.04 s + 1) 0.02 s 3 + 0.54 s 2 + s
>> bode(20,[0.5,1,0]); >> hold on; >> bode([5,20],[0.02,0.54,1,0]);grid; >>
K 5 = G0 ( s ) = s ( s + 1)(0.5s + 1) 0.5s 3 + 1.5s 2 + s 5(12.5s + 1) 62.5s + 5 = Ge ( s ) = Gc ( s )G0 ( s ) = s ( s + 1)(0.5s + 1)(125s + 1) 62.5s 4 + 188s 3 + 126.5s 2 + s
MATLAB用于控制系统频域分析 用于控制系统频域分析
《自动控制原理》课件系列
哈尔滨工业大学航天学院控制科学与工程系 王彤
0型系统Nyquist图的绘制 图的绘制
5 5 G ( s) = = 3 (2s + 1)( s + 1)(0.5s + 1) s + 3.5s 2 + 3.5s + 1
MATLAB进行控制系统频域分析
一、基于MATLAB 的线性系统的频域分析基本知识(1)频率特性函数)(ωj G 。
设线性系统传递函数为:nn n n m m m m a s a s a s a b s b s b s b s G ++⋅⋅⋅++++⋅⋅⋅++=---1101110)( 则频率特性函数为:nn n n m m m m a j a j a j a b j b j b j b jw G ++⋅⋅⋅++++⋅⋅⋅++=---)()()()()()()(1101110ωωωωωω 由下面的MATLAB 语句可直接求出G(jw )。
i=sqrt (—1) % 求取—1的平方根GW=polyval (num ,i*w )./polyval(den ,i*w )其中(num ,den )为系统的传递函数模型。
而w 为频率点构成的向量,点右除(./)运算符表示操作元素点对点的运算.从数值运算的角度来看,上述算法在系统的极点附近精度不会很理想,甚至出现无穷大值,运算结果是一系列复数返回到变量GW 中。
(2)用MATLAB 作奈魁斯特图。
控制系统工具箱中提供了一个MATLAB 函数nyquist( ),该函数可以用来直接求解Nyquist 阵列或绘制奈氏图。
当命令中不包含左端返回变量时,nyquist ()函数仅在屏幕上产生奈氏图,命令调用格式为:nyquist(num ,den) nyquist (num,den ,w) 或者nyquist(G) nyquist(G,w ) 该命令将画出下列开环系统传递函数的奈氏曲线: )()()(s den s num s G = 如果用户给出频率向量w ,则w 包含了要分析的以弧度/秒表示的诸频率点。
在这些频率点上,将对系统的频率响应进行计算,若没有指定的w 向量,则该函数自动选择频率向量进行计算。
w 包含了用户要分析的以弧度/秒表示的诸频率点,MATLAB 会自动计算这些点的频率响应。
当命令中包含了左端的返回变量时,即:[re,im ,w]=nyquist (G )或[re ,im,w ]=nyquist (G ,w ) 函数运行后不在屏幕上产生图形,而是将计算结果返回到矩阵re 、im 和w 中。
matlab频域分析实验报告
Matlab频域分析实验报告引言频域分析是一种常用的信号处理技术,可以帮助我们理解信号的频率特性和频率成分。
在本实验中,我们将使用Matlab进行频域分析,并通过实际的信号示例来说明其应用。
实验目标本实验的目标是通过Matlab进行频域分析,了解信号的频率特性,并能够对信号进行频域滤波、谱估计和频域增强。
实验步骤步骤一:加载信号数据首先,我们需要加载信号数据。
在Matlab中,我们可以使用load()函数来加载数据文件。
假设我们的信号数据文件名为signal.mat,则可以使用以下代码进行加载:load('signal.mat');步骤二:绘制时域波形图加载信号数据后,我们可以通过绘制时域波形图来观察信号的时域特性。
可以使用plot()函数来绘制信号的时域波形图。
以下是示例代码:plot(signal);xlabel('时间');ylabel('信号幅度');title('信号的时域波形图');步骤三:进行傅里叶变换为了将信号转换到频域,我们需要进行傅里叶变换。
在Matlab中,可以使用fft()函数对信号进行傅里叶变换。
以下是示例代码:signal_freq = fft(signal);步骤四:绘制频域幅度谱进行傅里叶变换后,我们可以绘制信号的频域幅度谱来观察信号的频率特性。
可以使用abs()函数来计算频域幅度,并使用plot()函数来绘制频域幅度谱图。
以下是示例代码:signal_freq_amp = abs(signal_freq);plot(signal_freq_amp);xlabel('频率');ylabel('幅度');title('信号的频域幅度谱');步骤五:频域滤波频域分析不仅可以帮助我们观察信号的频率特性,还可以进行频域滤波。
例如,我们可以通过在频域中将低幅度的频率成分设置为0来实现低通滤波。
《MATLAB》连续时间信号的频域分析和连续时间系统的时域分析实验报告
《MATLAB 》连续时间信号的频域分析和连续时间系统的时域分析实验报告1、编写程序Q3_1,绘制下面的信号的波形图:其中,ω0 = 0.5π,要求将一个图形窗口分割成四个子图,分别绘制cos(ω0t)、cos(3ω0t)、cos(5ω0t) 和x(t) 的波形图,给图形加title ,网格线和x 坐标标签,并且程序能够接受从键盘输入式中的项数n。
2、给程序例3_1增加适当的语句,并以Q3_2存盘,使之能够计算例题3-1中的周期方波信号的傅里叶级数的系数,并绘制出信号的幅度谱和相位谱的谱线图。
-+-=)5cos(51)3cos(31)cos()(000t t t t x ωωω∑∞==10)cos()2sin(1n t n n nωπ3.3反复执行程序例3_2,每次执行该程序时,输入不同的N值,并观察所合成的周期方波信号。
通过观察,你了解的吉布斯现象的特点是什么?3.4分别手工计算x1(t) 和x2(t) 的傅里叶级数的系数。
1.利用MATLAB 求齐次微分方程,,起始条件为,,时系统的零输入响应、零状态响应和全响应。
2. 已知某LTI 系统的方程为:其中,。
利用MATLAB 绘出范围内系统零状态响应的波形图。
3.已知系统的微分方程如下,利用MATLAB 求系统冲激响应和阶跃响应的数值解,并绘出其时域波形图。
(1)'''()2''()'()'()y t y t y t x t ++=()()t x t e u t -=(0)1y -='(0)1y -=''(0)2y -=''()5'()6()6()y t y t y t x t ++=()10sin(2)()x t t u t π=05t ≤≤''()3'()2()()y t y t y t x t ++=(2)''()2'()2()'()y t y t y t x t ++=。
matlab信号频域分析实验报告
matlab信号频域分析实验报告《Matlab信号频域分析实验报告》摘要:本实验通过Matlab软件对信号进行频域分析,探究信号在频域中的特性。
首先,我们使用Matlab生成了不同频率和幅度的正弦信号,并对其进行了傅里叶变换。
然后,我们利用频谱分析工具对信号进行了频谱分析,观察了信号在频域中的频率成分和能量分布。
最后,我们对信号进行了滤波处理,观察了滤波后信号在频域中的变化。
引言:信号的频域分析是数字信号处理中的重要内容,通过频域分析可以了解信号的频率成分和能量分布情况,对信号的特性有着重要的指导意义。
Matlab作为一种强大的数学计算软件,提供了丰富的信号处理工具,能够方便快捷地进行信号的频域分析。
本实验旨在通过Matlab软件进行信号频域分析,探究信号在频域中的特性。
实验过程:1. 生成不同频率和幅度的正弦信号首先,我们使用Matlab生成了不同频率和幅度的正弦信号,分别代表不同的信号特性。
通过绘制时域波形图,我们可以直观地观察到信号的波形特点。
2. 进行傅里叶变换接下来,我们对生成的正弦信号进行了傅里叶变换,得到了信号在频域中的频率成分和能量分布情况。
通过绘制频谱图,我们可以清晰地观察到信号的频率成分和能量分布情况。
3. 频谱分析利用Matlab提供的频谱分析工具,我们对信号进行了频谱分析,进一步观察了信号在频域中的特性。
通过频谱分析,我们可以了解信号的频率成分和能量分布情况,为后续的信号处理提供了重要参考。
4. 滤波处理最后,我们对信号进行了滤波处理,观察了滤波后信号在频域中的变化。
通过比较滤波前后的频谱图,我们可以了解滤波对信号频域特性的影响,进一步认识信号在频域中的变化情况。
实验结论:通过本次实验,我们对信号在频域中的特性有了更深入的了解。
通过Matlab软件进行信号频域分析,我们可以清晰地观察到信号的频率成分和能量分布情况,为信号处理和分析提供了重要参考。
同时,我们也了解到了滤波对信号在频域中的影响,为信号处理提供了重要指导。
在MATLAB中使用频域方法进行信号分析
在MATLAB中使用频域方法进行信号分析信号分析是一种用于探索信号特征、提取有用信息以及解决实际问题的方法。
在信号分析中,频域方法是一种常用且有效的工具。
频域方法通过将信号从时域转换为频域,可以更好地理解信号的频率特征和谱密度。
MATLAB是一款功能强大的数学计算和数据分析软件,在信号处理领域广泛应用。
通过其丰富的函数库和强大的计算能力,我们可以使用多种频域方法进行信号分析。
本文将介绍一些MATLAB中常用的频域方法,并展示如何使用这些方法进行信号分析。
第一部分:频域变换频域变换是将时域信号转换为频域信号的过程。
在MATLAB中,常用的频域变换方法包括傅里叶变换、快速傅里叶变换等。
下面我们将详细介绍这些方法的原理和使用。
1. 傅里叶变换傅里叶变换是频域分析的基础。
它将信号表示为一组正弦和余弦波的和,可以将信号的时域特征转化为频域特征。
在MATLAB中,可以使用fft函数进行傅里叶变换。
例如,我们有一段包含正弦信号的时域数据,可以使用fft函数计算其频域表示。
代码如下:```MATLABt = 0:0.01:1; % 时间范围f = 10; % 信号频率x = sin(2*pi*f*t);X = fft(x);```通过上述代码,我们可以得到信号x的频谱表示X。
可以使用plot函数绘制频谱图,代码如下:```MATLABf = (0:length(X)-1)/length(X)*Fs; % 频率范围plot(f, abs(X))```上述代码中,我们计算了频率范围f,并使用abs函数计算频域信号的模。
绘制得到的图形可以直观地显示信号的频率成分。
2. 快速傅里叶变换(FFT)傅里叶变换是一种高效的频域变换方法,但是当信号长度较大时,计算复杂度较高。
为了解决这个问题,快速傅里叶变换(FFT)被广泛应用。
FFT算法通过分治策略将傅里叶变换的复杂度从O(n^2)降低到O(nlogn),大大提高了计算效率。
第7章周期信号频域分析及MATLAB实现-文档资料
7.2.3 双边频谱
周期信号可以分解成一系列虚指数信号之和,并可以求得 相应的傅里叶系数
f( t) ቤተ መጻሕፍቲ ባይዱFe n
n
jn t
a a a t t 0 n jb n jn n jb n jn e e 2 n 2 2 1 1 j 1 F e a j b n A n n n
a 0 A 0 .2 5 0 F 0 2
A5 ≈ 0.09, A10 ≈ 0.063
A4 ≈ 0, A9 ≈ 0.05,
F 0 . 2 2 5 , F 0 . 1 5 9 , F 0 . 0 7 5 , F 0 1 2 3 4 F 0 . 0 4 5 , F 0 . 0 5 3 5 6
6
7.1 周期信号的傅里叶级数与信号的频谱
西华师范大学 物理与电子信息学院
2. 连续时间周期信号的傅里叶级数近似
用有限项的傅里叶级数求和来逼近原函数
f(t)的截断傅里叶级数表示
3. 符号积分函数int()求截断傅里叶级数及傅里叶表示 intf=int(f,v,a,b) 给出符号表达式 f 对指定变量v的定积分。
2 T
7-1a
2
7.1 周期信号的傅里叶级数与信号的频谱
西华师范大学 物理与电子信息学院
傅里叶系数:
2 2 a f() td t f() td t 0 0 T T 1
T 1
T 1 2 T 1 1 2
2 T 1 a f ()c t o sn td t n 0 T 1
N 1
3. Matlab命令
DTFS:
a
1 fft ( x ) N
(7.16) (7.17)
matlab频域分析实验报告
matlab频域分析实验报告Matlab频域分析实验报告引言频域分析是信号处理领域中的重要内容,它能够帮助我们理解信号在频域上的特性和行为。
而Matlab作为一款强大的数学计算软件,可以帮助我们进行频域分析,并且提供了丰富的工具和函数来实现这一目的。
本实验报告将介绍使用Matlab进行频域分析的方法和步骤,并通过实验数据展示其应用效果。
实验目的本实验旨在通过Matlab软件进行频域分析,掌握信号在频域上的特性和行为,了解频域分析在实际应用中的重要性和价值。
实验内容1. 信号生成:首先,我们使用Matlab生成一个具有特定频率和幅度的信号,以便进行后续的频域分析。
2. 时域分析:接下来,我们将对生成的信号进行时域分析,包括波形图和功率谱密度图的绘制,以便了解信号在时域上的特性。
3. 频域分析:然后,我们将使用Matlab提供的FFT函数对信号进行频域分析,得到信号在频域上的频谱图,并分析其频率成分和能量分布情况。
4. 频率响应:最后,我们将对信号进行频率响应分析,通过滤波器设计和频率域滤波来改变信号的频域特性,并观察其对信号的影响。
实验结果通过以上实验步骤,我们得到了生成信号的波形图和功率谱密度图,以及信号的频谱图和频率响应分析结果。
通过对这些结果的分析,我们可以清晰地了解信号在时域和频域上的特性和行为,以及频率响应对信号的影响。
结论本实验通过Matlab频域分析工具,帮助我们深入了解信号在频域上的特性和行为,为我们进一步应用频域分析提供了重要的参考和指导。
同时,Matlab的强大功能和丰富的工具库,为频域分析提供了便利和支持,使得我们能够更加高效地进行信号处理和分析工作。
因此,频域分析在实际应用中具有重要的意义和价值。
总结通过本实验,我们深入了解了Matlab频域分析的方法和步骤,以及其在实际应用中的重要性和价值。
频域分析对于理解信号的特性和行为具有重要意义,而Matlab作为一款强大的数学计算软件,为我们提供了丰富的工具和函数来实现频域分析,从而帮助我们更好地进行信号处理和分析工作。
用MATLAB实现连续系统的频域分析
用MATLAB实现连续系统的频域分析
MATLAB是一款具有强大功能的科学数学软件,它用于数值计算、算法设计、函数图形化等,也可以用于连续系统的频域分析。
下面介绍一般的频域分析的基本步骤,并用MATLAB编程实现,从而实现连续系统的频域分析。
首先,将连续时间信号转换为数字,并计算出相应的变换系数。
一般情况下,可以使
用MATLAB中的函数“fft”和“ifft”根据时域输入信号进行傅里叶变换。
具体过程,可
以按照以下步骤逐步实现:
1. 首先,将函数转换成实数集合并将它们用MATLAB以连续信号的形式写出。
2. 接着,遵循N分频原则,解决连续信号的采样问题,然后对其进行频谱分析。
3. 然后,在实际计算中,根据采样时间及相关的参数计算频率及其带宽,并将每个
离散频率的相应信号分量分开。
4. 接着,使用MATLAB的fft()函数进行正变换处理,得到实现的频域模型。
5. 最后,使用disp()或plot()函数,将计算出的频谱信号以可视化的方式展现出来,方便观察和分析。
MATLAB中,提供了多种用于傅里叶变换的函数,可用于连续系统的频域分析,比如
fft()函数和ifft()函数,等等。
使用这些函数,可以在MATLAB中实现连续系统的频域分析,帮助用户轻松地进行频域分析,并展示出可视化的结果,提高效率。
matlab时域宽度,MATLAB对信号的时域与频域分析
matlab时域宽度,MATLAB对信号的时域与频域分析%信号的时域和频域分析%信号的频域分析,计算⽅波的DFS(离散傅⾥叶变换),在60的时窗宽度上⽅波宽度分别为%5到12,并且画出x(n)和DFS(x(n))的杆状图L=5;N=60;k=[-N/2:N/2];xn=[zeros(1,(N-L+1)/2),ones(1,L),zeros(1,(N-L-1)/2)];n=[0:N-1];subplot(221)stem(n,xn);gridaxis([0 60 -0.3 1.3]);title('xn');p=0:N-1;WN=exp(-j*2*pi/N);nk=n'*p;WNnk=WN.^nk;Xk=xn*WNnk;magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);subplot(222)stem(k,magXk);gridaxis([-N/2 N/2 -0.5 5.5]);xlabel('k');ylabel('spectrum');title('DFS:L=5,N=60');L=12;N=60;k=-N/2:N/2;xn=[zeros(1,(N-L+1)/2),ones(1,L),zeros(1,(N-L-1)/2)];n=0:N-1;subplot(223)stem(n,xn);gridaxis([0 60 -0.3 1.3]);title('xn');p=[0:N-1];WN=exp(-j*2*pi/N);nk=n'*p;magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);subplot(224)stem(k,magXk);gridaxis([-N/2 N/2 -0.5 13]);xlabel('k');ylabel('spectrum');title('DFS:L=12,N=60');%频谱分析的若⼲问题%不同时窗正弦信号频谱的分析%1Hz的正弦波仅取10个周期及50个周期,都做4096点FFT,⽐较两者的频谱t=0:0.1:10; %取10或50(将10变成50即可)个周期的进⾏变换y1=sin(2*pi*t);Y1=fft(y1,4096); %4096点的快速傅⾥叶变换Y=fftshift(Y1);c=[0:2047]/409;plot(c,abs(Y(2049:4096)))axis([0 2 -5 60]);title('sin(t)周期 T=10')grid%加窗函数后的频谱特征分析%不加窗函数是正弦谱线与矩形窗频谱的卷积;加窗函数是正弦谱线于汉明窗频谱的卷积%后者的旁瓣⼩得多,但是主谱线宽⼀些t=0.1:0.1:20; %取20个周期y=sin(2*pi*t); %定义1Hz的正弦波w=hamming(200); %定义200长的汉明窗y=y.*w';Y1=fft(y,4096); %4096点的快速傅⾥叶变换Y=fftshift(Y1);c=[0:2047]./409.6;plot(c,abs(Y(2049:4096)))axis([0 3 -5 60]);title('sin(t) 加窗频谱');grid%CZT线性调频Z变换%应⽤CZT变换不在频率轴上均匀采样,对关⼼的部分加⼤采样密度,可以提⾼关⼼部分的f1=13.2;f2=13.41;f3=15;fs=60;n=0:N-1;t=2*pi*n/fs;e=fs/N;n1=0:e:(fs/2)-e;x=sin(f1*t)+sin(f2*t)+sin(f3*t); %三个不同频率正弦信号相加Y1=abs(fft(x)); %⼀般傅⾥叶频谱分析subplot(121)plot(n1,(Y1(1:N/2)));title('fft');grid;M=60; %CZT变换的长度f0=12.6;q=0.05;A=exp(j*2*pi*f0/fs); %CZT变换的起点W=exp(-j*2*pi*q/fs); %CZT变换的倾斜率Y3=czt(x,M,W,A); %CZT变换做频谱分析n2=f0:q:f0+(M-1)*q;subplot(122)plot(n2,abs(Y3));title('czt');grid%常见信号的频谱分析%基础波形 fft(快速傅⾥叶变换),fftshift(移动傅⾥叶变换的系数)n=2048;t=1:2048;y=zeros(1,n);y(1,[1020:1035])=1; %定义宽度为15的⽅波y1=[zeros(1,1000),ones(1,60),zeros(1,988)];%定义宽度为60的⽅波subplot(121)plot(t,y,'b',t,y1,'r')axis([850 1200 -0.2 1.3]);title('⽅形图');gridsubplot(122)Y2=fft(y,2048);Y3a=fftshift(Y3);w=-1024:1023;semilogy(w,abs(Y2a),'b',w,abs(Y3a),'r')axis([-500 500 -5 80]);title('⽅波频谱');axis([-250 250 1 100]);grid;%三⾓波n=2048;t=1:2048;y=[zeros(1,800),[1:500],zeros(1,748)]; %定义三⾓波subplot(121)plot(t,y)axis([0 2100 -30 560]);title('三⾓波');gridsubplot(122)Y1=fft(y,2048);Y=fftshift(Y1);c=-1024:1023;yw=log(abs(Y)+eps);plot(c,yw,'r')axis([-104 104 7 12]);title('三⾓波频谱');grid on;%冲击函数n=400;delta=4*pi/n;t=-2*pi:delta:2*pi;y=sinc(t); %定义冲击函数subplot(121)plot(t,y)axis([-7 7 -0.4 1.3]);title('sinc(t)');gridsubplot(122)c=-1024:1023;plot(c,abs(Y))axis([-500 500 -5 40]);title('sinc(t)的频谱');grid%调制信号%双边带调幅fs=1000;t=0:1/fs:.4;fc=250;y=0.4*cos(pi*20*t);x=modulate(y,fc,fs,'amdsb-tc'); %双边带调幅subplot(121)plot(t,x)legend('调幅双边带波形');gridsubplot(122)p=fft(x,1024);p1=fftshift(p);w=0:511;p2=abs(p1);plot(w,p2(1:512));grid;legend('调幅双边带频谱')axis([100 400 -10 100])%⽤直⽅图表⽰调频信号谱m=5; %⽤直⽅图表⽰调制指数为5的调频信号谱分析n=1:10;y1(n)=besseli(n,(i*m),1);z1=real(y1./(i.^(n)));z2=fliplr(z1);y0=besseli(0,(i*m),1);z0=real(y0);z=[z2 z0 z1];axis([-10 10 -.1 .8]);gridtitle('m=5')^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ %四种数字调制⽅法(ASK FSK PSK OQPSK)的频谱图%产⽣码元宽度为64的随机序列%m⽂件n=1:8192;m=1:128;x(n)=randint(1,8192,2);x=[x(n)]';y(n)=zeros(1,8192);z(m)=zeros(1,128);for n=1:8192form=1:128if n==64*m-63z(m)=x(n);if m==ceil(n/64)y([(64*m-63):(64*m)]')=z(m);endendendendn=1:8192;rm2=y(n);%ASK调制n=[1:(2^13)];x1=cos(n.*1e9*2*pi/4e9);run('rm2');X2=rm2;x2=X2';x=x1.*X2;b=.42+.5*cos(2*pi*(n-(2^12))/(2^13))+0.08*...cos(4*pi*(n-(2^12))/(2^13));X=b.*x;x3=[ones(1,64) zeros(1,8128)];y1=X(1:(2^13));y4=x1.*x3;Y1=fft(y1,(2^13));magY1=abs(Y1(1:1:(2^12)+1))/(200);u=(2*w1/pi)*1e9;figure(1)subplot(211)plot(u,magY1,'b',u,magY4,'r');gridtitle('ASKr');axis([4e8,1.6e9,0,1.1])X2=b.*X2;y2=X2(1:(2^13));Y2=fft(y2,(2^13));magY2=abs(Y2(1:1:(2^12)+1))/(200);k1=0:(2^12);w1=(2*pi/(2^13))*k1;u=(2*w1/pi)*1e9;Y3=fft(x3,(2^13));magY3=abs(Y3(1:1:(2^12)+1))/(40); subplot(212)semilogy(u,magY2,'b',u,magY3,'r');gridtitle('ASKr-modulation');axis([0 1.2e9 3e-4 3]);figure(2)subplot(211);plot(n,x2);axis([0 720 -0.2 1.2])subplot(212);plot(n,x);axis([0 720 -1.2 1.2])%FSK调制频谱分析n=[1:(2^13)];d=.13;run('rm2');x2=((2*rm2)-1);x5=cos(.5*n.*((1e8*2*pi/4e8)-d));x4=cos(.5*n.*((1e8*2*pi/4e8)+d));x=cos(.5*n.*((1e8*2*pi/4e8)+d*x2));b=.42+.5*cos(2*pi*(n-(2^12))/(2^13))+0.08*...cos(4*pi*(n-(2^12))/(2^13));X=b.*x;x3=[ones(1,64) zeros(1,8128)];y1=X(1:(2^13));y4=x4.*x3;y5=x5.*x3;Y1=fft(y1,(2^13));magY1=abs(Y1(1:1:(2^12)+1))/(200*2); Y4=fft(y4,(2^13));magY4=abs(Y4(1:1:(2^12)+1))/(70);Y5=fft(y5,(2^13));magY5=abs(Y5(1:1:(2^12)+1))/(70);subplot(211)plot(u,magY1,'b',u,magY4,'r',u,magY5,'g');gridtitle('FSKr');axis([1e8 1e9 0 .65]);X2=b.*x2;y2=X2(1:(2^13));Y2=fft(y2,(2^13));magY2=abs(Y2(1:1:(2^12)+1))/(50*6); k1=0:(2^12);w1=(2*pi/(2^13))*k1;u=(2*w1/pi)*1e9;Y3=fft(x3,(2^13));magY3=abs(Y3(1:1:(2^12)+1))/(30); subplot(212)plot(u,magY2,'b',u,magY3,'r');gridtitle('FSKr-modulation');axis([0 1.2e9 0 2.3])figure(2)subplot(211);plot(n,x2);axis([0 320 -1.2 1.2])subplot(212);plot(n,x);axis([0 320 -1.2 1.2])%PSK调制n=[1:(2^13)];x1=cos(n.*1e9*2*pi/4e9);run('rm2');x2=(2*rm2)-1;x=x1.*x2;b=.42+.5*cos(2*pi*(n-(2^12))/(2^13))+0.08*...cos(4*pi*(n-(2^12))/(2^13));X=b.*x;x3=[ones(1,64) zeros(1,8128)];y1=X(1:(2^13));y4=x1.*x3;Y1=fft(y1,(2^13));magY1=abs(Y1(1:1:(2^12)+1))/(300); Y4=fft(y4,(2^13));magY4=abs(Y4(1:1:(2^12)+1))/(30);k1=0:(2^12);w1=(2*pi/(2^13))*k1;u=(2*w1/pi)*1e9;figure(1)subplot(211)y2=X2(1:(2^13));Y2=fft(y2,(2^13));magY2=abs(Y2(1:1:(2^12)+1))/(300); k1=0:(2^12);w1=(2*pi/(2^13))*k1;u=(2*w1/pi)*1e9;Y3=fft(x3,(2^13));magY3=abs(Y3(1:1:(2^12)+1))/(30); subplot(212)plot(u,magY2,'b',u,magY3,'r');gridtitle('PSKr-modulation');axis([0 1.2e9 0 2.3])figure(2)subplot(211);plot(n,x2);title('PSKr');axis([0 1200 -1.2 1.2])subplot(212);plot(n,x);axis([100 275 -1.2 1.2])%谱估计 tfe 从输⼊输出中估计传递函数%估计传输函数h=fir1(30,.2,boxcar(31)); %使⽤矩形窗x=randn(16384,1); %输⼊信号y=filter(h,1,x); %输出信号z=tfe(x,y,1024,[],[],512);n=[1:length(z)];p=log10(abs(z)+eps);plot(n,p);grid%互功率谱密度 csd已知⼆信号求互功率谱密度h=fir1(30,.2,hamming(31)); %使⽤汉明窗h1=ones(1,10)/sqrt(10);r=randn(16384,1);x=filter(h1,1,r);y=filter(h,1,x);z=csd(x,y,1024,10000,triang(500),0,[]); %使⽤三⾓窗n=[1:length(z)];p=log10(abs(z)+eps);plot(n,p);gridx=randn(16384,1);y=filter(h,1,x);z=psd(y,1024,10000,kaiser(512,5),0,.95); %使⽤凯塞窗n=[1:length(z)];p=log10(abs(z)+eps);plot(n,p);grid。
如何利用Matlab技术进行频域分析
如何利用Matlab技术进行频域分析MATLAB是一种功能强大的数学软件,被广泛应用于科学研究和工程领域。
其中的频域分析功能被广泛用于信号处理、图像处理、音频处理等领域。
本文将介绍如何利用MATLAB技术进行频域分析,以及常用的频域分析方法和技巧。
一、频域分析的基本概念在开始介绍如何利用MATLAB进行频域分析之前,我们先来了解一下频域分析的基本概念。
频域分析是指将信号从时域(时间域)转换到频域(频率域),以便更好地理解信号的频谱特性。
频域分析的基本原理是傅里叶变换。
傅里叶变换是将一个信号分解成一系列正弦函数和余弦函数的和,通过这种方式可以清晰地看到信号的频谱成分。
MATLAB中提供了多种傅里叶变换的函数,比如fft、ifft等,可以快速、方便地进行频域分析。
二、MATLAB中的频域分析函数MATLAB中提供了多种用于频域分析的函数,包括快速傅里叶变换(FFT)、离散傅里叶变换(DFT)、傅里叶逆变换(IFFT)等。
1. 快速傅里叶变换(FFT)快速傅里叶变换是一种将离散信号转换为频域表示的快速方法。
在MATLAB 中,可以使用fft函数进行快速傅里叶变换,如下所示:```MATLABX = fft(x);```其中,x为输入信号,X为傅里叶变换后的结果。
通过快速傅里叶变换,可以将信号从时域转换到频域,得到信号的频谱信息。
2. 离散傅里叶变换(DFT)离散傅里叶变换是一种将离散信号转换为频域表示的方法。
在MATLAB中,可以使用dft函数进行离散傅里叶变换,如下所示:```MATLABX = dft(x);```其中,x为输入信号,X为傅里叶变换后的结果。
3. 傅里叶逆变换(IFFT)傅里叶逆变换是一种将频域信号转换回时域信号的方法。
在MATLAB中,可以使用ifft函数进行傅里叶逆变换,如下所示:```MATLABx = ifft(X);```其中,X为输入的频域信号,x为傅里叶逆变换后的结果。
如何使用Matlab进行频域分析与滤波处理
如何使用Matlab进行频域分析与滤波处理引言:MATLAB是一种功能强大的数值计算和数据分析工具,广泛应用于各个领域,包括信号处理。
频域分析和滤波处理是信号处理中重要的内容之一,本文将介绍如何使用MATLAB进行频域分析和滤波处理。
一、频域分析的基本概念频域分析是将信号从时域转换到频域的过程,通过分析信号在频率上的分布情况,可以获取信号的频谱信息。
常用的频域分析方法有傅里叶变换和功率谱分析。
1.1 傅里叶变换傅里叶变换是时域信号与频域信号之间的转换关系,将一个信号表示为振幅和相位的频谱形式。
在MATLAB中,可以使用fft函数进行傅里叶变换。
例如,对一个时域信号x进行傅里叶变换,可以使用以下代码:```matlabX = fft(x);```1.2 功率谱分析功率谱分析是对信号在频域上能量分布的分析,通过计算信号的功率谱密度,可以了解信号在不同频率下的能量分布情况。
在MATLAB中,可以使用pwelch函数进行功率谱分析。
例如,对一个时域信号x进行功率谱分析,可以使用以下代码:```matlab[P,F] = pwelch(x,[],[],[],Fs);```二、频域滤波的基本原理频域滤波是通过改变信号在频域上的能量分布情况,来实现对信号的滤波处理。
常用的频域滤波方法包括低通滤波、高通滤波、带通滤波和带阻滤波。
2.1 低通滤波低通滤波是用来去除信号中高频成分,只保留低频成分的滤波方法。
在MATLAB中,可以使用fir1函数设计一个低通滤波器,并使用filter函数进行滤波处理。
例如,设计一个截止频率为100Hz的低通滤波器对信号x进行滤波:```matlabFs = 1000; % 采样率Fc = 100; % 截止频率order = 50; % 滤波器阶数b = fir1(order,Fc/(Fs/2),'low');y = filter(b,1,x);```2.2 高通滤波高通滤波是用来去除信号中低频成分,只保留高频成分的滤波方法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MATLAB 频域分析实验
1. 给定系统
()8.02.02+-=z z z H (a) 画出系统极零图;
由题知,该系统零点为Z 1=0,极点为P 1=-√(8/10)j 和P 2=√(8/10)j 。
由matlab 作出极零图如下:
代码如下:
b=[0,-0.2];
a=[1,0,0.8];
zplane(b,a);
(b) 求出并绘出系统幅频响应与相频响应;
由题知,)8.0)(8.0(2.0)(j z j z z
z H -+-=,用e jw 替换z 后得到
)8.0)(8.0(2.0)(j e j e e e H jw jw jw
jw
-+-=;利用matlab 做出幅频响应和相频响应如下:
代码如下:
clear all ;
b=[0,-0.2];
a=[1,0,0.8];
[H,w]=freqz(b,a,512,1);
Hr=abs(H);
Hphase=angle(H)*180/3.1415;Hphase=unwrap(Hphase);
subplot(221);plot(2*w,Hr);grid on ;
xlabel( '\omega/\pi');ylabel('幅频响应 ');
subplot(222);plot(w,Hphase);grid on ;
xlabel( '\omega/\pi');ylabel('相频响应/°');
(c) 求出并绘出系统的单位样值响应;
由(b) 中结果,利用matlab 中的iztrans 命令求得
)()21sin(8.08
.041-)(n u n n h n π=,在matlab 中做出单位样值响应如下:
代码如下:
clear all ;
b=[0,-0.2];
a=[1,0,0.8];
N=50;
[h,t]=impz(b,a,N);
subplot(223);stem(t,h,'.');grid;
xlabel( 'n');ylabel('单位样值响应 h(n) ');
(d) 令x (n ) = u (n ), 求出并绘出系统的单位阶跃响应.
由题知,)()()(n h n x n g ⊗=,由卷积定理得G(z)=X(z)*H(z),则)8.0)(1(2.08.02.0*1)(*)()(22
2+--=+--==z z z z z z z z H z X z G ,利用matlab 进行逆变换后得)(9
1)()21cos(8.091)()21sin(0.8452)(n u n u n n u n n g n n -+-=ππ,利用matlab 做出图形如下:
代码如下:
clear all ;
b=[0,-0.2];
a=[1,0,0.8];
x=ones(100);t=1:100;
y=filter(b,a,x);
subplot(224);plot(t,y);grid on ;
xlabel( 'n');ylabel('阶跃响应 ');
2. 某离散系统用以下差分方程表示
()()()()()1224.012.0-+=---+n x n x n y n y n y .
(a) 画出系统极零图;
将
原式两边进行z 变换得)1()()())2()1()((24.0))1()((2.0)(1122-++=-+-+--++--x z X z z X z y z zy z Y z
zy z Y z z Y ,由于初始状态为零状态,将上式整理后得)(2)(24.0)(2.0)(1-2z X z z Y z
z Y z z Y =-+ ,则可得系统函数 24.02.02)()()(2-+==
z z z z X z Y z H ,极点为P 1=0.4,P 2=-0.6,零点为Z 1=0。
由matlab 作出极零图如下:
代码如下:
b=[0,2];
a=[1,0.2,-0.24];
zplane(b,a);
(b) 求出并绘出系统幅频响应与相频响应;
用e jw 接替z 得24.02.02)()()(2-+==jw jw jw
jw jw jw
e e e e X e Y e H ,利用matlab 作出频率响应和相频响应如下:
代码如下:
clear all ;
b=[0,2];
a=[1,0.2,-0.24];
[H,w]=freqz(b,a,512,1);
Hr=abs(H);
Hphase=angle(H)*180/3.1415;Hphase=unwrap(Hphase);
subplot(221);plot(2*w,Hr);grid on ;
xlabel( '\omega/\pi');ylabel('幅频响应 ');
subplot(222);plot(w,Hphase);grid on ;
xlabel( '\omega/\pi');ylabel('相频响应/°');
(c) 求出并绘出系统的单位样值响应;
利用matlab 求逆变换得)(4.02)()6.0(2)(n u n u n h n n ⋅+-⋅-=,用matlab 作出单位样值响应如下
代码如下:
clear all ;
b=[0,2];
a=[1,0.2,-0.24];
N=50;
[h,t]=impz(b,a,N);
subplot(223);stem(t,h,'.');grid;
xlabel( 'n');ylabel('单位样值响应 h(n) ');
(d) 已知输入x (n ) = (-1)n u (n ), 求出并绘出系统的零状态响应. 零状态响应)()()(n h n x n r zs ⊗=,由卷积定理得R zs (z)=X(z)*H(z),求得)24.02.0)(1(224.02.021)(22
2-++=-+⋅+=z z z z z z z z z z R zs ,利用matlab 求逆变换得零状态响应为)()5
2(74)()53(3)()1(725)(n u n u n u n r n n n zs +-+--
=,再由matlab 作出其图形如下:
代码如下:
n=50;。