实验三MATLAB求Fourier变换及逆变换

合集下载

信号与系统Matlab实验2012版

信号与系统Matlab实验2012版


sconv.m函数的程序
function [f,k]=sconv(f1,f2,k1,k2,p) %计算连续信号卷积积分 f(t)=f1(t)*f2(t) % f: 卷积积分 f(t)对应的非零样值向量 % k:f(t)的对应时间向量 % f1: f1(t)非零样值向量 % f2: f2(t)的非零样值向量 % k1: f1(t)的对应时间向量 % k2: f2(t)的对应时间向量 % p:取样时间间隔 f=conv(f1,f2); %计算序列 f1 与 f2 的卷积和 f f=f*p;
二、实验内容
1、连续时间系统的冲击响应、阶跃响应 a. 利用impulse函数画出教材P44例2-15: LTI系统
波形。
dy (t ) 3 y (t ) 2 x(t ) 的冲击响应的 dt 1 x '(t ) 2 x(t ) 的阶 2
b. 利用step函数画出教材P45例2-17: LTI系统 y ''(t ) 3 y '(t ) 2 y (t )

7
的正弦序列(-7≤n≤14) 。
。 5)画出复指数序列 x[n] e j n /6 和 x[n] e j 3n 的实部和虚部(-50≤n≤50)
3、信号的自变量变换
.1.
实验指导书(Matlab 版)
信号与系统
1)编写程序(函数),画出教材 P10 图 1-13(a)即 f(t)的波形(-6<t<6);

数字图像处理及MATLAB实现实验三——图像基本运算

数字图像处理及MATLAB实现实验三——图像基本运算

数字图像处理及MATLAB实现实验三——图像基本运算1.图像的点运算

1.内容:

对⼀灰度图像,通过选择不同的灰度变换函数s=T(r)实现图像的灰度变换范围线性扩展和⾮线性扩展,以及图像的灰度倒置和⼆值化

2.实验⽅法:

1.选择⼀幅图像lena.jpg,设置输⼊输出变换的灰度级范围,a=0.3,b=0.6,c=0.1,d=0.9。

2.设置⾮线性扩展函数的参数c=2。

3.采⽤灰度倒置变换函数s=255-r进⾏图像变换。

4.设置⼆值化图像的阈值,分别为level=0.4,level=0.7参考程序如下。

%1.图像的点运算

%内容:对⼀灰度图像,通过选择不同的灰度变换函数s=T(r)实现图像的灰度变换范围线性扩展和⾮线性扩展,以及图像的灰度倒置和⼆值化

%实验⽅法:

% 1.选择⼀幅图像lena.jpg,设置输⼊输出变换的灰度级范围,a=0.3,b=0.6,c=0.1,d=0.9。

% 2.设置⾮线性扩展函数的参数c=2。

% 3.采⽤灰度倒置变换函数s=255-r进⾏图像变换。

% 4.设置⼆值化图像的阈值,分别为level=0.4,level=0.7参考程序如下。

I=imread('lena.jpg');

figure;

subplot(1,3,1);

imshow(I);

title('原图');

J=imadjust(I,[0.3;0.6],[0.1;0.9]);%设置灰度变换的范围

subplot(1,3,2);

imshow(J);

title('线性扩展');

I1=double(I);%将图像转换为double类型

信号与系统实验(MATLAB版) (1)

信号与系统实验(MATLAB版) (1)

《信号与系统MATLAB实现》实验指导书

电气信息工程学院

2014年2月

长期以来,《信号与系统》课程一直采用单一理论教学方式,同学们依靠做习题来巩固和理解教学内容,虽然手工演算训练了计算能力和思维方法,但是由于本课程数学公式推导较多,概念抽象,常需画各种波形,作题时难免花费很多时间,现在,我们给同学们介绍一种国际上公认的优秀科技应用软件MA TLAB,借助它我们可以在电脑上轻松地完成许多习题的演算和波形的绘制。

MATLAB的功能非常强大,我们此处仅用到它的一部分,在后续课程中我们还会用到它,在未来地科学研究和工程设计中有可能继续用它,所以有兴趣的同学,可以对MATLAB 再多了解一些。

MATLAB究竟有那些特点呢?

1.高效的数值计算和符号计算功能,使我们从繁杂的数学运算分析中解脱出来;

2.完备的图形处理功能,实现计算结果和编程的可视化;

