当前位置:文档之家› 二、离散信号运算的MATLAB实现

二、离散信号运算的MATLAB实现

二、离散信号运算的MATLAB实现
二、离散信号运算的MATLAB实现

>> ylabel('调用函数计算x(n)和h(n)卷积和'); %图像2-4

实验数据结果及分

2-1

2-2

2-3

2-4

实验MATLAB符号运算

实验四 MATLAB 符号运算 一、实验目的 掌握符号变量和符号表达式的创建,掌握MATLAB 的symbol 工具箱的一些基本应用。 二、实验内容 (1) 符号变量、表达式、方程及函数的表示。 (2) 符号微积分运算。 (3) 符号表达式的操作和转换。 (4) 符号微分方程求解。 三、实验步骤 1. 符号运算的引入 在数值运算中如果求x x x πsin lim 0→,则可以不断地让x 接近于0,以求得表达式接近什么数,但是终究不能令0=x ,因为在数值运算中0是不能作除数的。MATLAB 的符号运算能解决这类问题。输入如下命令: >>f=sym('sin(pi*x)/x') >>limit(f,'x',0) >> f=sym('sin(pi*x)/x') f = sin(pi*x)/x >> limit(f,'x',0) ans = Pi 2. 符号常量、符号变量、符号表达式的创建 1) 使用sym( )创建 输入以下命令,观察Workspace 中A 、B 、f 是什么类型的数据,占用多少字节的内存空间。 >> A=sym('1') >> B=sym('x') >> f=sym('2*x^2+3*y-1') >> clear >> f1=sym('1+2') >> f2=sym(1+2) >> f3=sym('2*x+3') >> f4=sym(2*x+3) >> x=1 >> f4=sym(2*x+3) > A=sym('1') A = 1

>> B=sym('x') B = x >> f=sym('2*x^2+3*y-1') f = 2*x^2+3*y-1 >> clear >> f1=sym('1+2') f1 = 1+2 >> f2=sym(1+2) f2 = 3 >> f3=sym('2*x+3') f3 = 2*x+3 >> f4=sym(2*x+3) ??? Undefined function or variable 'x'. >> x=1 x = >> f4=sym(2*x+3) f4 =

matlab与信号 处理知识点

