几种简单连续信号的matlab实现

合集下载

连续时间信号的频域分析及Matlab实现

连续时间信号的频域分析及Matlab实现
f= 1/2*exp(-t)*heaviside(t)+1/2*exp(t)*heaviside(-t)
function CTF3()
1/2 exp(-2 t) heaviside(t)
syms t v w x;
F = fourier(x);
0.4
x = 1/2*exp(-2*t)*sym('Heaviside(t)');0.2

fliplr例子
6 4
>> n = 0:4; >> a = [5 4 3 2 1]; >> subplot(2,1,1),stem(n,a);
2
>> b = fliplr(a);
>> k = -4:4; >> c = [b,a(2:end)];
0 -5
-4
-3
-2
-1
0
1
2
3
4
5
6
4
>> subplot(2,1,2),stem(k,c);
0 0 0.5 1 t 1/2/abs(2+i w) 0.25 0.2 0.15 0.1 -6 -4 -2 0 w 2 4 6 1.5 2
subplot(2,1,1);
ezplot(x); subplot(2,1,2);
ezplot(abs(F));
f(t) = u(t+1) - u(t-1) 1
function [A_sym,B_sym] = CTF2()
syms t n k x T = 5; tao = T/5; a = 0; Nf = 16; Nn = 32; x1 = sym('Heaviside(t+0.5)')*h; x = x1 - sym('Heaviside(t-0.5)')*h; A0 = 2*int(x,t,-a,T-a)/T;%求出三角函数展开系数A0

matlab求连续信号的频谱函数和离散信号频谱函数的方法

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)来获得。

信号与系统报告实验1连续时间信号的MATLAB表示与计算

信号与系统报告实验1连续时间信号的MATLAB表示与计算
(4)编写m文件,并以Q1_3为文件名存盘绘出f(t)=Sa(2 t),f(2t-2)的波形,t的范围在-2~2s。 程序源码: t=-2:0.01:2 ft=sinc(t*2); subplot(1,2,1); plot(t,ft);
title('ft=Sa(2t)'); grid on; f1=sinc((t*2-2)*2); subplot(1,2,2); plot(t,f1); title('f(2t-2)'); grid on; 图形:
(5)编写m文件,并以Q1_4为文件名存盘。实现如图1—14所示的信号f(t)。 程序源码: t=-5:0.01:5; f1=2*heaviside(t+1)-heaviside(t-1)-2*heaviside(t-2)+heav iside(t-3); plot(t,f1); grid on; title('f(t)') axis([-5 5 -3 3]); 图形:
(3)、编写m文件,并以Q1_2为文件名存盘绘出e-2(u(t)-u (t-3))信号,给图形标出名称和坐标轴名称。 程序源码: syms t ft=sym('1*exp(-2*t)*(heaviside(t)-heaviside(t-3))'); ezplot(ft); title('exp(-2*t)*((u(t)-u(t-3))'); xlabel('t'); ylabel('ft'); grid on; 图形:
三、实验中遇到的问题 实验中经常出现各种错误,往往因为各种细小错误的出现使得整个程序运行错误。第1题中要注意所定义的函数名须与所保存的文件名一致,单位阶跃信号u(t)和单位冲激信 号需要输入数据才能得到相应的信号波形。第2题中的信号是由两个信号函数相加而成,并不是两个信号波形的叠加,故所得波形中间没有一横。其中第三个图是由两个三角波 脉冲信号相减而成,开始时用三角波脉冲信号减去矩形脉冲信号,运行并没有得到所要的信号波形。第4题需要增大时间t的取值范围才能得到函数的多个周期波形,以便于判 断函数是否为周期性信号。 在这次实验中我体会到:实验就是一个发现错误并改正错误的 过程。正因为有错误的出现才显示出实验的魅力。

实验一--连续时间信号在Matlab中的运算

实验一--连续时间信号在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常见信号的表示及运算

信号与系统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文件名。

用MATLAB实现常用的连续时间信号及其时域运算

用MATLAB实现常用的连续时间信号及其时域运算

用MATLAB实现常用的连续时间信号及其时域运算信息与通信工程学院通信133班卢承慧一.引言1.要求:1.1用MATLAB语言产生连续时间信号1.2对连续时间信号进行时域运算2.任务:①绘制用于产生以下信号的通用程序,要求对于任意给定的参数都能实现所要求的信号。

调试并运行这些程序,具体产生由指导教师制定的信号并绘制信号波形。

