MATLAB与傅里叶级数实验15
实验用MATLAB计算傅里叶变换

实验二 用MATLAB 计算傅立叶变换(2课时)一、实验目的1、掌握用MA TLAB 计算DTFT 及系统频率响应的方法。
2、掌握用MA TLAB 计算DFT 和IDFT 的方法。
3、掌握用DFT 计算圆周卷积和线性卷积的方法。
二、实验设备计算机一台,装有MATLAB 软件。
三、实验原理和基本操作1.用MA TLAB 计算DTFT对于序列x (n ),其离散时间傅立叶变换(DTFT )定义为:∑∞-∞=-=n n j e n x j X ωω)()( (1)序列的傅立叶变换(DTFT )在频域是连续的,并且以ω=2π为周期。
因此只需要知道jw X(e )的一个周期,即ω=[0,2π],或[-π,π]。
就可以分析序列的频谱。
用MA TLAB 计算DTFT ,必须在-π≤ω≤π范围内,把ω用很密的、长度很长的向量来近似,该向量中各个值可用下式表示: w=k*dw=k*K π2 (2) 其中:d ω=Kπ2 称为频率分辨率。
它表示把数字频率的范围2π均分成K 份后,每一份的大小,k 是表示频率序数的整数向量,简称为频序向量,它的取值可以有几种方法:通常在DTFT 中,频率取-π≤ω<л的范围,当K 为偶数时,取 k 12,,1,0,1,,12,2--+--=K K K 如果K 为奇数,则取 k 5.02,,1,0,1,,5.02--+-=K K 可以为奇偶两种情况综合出一个共同的确定频序向量k 的公式; k=12K -⎢⎥-⎢⎥⎣⎦ :12K -⎢⎥⎢⎥⎣⎦(3) 上式中⎢⎥⎣⎦表示向下取整。
在MA TLAB 中的向下取整函数为floor ,floor (x )的作用是把x 向下(向-∞方向)取整,所以与(3)式等价的MATLAB 语句为 k ))5.02(:)5.02((-+-=K K floor (4) 给定了输入序列(包括序列x 及其位置向量n ),又设定了频率分辨率d ω及频序向量k ,则DTFT 的计算式(1)可以用一个向量与矩阵相乘的运算来实现。
傅立叶级数展开 matlab

实验四 傅里叶级数实验的目的Matlab 语言没有直接提供求解傅立叶(Fourier)系数与级数的现成函数。
本节实验主要让学生独立编写出傅立叶(Fourier) 级数的求解函数。
进一步理解掌握利用Matlab 进行级数运算的方法和提高实验技能。
实验的基本理论与方法1、三角函数系,sin ,cos ,,2sin ,2cos ,sin ,cos ,1nx nx x x x x 4-7)在区间],[ππ-上正交,即指在三角函数系4-7)中任何不同的两个函数的乘积在区间],[ππ-上的积分等于零。
2、函数展开成傅立叶级数设)(x f 是周期为π2的周期函数,且能展开成三角级数:∑∞=++=10)sin cos (2)(n n n nx b nx a a x f 4-8) 其实就是要求出其中的系数i a 和i b ,根据三角函数系的正交性,我们可以得到它们的计算公式如下:01()a f x dx πππ-=⎰, 1()cos n a f x nxdx πππ-=⎰, 4-9) 1()sin n b f x nxdx πππ-=⎰,(1,2,)n =如果公式4-9)中的积分都存在,这时它们定出的系数 ,,,110b a a 叫做函数)(x f 的傅立叶系数,将这些系数代入4-8)中,所得三角级数∑∞=++10)sin cos (2n n n nx b nx a a 4-10) 叫做函数)(x f 的傅立叶级数。
3、奇函数和偶函数的傅立叶级数当周期为π2的奇函数)(x f 展开成傅立叶级数时,它的傅立叶系数为⎪⎩⎪⎨⎧====⎰ππ0),3,2,1(sin )(2)321(0 n nxdx x f b n a n n ,,, 4-11)当周期为π2的偶函数)(x f 展开成傅立叶级数时,它的傅立叶系数为⎪⎩⎪⎨⎧====⎰)321(0),3,2,1(cos )(20,,,n b n nxdx x f a n n ππ 4-12) 以上说明,如果)(x f 为奇函数,那么它的傅立叶级数是只含有正弦项的正弦级数∑∞=1sin n n nx b4-13)如果)(x f 为偶函数,那么它的傅立叶级数是只含有余弦项的余弦级数∑∞=+10cos 2n n nx a a 4-14) 4、周期为2l 的周期函数的傅立叶级数设周期为l 2的周期函数)(x f 满足收敛定理的条件,则它的傅立叶级数展开式为:∑∞=++=10)sin cos (2)(n n n lx n b l x n a a x f ππ 4-15) 其中系数n n b a ,为⎪⎩⎪⎨⎧====⎰⎰--),2,1(,sin )(1),2,1,0(,cos )(1 n dx l x n x f l b n dx l x n x f l a l l n l l n ππ 4-16) 如果)(x f 为奇函数,则有∑∞==1sin)(n n lx n b x f π 4-17) 其中系数),3,2,1(sin )(20 ==⎰n dx lx n x f l b l n π 4-18) 如果)(x f 为偶函数,则有∑∞=+=10c o s 2)(n n l x n a a x f π 4-19) 其中系数),2,1,0(sin )(20 ==⎰n dx lx n x f l a l n π 4-20) 实验使用的函数与命令1、积分指令int( );2、矩阵的点乘积;3、了解在设计Matlab 绘图时的图形标注函数及其功能。
MATLAB 傅里叶级数的展开