3.友好的用户界面及接近数学表达式的自然化语言,易于学习和掌握;

4.功能丰富的应用工具箱,为我们提供了大量方便实用的处理工具;

MATLAB的这些特点,深受大家欢迎,由于个人电脑地普及,目前许多学校已将它做为本科生必须掌握的一种软件。正是基于这些背景,我们编写了这本《信号与系统及MATLAB实现》指导书,内容包括信号的MA TLAB表示、基本运算、系统的时域分析、频域分析、S域分析、状态变量分析等。通过这些练习,同学们在学习《信号与系统》的同时,掌握MATLAB的基本应用,学会应用MATLAB的数值计算和符号计算功能,摆脱烦琐的数学运算,从而更注重于信号与系统的基本分析方法和应用的理解与思考,将课程的重点、难点及部分习题用MATLAB进行形象、直观的可视化计算机模拟与仿真实现,加深对信号与系统的基本原理、方法及应用的理解,为学习后续课程打好基础。另外同学们在进行实验时,最好事先预习一些MATLAB的有关知识,以便更好地完成实验,同时实验中也可利用MATLAB的help命令了解具体语句以及指令的使用方法。

信号与系统matlab实验傅里叶分析及应用报告答案

信号与系统matlab实验傅里叶分析及应用报告答案

实验二傅里叶分析及应用

姓名学号班级

一、实验目的

(一)掌握使用Matlab进行周期信号傅里叶级数展开和频谱分析

1、学会使用Matlab分析傅里叶级数展开,深入理解傅里叶级数的物理含义

2、学会使用Matlab分析周期信号的频谱特性

(二)掌握使用Matlab求解信号的傅里叶变换并分析傅里叶变换的性质

1、学会运用Matlab求连续时间信号的傅里叶变换

2、学会运用Matlab求连续时间信号的频谱图

3、学会运用Matlab分析连续时间信号的傅里叶变换的性质

(三)掌握使用Matlab完成信号抽样并验证抽样定理

1、学会运用MATLAB完成信号抽样以及对抽样信号的频谱进行分析

2、学会运用MATLAB改变抽样时间间隔,观察抽样后信号的频谱变化

3、学会运用MATLAB对抽样后的信号进行重建

二、实验条件

需要一台PC机和一定的matlab编程能力

三、实验内容

2、分别利用Matlab符号运算求解法和数值计算法求下图所示信号的FT,并画出其频谱图(包括幅度谱和相位谱)[注:图中时间单位为:毫秒(ms)]。

符号运算法: Ft=

sym('t*(Heaviside(t+2)-Heaviside(t+1))+Heaviside(t+1)-Heaviside(t-1)+(-t)*(Heavi side(t-1)-Heaviside(t-2))'); Fw = fourier(Ft); ezplot(abs(Fw)),grid on; phase = atan(imag(Fw)/real(Fw)); ezplot(phase);grid on; title('|F|'); title('phase');

实验三 连续信号与系统的频域分析