a. f(t)=δ(t-t );b. f (t) = Au(t-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实现

课程设计任务书题目:连续时间信号和系统时域分析及MATLAB实现课题内容:一、用MATLAB实现常用连续时间信号的时域波形(通过改变参数,分析其时域特性)。

二、用MATLAB实现信号的时域运算三、用MATLAB实现信号的时域变换(参数变化,分析波形变化)1、反转,2、使移(超时,延时),3、展缩,4、倒相,5、综合变化四、用MATLAB实现信号简单的时域分解1、信号的交直流分解,2、信号的奇偶分解五、用MATLAB实现连续时间系统的卷积积分的仿真波形给出几个典型例子,对每个例子,要求画出对应波形。

六、用MATLAB实现连续时间系统的冲激响应、阶跃响应的仿真波形。

给出几个典型例子,四种调用格式。

七、利用MATLAB实现连续时间系统对正弦信号、实指数信号的零状态响应的仿真波形。

给出几个典型例子,要求可以改变激励的参数,分析波形的变化。

时间安排:学习MATLAB语言的概况第1天学习MATLAB语言的基本知识第2、3天学习MATLAB语言的应用环境,调试命令,绘图能力第4、5天课程设计第6-9天答辩第10天指导教师签名:年月日目录摘要 (Ⅰ)1.绪论 (1)2.对课题内容的分析 (2)2.1连续时间信号概述 (2)2.2采样定理 (2)2.3总体思路 (2)3.设计内容 (2)3.1用MATLAB实现常用连续时间信号的时域波形 (2)3.1.1单位阶跃信号和单位冲击信号 (2)3.1.2正弦信号 (4)3.1.3指数信号 (5)3.1.4实指数信号和虚指数信号 (6)3.2用MATLAB实现信号的时域运算 (7)3.2.1相加 (7)3.2.2相乘 (8)3.2.3数乘 (9)3.2.4微分 (10)3.2.5积分 (12)3.3用MATLAB实现信号的时域变换 (13)3.4用MATLAB实现信号简单的时域分解 (15)3.4.1 交直流分解 (15)3.4.2 奇偶分解 (16)3.5用MATLAB实现连续时间系统的卷积积分的仿真波形 (18)3.6用MATLAB实现连续时间系统的冲激响应、阶跃响应的仿真波形 (19)3.7利用MATLAB实现连续时间系统对正弦信号、实指数信号的零状态响应的仿真波形 (20)4.心得体会 (22)5.参考文献 (23)摘要本文介绍了基于MATLAB的连续时间信号与系统时域分析。

应用_MATLAB实现连续信号的采样与重构

应用_MATLAB实现连续信号的采样与重构

应用_MATLAB实现连续信号的采样与重构连续信号的采样与重构是数字信号处理中一个重要的概念,MATLAB作为一种强大的数值计算软件,可以很方便地实现连续信号的采样和重构。

连续信号的采样是指将连续时间上的信号转换为离散时间上的信号。

在MATLAB中,可以使用两种方式进行采样:时间域采样和频率域采样。

时间域采样是指根据一定的采样频率对连续信号进行采样。

在MATLAB中,可以使用"linspace"函数生成一定时间范围内的等间隔采样点。

例如,生成一个时间范围为0到1秒,采样频率为1000Hz的采样点序列可以使用以下代码实现:```fs = 1000; % 采样频率t = linspace(0, 1, fs); % 生成采样点序列```频率域采样是指将连续信号的频谱进行采样。

在MATLAB中,可以使用"fft"函数对信号进行傅里叶变换,得到信号的频谱。

然后可以根据需要选择一定数量的频域采样点进行重构。

例如,对一个连续信号x进行频域采样,可以使用以下代码实现:```X = fft(x); % 对信号进行傅里叶变换得到频谱Xn=1000;%选择1000个频域采样点进行重构x_reconstructed = ifft(X(1:n)); % 对频域采样点进行逆傅里叶变换得到重构信号```连续信号的重构是指根据采样点进行信号的还原。

在MATLAB中,可以使用插值方法进行重构,常用的插值方法有线性插值、样条插值等。

例如,使用线性插值对连续信号进行重构,可以使用以下代码实现:```x_reconstructed = interp1(t, x, t_reconstructed, 'linear'); % 使用线性插值对信号进行重构```上述代码中,t为原始采样点序列,x为原始信号,t_reconstructed为重构时使用的采样点序列。

除了插值方法,MATLAB还提供了其他一些重构信号的函数,例如"upfirdn"函数可以实现区间插值和抽取操作,"resample"函数可以实现信号的重采样等。

连续时间信号频谱分析研究及MATLAB实现

连续时间信号频谱分析研究及MATLAB实现

周期 ,即频 谱数值 计算 的范 围 ;而 在某 时间段 上对信
即得到离散频率点上 的近似计算式 :

. 一 .

号进 行截取 的方 式 .即不 同窗函数 的应用 .决定 了信 号频谱估计 的精度和有效范 围。 设 要 分 析 连 续 时 间 非 周 期 信 号 厂 f在 频 率 范 围 ( )
f()x (j n f) n ep一 0 ) 3 3
n= 0
对 ID T : F 计算式 显然有 I c
Ff J . T D T ( ] T Fk 1l () 2 ・ F[ n = ・ ( 4 f ) )