安装好MATLAB 2012后再安装目录下点击setup.exe 会出现 "查找安装程序类时出错,查找类时出现异常"的错误提示。该错误的解决方法是进入安装目录下的bin 文件夹双击matlab.exe 对安装程序进行激活。这是可以对该matlab.exe 创建桌面快捷方式,以后运行程序是直接双击该快捷方式即可。 信号运算 1、 信号加 MATLAB 实现: x=x1+x2 2、 信号延迟 y(n)=x(n-k) 3、 信号乘 x=x1.*x2 4、 信号变化幅度 y=k*x 5、 信号翻转 y=fliplr(x) 6、 信号采样和 数学描述:y=∑=2 1)(n n n n x MATLAB 实现: y=sum(x(n1:n2)) 7、 信号采样积 数学描述:∏==2 1)(n n n n x y MATLAB 实现: y=prod(x(n1:n2)) 8、 信号能量 数学描述:∑∞ -∞ == n x n x E 2 | )(| MATLAB 实现:Ex=sum(abs(x)^2)

9、 信号功率 数学描述:∑-== 1 2 | )(|1 P N n x n x N MATLAB 实现:Px=sum((abs(x)^2)/N MATLAB 窗函数 矩形窗 w=boxcar(n) 巴特利特窗 w=bartlett(n) 三角窗 w=triang(n) 布莱克曼窗 w=blackman(n) w=blackman(n,sflag) 海明窗 w=haiming(n) W=haiming(n,sflag) sflag 用来控制窗函数首尾的两个元素值,其取值为symmetric 、periodic 汉宁窗 w=hanning(n) 凯塞窗 w=Kaiser(n,beta) ,beta 用于控制旁瓣的高度。n 一定时,beta 越大,其频谱的旁瓣越小,但主瓣宽度相应增加;当beta 一定时,n 发生变化,其旁瓣高度不变。 切比雪夫窗:主瓣宽度最小,具有等波纹型,切比雪夫窗在边沿的采样点有尖峰。 W=chebwin(n,r)

MATLAB在数字信号处理中的应用:连续信号的采样与重建

MATLAB 在数字信号处理中的应用:连续信号的采样与重建 一、 设计目的和意义 随着通信技术的迅速发展以及计算机的广泛应用,利用数字系统处理模拟信号的情况变得更加普遍。数字电子计算机所处理和传送的都是不连续的数字信号,而实际中遇到的大都是连续变化的模拟量,现代应用中经常要求对模拟信号采样,将其转换为数字信号,然后对其进行计算处理,最好在重建为模拟信号。 采样在连续时间信号与离散时间信号之间其桥梁作用,是模拟信号数字化的第一个步骤,研究的重点是确定合适的采样频率,使得既要能够从采样信号(采样序列)中五失真地恢复原模拟信号,同时由要尽量降低采样频率,减少编码数据速率,有利于数据的存储、处理和传输。 本次设计中,通过使用用MATLAB 对信号f (t )=A1sin(2πft)+A2sin(4πft)+A3sin(5πft)在300Hz 的频率点上进行采样,并进行仿真,进一步了解MA TLAB 在数字信号处理上的应用,更加深入的了解MA TLAB 的功能。 二、 设计原理 1、 时域抽样定理 令连续信号 xa(t)的傅立叶变换为Xa (j Ω),抽样脉冲序列p(t)傅立叶变换为P (j Ω),抽样后的信号x^(t)的傅立叶变换为X^(j Ω)若采用均匀抽样,抽样周期Ts ,抽样频率为Ωs= 2πfs ,有前面分析可知:抽样过程可以通过抽样脉冲序列p (t )与连续信号xa (t )相乘来完成,即满足:x^(t)p(t),又周期信号f (t )傅立叶变换为: F[f(t)]=2[(]n s n F j n π δ∞ =-∞Ω-Ω∑ 故可以推得p(t)的傅立叶变换为: P (j Ω)=2[(]n s n P j n π δ∞ =-∞Ω-Ω∑ 其中: 根据卷积定理可知: X (j Ω)=12π Xa (j Ω)*P(j Ω) 得到抽样信号x (t )的傅立叶变换为: X (j Ω)= [()]n n s n P X j n ∞=-∞Ω-Ω∑ 其表明:信号在时域被抽样后,他的频率X (j Ω)是连续信号频率X (j Ω)的形状以抽样频率Ωs 为间隔周期重复而得到,在重复过程中幅度被p (t )的傅立叶级数Pn 加权。因为只是n 的函数,所以X (j Ω)在重复过程中不会使其形状发生变化。 假定信号x (t )的频谱限制在-Ωm~+Ωm 的范围内,若以间隔Ts 对xa (t )进行抽样信号X^(j Ω)是以Ωs 为周期重复。显然,若早抽样过程中Ωs<Ωm ,则 X^ (j Ω)将会发生频谱混叠的现象,只有在抽样的过程中满足Ωs>2Ωm 条件,X^(j Ω)才不会产生混频的混叠,在接收端完全可以有x^(t )恢复原连续信号xa (t ),这就是低通信号的抽样定理的核心内容。

基于MATLAB的语音信号采集与处理

工程设计论文 题目:基于MATLAB的语音信号采集与处理 姓名: 班级: 学号: 指导老师:

一.选题背景 1、实践意义: 语音信号是一种非平稳的时变信号,它携带着各种信息。在语音编码、语音合成、语音识别和语音增强等语音处理中无一例外需要提取语音中包含的各种信息。语音信号分析的目的就在于方便有效地提取并表示语音信号所携带的信息。所以理解并掌握语音信号的时域和频域特性是非常重要的。 通过语音相互传递信息是人类最重要的基本功能之一.语言是人类特有的功能.声音是人类常用工具,是相互传递信息的最重要的手段.虽然,人可以通过多种手段获得外界信息,但最重要,最精细的信息源只有语言,图像和文字三种.与用声音传递信息相比,显然用视觉和文字相互传递信息,其效果要差得多.这是因为语音中除包含实际发音容的话言信息外,还包括发音者是谁及喜怒哀乐等各种信息.所以,语音是人类最重要,最有效,最常用和最方便的交换信息的形式.另一方面,语言和语音与人的智力活动密切相关,与文化和社会的进步紧密相连,它具有最大的信息容量和最高的智能水平。 语音信号处理是研究用数字信号处理技术对语音信号进行处理的一门学科,处理的目的是用于得到某些参数以便高效传输或存储;或者是用于某种应用,如人工合成出语音,辨识出讲话者,识别出讲话容,进行语音增强等. 语音信号处理是一门新兴的学科,同时又是综合性的多学科领域,

是一门涉及面很广的交叉学科.虽然从事达一领域研究的人员主要来自信息处理及计算机等学科.但是它与语音学,语言学,声学,认知科学,生理学,心理学及数理统计等许多学科也有非常密切的联系. 语音信号处理是许多信息领域应用的核心技术之一,是目前发展最为迅速的信息科学研究领域中的一个.语音处理是目前极为活跃和热门的研究领域,其研究涉及一系列前沿科研课题,巳处于迅速发展之中;其研究成果具有重要的学术及应用价值. 数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采集、抽样、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的。它在语音、雷达、图像、系统控制、通信、航空航天、生物医学等众多领域都获得了极其广泛的应用。具有灵活、精确、抗干扰强、度快等优点。 数字滤波器, 是数字信号处理中及其重要的一部分。随着信息时代和数字技术的发展,受到人们越来越多的重视。数字滤波器可以通过数值运算实现滤波,所以数字滤波器处理精度高、稳定、体积小、重量轻、灵活不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊功能。数字滤波器种类很多,根据其实现的网络结构或者其冲激响应函数的时域特性,可分为两种,即有限冲激响应( FIR,Finite Impulse Response)滤波器和无限冲激响应( IIR,Infinite Impulse Response)滤波器。 FIR滤波器结构上主要是非递归结构,没有输出到输入的反馈,系统函数H (z)在处收敛,极点全部在z = 0处(因果系统),因而只能

实验MATLAB符号计算

实验四符号计算 符号计算的特点:一,运算以推理解析的方式进行,因此不受计算误差积累问题困扰;二,符号计算,或给出完全正确的封闭解,或给出任意精度的数值解(当封闭解不存在时);三,符号计算指令的调用比较简单,经典教科书公式相近;四,计算所需时间较长,有时难以忍受。 在MATLAB中,符号计算虽以数值计算的补充身份出现,但涉及符号计算的指令使用、运算符操作、计算结果可视化、程序编制以及在线帮助系统都是十分完整、便捷的。 MATLAB的升级和符号计算内核Maple的升级,决定着符号计算工具包的升级。但从用户使用角度看,这些升级所引起的变化相当细微。即使这样,本章还是及时作了相应的更新和说明。如MATLAB 6.5+ 版开始启用Maple VIII的计算引擎,从而克服了Maple V计算“广义Fourier变换”时的错误(详见第5.4.1节)。 5.1符号对象和符号表达式 5.1.1符号对象的生成和使用 【例5.1.1-1】符号常数形成中的差异 a1=[1/3,pi/7,sqrt(5),pi+sqrt(5)] % <1> a2=sym([1/3,pi/7,sqrt(5),pi+sqrt(5)]) % <2> a3=sym([1/3,pi/7,sqrt(5),pi+sqrt(5)],'e') % <3> a4=sym('[1/3,pi/7,sqrt(5),pi+sqrt(5)]') % <4> a24=a2-a4 a1 = 0.3333 0.4488 2.2361 5.3777 a2 = [ 1/3, pi/7, sqrt(5), 6054707603575008*2^(-50)] a3 = [ 1/3-eps/12, pi/7-13*eps/165, sqrt(5)+137*eps/280, 6054707603575008*2^(-50)] a4 = [ 1/3, pi/7, sqrt(5), pi+sqrt(5)] a24 = [ 0, 0, 0, 189209612611719/35184372088832-pi-5^(1/2)] 【例5.1.1-2】演示:几种输入下产生矩阵的异同。 a1=sym([1/3,0.2+sqrt(2),pi]) % <1> a2=sym('[1/3,0.2+sqrt(2),pi]') % <2> a3=sym('[1/3 0.2+sqrt(2) pi]') % <3> a1_a2=a1-a2 % a1 = [ 1/3, 7269771597999872*2^(-52), pi] a2 = [ 1/3, 0.2+sqrt(2), pi] a3 = [ 1/3, 0.2+sqrt(2), pi] a1_a2 = [ 0, 1.4142135623730951010657008737326-2^(1/2), 0]

MATLAB符号计算实验报告

实验六符号计算 学院:数计学院班级:1003班姓名:黄晓丹学号:1051020144 一、实验目的 1、了解富符号对象和数值对象之间的差别,以及它们之间的互相转换 2、了解符号运算和数值运算的特点、区别和优缺点 3、掌握符号对象的基本操作和运算,以及符号运算的基本运用 二、实验内容 1、符号常数形成和使用 (1)符号常数形成中的差异 >> a1=[1/3,pi/7,sqrt(5),pi+sqrt(5)] a1 = 0.3333 0.4488 2.2361 5.3777 >> a2=sym([1/3,pi/7,sqrt(5),pi+sqrt(5)]) a2 = [ 1/3, pi/7, sqrt(5),

6054707603575008*2^(-50)] >> a3=sym('[1/3,pi/7,sqrt(5),pi+sqrt(5)]') a3 = [ 1/3, pi/7, sqrt(5), pi+sqrt(5)] >> a24=a2-a3 a24 = [ 0, 0, 0, 189209612611719/35184372088832-pi-5^(1/2)] (2)把字符表达式转化为符号变量 >> y=sym('2*sin(x)*cos(x)') y = 2*sin(x)*cos(x) >> y=simple(y)

y = sin(2*x) (3)用符号计算验证三角等式 >> syms fai1 fai2;y=simple(sin(fai1)*cos(fai2)-cos(fai1)*sin(fai2)) y = sin(fai1-fai2) (4)求矩阵的行列式值、逆和特征值 >> syms a11 a12 a21 a22;A=[a11,a12;a21,a22] A = [ a11, a12] [ a21, a22] >> DA=det(A),IA=inv(A),EA=eig(A) DA =

matlab实验五多项式和符号运算

实验五:Matlab多项式和符号运算 一、实验目的 1.掌握Matlab多项式的运算。 2.了解符号运算。 二、实验内容 1.将多项式()(2)(3)(7)(1) =-+-+化为x的降幂排列。 P x x x x x syms x; y=(x-2)*(x+3)*(x-7)*(x+1); expand(y) ans = x^4-5*x^3-19*x^2+29*x+42 2.求一元高次方程的根。 98765432 --++--++= 53015027313658204100576-28800 x x x x x x x x x syms x y; y=x^9-5*x^8-30*x^7+150*x^6-1365*x^4-820*x^3+410 0*x^2+576*x-2880; solve(y,x) ans = 6.81947687944124431946 1.42761488953013276419+.8192491831*i 2.865487219+2.49263348244446271927*i

-1.887673354+1.812452594*i -.9583509633 -5.922730991 -1.887673354-1.812452594*i 2.865487219-2.49263348244446271927*i 1.42761488953013276419-.8192491831*i 3.求一元高次方程的根,并画出左边多项式函数在[2,2] x∈-区间内的曲线。 42 -+= x x 210 a=[1 0 -2 0 1]; r=roots(a) syms x; x=-2:2; y=[1 0 -2 0 1]; plot(x,y) r = 1.0000 + 0.0000i 1.0000 - 0.0000i -1.0000 -1.0000

MatLab常见函数和运算符号解读

MatLab常见函数和运算符号 基本运算 convhull :凸壳函数 cumprod :累计积 cumsum :累计和 cumtrapz :累计梯形数值积分 delaunay :Delaunay三角化 dsearch :求最近点(这是两个有趣的函数 factor :质数分解inpolygon :搜索多边形内的点 max :最大元素 mean :平均值 median :数组的中间值 min :最小值 perms :向量所有排列组成矩阵 polyarea :多边形的面积 primes :生成质数列表 prod :数组元素积 sort :元素按升序排列 sortrows :将行按升序排列

std :标准差 sum :元素和 trapz :梯形数值积分 tsearch :搜索Delaunay三角形var :方差 voronoi :Voronoi图 del2 :Laplacian离散 diff :差分和近似微分gradient:数值梯度 corrcoef :相关系数 cov :协方差矩阵 xcorr :互相关系数 xcov :互协方差矩阵 xcorr2 :二维互相关 conv :卷积和多项式相乘conv2 :二维卷积 deconv :反卷积 filter :滤波 filter2 :二维数字滤波

傅立叶变换 abs :绝对值和模 angle :相角 cplxpair :按复共扼把复数分类 fft :一维快速傅立叶变换 fft2 :二维快速傅立叶变换 fftshit :将快速傅立叶变换的DC分量移到谱中央ifft :以为逆快速傅立叶变换 ifft2 :二维逆快速傅立叶变换 ifftn :多维逆快速傅立叶变换 ifftshift :逆fft平移 nextpow2 :最相邻的2的幂 unwrap :修正相角 cross :向量叉积 intersect:集合交集 ismember :是否集合中元素 setdiff :集合差集 setxor :集合异或(不在交集中的元素 union :两个集合的并

基于matlab的信号分析与处理

基于m a t l a b的信号分 析与处理 IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】

山东建筑大学 课程设计说明书题目:基于MATLAB的信号分析与处理课程:数字信号处理课程设计 院(部):信息与电气工程学院 专业:通信工程 班级:通信111班 学生姓名: 学号: 指导教师: 完成日期: 2014年1月

目录4

摘要 这次是基于MATLAB的信号分析与处理。所谓数字滤波器,就是输入、输出都是数字信号的,通过数值计算处理改变输入信号所含频率成分的相对比例,或者滤除某些频率成分的数字器件或程序。常用的经典滤波器有低通、高通、带通、带阻。 首先产生一个连续信号,包含低频、中频、高频分量;对其进行采样,得到数字信号;对数字信号进行FFT频谱分析,绘制其频谱图;根据信号频谱分析的结果,分别设计高通、低通、带通滤波器,绘制滤波器的幅频及相频特性;用所设计的滤波器对信号滤波,并绘制出滤波后的频谱图。 关键词:MATLAB; FFT;滤波器;信号产生;频谱分析

1设计目的和要求 产生一个连续信号,包含低频,中频,高频分量,对其进行采样,进行频谱分析,分别设计三种高通,低通,带通滤波器对信号进行滤波处理,观察滤波后信号的频谱。 2设计原理 信号的采样要符合奈奎斯特采样定律,一般为被采信号最高频率的2倍,只有这样,才能保证频域不混叠,也就是采样出来数字信号中包含了被采信号的所有信息,而且没有引入干扰。这就是信号的时域采样。 频谱分析是指对信号进行频域谱的分析,观察其频域的各个分量的功率大小,其理论基础是傅立叶变换,现在一般采用数字的方法,也就是将时域信号数字化后做FFT,可以得到频域的波形。 数字滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数学处理来达到频域滤波的目的。可以设计系统的频率响应,让它满足一定的要求,从而对通过该系统的信号的某些特定的频率成分进行过滤,这就是滤波器的基本原理。 IIR滤波器的设计原理: IIR数字滤波器的设计一般是利用目前已经很成熟的模拟滤波器的设计方法来进行设计,通常采用模拟滤波器原型有butterworth函数、chebyshev函数、bessel函数、椭圆滤波器函数等。 IIR数字滤波器的设计步骤: (1)按照一定规则把给定的滤波器技术指标转换为模拟低通滤波器的技术指标; (2)根据模拟滤波器技术指标设计为响应的模拟低通滤波器; (3)很据脉冲响应不变法和双线性不变法把模拟滤波器转换为数字滤波器; (4)如果要设计的滤波器是高通、带通或带阻滤波器,则首先把它们的技术指标转化为模拟低通滤波器的技术指标,设计为数字低通滤波器,最后通过频率转换的方法来得到所要的滤波器。 本课程设计设计思想:首先利用MATLAB分别产生低频、中频、高频信号,然后进行叠加得到连续时间信号;对所产生的连续时间信号进行采样,得到数字信号;对信

matlab符号计算实验报告

1. 已知x=6,y=5, 利用符号表达式求z =>> syms x >> z=(x+1)/(sqrt(x+3)-sqrt(y)); >> subs(z,x,5) ans =6/(8^(1/2)-y^(1/2)) >> subs(ans,6) ans = 15.8338 2. 分解因式。 (1)x y -44; >> syms x y >> factor(x^4-y^4) ans =(x-y)*(x+y)*(x^2+y^2) (2)x x x +++642 12575151 >> syms x >> factor(125*x^6+75*x^4+15*x^2+1) ans =(5*x^2+1)^3 3. 化简表达式 (1)sin cos cos sin ββββ-1212; >> syms x y >> f=sin(x).*cos(y)-cos(x).*sin(y); >> sfy1=simple(f) 结果:sfy1 =sin(x-y) (2)x x x +++248321 >> syms x >> f=(4*x^2+8*x+3)/(2*x+1);sfy1=simplify(f) sfy1 =2*x+3 4、求下列极限,将完成实验的程序写到文件sy1.m 中: (1) (2) (3) (4) (5) (1)>> syms x >> F1=atan(x)/(x); >> w=limit(F1) w =1 (2)>> syms x F2=((1+x)/(1-x))^(1/x); >> w=limit(F2) w =exp(2) (3)>> syms x F3=(x.*log(1+x))/(sin(x^2)); >> w=limit(F3) w =1 (4)>> syms x F4=atan(x)/(x); >> w=limit(F4,x,inf) w =0 (5)>> syms x F5=(1/(1-x)-1/(1-x^3)); >> w=limit(F5,x,1) w =NaN 5、求下列函数的导数,将完成实验的程序写到文件sy2.m 中: 1、 >> x = sym('x'); >> y1=(cos(x))^3-cos(3*x); >> diff(y1)ans =-3*cos(x)^2*sin(x)+3*sin(3*x) 2、 >> x = sym('x'); >> y2=x.*sin(x).*(log(x)); >> diff(y2)ans =sin(x)*log(x)+x*cos(x)*log(x)+sin(x) 3、 >> x = sym('x'); >> y3=(x.*exp(x)-1)/sin(x); >> diff(y3) ans =(exp(x)+x*exp(x))/sin(x)-(x*exp(x)-1)/sin(x)^2*cos(x) 4、 x x x x F 1011lim 2??? ??-+=→3 1115lim()11x F x x →=---20sin )1ln(lim 3x x x F x +=→x x F x arctan lim 10→=arctan 4lim x x F x →∞=x x y 3cos cos 13-=x x x y ln sin 2=x xe y x sin 13-=cos x y e x =

MATLAB实验——符号运算讲解

实验一符号运算 班级:电气4班姓名:叶元亮学号:B2012052409 一、实验目的 1、了解符号、数值、字符等数据类型的差别 2、了解符号运算的特点、优缺点 3、掌握符号变量的创建和运算,以及其运算的基本应用 4、掌握基本的符号绘图指令 二、实验内容 1、指出下面的 M1,M2,M3 分别是什么,并上机验证。 取a=1、b=2、c=3、d=4,M1=[a,b;c,d],M2='[a,b;c,d]',M3=sym('[a,b;c,d]'); >> a=1,b=2,c=3,d=4 a = 1 b = 2 c = 3 d = 4 >> M1=[a,b;c,d] M1 =

1 2 3 4 >> M2='[a,b;c,d]' M2 = [a,b;c,d] >> M3=sym('[a,b;c,d]') M3 = [ a, b] [ c, d] 结论:M1是矩阵,2是字符串,M3是字符变量。 2、下面2种取值情况下,计算b a b a- + 并赋给相应情况下的c1、c2,问c1、c2相等吗,为什么?上机验证。 (1) a1=1010; b1=10-10; (2)将a1、a2作为符号变量赋给a2、b2; >> a1=1e10; b1=1e-10; >> c1=(a1+b1-a1)/b1 c1 = >> a2=sym(a1); b2=sym(b1); >> c2=(a2+b2-a2)/b2 c2 = 1

结果:c1~=c2,因为c1=0,c2=1,a1、b1是具体的数值,a2、b2是符号变量。 3、符号表达式中自由变量的确定生成符号变量a 、b 、x 、X 、Y 、 k=3、z=a y w c sin +,表达式为 Y k bx azX f )(2++=。 (1)找出f 中的全部自由符号变量 (2)在f 中确定最优先的自由符号变量 (3)在f 中确定2个和3个自由变量时的执行情况 (4)试通过对各符号变量与x 的ASCII 值做绝对差值,分析自 由变量优秀顺序,能得出什么结论? >> syms a b x X Y k=sym('3'); z=sym('c*sqrt(w)+y*sin(a)'); f=a*z*X+(b*x^2+k)*Y; >> findsym(f) ans = X, Y, a, b, c, w, x, y >> findsym(f,1) ans = x >> findsym(f,2) ans = x,y

基于Matlab的信号处理系统与分析

基于Matlab的信号处理系统与分析 Matlab是一种简洁智能、特别适用于工程领域和科学研究的高级程序语言,将Matlab应用于信号处理系统中,能够帮助我们解决信号处理的很多难题。将Matlab运用于信号处理系统中,不仅提高了信号处理的效率性和可靠性,也在很大程度上促进了信号处理系统的研究和发展。通过对Matlab的特性分析及比较经典方法和Matlab对信号的处理和分析,进一步说明Matlab对信号的处理分析发挥着重要作用和绝对优势。 标签:Matlab;信号处理;分析;经典 1 Matlab的特性分析 Matlab是以矩阵运算为基础的程序设计语言,又被称为矩阵实验室,其语法规则简单易懂,功能强大,编程效率高,可以用于科学计算、图像处理、信号处理、神经元网络、小波分析、信号消噪等等领域。主要功能可分为四类:符号计算、数值的计算、分析与可视化、文字处理、SIMULINK动态仿真。所以应用Matlab处理与分析信号时是非常必要且高效的。 2 信号的处理与分析 信号的分析处理是指从将一大堆杂乱无章的信号或者一个复杂的信号按照我们的要求进行处理,使用相应的设备与技术,提取出关键部分,以方便我们分析和运用。 2.1 经典方法对信号的处理与分析 经典方法主要有两种:时域分析法、频域分析法;在分析过程中,不经过任何变换,函数的变量都是时间t,这种分析方法就是时域分析法。采用傅里叶正变换将时间变量t转换为频率变量w对信号进行分析,即频域分析法。连接二者的桥梁即傅里叶正反变换: F(jw)=∫∞-∞f(t)e-jwtdt(傅里叶正变换) f(t)=12π ∫∞-∞F(jw)ejwt dw(傅里叶反变换) 通过时域分析法可以得到任意时刻信号的瞬时值、最大值、最小值及均方根值,也可以分析得到直流分量与谐波分量,从而对信号进行分析处理。频域分析法是通过对信号的幅值、相位、能量变换与角频率的关系进行分析,研究其频率特性,如:相位谱,能量谱密度。通常经典方法局限性较大,运算量大,运算结果不易分析。 2.2 Matlab对信号的处理与分析

实验3 Matlab 符号运算及求函数极值

实验3 Matlab 符号运算及求函数极值一、实验目的和要求 掌握用Matlab软件进行符号运算以及求函数的极值。 二、实验环境 Windows系列操作系统,Matlab软件。 三、实验内容 1.用MATLAB进行符号运算; 2.编程求函数的极值。 四、实验步骤 3.开启软件平台——Matlab,开启Matlab编辑窗口; 4.根据求解步骤编写M文件; 5.保存文件并运行; 6.观察运行结果(数值或图形); 7.根据观察到的结果和体会写出实验报告。 五、示例 1.计算一元函数的极值 例1求 2 2 344 1 x x y x x ++ = ++ 的极值 解首先建立函数关系: s yms x y=(3*x^2+4*x+4)/( x^2+x+1); 然后求函数的驻点: dy=diff(y); xz=solve(dy) xz= [0] [-2] 知道函数有两个驻点x 1=0和x 2 =-2, 接下来我们通过考察函数的图形,则它的极值情况和许多其它特性是一目了然的。而借助MATLAB的作图功能,我们很容易做到这一点。 例2 画出上例中函数的图形

解 syms x y=(3*x^2+4*x+4)/( x^2+x+1); 得到如下图形 ezplot(y) 2.计算二元函数的极值 MATLAB 中主要用diff 求函数的偏导数,用jacobian 求Jacobian 矩阵。 例1 求函数42823z x xy y =-+-的极值点和极值. 首先用diff 命令求z 关于x,y 的偏导数 >>clear; syms x y; >>z=x^4-8*x*y+2*y^2-3; >>diff(z,x) >>diff(z,y) 结果为 ans =4*x^3-8*y ans =-8*x+4*y 即348,84z z x y x y x y ??=-=-+??再求解方程,求得各驻点的坐标。一般方程组的符号解用solve 命令,当方程组不存在符号解时,solve 将给出数值解。求解方程的MA TLAB 代码为:

基于matlab的信号分析与处理

山东建筑大学 课程设计说明书题目:基于MATLAB的信号分析与处理课程:数字信号处理课程设计 院(部):信息与电气工程学院 专业:通信工程 班级:通信111班 学生姓名: 学号: 指导教师: 完成日期:2014年1月

目录 摘要 (Ⅰ) 1 设计目的和要求 (1) 2 设计原理 (2) 3 设计内容 (3) 3.1 程序源代码 (4) 3.2 调试分析与过程描述 (7) 3.3 结果分析 (12) 总结 (13) 致谢 (14) 参考文献 (15)

摘要 这次是基于MATLAB的信号分析与处理。所谓数字滤波器,就是输入、输出都是数字信号的,通过数值计算处理改变输入信号所含频率成分的相对比例,或者滤除某些频率成分的数字器件或程序。常用的经典滤波器有低通、高通、带通、带阻。 首先产生一个连续信号,包含低频、中频、高频分量;对其进行采样,得到数字信号;对数字信号进行FFT频谱分析,绘制其频谱图;根据信号频谱分析的结果,分别设计高通、低通、带通滤波器,绘制滤波器的幅频及相频特性;用所设计的滤波器对信号滤波,并绘制出滤波后的频谱图。 关键词:MATLAB; FFT;滤波器;信号产生;频谱分析

1设计目的和要求 产生一个连续信号,包含低频,中频,高频分量,对其进行采样,进行频谱分析,分别设计三种高通,低通,带通滤波器对信号进行滤波处理,观察滤波后信号的频谱。 2设计原理 信号的采样要符合奈奎斯特采样定律,一般为被采信号最高频率的2倍,只有这样,才能保证频域不混叠,也就是采样出来数字信号中包含了被采信号的所有信息,而且没有引入干扰。这就是信号的时域采样。 频谱分析是指对信号进行频域谱的分析,观察其频域的各个分量的功率大小,其理论基础是傅立叶变换,现在一般采用数字的方法,也就是将时域信号数字化后做FFT,可以得到频域的波形。 数字滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数学处理来达到频域滤波的目的。可以设计系统的频率响应,让它满足一定的要求,从而对通过该系统的信号的某些特定的频率成分进行过滤,这就是滤波器的基本原理。 IIR滤波器的设计原理: IIR数字滤波器的设计一般是利用目前已经很成熟的模拟滤波器的设计方法来进行设计,通常采用模拟滤波器原型有butterworth函数、chebyshev函数、bessel函数、椭圆滤波器函数等。 IIR数字滤波器的设计步骤: (1)按照一定规则把给定的滤波器技术指标转换为模拟低通滤波器的技术指标; (2)根据模拟滤波器技术指标设计为响应的模拟低通滤波器; (3)很据脉冲响应不变法和双线性不变法把模拟滤波器转换为数字滤波器; (4)如果要设计的滤波器是高通、带通或带阻滤波器,则首先把它们的技术指标转化为模拟低通滤波器的技术指标,设计为数字低通滤波器,最后通过频率转换的方法来得到所要的滤波器。 本课程设计设计思想:首先利用MATLAB分别产生低频、中频、高频信号,然后进行叠加得到连续时间信号;对所产生的连续时间信号进行采样,得到数字信号;对信号进行FFT频谱分析,绘制其频谱图;根据信号频谱分析的结果,分别设计高通,低通,带通滤波器,得到滤波器的幅频及相频特性。

实验二2MATLAB地符号计算与可视化

实验二MATLAB的符号计算与可视化 1:完成教材实验三第1节“1.创建符号表达式和符号表达式的操作”中(1)-(5)部分的内容,分别用sym和syms创建符号表达式f和g,并对它们进行相关操作,思考每一条命令的作用是什么,并提交命令行和结果; (1)创建符号变量。 ①使用sym命令创建符号表达式: >> f=sym('sin(x)') f = sin(x) >> g=sym('y/exp(-2*t)') g = y*exp(2*t) ②使用syms命令创建符号表达式: >> syms x y t >> f=sym(sin(x)) f = sin(x) >> g=sym(y/exp(-2*t)) g = y*exp(2*t) (2):自由变量的确定:

>> symvar(g) ans = [ t, y] >> symvar(g,1) ans = y >> findsym(g,2) ans = y,t (3):用常数替换符号变量: >> x=0:10; >> y=subs(f,x) y = Columns 1 through 8 0 0.8415 0.9093 0.1411 -0.7568 -0.9589 -0.2794 0.6570 Columns 9 through 11 0.9894 0.4121 -0.5440 练习:用y替换x,查看结果及其数据类型。 z=subs(f,y) z = Columns 1 through 8

0 0.7456 0.7891 0.1407 -0.6866 -0.8186 -0.2758 0.6107 Columns 9 through 11 0.8357 0.4006 -0.5176 >> class(z) ans = double (4):符号对象与数值的转换和任意精度控制: >> f1=subs(f,'5') f1 = sin(5) >> y1=double(f1) y1 = -0.9589 >> y2=eval(f1) y2 = -0.9589 练习:将y1用sym函数转换为符号对象,并用’d’,’f’,’e’,’r’4种格式表示。>> y2=sym(y1,'d') y2 = -0.95892427466313845396683746002964

MATLAB语音信号处理

基于MATLAB的语音信号采集与处理 一、实验的目的和要求 1. MATLAB软件功能简介 MATLAB的名称源自Matrix Laboratory,1984年由美国Mathworks公司推向市场。它是一种科学计算软件,专门以矩阵的形式处理数据。MATLAB将高性能的数值计算和可视化集成在一起,并提供了大量的内置函数,从而被广泛的应用于科学计算、控制系统和信息处理等领域的分析、仿真和设计工作。 MATLAB软件包括五大通用功能,数值计算功能(Nemeric)、符号运算功能(Symbolic)、数据可视化功能(Graphic)、数字图形文字统一处理功能(Notebook)和建模仿真可视化功能(Simulink)。其中,符号运算功能的实现是通过请求MAPLE内核计算并将结果返回到MATLAB命令窗口。该软件有三大特点,一是功能强大;二是界面友善、语言自然;三是开放性强。目前,Mathworks公司已推出30多个应用工具箱。MATLAB在线性代数、矩阵分析、数值及优化、数值统计和随机信号分析、电路与系统、系统动力学、次那好和图像处理、控制理论分析和系统设计、过程控制、建模和仿真、通信系统以及财政金融等众多领域的理论研究和工程设计中得到了广泛应用。 MATLAB在信号与系统中的应用主要包括符号运算和数值计算仿真分析。由于信号与系统课程的许多内容都是基于公式演算,而MATLAB借助符号数学工具箱提供的符号运算功能,能基本满足信号与系统课程的需求。例如解微分方程、傅里叶正反变换、拉普拉斯正反变换和z正反变换等。MATLAB在信号与系统中的另一主要应用是数值计算与仿真分析,主要包括函数波形绘制、函数运算、冲击响应与阶跃响应仿真分析、信号的时域分析、信号的频谱分析、系统的S域分析和零极点图绘制等内容。数值计算仿真分析可以帮助学生更深入地理解理论知识,并为将来使用MATLAB进行信号处理领域的各种分析和实际应用打下基础。2. 本题目的意义 本次课程设计的课题为《基于MATLAB的语音信号采集与处理》,学会运用MATLAB 的信号处理功能,采集语音信号,并对语音信号进行滤波及变换处理,观察其时域和频域特性,加深对信号处理理论的理解,并为今后熟练使用MATLAB进行系统的分析仿真和设计奠定基础。 二、实验原理: 1.理论原理

实验四 MATLAB符号运算

实验四MATLAB符号运算 一、实验目的: 1、掌握定义符号对象的方法; 2、掌握符号表达式的运算法则以及符号矩阵运算。 3、掌握求符号函数极限及导数的方法。 4、掌握求符号函数定积分和不定积分的方法。 二、实验原理 1、符号常量、符号变量、符号表达式的创建 (1) 使用sym( )创建 输入以下命令,观察Workspace 中A、B、f是什么类型的数据,占用多少字节的内存空间。 >>A=sym('1') %符号常量 >>B=sym('x') %符号变量 >>f=sym('2*x^2+3y-1') %符号表达式 >>clear >>f1=sym('1+2') %有单引号,表示字符串 >>f2=sym(1+2) %无单引号 >>f3=sym('2*x+3') >>f4=sym(2*x+3) %为什么会出错 >>x=1 >>f4=sym(2*x+3) 通过看MATLAB 的帮助可知,sym( )的参数可以是字符串或数值类型,无论是哪种类型都会生成符号类型数据。 (2) 使用syms 创建 >>clear >>syms x y z %注意观察x,y,z都是什么类型的,它们的内容是什么 >>x,y,z >>f1=x^2+2*x+1 >>f2=exp(y)+exp(z)^2 >>f3=f1+f2 通过以上实验,知道生成符号表达式的第二种方法:由符号类型的变量经过运算(加减乘除等)得到。又如: >>f1=sym('x^2+y +sin(2)') >>syms x y >>f2=x^2+y+sin(2) >>x=sym('2') , y=sym('1') >>f3=x^2+y+sin(2)

2014秋实验四_MATLAB的符号计算二

2014年10月26日星期日 湖北科技学院 MATLAB 专业:电气工程及其自动化班级:电气一班 姓名:尹锥(133521015)指导教师:刘芳华 电子与信息工程学院

实验四MATLAB的符号计算(二) 一、实验目的 1.掌握MATLAB7.0 subs、simple、simplify、finverse等函数的应用; 2.掌握利用MATLAB7.0计算极限和级数的方法,计算复合、反函数的方法; 3.了解利用MATLAB7.0计算taylor级数。 4.掌握利用MATLAB7.0来求解常微分方程的方法。 5.掌握利用MATLAB7.0符号计算中的ezplot及ezplot3绘图方法。 二、实验内容 1.设x为符号变量, 42 ()21 f x x x =++,32 ()635 g x x x x =+++,试进行如下运算。 (1) ()() f x g x +, (2) ()() f x g x ?, (3)对 () f x进行因式分解, (4)求 () g x的反函数。 2

2.(1)指出下面程序中的f1、f2、f3、f4、f5的值。f5=subs(f,{a,x},{0:6,0:pi/6:pi}) 3

(2)指出下面替换的结果。 3. 用符号计算验证三角等式: sin(?1)cos(?2)-cos(?1)sin(?2) =sin(?1-?2) 4

4.设,求 7.求微分方程的解:y'''-y''=x,y''(2)=4,y'(1)=7,y(1)=8 5

8.计算函数级数 2 1 n x S n ∞ = =∑ 9. f(x)=e x分别求5阶、6阶泰勒展开式 10.符号函数绘图法绘制函数x=sin(3t)cos(t),y=sin(3t)sin(t)的图形,t的变化范围为[0,2π]。 6

相关主题
文本预览
相关文档 最新文档