实验三 连续信号与系统的频域分析
t=0:dt:2.5;
x1=Heaviside(t)-Heaviside(t-1);
x2=t.*(Heaviside(t)-2*Heaviside(t-1)+Heaviside(t-2));
x=x1+x2.*cos(50*t)
plot(t,x);
xlabel('t');
ylabel('x(t)');
Y=y*exp(-j*n'*W)*dt;%y(t)的傅里叶变换Y(jw)
Y=abs(Y);
F1=F.*F;%F(w)×F(w)
subplot(223)
plot(W,F);
xlabel('\omega');
title('F(\omega)的幅度频谱');
subplot(224);
plot(W,F1);
郑慧乐
学号
0174280
同组人:无
实验项目
实验三连续信号与系统的频域分析
☑必修□选修
□演示性实验☑验证性实验□操作性实验□综合性实验
实验地点
H113
实验仪器台号
F0
指导教师
蒋娜
实验日期及节次
week14->2-12
一、实验目的及要求:
1、目的
1.掌握非周期信号的傅里叶变换:fourier函数和ifourier函数;

信号与系统实验傅里叶变换

信号与系统实验傅里叶变换

信号与系统实验

10.1利用fourier 函数求下列信号的傅里叶变换F(jw),并用ezplot 函数绘出其幅度频谱|F(jw)|和相位频谱d (w )。 <1>f 1(t)=(sin(2*pi*t)/(2*pi*t))2 syms t phase im re f=sin(2*pi*t)/(2*pi*t); F=fourier(f); subplot(3,1,1) ezplot(f); title('Ô-ͼ')

axis([-pi pi -0.3 1.1]) subplot(3,1,2) ezplot(abs(F)) title('·ù¶Èͼ') axis([-3*pi 3*pi 0.3 0.6]) im=imag(F);

re=real(F);

phase=atan(im/re);

subplot(3,1,3) ezplot(phase) title('Ïàλͼ')

axis([-3*pi 3*pi -0.5 0.5])

<2>f 2(t)=sin(2*pi*(t-2))/(2*pi*(t-2)) syms t phase im re

f=sin(2*pi*(t-2))/(2*pi*(t-2)); F=fourier(f); subplot(3,1,1) ezplot(f); title('Ô-ͼ')

axis([-pi 2*pi -0.3 1.1]) subplot(3,1,2) ezplot(abs(F)) title('·ù¶ÈÆ×')

axis([-3*pi 3*pi 0.3 0.6]) im=imag(F); re=real(F); phase=atan(im/re); subplot(3,1,3) ezplot(phase) title('ÏàλÆ×')

数字图像处理实验程序3傅里叶变换,小波变换

数字图像处理实验程序3傅里叶变换,小波变换

数字图像处理实验报告

班级:11研信息1班

**: ***

学号:***********

实验三图像的傅立叶变换

一、实验目的

1.了解图像变换的意义和手段;

2.熟悉傅里叶变换的基本性质;

3.熟练掌握FFT的方法及应用;

4.通过实验了解二维频谱的分布特点;

5.通过本实验掌握编程实现数字图像的傅立叶变换。

二、实验原理

1.应用傅立叶变换进行图像处理

傅里叶变换是线性系统分析的一个有力工具,它能够定量地分析诸如数字化系统、采样点、电子放大器、卷积滤波器、噪音和显示点等的作用。通过实验培养这项技能,将有助于解决大多数图像处理问题。对任何想在工作中有效应用数字图像处理技术的人来说,把时间用在学习和掌握博里叶变换上是很有必要的。

2.傅立叶(Fourier)变换的定义

对于二维信号,二维连续Fourier变换定义为:

二维离散傅立叶变换为:

图像的傅立叶变换与一维信号的傅立叶变换变换一样,有快速算法,具体参见参考书目,有关傅立叶变换的快速算法的程序不难找到。实际上,现在有实现傅

立叶变换的芯片,可以实时实现傅立叶变换。三,实验内容

1.根据二维离散Fourier变换的定义编写程序

2.实现图象的变换

3.画出图象的频谱图。实验图像:任选

四,实验要求

1、实验之前要预习

2、独立完成程序的编写

3、写出实验报告。

4、实验每组1人

五,实验程序及实验结果分析

1.数字图像处理的傅里叶变换

实验的程序代码:

clear all

close all

A=imread('xingyueye.jpg');

%读入并且显示出一个图像文件

subplot(1,2,1);

信号与系统实验报告3实验3傅里叶变换及其性质

信号与系统实验报告3实验3傅里叶变换及其性质

信息工程学院实验报告

课程名称:

实验项目名称:实验3 傅里叶变换及其性质 实验时间:2015/11/17 班级:通信141 : 学号:5

一、实 验 目 的:

学会运用MATLAB 求连续时间信号的傅里叶(Fourier )变换;学会运用MATLAB 求连续时间信号的频谱图;学会运用MATLAB 分析连续时间信号的傅里叶变换的性质。

二、实 验 设 备 与 器 件 软件:Matlab 2008 三、实 验 原 理 3.1傅里叶变换的实现

信号()f t 的傅里叶变换定义为: ()[()]()j t F F f t f t e dt ωω∞

--∞

==⎰

傅里叶反变换定义为:1

1()[()]()2j t f t F F f e d ωωωωπ

--∞

==

信号的傅里叶变换主要包括MATLAB 符号运算和MATLAB 数值分析两种方法,下面分别加以探讨。同时,学习连续时间信号的频谱图。 3.1.1 MATLAB 符号运算求解法

MATLAB 符号数学工具箱提供了直接求解傅里叶变换与傅里叶反变换的函数fourier( )和ifourier( )。Fourier 变换的语句格式分为三种。

(1)F=fourier(f):它是符号函数f 的Fourier 变换,默认返回是关于ω的函数。

(2)F=fourier(f,v):它返回函数F 是关于符号对象v 的函数,而不是默认的

ω,即

()()jvt F v f t e dt ∞

--∞

=⎰。

(3)F=fourier(f,u,v):是对关于u 的函数f 进行变换,返回函数F 是关于v 的函数,即

fourier变换及逆变换

fourier变换及逆变换

fourier变换及逆变换

Fourier变换是一种常用于信号和图像处理的数学工具,它将一个信号在时域中的表示转换为在频域中的表示。Fourier变换能够将信号分解成一系列正弦和余弦函数的组合,从而分析信号的频谱特性。

在数学上,Fourier变换定义为:

F(ω) = ∫f(t)e^(-iωt)dt

其中,F(ω)表示在频域中的信号表示,f(t)表示在时域中的信号表示,e^(-iωt)表示复指数函数,ω表示角频率。

Fourier逆变换是Fourier变换的逆操作,它将在频域中的信号表示转换回时域中的信号表示。逆变换定义为:

f(t) = (1/2π)∫F(ω)e^(iωt)dω

其中,f(t)表示在时域中的信号表示,F(ω)表示在频域中的信号表示,e^(iωt)表示复指数函数,ω表示角频率。

通过Fourier变换和逆变换,我们可以在信号的时域和频域之间进行转换,并分析信号的频谱特性,包括频率分量、幅度和相位。这对于信号处理、滤波、图像处理等应用非常重要。

[经验]matlab完成傅里叶变换

[经验]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 )是计算离散傅里叶变换及其逆变换的快速算法。)。