该式表明 ,利用D TF T计算连续 时间傅 ̄ n 变换 F (F ) - I - 的频谱时 ,除 了计算时域样点的离散傅里叶变化的频谱 , 七 ,还要gF k乘 以取 样时间间隔 ,才能得出结果 。 () q () 直 接 计 算 DF 的 复 杂 度 为 序 列 长 度 的 平 方 ,即 T
取信 号 的时 间段 、如何 选择 时域采 样率 ,以及在 时 间
Hz

采 样 时 间间 隔 ( 间分 辨率 ) =l , 5 ,而 时 为T / = ms f
段 上对信 号进 行截取 的方式 。截取 信号 的 时间段 长度 根 据要 求的频 率分辨 率可 以得 出信 号 时域截 断长 度为
2 、频 谱 分 析 的若 干 问题 讨 论
( )根据频率分辨率要 求确定分析信号厂( 的截取 2 f ) 时间长度 。要使所分析的频率分辨率达到△ ,即每隔 厂 计算一个频率点 ,那么对信号 的截取时间长度三 必须满足 L / ≥1A f,根据截取时间长度 和采样时间间隔 可以计
算出截取 时间信号离散化之后的序列点数Ⅳ ,也可 以由计

应用_MATLAB实现连续信号的采样与重构仿真

应用_MATLAB实现连续信号的采样与重构仿真

应用_MATLAB实现连续信号的采样与重构仿真MATLAB是一款强大的数学建模和仿真软件,非常适合用于实现连续信号的采样与重构仿真。

本文将详细介绍如何使用MATLAB实现这一过程,并探讨其中的原理和细节。

一、连续信号的采样在MATLAB中,可以使用采样函数`sample(`来实现对连续信号的采样。

采样过程的关键参数是采样频率和采样周期。

采样频率表示单位时间内采样的次数,采样周期表示两次采样之间的时间间隔。

假设我们要对一个连续信号进行采样,步骤如下:1.定义采样频率和采样周期采样频率一般根据采样要求来确定,可以根据信号的最高频率进行选择。

常见的采样频率有8kHz、16kHz等。

采样周期是采样频率的倒数,即`Ts=1/fs`。

2.创建一个采样时间序列通过`Ts`和信号的时间长度确定采样时间序列,可以使用`linspace(`函数生成等间隔的采样时间序列。

3.对信号进行采样使用`sample(`函数对信号进行采样。

该函数接受两个参数,第一个参数是要采样的信号,第二个参数是采样时间序列。

4.可视化采样结果使用`plot(`函数可以将连续信号和采样信号在同一个图中进行比较,以便观察采样效果。

二、连续信号的重构重构是指将离散的采样信号还原为原始的连续信号。

实现连续信号的重构可以使用内插函数,如线性插值、多项式插值等。

在MATLAB中,可以使用`interp(`函数来实现信号的重构。

假设我们已经得到了采样信号和采样时间序列,步骤如下:1.定义重构时间序列重构时间序列与采样时间序列的生成方式相同,可以使用`linspace(`函数生成等间隔的时间序列。

2.对采样信号进行插值使用`interp(`函数对采样信号进行插值。

该函数接受两个参数,第一个参数是采样时间序列,第二个参数是采样信号。

3.可视化重构结果使用`plot(`函数将重构信号与原始信号进行比较,以便观察重构效果。

三、仿真实例为了更好地理解连续信号的采样与重构过程,在这里我们以正弦信号为例进行仿真。

信号系统MATLAB实验报告

信号系统MATLAB实验报告

信号与系统实验报告桂林理工大学信息科学与工程学院 电子信息工程实验二 信号及其表示【实验目的】了解各种常用信号的表达方式掌握部分绘图函数【实验内容】一、绘出连续时间信号x(t)=t e 707.0 sin 32t 关于t 的曲线,t 的范围为 0~30s ,并以递增。

