MATLAB有关文献报告

更新时间:2024-05-24 11:36:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

论文学习报告

——对论文《Matlab Simulation in Signals & Systems》学习

摘要:主要通过对学者的论文的学习和论文中仿真程序的运行和学习,掌握一些基本写论文的步骤和要点,同时加深对matlab的学习并对matlab在信号与系统中的应用有了基本的了解。

关键字:matlab、信号与系统、应用、论文学习

一、介绍

MATLAB具有丰富和强大的功能,可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面 等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。尽管Matlab提供了许多主要信号和系统处理功能,如卷积,傅里叶转换、拉普拉斯变换,z变换等,它简化计算过程大大,同时一些相关的数学处理和物理意义被掩盖了。 我学习参考的文献《Matlab Simulation in Signals & Systems》主要通过Matlab在三个不同的水平实现和应用,运用函数模拟达到使学生在学习过程中对理论更深入全面的理解。

我对这篇文献的学习主要是(1)了解论文的基本结构和框架;(2)对文献内容进一步了解学习;(3)运用MATLAB仿真实现文献的内容并对出现的问题分析解决;(4)总结学习经验用论文的格式完成报告。

二、对论文的学习

论文一般由题名、作者、摘要、关键词、正文、参考文献和附录等部分组成,其中部分组成(例如附录)可有可无。论文各组成的排序为:题名、作者、摘要、关键词、英文题名、英文摘要、英文关键词、正文、参考文献、附录和致谢。

论文《Matlab Simulation in Signals & Systems》把MATLAB的应用分为三个阶段:(1)第一阶段:直接应用MATLAB强大的功能(First Level - Using Matlab’s Powerful Functions Directly);(2)第二阶段:运用MATLAB实现数学过程(Second Level—Using Matlab to Realize the Mathematical Process);(3)第一阶段:开发新的优化算法(Third Level—Developing new Optimizing algorithms);并通过介绍三个层面上应用MATLAB实现傅里叶变换,举例说明运用函数模拟达到使学生在学习过程中对理论更深入全面的理解。

三、文献的MATLAB仿真实现

——(程序中的问题直接在仿真过程中解决)

第一阶段、

syms t; Tfine a signal.

F=fourier(heaviside(t)) êlculate the Fourier transform of step function.

ezplot(abs(F1),[-3,3]); %Draw magnitude-frequency curve. F =

pi*dirac(w)-i/w

Undefined function or variable 'F1'. 改’F1’为‘F’结果正确且无误,图如下

第二阶段、 (1)

w=linspace(-6*pi,6*pi,512); %Assign the frequency points to be calculated.

N=length(w); %Get the total number of the frequency point. X=zeros(1,N); % Set a vector X of length N to save the calculation results.

for k=1:N

X(k)=quad(@(t)qpulse(t,w(k)),-1,1); end

% For each frequency point w(k), calculate the definite integral F(j?)???1f(t)e?j?tdt. ‘qpulse’ is the square wave function defined in the following qpulse.m file.

plot(w,real(X));grid on; %Draw Fourier transform.

The ‘qpulse’ function quoted is defined as the following. function y=qpulse(t,w);

y=(stepfun(t,-1)-stepfun(t,1)).*exp(-j*w*t);

1

function[w,tw]=cconv1(u,tu,v,tv)

% u and v are two vectors to be convoluted, and tu and tv are their sampling times respectively.

%w is the convolution result and tw is w’s sampling time. T=tu(2)-tu(1); %Get sample interval.

w=T*conv(u,v); êlculate (6) via function ‘conv’.tw=tu(1)+tv(1)+T*[0:length(u)+length(v)-2]'; %Distribute sample time for w. 主程序:

t=[-2:0.01:2]; %Generate sampling time.

e=(t>-1&t<1); Tfine a square wave with width of 2. h=(t>-0.5&t<0.5);

Tfine a square wave with width of 1. [r1,t1]=cconv1(e,t,h,t);

êll ‘cconv1’ to finish convolution integral. subplot(3,1,1);plot(t,e);axis([-2 2

1.2]);title('e(t)');

-0.2

subplot(3,1,2);plot(t,h);axis([-2 1.2]);title('h(t)');

subplot(3,1,3);plot(t1,r1);axis([-4 1.2]);title('r(t)'); 运行出现以下错误:

2 -0.2

4 -0.2

Undefined function 'conv2' for input arguments of type 'char'.

Error in conv (line 39) c = conv2(a(:),b(:),shape);

Error in cconv1 (line 6)

w=T*conv(u,v); êlculate (6) via function ‘conv’. 修改:创建一个新的函数myconv

function a=myconv(b,c) bs=size(b); cs=size(c); i=any(bs-cs); if i

error('error') end

i=any(~(bs-1)); if ~i

error('error') end ko=0;

if bs(1)>bs(2) b=b'; c=c'; ko=1; end

bs=size(b); cs=size(c); ss=2*bs(2)-1; a=zeros(1,ss); for i=1:cs(2) q=zeros(1,i-1);

p=zeros(1,ss-cs(2)+1-i);

ba=[q,c,p]; ma=b(i)*ba; a=a+ma; end if ko a=a'; end end

cconv1中调用conv也改用mycovn得到以下结果:

说明运行无误。

function[w,tw]=cconv2(u,tu,v,tv) T=tu(2)-tu(1);

L1=length(u); %Get the length of vector u. L2=length(v); %Get the length of vector v. for n=1:L1+L2-1 Tfine the length of w. w(n)=0; %Initialize w. for m=max(1,n+1-L2):mi(n,L1);

Ttermine the starting and end points of the summing. w(n)=w(n)+u(m)*v(n-m+1); êlculate the sum. end

w(n)=T*w(n); %Modify the convolution sum to convolution integral. end

tw=tu(1)+tv(1)+T*[0:L1+L2-2]'; 用ccovn2代替ccovn1也得到以下结果:

至此文献中程序全部仿真完成。

参考文献:

(1)Xiao-han Guan, Meng-meng Zhang,Yong Zheng,《Matlab Simulation in Signals & Systems——Using Matlab at different levels》,College of Electromechanical Engineering North China University of Technology,Beijing, China,2009

(2)MATLAB数值计算方法\\张德丰等著.—北京:机械工业出版社,2010.1

致谢:

(1)王刚老师关于《MATLAB数值计算方法》的教授; (2)王,蒋等同学的讨论;

(3)电子科技大学图书馆,百度知道,百度文库的大力支持

本文来源:https://www.bwwdw.com/article/wuo7.html

Top