信号与系统matlab实验傅里叶分析及应用报告答案

信号与系统matlab实验傅里叶分析及应用报告答案

实验二傅里叶分析及应用

姓名学号班级

一、实验目的

(一)掌握使用Matlab进行周期信号傅里叶级数展开和频谱分析

1、学会使用Matlab分析傅里叶级数展开,深入理解傅里叶级数的物理含义

2、学会使用Matlab分析周期信号的频谱特性

(二)掌握使用Matlab求解信号的傅里叶变换并分析傅里叶变换的性质

1、学会运用Matlab求连续时间信号的傅里叶变换

2、学会运用Matlab求连续时间信号的频谱图

3、学会运用Matlab分析连续时间信号的傅里叶变换的性质

(三)掌握使用Matlab完成信号抽样并验证抽样定理

1、学会运用MATLAB完成信号抽样以及对抽样信号的频谱进行分析

2、学会运用MATLAB改变抽样时间间隔,观察抽样后信号的频谱变化

3、学会运用MATLAB对抽样后的信号进行重建

二、实验条件

需要一台PC机和一定的matlab编程能力

三、实验内容

2、分别利用Matlab符号运算求解法和数值计算法求下图所示信号的FT,并画出其频谱图(包括幅度谱和相位谱)[注:图中时间单位为:毫秒(ms)]。

符号运算法: Ft=

sym('t*(Heaviside(t+2)-Heaviside(t+1))+Heaviside(t+1)-Heaviside(t-1)+(-t)*(Heavi side(t-1)-Heaviside(t-2))'); Fw = fourier(Ft); ezplot(abs(Fw)),grid on; phase = atan(imag(Fw)/real(Fw)); ezplot(phase);grid on; title('|F|'); title('phase');

matlab 离散傅里叶逆变换

matlab 离散傅里叶逆变换

标题:探究Matlab中离散傅里叶逆变换的原理与应用

在Matlab中,离散傅里叶变换(Discrete Fourier Transform,DFT)和离散傅里叶逆变换(Inverse Discrete Fourier Transform,IDFT)是信号处理中极为重要的概念和工具。它们在数字信号处理、通信系统、图像处理等领域有着广泛的应用。在本文中,我们将探讨Matlab 中离散傅里叶逆变换的原理与应用,从简单到复杂地解释这一概念,

以便读者更深入地理解和运用。

1. 离散傅里叶变换(DFT)和离散傅里叶逆变换(IDFT)的基本概念

在信号处理中,DFT和IDFT是将信号从时域转换到频域或者从频域转换到时域的重要数学工具。DFT将离散的时域信号转换成相应的频率谱,而IDFT则是将频域信号还原回时域信号。在Matlab中,我们可以使用fft和ifft函数来进行DFT和IDFT的计算,其中ifft即代表离