MATLAB 源程序为:t=0::30; %对时间变量赋值x=exp*t).*sin(2/3.*t); %计算变量所对应得函数值 plot(t,x);grid; %绘制函数曲线ylabel('x(t)');xlabel('Time(sec)')二、产生周期为的方波。

MATLAB源程序为:Fs=100000;t=0:1/Fs:1;x1=square(2*pi*50*t,20);x2=square(2*pi*50*t,80);subplot(2,1,1),plot(t,x1),axis([0,,,]); subplot(2,1,2),plot(t,x2),axis([0,,,]);三、产生sinc(x)函数波形。

MATLAB源程序为:x=linspace(-4,4);y=sinc(x);plot(x,y)四、绘制离散时间信号的棒状图。

其中x(-1)=-1,x(0)=1,x(1)=2,x(2)=1,x(3)=0,x(4)=-1,其他时间x(n)=0。

MATLAB源程序为:n=-3:5; %定位时间变量x=[0,0,-1,1,2,1,-1,0,0];stem(n,x);grid; %绘制棒状图line([-3,5],[0,0]); %画X轴线xlabel('n');ylabel('x[n]')五、单位脉冲序列δ(n-0n )={00...1...0n n n n =≠直接实现:x=zeros(1,N);x(1,n0)=1;函数实现:利用单位脉冲序列)(0n n -δ的生成函数impseq,即 function[x,n]=impseq(n0,ns,nf)n=[ns:nf];x=[(n-n0)==0];plot(n,x);stem(n,x);输入参数:impseq(0,0,9)——连续图形012345678900.10.20.30.40.50.60.70.80.91输入参数:impseq(0,0,9)——离散图形六、单位阶跃序列ε(n-0n )={00...1...0n n n n ≥<直接实现:n=[ns:nf];x=[(n-n0)>=0];函数实现:利用单位阶跃序列)(0n n -ε的生成函数stepseq ,即 Function[x,n]=stepseq(n0,ns,nf)n=[ns:nf];x=[(n-n0)>=0];plot(n,x);七、实指数序列=,∀)(x n∈,Ranna直接实现:n=[ns:nf]:x=a.^n;函数实现:利用实指数序列n a(的生成函数rexpseq,即n)x=Function[x,n]=rexpseq(a,ns,nf)n=[ns:nf];x=a,^n:八、复指数序列n e n x n j ∀=+,)()(ωδ直接实现:n=[ns:nf];x=exp((sigema+jw)*n);函数实现:利用复指数序列n j e n x )()(ωδ+=的生成函数cexpseq,即 Function[x,n]=cexpseq(sigema,w,ns,nf)n=[ns:nf];x=exp((sigema+j*w)*n);0123456789-3000-2000-1000100020003000400050006000九、正(余)弦序列n wn n x ∀+=),cos()(θ直接实现:n=[ns:nf];x=cos(w*n+sita);函数实现:利用正(余)弦序列x(n)=cos(wn+θ)的生成函数cosswq,即Function[x,n]=cosseq(w,ns,nf,sita)n=[ns:nf];x=cos(w*n+sita);输入参数:cosseq,0,9,30)——连续信号0123456789-0.2-0.15-0.1-0.0500.050.10.150.2输入参数:cosseq,0,9,30)——离散信号0123456789实验三信号的运算【实验目的】了解信号处理的基本操作。

连续时间信号和离散时间信号在MATLAB中的绘制

连续时间信号和离散时间信号在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时所对应的离散余弦信号的波形。

《MATLAB》连续时间信号的频域分析和连续时间系统的时域分析实验报告

《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实现连续信号与系统复频域分析

摘要拉普拉斯变换(Laplace Transform),是工程数学中常用的一种积分变换。

它是为简化计算而建立的实变量函数和复变量函数间的一种函数变换。

对一个实变量函数作拉普拉斯变换,并在复数域中作各种运算,再将运算结果作拉普拉斯反变换来求得实数域中的相应结果,往往比直接在实数域中求出同样的结果在计算上容易得多。

拉普拉斯变换的这种运算步骤对于求解线性微分方程尤为有效,它可把微分方程化为容易求解的代数方程来处理,从而使计算简化。

在经典控制理论中,对控制系统的分析和综合,都是建立在拉普拉斯变换的基础上的。

引入拉普拉斯变换的一个主要优点,是可采用传递函数代替微分方程来描述系统的特性。

这就为采用直观和简便的图解方法来确定控制系统的整个特性(见信号流程图、动态结构图)、分析控制系统的运动过程(见奈奎斯特稳定判据、根轨迹法),以及综合控制系统的校正装置(见控制系统校正方法)提供了可能性。