实验报告
一、实验目的
1、熟悉MATLAB 软件环境;
2、熟悉MATLAB 的常用运算符;
3、了解MATLAB 的一些常用函数;
4、掌握运用傅里叶级数,在MATLAB 里,通过运用傅里叶级数的展开,进行编写程序,进而得到题目所要求的各类波;
二、实验内容
内容:在MATLAB 里运用傅立叶级数的展开编写一个周期T=4,在t=0-t=2之间幅度为1,t=2-t=4内的幅度为0的矩形波。
(如图示)
三、程序编写
t=0:0.01:10;
k=150;Ao=0;
for n= -k:k;
if n= =0
Ao=Ao+0.5;
else A(k)=sin(i*pi/2)/(i*pi);
x=x+A(k)*exp(j*k*pi*t/2);
end
end
plot(t,x);
四、解题过程
∑∞-∞=ω=
k t
jk k e a t x 0)(
T=2π/ω =>ω=2π/ T=2π/ 4=π/2
将其转换为傅里叶级数的复指数形式,最后将信号在以t 为横坐标,X 为纵坐标的坐标轴内表示出来。
五、运行结果
k=150
⎰-=1110T T dt T a ⎰--=1101T T t jk k dt e T a ω)1(4141e )(x 41a 0k 2020jkw -40k 00o kw j t jkw t e jkw dt e dt t ---===≠⎰⎰时,21dt 41a 0k 200===⎰时,
周期信号可分解指数信号的线性组合,若k取值越大,图形越接近矩形。
matlab实现傅里叶变换

(1)原理正交级数的展开是其理论基础!将一个在时域收敛的函数展开成一系列不同频率谐波的叠加,从而达到解决周期函数问题的目的。
在此基础上进行推广,从而可以对一个非周期函数进行时频变换。
从分析的角度看,他是用简单的函数去逼近(或代替)复杂函数,从几何的角度看,它是以一族正交函数为基向量,将函数空间进行正交分解,相应的系数即为坐标。
从变幻的角度的看,他建立了周期函数与序列之间的对应关系;而从物理意义上看,他将信号分解为一些列的简谐波的复合,从而建立了频谱理论。
当然Fourier积分建立在傅氏积分基础上,一个函数除了要满足狄氏条件外,一般来说还要在积分域上绝对可积,才有古典意义下的傅氏变换。
引入衰减因子e^(-st),从而有了Laplace变换。
(好像走远了)。
(2)计算方法连续傅里叶变换将平方可积的函数f(t)表示成复指数函数的积分或级数形式。
这是将频率域的函数F(ω)表示为时间域的函数f(t)的积分形式。
连续傅里叶变换的逆变换 (inverse Fourier transform)为即将时间域的函数f(t)表示为频率域的函数F(ω)的积分。
一般可称函数f(t)为原函数,而称函数F(ω)为傅里叶变换的像函数,原函数和像函数构成一个傅里叶变换对(transform pair)。
二、傅立叶变换的应用;DFT在诸多多领域中有着重要应用,下面仅是颉取的几个例子。
需要指出的是,所有DFT的实际应用都依赖于计算离散傅里叶变换及其逆变换的快速算法,即快速傅里叶变换(快速傅里叶变换(即FFT)是计算离散傅里叶变换及其逆变换的快速算法。
)。
(1)、频谱分析DFT是连续傅里叶变换的近似。
因此可以对连续信号x(t)均匀采样并截断以得到有限长的离散序列,对这一序列作离散傅里叶变换,可以分析连续信号x(t)频谱的性质。
前面还提到DFT应用于频谱分析需要注意的两个问题:即采样可能导致信号混叠和截断信号引起的频谱泄漏。
可以通过选择适当的采样频率(见奈奎斯特频率)消减混叠。
matlab 数据做傅里叶变换

matlab 数据做傅里叶变换Matlab 数据傅里叶变换:揭示信号频谱的奥秘引言:傅里叶变换是一种重要的数学工具,可以将一个信号分解为不同频率的正弦和余弦波的叠加。
在信号处理和频谱分析领域,傅里叶变换被广泛应用。
本文将介绍如何使用Matlab进行数据的傅里叶变换,并通过实例展示其重要性和实用性。
一、傅里叶变换的基本原理傅里叶变换是将一个时域信号转换为频域信号的方法。
它的基本原理是将一个周期性信号分解为一系列不同频率的正弦和余弦波的叠加,从而揭示信号的频谱特性。
傅里叶变换可以用于信号的滤波、频谱分析、信号恢复等多个领域。
二、Matlab中的傅里叶变换函数Matlab提供了fft函数用于进行快速傅里叶变换。
该函数能够高效地计算信号的频谱,是信号处理中的重要工具。
使用fft函数,我们可以将时域信号转换为频域信号,并获得信号的幅度谱和相位谱。
三、数据傅里叶变换的实例为了更好地理解傅里叶变换在实际应用中的作用,我们以音频信号为例进行数据的傅里叶变换。
首先,我们需要将音频信号导入Matlab环境中。
采用audioread函数可以将音频文件转换为Matlab中的矩阵形式。
在得到音频信号的矩阵后,我们可以使用fft函数对其进行傅里叶变换。
通过对信号的频谱进行分析,我们可以获得音频信号的频率分布情况。
进一步,我们可以计算出音频信号的主要频率成分,并通过绘制频谱图来展示音频信号的频谱特性。
在频谱图中,横轴表示频率,纵轴表示信号的幅度。
通过分析频谱图,我们可以了解到音频信号中不同频率的分布情况,进而对音频信号进行进一步的处理和分析。
四、傅里叶变换的应用领域傅里叶变换在信号处理和频谱分析领域有着广泛的应用。
它可以用于音频信号的降噪和滤波,可以用于图像处理中的边缘检测和图像增强,还可以用于通信系统中的频谱分析和信号调制等。
傅里叶变换在科学研究和工程应用中起到了重要的作用。
五、总结本文介绍了Matlab中数据傅里叶变换的基本原理和应用。
(最新整理)MATLAB实验傅里叶分析

MATLAB实验傅里叶分析编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(MATLAB实验傅里叶分析)的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为MATLAB实验傅里叶分析的全部内容。
实验七 傅里叶变换一、实验目的傅里叶变换是通信系统、图像处理、数字信号处理以及物理学等领域内的一种重要的数学分析工具。
通过傅里叶变换技术可以将时域上的波形分 布变换为频域上的分布,从而获得信号的频谱特性。
MATLAB 提供了专门的函数fft 、ifft 、fft2(即2维快速傅里叶变换)、ifft2以及fftshift 用于实现对信号的傅里叶变换.本次实验的目的就是练习使用fft 、ifft 以及fftshift 函数,对一些简单的信号处理问题能够获取其频谱特性(包括幅频和相频特性)。
二、实验预备知识1。
离散傅里叶变换(DFT )以及快速傅里叶变换(FFT)简介设x (t )是给定的时域上的一个波形,则其傅里叶变换为2()() (1)j ft X f x t e dt π∞--∞=⎰显然X ( f )代表频域上的一种分布(波形),一般来说X ( f )是复数。
而傅里叶逆变换定义为:2()() (2)j ft x t X f e df π∞-∞=⎰因此傅里叶变换将时域上的波形变换为频域上的波形,反之,傅里叶逆变换则将频域上的波形变换为时域上的波形。
由于傅里叶变换的广泛应用,人们自然希望能够使用计算机实现傅里叶变换,这就需要对傅里叶变换(即(1)式)做离散化处理,使之符合电脑计算的特征。
另外,当把傅里叶变换应用于实验数据的分析和处理时,由于处理的对象具有离散性,因此也需要对傅里叶变换进行离散化处理。
matlab算傅里叶级数

matlab算傅里叶级数傅里叶级数是一种非常重要的数学工具,它在信号处理、图像处理、通信系统等领域有着广泛的应用。
在Matlab中,我们可以使用fft 函数来计算傅里叶级数,它可以帮助我们快速而准确地得到信号的频域表示。
傅里叶级数的概念最早由法国数学家傅里叶提出,他发现任意周期函数都可以由一系列正弦波和余弦波叠加而成。
这些正弦波和余弦波的频率是原函数频率的整数倍,称为谐波。
傅里叶级数就是把一个周期函数表示成无限多个谐波的叠加。
在Matlab中,我们可以使用fft函数来计算傅里叶级数。
该函数的输入参数是一个一维数组,表示周期函数在一个周期内的取值。
输出结果是一个复数数组,表示该周期函数对应的频域表示。
通过fft函数,我们可以得到周期函数在不同频率上的幅度和相位信息。
使用fft函数的步骤如下:1. 定义周期函数的取值数组。
2. 使用fft函数对该数组进行傅里叶变换,得到频域表示。
3. 对频域表示进行处理,如取模值或取相位信息。
4. 根据需要,可以进行逆傅里叶变换得到周期函数的时间域表示。
下面我们用一个具体的例子来说明如何使用Matlab计算傅里叶级数。
假设我们有一个周期为T的方波信号,其幅值在[-A, A]之间变化。
我们希望计算该方波信号的傅里叶级数。
我们需要定义方波信号的取值数组。
假设方波的周期T为1秒,幅值A为1,我们可以通过以下代码生成方波信号的取值数组:```matlabT = 1; % 周期A = 1; % 幅值Fs = 100; % 采样率t = 0:1/Fs:T-1/Fs; % 时间数组x = A * square(2*pi/T * t); % 方波信号的取值数组```接下来,我们使用fft函数对方波信号的取值数组进行傅里叶变换,并取模值得到频域表示。
代码如下:```matlabX = fft(x); % 傅里叶变换X = abs(X); % 取模值```我们可以通过绘制频域表示来观察方波信号的频谱特性。
MATLAB傅里叶级数

MATLAB傅里叶级数河南工程学院理学院MATLAB姓名:杨标班级:信息1241学号:201211002126(傅立叶级数的模拟)实验目的:(1)用MATLAB模拟傅立叶级数F(x)=a0/2+?(ancosnx?bnsinnx)n?1?求a0,an,bn;(2)对矩形函数,三角函数求傅立叶级数;(作图)(3)绘制函数及其傅立叶逼近实验分析(1):将F(x)=a0/2+?(ancosnx?bnsinnx) 展开为傅立叶级数,既是求n?1?ai,bi 根据三角函数的正交性,可得:a0=1?an=1???f(x)dx; ????f(x)cosnxdx; ??bn=1???f(x)sinnxdx应用积分求解公式int ??源程序:clearsyms x n“函数方程”)f=(a0=int(f,x,-pi,pi)/pian=int(f*cos(n*x),x,-pi,pi)/pi bn=int(f*sin(n*x),x,-pi,pi)/pi 例:求函数f(x)=x^3+5 clearsyms x nf=x^3+5a0=int(f,x,-pi,pi)/pian=int(f*cos(n*x),x,-pi,pi)/pi bn=int(f*sin(n*x),x,-pi,pi)/pi运行后得:实验分析(2):其中函数为F(X)=X,求解图像及其傅里叶逼近。
展开为傅里叶级数:F(x)=a0/2+?(ancosnx?bnsinnx)n?1?,先求解其中的a0,an,bn源程序:function y=fly(f,k,l)%f为要展开的函数,k为要展开的项数,l为函数半周期syms x n;a0=int(f,x,-l,l)/lan=int(f*cos(n*pi*x/l),x,-l,l)/l bn=int(f*sin(n*pi*x/l),x,-l,l)/l for n=1:k a(n)=int(f*cos(n*pi*x/l),x,-l,l)/l; b(n)=int(f*sin(n*pi*x/l),x,-l,l)/l; endg=0;for n=1:ks=a(n)*cos(n*pi*x/l)+b(n)*sin(n*pi*x/l); g=g+s;endy=a0/2+g依次可以求得,1,3,5,7,10次的部分和,既可以做出图像。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数学实验》报告
学号 1012011 姓名 成绩
实验内容:MATLAB 与傅里叶级数
一、实验目的
掌握利用MATLAB 进行傅里叶级数展开的方法和技能
二、预备知识
常数项级数的求和与审敛法则
在高等数学中,我们学习过傅立叶级数的性质和将函数展开为傅立叶级数。
本实验讨论利用MATLAB 软件来完成将函数展开为傅立叶级数的工作。
我们知道,将一个函数 展开为傅立叶级数:
其实就是要求出其中的系数 和 ,根据三角函数系的正交性,我们可以得到它们的计算公式如下:
, , 这样,结合MATLAB 的积分命令int()就可以计算这些系数,从而就可以进行函数的傅立叶展开了。
01
()(cos sin )
2k k k a f x a kx b kx ∞==
++∑01()a f x dx π
ππ-=⎰1
()cos n a f x nxdx πππ-=⎰1()sin n b f x nxdx π
ππ-=⎰(1,2,)n =L i a i b
()f x
三实验内容与要求
1、求级数∑∞
=•+
1
2 .
1
n
n
n
n得和。
2、求级数∑∞
=1
3 3
n
n n
的和。
3、将函数cosx展开成(x-π
/3)的冥级数,取前10项。
4、求出函数[]上,在区间ππ-)(23x x x f +=的前11个傅里叶系数,即n=5。