散傅里叶逆变换。

2. Matlab中离散傅里叶逆变换的实现

在Matlab中,我们可以使用ifft函数来进行离散傅里叶逆变换的计算。ifft函数的基本语法为:

```matlab

x = ifft(X)

```

其中X为输入的频域信号,x为输出的时域信号。在实际应用中,我

们可以通过ifft函数将频域信号恢复为原始的时域信号,以便进行进一步的分析和处理。

3. 离散傅里叶逆变换在信号重构中的应用

离散傅里叶逆变换在信号重构中起着重要作用。通过DFT将信号转换到频域,对频域信号进行处理后,可以利用IDFT将处理后的频域信号还原为时域信号,实现信号的重构和恢复。在通信系统中,信号的调制、解调等过程中也会涉及到离散傅里叶逆变换的应用。

信号与系统Matlab实验作业

信号与系统Matlab实验作业

实验一典型连续时间信号和离散时间信号

一、实验目的

掌握利用Matlab画图函数和符号函数显示典型连续时间信号波形、典型时间离散信号、连续时间信号在时域中的自变量变换。

二、实验内容

1、典型连续信号的波形表示(单边指数信号、复指数信号、抽样信号、单位阶

跃信号、单位冲击信号)

1)画出教材P28习题1-1(3) ()[(63)(63)]

t

=----的波形图。

f t e u t u t

2)画出复指数信号()()j t f t e σω+=当0.4, 8σω==(0<t<10)时的实部和虚部的

波形图。

t=0:0.01:10;

f1='exp(0.4*t)*cos(8*t)';

f2='exp(0.4*t)*sin(8*t)';

figure(1)

ezplot(f1,t);

grid on;

figure(2)

ezplot(f2,t);

grid on;

3)画出教材P16图1-18,即抽样信号Sa(t)的波形(-20<t<20)。t=-10:0.01:10;

f='sin(t)/t';

ezplot(f,t);

grid on;

4)用符号函数sign画出单位阶跃信号u(t-3)的波形(0<t<10)。t=0:0.01:10;

f='(sign(t-3)+1)/2';

ezplot(f,t);

grid on;

5)单位冲击信号可看作是宽度为∆,幅度为1/∆的矩形脉冲,即t=t 1处的冲

击信号为

11111 ()()0 t t t x t t t other

δ∆⎧<<+∆⎪=-=∆⎨⎪⎩

Matlab在复变函数中的应用实验课(0903)

Matlab在复变函数中的应用实验课(0903)

Matlab在复变函数中应用运城学院应用数学系

1

MATLAB 在复变函数中的应用

复变函数的运算是实变函数运算的一种延伸,但由于其自身的一些特殊的性质而显得不同,特别是当它引进了“留数”的概念,且在引入了Taylor 级数展开Laplace 变换和Fourier 变换之后而使其显得更为重要了。

使用MATLAB 来进行复变函数的各种运算;介绍留数的概念及MAT –LAB 的实现;介绍在复变函数中有重要应用的Taylor 展开(Laurent 展开Laplace 变换和Fourier 变换)。 1 复数和复矩阵的生成

在MATLAB 中,复数单位为)1(-==sqrt j i ,其值在工作空间中

都显示为i 0000.10+。 1.1 复数的生成

复数可由i b a z *+=语句生成,也可简写成bi a z +=。 另一种生成复数的语句是

)