拉普拉斯变换在工程学上的应用:应用拉普拉斯变换解常变量齐次微分方程,可以将微分方程化为代数方程,使问题得以解决。

在工程学上,拉普拉斯变换的重大意义在于:将一个信号从时域上,转换为复频域(s域)上来表示;在线性系统,控制自动化上都有广泛的应用。

关键词:拉普拉斯变换,拉普拉斯反变换,拉普拉斯变换幅度曲面,MATLAB目录绪论 (3)(一)MATLAB软件简介 (3)(二)课程设计意义及目的 (3)设计原理 (4)(一)拉普拉斯变换 (4)(二)拉普拉斯反变换 (4)课程设计 (7)(一)拉普拉斯变换的MATLAB实现 (7)(二)拉普拉斯的反变换的MATLAB实现 (7)(三)通过MATLAB实现拉普拉斯变换曲面图 (9)致谢 (12)参考文献: (12)绪论(一)MATLAB软件简介MATLAB(矩阵实验室)是MatrixLaboratory的缩写,是一款由美国The Mathworks 公司出品的商业数学软件。

MATLAB是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。

连续时间信号在matlab中的表示

连续时间信号在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实现连续信号的采样与重构仿真MATLAB是一个非常强大的数学计算工具,广泛应用于工程和科学领域。

在信号处理领域,MATLAB提供了许多功能和工具,可以方便地进行连续信号的采样和重构仿真。

首先,我们需要了解什么是连续信号的采样和重构。

连续信号是指在时间上连续变化的信号,例如声音信号或电压信号。

采样是指将连续信号在一定时间间隔内进行离散化处理,得到一组离散的样本点。

而重构是指根据采样得到的离散样本点,通过插值等技术恢复出原始连续信号。

下面我们将利用MATLAB进行连续信号的采样和重构仿真。

首先,我们定义一个连续信号。

例如,我们可以定义一个正弦信号:```matlabfs = 1000; % 采样频率t = 0:1/fs:1; % 时间范围为1秒f=10;%正弦波频率x = sin(2*pi*f*t); % 定义的连续信号```接下来,我们可以使用`plot`函数绘制连续信号的波形图:```matlabfigure;plot(t, x);xlabel('时间 (s)');ylabel('幅值');title('连续信号波形图');```我们可以看到,绘制出了一个正弦波的波形图。

接下来,我们可以对连续信号进行采样。

采样是以一定的时间间隔对连续信号进行离散化处理。

在MATLAB中,可以使用`downsample`函数实现采样。

我们假设采样频率为200Hz,即每秒采样200个样本点。

```matlabfs_sample = 200; % 采样频率x_sample = downsample(x, fs/fs_sample); % 采样得到的离散样本点t_sample = 0:1/fs_sample:1/fs_sample*(length(x_sample)-1); % 对应的时间点```然后,我们使用`stem`函数绘制离散样本点的图像:```matlabfigure;stem(t_sample, x_sample);xlabel('时间 (s)');ylabel('幅值');title('采样信号图');```我们可以看到,绘制出了一组离散样本点的图像。

简单的matlab信号仿真

简单的matlab信号仿真