exp(theta i r z **=,也可简写成

)exp(i theta r z *=,其中

theta 为复数辐角的弧度值,r 为复数的模。

1.2 创建复矩阵

创建复矩阵的方法。

如同一般的矩阵一样以前面介绍的几种方式输入矩阵

例如:)]33exp(23),6exp(9,32,53[i i i i A ***+-*+= 2 复数的运算

1.复数的实部和虚部

复数的实部和虚部的提取可由函数real 和imag 实现。 调用形式 )(x real

返回复数x 的实部

)(x imag

返回复数x 的虚部

2.共轭复数

复数的共轭可由函数conj 实现。 调用形式

)(x conj

实验三、DFT和DCT及频域滤波

实验三、DFT和DCT及频域滤波

一. 实验名称:数字信号的 DFT/DCT 及频域滤波 二. 实验目的

1. 熟练掌握数字信号(1D )及数字图像(2D)离散傅立叶变换(DFT )及离散余弦变换(DCT )方法、基本原理及实现流程。熟悉两种变换的性质,并能对 DFT 及 DCT 的结果进行必要解释。

2. 深入理解离散信号采样频率、奈奎斯特频率及频率分辨率等基本概念,弄清它们之间的相互关系。了解离散傅里叶变换(DFT )中频率泄露的原因,以及如何尽量减少频率泄露影响的途径。

3. 熟悉和掌握利用 MATLAB 工具进行 1D/2D FFT 及 DCT 的基本步骤、MATLAB 函数使用及对具体变换的处理流程。

4. 能熟练应用 MATLAB 工具对数字图像进行 FFT 及 DCT 处理,并能根据需要进行必要的频谱分析和可视化显示。

三. 实验原理 1、 傅立叶变换

● 傅立叶变换:非周期函数表示为正弦和/或余弦乘以加权函数的积分。 ● 一维连续Fourier 变换

对函数f (x )进行傅立叶变换得到F (u )

()()2j xu F u f x e dx π+∞

--∞

=⎰

(1)

逆变换,即将F (u)变换到f (x )为

()()2j xu f x F u e du π+∞

-∞

=⎰

(2)

● 一维离散Fourier 变换

正变换(DFT)

()1

2/0

(),0,1,,1N j xu N x F u f x e u N π--===-∑L

(3)

逆变换(IDFT)

()1

2/0

1

(),0,1,,1N j xu N

u f x F u e

x N N

信号与系统 matlab 综合 实验 第四章 傅里叶变换

信号与系统 matlab 综合 实验 第四章 傅里叶变换

1.如图4.4所示锯齿波信号,分别取一个周期的抽样数据X1(t),0<=t<=1和五个周期的数据X(t),0<=t<5,计算其傅立叶变换X1(w)和X(w),比较有和不同并解释原因。

图4.4 练习题2图

编程如下:

%计算单位锯齿波和五个周期波形的傅立叶变换

%数值算法用矩阵实现,大大加快了运行速度;并且直接调用“sawtooth”生成5个周期的锯齿波

T1=1; %单个周期时域范围

N1=10000; %时域抽样点数

t1=linspace(0,T1-T1/N1,N1)'; %生成抽样时间点

f1=1-2*t1; %生成抽样函数值

OMG=32*pi; %频域范围

K1=100; %频域抽样点数

omg=linspace(-OMG/2,OMG/2-OMG/K1,K1)'; %生成抽样频率点

X1=T1/N1*exp(-j*kron(omg,t1.'))*f1; %傅里叶正变换求解傅里叶系数

fs1=OMG/2/pi/K1*exp(j*kron(t1,omg.'))*X1; %傅里叶逆变换还原时域函数

T2=5; %五个周期时域范围

N2=10000; %时域抽样点数

t2=linspace(0,T2-T2/N2,N2)'; %生成抽样时间点

fs2=0*t2;

f2=sawtooth(t2*2*pi,0); %生成五个周期的锯齿波

X2=T2/N2*exp(-j*kron(omg,t2.'))*f2; %傅里叶正变换求解傅里叶系数

fs2=fs2+OMG/2/pi/K1*exp(j*kron(t2,omg.'))*X2; %傅里叶逆变换还原时域函数

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
plot(t,w,'b','LineWidth',2.5); title('矩形脉冲信号');xlabel('t --->'); 在命令窗口输入cftbyfft(w,t);得到该信号的傅氏变换频谱图 或者在命令窗口输入exp8_2_;得到该信号的傅氏变换频谱图与理论
实验三 MATLAB求Fourier变换及逆变换
(一) 实验类型:综合性 (二) 实验类别:基础实验 (三) 实验学时数:2学时
.
基本命令
1、fourier 指令的使用 F = fourier(f,u,v) 其中f是需要变换的表达式;u是变量; v是算子 就是最后的表达式是z或者v的函数
例1 求
例3 求函数f t 1的Fourier变换
t
【Matlab源程序】 syms t W
fourier(1/t) %结果为:
ans = i*pi*(1-2*heaviside(w))
求Fourier变换还可用方法:fourier, simple 指令 的配合使用
例4 求函数f eb2x2 (b 0)的Fourier变换
例6 写出下列【Matlab源程序】的结果
syms t w; syms beta positive;%定义符号参量beta
g=sym('Heaviside(t)');
f=t*exp(-beta*t)*g;
Leabharlann BaiduF=fourier(f) %结果为: F=
1/(beta+i*w)^2
例7 求 FW We 3wuw 的Fourier逆变换.
F2=simple(fourier(ft)) % 误把 x 当作时间变量
F3=simple(fourier(ft,t))
% 误把 x 当作时间变量,又误把 t 当作频率变量
F1 = 1/exp(i*x*w)/(1+i*w)
F2 =i*exp(-i*t*w)/(i+w)
F3 =i*exp(-t*(2+i*t))/(i+t)
simple(‘s’),s是字符串, 如果是对某个字符函数,如
y=(2+x)/x 化简,直接用simple(y)就得到2/x+1; 有
时表达式比较复杂,一次化简结果不太理想,就再
次化简,可以用simple(simple(y)) simplify和simple是Matlab符号数学工具箱提供 的两个简化函数,区别如下: simplify的调用格 式为:simplify(S);对表达式S进行化简。Simple 是通过对表达式尝试多种不同的方法(包括simplify) 进行化简,以寻求符号表达式S的最简形式
例5 求函数 f cosat, g sinat的Fourier 变换
解:【Matlab源程序】 syms t w a; syms a positive;%定义符号参量a f=cos(a*t); g=sin(a*t); F=simple(fourier(f)) G=simple(fourier(g)) F= %结果为: pi*(dirac(-w+a)+dirac(w+a)) G= i*pi*(-dirac(-w+a)+dirac(w+a))
3、ifourier(Yw,w,t)逆变换命令的使用
对上述例1 求 Fourier 逆变换进行验算 解 syms t w; UT = pi*Dirac(w)-i/w; Ut=ifourier(UT,w,t) % 结果与原函数相等 Ut =heaviside(t)
或解1 syms t w; Yw = pi*Dirac(w)-i/w; ifourier(Yw,w,t) ans =heaviside(t)
对上述例1 求 Fourier 变换 syms t w;ut=sym('Heaviside(t)'); % 定义 0 时刻起跳的单位阶跃函数 <1> UT=fourier(ut) % 实施 Fourier 变换,给出与理论一致的结果 UTC=maple('convert',UT,'piecewise','w') % 计算结果起指示作用 <3> UTS=simple(UT) % 在此是 5.3 版的运算结果,简化导致漏项! UT = pi*Dirac(w)-i/w UTC = PIECEWISE([undefined, w = 0],[0, otherwise]) UTS = pi*Dirac(w)-i/w
解: 【Matlab源程序】 syms t u w ifourier(w*exp(-3*w)*sym('Heaviside(w)')) %结果为: ans =1/2/(-3+i*x)^2/pi
例8 矩形脉冲信号的傅氏变换
编写信号 M=8; tend=1; T=10; N=2^M; dt=T/N; n=0:N-1; t=n*dt; w=zeros(size(t,2),1); Tow=find((tend-t)>0); w(Tow,1)=ones(length(Tow),1);
注释:
(1)sym的意思是symbol,就是后面括号里面是个 代数式,要进行符号运算,不加意思就完全变了 (2)Dirac-----δ函数
(3)Heaviside----一般表示为阶跃函数 function f=heaviside(t) f=(t>0);小于0的都为0;大于0的为1;就是阶跃函数.
解:【Matlab源程序】 syms x w; syms b positive ;%定义符号参量b f=exp(-b^2*x^2); F=simple(fourier(f)) %结果为: F =1/b*pi^(1/2)*exp(-1/4*w^2/b^2)
求多个函数的Fourier 变换【Matlab源程序】
Fourier 变换
解 syms t w; ut=sym('Heaviside(t)'); % 定义 0 时刻起跳的单位阶跃函数 UT=fourier(ut) % 实施 Fourier 变换,给出与理论一致的结果 UT = pi*Dirac(w)-i/w
2、simple 指令 matlab中simple函数的用法
4、fourier 的缺省调用格式的使用
例2 求
的 Fourier 变换.
演示: fourier 的缺省调用格式的使用要十分谨慎.
syms t x w;ft=exp(-(t-x))*sym('Heaviside(t-x)');
F1=simple(fourier(ft,t,w))
% 给出以 w 为频率变量的正确结果
相关文档
最新文档