实验1 连续时间信号和离散信号的实现实验内容与方法一、验证性试验1、生成直流信号f(t)=6MA TLAB程序代码:t = -10:0.01:10;a1 = 6;subplot(3,3,1)plot(t,a1,'b');title('直流信号');xlabel('时间(t)');ylabel('幅值(f)')2、生成正弦交流信号f(t)=sin(wt+φ)MA TLAB程序代码:t = 0:0.01:1;f = sym('sin(2*pi*t)');subplot(3,3,2)ezplot(f,[0,1]);title('正弦交流信号');xlabel('时间(t)');ylabel('幅值(f)')3、生成单位阶跃信号f(t)=ε(t)MA TLAB程序代码:t0=0;t1=-1;t2=3;dt=0.01;t=t1:dt:-t0;n=length(t);t3=-t0:dt:t2;n3=length(t3);u=zeros(1,n);u3=ones(1,n3);subplot(3,3,3)plot(t,u);hold on;plot(t3,u3);plot([-t0,-t0],[0,1]);hold off;axis([t1,t2,-0.2,1.5]);xlabel('时间(t)');ylabel('幅值(f)');title('单位阶跃信号')4、生成单位冲激信号f(t)=δ(t)MA TLAB程序代码:t0=0;t1=-1;t2=5;dt=0.1;t=t1:dt:t2;n=length(t);x=zeros(1,n);x(1,(t0-t1)/dt+1)=1/dt;subplot(3,3,4)stairs(t,x);axis([t1,t2,0,1/dt]);xlabel('时间(t)');ylabel('幅值(f)');title('单位冲激信号')5、生成周期方波信号MA TLAB程序代码:t=(0:0.0001:1);y=square(2*pi*15*t);subplot(3,3,5)plot(t,y);axis([0,1,-1.5,1.5]);xlabel('时间(t)');ylabel('幅值(f)');title('周期方波信号')6、生成三角波信号MA TLAB程序代码:t=(-3:0.0001:5);y=tripuls(t,4,0.5);subplot(3,3,6)plot(t,y);xlabel('时间(t)');ylabel('幅值(f)');title('三角波信号')7、生成正弦序列信号MA TLAB程序代码:k1=-20;k2=20;k=k1:k2;f=sin(k*pi/6);subplot(3,3,7)stem(k,f,'filled');xlabel('时间(t)');ylabel('幅值(f)');title('正弦序列')8、生成单位斜波序列信号MA TLAB程序代码:k1=-20;k2=20;k0=0;n=[k1:k2];if k0>=k2x=zeros(1,length(n));elseif (k0<k2)&(k0>k1)x=[zeros(1,k0-k1),[0:k2-k0]];elsex=(k1-k0)+[0:k2-k1];endsubplot(3,3,8)stem(n,x);xlabel('时间(t)');ylabel('幅值(f)');title('单位斜波序列')9、生成幅值调制序列信号MA TLAB程序代码:n=0:100;m=0.4;fH=0.1;fL=0.01;xH=sin(2*pi*fH*n);xL=sin(2*pi*fL*n);y=(1+m*xL).*xH;subplot(3,3,9)stem(n,y);grid;xlabel('时间(k)');ylabel('幅值f(k)');title('幅值调制序列')10、生成复指数信号y(t)=e^(-at+bjt)MA TLAB程序代码:t=0:0.01:3;a=-3;b=4;z=exp((a+i*b)*t);subplot(2,2,1);plot(t,real(z)),title('实部'):xlabel('时间(t)');ylabel('幅值(f)'); subplot(2,2,2);plot(t,imag(z)),title('虚部'):xlabel('时间(t)');ylabel('幅值'); subplot(2,2,3);plot(t,abs(z)),title('模'):xlabel('时间(t)');ylabel('幅值'); subplot(2,2,4);plot(t,real(z)),title('相角'):xlabel('时间(t)');ylabel('幅值')二、程序设计实验①a=3;x=-10:0.01:10;y=(1-2*abs(x))/a;subplot(3,3,1)plot(x,y,'b')axis([-12,12,-10,5]);xlabel('x');ylabel('y');title('(1-2*abs(x))/a')②t = 0:0.01:6*pi;f = sym('cos(3*t)+sin(2*t)');subplot(3,3,2)ezplot(f,[0,6*pi]);title('信号');xlabel('时间(t)');ylabel('幅值(f)')③t0=-5;t1=-10;t2=5;dt=0.01;t=t1:dt:t0;n=length(t);t3=t0:dt:t2;n3=length(t3);u=zeros(1,n);u3=ones(1,n3);subplot(3,3,3)plot(t,u);hold on;plot(t3,u3);plot([t0,t0],[0,1]);hold off;axis([t1,t2,-0.2,1.2]);xlabel('时间(t)');ylabel('幅值(f)');title('u(t+5)')④k1=-20;k2=20;k=k1:k2;f=cos(5*k)+sin(4*k);subplot(3,3,7)stem(k,f,'filled');xlabel('时间(k)');ylabel('幅值f(k)');title('信号4')⑤x=0:0.01:3;z=5*exp(-x);subplot(2,2,1);plot(x,real(z)),title('信号5'):xlabel('时间(x)');ylabel('幅值(f)')⑥k0=0;k1=-1;k2=10;dk=1;k=k1:dk:k2;n=length(k);x=zeros(1,n);x(1,(k0-k1)/dk+1)=1/dk;subplot(3,3,4)stairs(k+5,x);axis([k1,k2,0,1/dk]);xlabel('时间(k)');ylabel('幅值(f)');title('信号6')⑦t0=-5;t1=-6;t2=0;t=t1:t0-1;n=length(t);t3=t0:t2;n3=length(t3);u=zeros(1,n);u3=ones(1,n3);subplot(3,3,7)stem(t,u,'filled');hold on;stem(t3,u3,'filled');hold off;axis([t1,t2,-0.2,1.5]);xlabel('时间(t)');ylabel('幅值(f)');title('信号7');。

用matlab实现连续信号采样和重建的教学实践

用matlab实现连续信号采样和重建的教学实践

用matlab实现连续信号采样和重建的教学实践连续信号采样和重建是数字信号处理领域中的重要概念。

在数字信号处理中,连续信号通常会被离散化为离散时间信号,并通过数字信号处理算法进行处理。

而在对连续信号进行离散化的过程中,就需要进行采样和重建。

在本文中,我们将介绍如何用matlab实现连续信号采样和重建,旨在帮助学生加深对这一概念的理解和掌握。

具体实践步骤如下:1.生成一个连续信号首先,我们需要生成一个连续信号作为样本信号。

这里我们可以使用matlab自带的信号生成函数,例如sin、cos、sawtooth等。

例如,我们可以生成一个频率为2Hz的正弦波信号:t = 0:0.001:1;f = 2;x = sin(2*pi*f*t);plot(t,x);2.对连续信号进行采样接下来,我们需要对连续信号进行采样。

采样可以理解为对原始信号进行抽取,以获取离散时间信号。

在matlab中,我们可以使用resample函数进行采样。

具体实现代码如下:Fs = 100; % 采样率为100Hzx_resampled = resample(x,Fs,1000);t_resampled = 0:1/Fs:(length(x_resampled)-1)/Fs;plot(t_resampled,x_resampled);这里我们将原始信号采样率降低到100Hz,并用resample函数实现了采样。

3.对离散时间信号进行重建最后,我们需要对离散时间信号进行重建,以恢复原始的连续信号。

在matlab中,我们可以使用interp1函数进行重建。

具体实现代码如下:这里我们用interp1函数将离散时间信号重新插值,从而得到与原始信号相同的连续信号。

通过以上实践步骤,我们成功地实现了连续信号采样和重建,并加深了对该概念的理解和掌握。

在实际应用中,我们可以根据需要选择不同的采样率和重建方法,以满足实际需求。

利用MATLAB实现连续信号的采样与重构仿真

利用MATLAB实现连续信号的采样与重构仿真

利用MATLAB实现连续信号的采样与重构仿真连续信号的采样与重构是数字信号处理中的常见任务之一、在MATLAB中,可以使用内置的函数和工具箱来实现连续信号的采样与重构仿真。

首先,我们需要生成一个连续信号。

可以选择任何一个连续信号,比如正弦信号、余弦信号等。

以下以正弦信号为例进行说明。

使用MATLAB的`sin(`函数可以生成一个正弦信号。

可以设置信号的频率、幅度、相位等参数来定制生成的信号。

以下是生成一个频率为1Hz,幅度为1的正弦信号的示例代码:```matlabt=0:0.001:1;%生成时间序列,采样频率为1000Hz,时长为1秒f=1;%设置信号频率为1HzA=1;%设置信号幅度为1phi = 0; % 设置信号相位为0x = A * sin(2 * pi * f * t + phi); % 生成正弦信号```生成信号后,可以使用`plot(`函数来绘制信号的图像,以便观察信号的形态。

```matlabplot(t, x);xlabel('时间(秒)');ylabel('振幅');title('正弦信号');```生成连续信号后,接下来就是进行采样。

采样是指在连续时间域上对信号进行离散采样,形成离散时间域上的序列。

在MATLAB中,有多种采样方法可以选择,比如周期采样、等间隔采样等。

以下以等间隔采样为例进行说明。

首先需要设置采样的频率和采样间隔,然后使用`resample(`函数对连续信号进行采样。

```matlabfs = 100; % 设置采样频率为100HzTs = 1/fs; % 计算采样间隔n=0:Ts:1;%根据采样间隔生成采样时间序列xs = A * sin(2 * pi * f * n + phi); % 进行等间隔采样```对于周期信号,还可以使用`pulseshape(`函数设置脉冲信号的形状,用于模拟实际的采样系统。

matlab求连续信号的频谱函数和离散信号频谱函数的方法 -回复

matlab求连续信号的频谱函数和离散信号频谱函数的方法 -回复

matlab求连续信号的频谱函数和离散信号频谱函数的方法-回复问题和解决方法。

频谱分析是信号处理领域中的重要任务之一,它用于研究信号的频率特性。

在频谱分析中,连续信号和离散信号分别具有不同的频谱函数。

本文将分步介绍如何通过Matlab求解连续信号和离散信号的频谱函数。

一、连续信号频谱函数的求解方法连续信号的频谱函数可以使用傅里叶变换来求解。

傅里叶变换是将一个信号从时域转换到频域的数学工具,它可以将一个连续时间的信号分解成一系列正弦和余弦函数的叠加,也被称为频谱表示。

在Matlab中,可以使用fft函数来对连续信号进行傅里叶变换,从而求解其频谱函数。

具体步骤如下:1. 使用Matlab构造一个连续信号,可以使用Matlab中的函数生成器(如sin,cos等)生成一个简单的连续信号。

2. 对连续信号应用fft函数进行傅里叶变换。

fft函数的输入参数为连续信号和采样频率。

3. 对得到的频谱进行幅度谱和相位谱的分解。

幅度谱表示信号在不同频率下的幅值大小,相位谱表示信号在不同频率下的相位角度。

4. 绘制频谱图。

使用Matlab中的plot函数将频谱数据绘制成图形,横轴表示频率,纵轴表示幅度或相位。

二、离散信号频谱函数的求解方法离散信号的频谱函数可以使用离散傅里叶变换(DFT)来求解。

离散傅里叶变换是将一个离散时间的信号转换到频域的数学工具,它将一个离散时间的信号分解成一系列正弦和余弦函数的叠加。

在Matlab中,可以使用fft函数来对离散信号进行离散傅里叶变换,从而求解其频谱函数。

具体步骤如下:1. 使用Matlab构造一个离散信号,可以自己定义一个序列或使用Matlab 中的函数生成器生成离散信号。

2. 对离散信号应用fft函数进行离散傅里叶变换。

fft函数的输入参数为离散信号的序列。

3. 对得到的频谱进行幅度谱和相位谱的分解。

幅度谱表示信号在不同频率下的幅值大小,相位谱表示信号在不同频率下的相位角度。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

连续信号及其MATLAB实现(原创)
连续信号又称为模拟信号,其信号存在于整个时间范围内,包括单位冲激信号,单位阶跃信号,斜坡信号,实指数信号,正弦信号,指数调制正弦信号,等等。

以下我们将这几种常见的连续信号用MATLAB实现。

1、单位冲激信号
【例1】t=1/A=1/50时,单位脉冲δ(t)的MATLAB实现程序如下:
clear all
t1=-0.5:0.001:1;
K=3;
n1=length(t1);
u=zeros(1,n1);
t2=-0.5:0.001:0;
n2=length(t2);
u(n2)=K;
plot(t1,u)
2、任意函数
【例2】脉冲序列:
f(n)=0.4δ(n-2)+0.8δ(n-1)+1.2δ(n)+1.5δ(n+1)+1.0δ(n+2)+0.7δ(n+3),其MATLAB实现程序如下:
clear all
t=-2:1:3;
N=length(t);
x=zeros(1,N);
x(1)=0.4;
x(2)=0.8;
x(3)=1.2;
x(4)=1.5;
x(5)=1.0;
x(6)=0.7;
stem(t,x)
axis([-2.2 3.2 0 1.7])
3、单位阶跃函数
【例3】单位阶跃函数的MATLAB实现程序:
clear all
t=-0.5:0.001:1;
t0=0;
u=stepfun(t,t0);
plot(t,u)
axis([-0.6 1 -0.2 1.2])
4、斜坡函数
【例4】斜坡函数:g(t)=3(t-1),其MATLAB实现程序如下:
clear all
t=0:0.001:3;
B=3;
t0=1;
u=stepfun(t,t0);
n=length(t);
for i=1:n
u(i)=B*u(i)*(t(i)-t0);
end
plot(t,u)
axis([-0.2 3.1 -0.2 6.2])
5、实指数函数
【例5】实指数函数:f(t)=3exp(0.5t),其实现程序:
clear all
t=0:0.001:3;
B=3;
A=3;
a=0.5;
u=A*exp(a*t);
plot(t,u)
6、正弦函数
【例6】正弦函数:幅度A=3,频率f=5,相移=1,其实现程序如下:
clear all
t=-0.5:0.001:1;
A=3;
f=5;
fai=1;
u=A*sin(2*pi*f*t+fai);
plot(t,u)
7、指数调制正弦函数
【例7】指数调制正弦函数:f(t)=3exp(0.5t)cos(10πt-1),其MATLAB实现程序如下:
clear all
t=0:0.001:2.5;
A=3;
a=0.5;
f=5;
fai=1;
u1=A*exp(a*t);
u2=sin(2*pi*f*t+fai);
u12=u1.*u2;
t0=1;
u3=stepfun(t,t0);
u=u12.*u3;
plot(t,u)。

相关文档
最新文档