%% 3.1

%3.1--求图3-60的三角波的傅里叶级数,并用MATLAB,求:

%(1).画出双边幅度谱和相位谱

%(2).若作出 N=3,5,9 时候的波形

%因为3-60的图三角波有两个 我选了第一个波形 并因为其并未确定 幅度和周期的确切值;

%所以我将这 振幅定义A=4 周期定义 T=4;

clear all

T=4;dt=0.01;

A=4;

t1=-T/2:dt:T/2;

ft1=A/(T/2)*abs(t1);

t=[t1-T t1 t1+T];%用于得到三个区间;

ft=repmat(ft1,1,3);%进行矩阵复制排列得到与t矩阵匹配的ft

subplot(3,1,1);

plot(t,ft);

xlabel('t');

title('三角脉冲的部分图像');

%幅度谱

w0=2*pi/T;

N=3;%可以通过修改这个值 进行改变 N 的取值.

K=-N:N;

for k=0:N

Fn(k+1)=quadv([num2str(A),'/2*abs(t)*exp(-i*',num2str(k),'*',num2str(w0),'*t)'],-T/2,T/2)/T;

end

l=length(Fn);%计算出Fn的长度用以确定双边谱的长度

F=zeros(1,2*l-1);

F(1:l)=flipud(Fn');F(l:end)=Fn';%对 幅度谱 进行双边拓展 成为 F.

subplot(3,2,3);

stem(K*w0,abs(F));% 作出双边幅度谱

xlabel('nw0');

title('双边幅度频谱');

%相位谱

ph=angle(F);%求出相位

subplot(3,2,4);

stem(K*w0,ph);

xlabel('nw0');

title('相位谱图像');

%傅里叶级数 近似模拟得到三角脉冲

K=K';%这里的K就是 [-N:N]

ft=F*exp(j*w0*K*t);%从 -N:N 的傅里叶级数

subplot(3,1,3);

plot(t,ft);

title('傅里叶级数近似表示');

%上面我做了N=3 的时候的波形 对题设中的 N=5 和N=9 因为只需要修改第20行的 N 值就可以得到

%% 3.2

%设 f(t)=e^(-2|t|) 求f(t),f(t-2)的傅里叶变换,分别作出其幅度谱和相位谱

clear all;

x=15;

T=17;

t0=2;

N=500;

w=linspace(-x,x,N);%对w的取值进行线性分割

F=zeros(1,N);%对用于存储数据的F进行赋初值

for k=1:N

factor=['exp(-j*t*',num2str(w(k)),')'];

F(k)=quad(['exp(-2*abs(t)).*',factor],-T,T);

end

subplot(4,1,1);

plot(w,F);

xlabel('w');

title('f(t)的幅度谱');

subplot(4,1,2);

plot(w,angle(F));

xlabel('w');

title('f(t)的相位谱');

for k=1:N %根据时移特性 f(t-t0)F(jw)e^(-jwt0)进行逐项运算得到时移后的波形

F(k)=F(k)*exp(-j*w(k)*t0);

end

subplot(4,1,3);

plot(w,F);

xlabel('w');

title('f(t-2)的幅度谱');

subplot(4,1,4);

plot(w,angle(F));

xlabel('w');

title('f(t-2)的的相位谱');

%% 3.3

%用freqs画出下列系统的幅频特性,并确定其是否具有低通.高通.或带通特性.

%(1)H(jw)=4/((jw)^3+4(jw)^2+8jw+8) 原题设中的第二项为 4(jw)我觉得是少些了个指数所以我就加上了

%由输入可知 微分方程会是: y'''(t)+4y''(t)+8y'(t)+8y(t)=4f(t)

clear all;

a=[1 4 8 8];

b=4;

fs=0.01;

K=4;

w=0:fs:K*pi;

H1=freqs(b,a,w);

subplot(2,1,1);

plot(w,abs(H1));

xlabel('w');

title('H(jw)=4/((jw)^3+4(jw)^2+8jw+8)波形');

%(2)y''(t)+sqrt(2)*y'(t)+y(t)=f''(t)

c=[1 0 0];

d=[1 sqrt(2) 1];

H2=freqs(c,d,w);

subplot(2,1,2);

plot(w,abs(H2));

xlabel('w');

title('y``(t)+sqrt(2)*y`(t)+y(t)=f``(t)波形');

%% 3.4

%信号 f1(t)如图3-90所示

%(1) 画出f(t)=f1(t)*cos(50t)的波形.

%(2) 某系统的频率响应为

%     H(jw)=10^4/((jw)^2+26.131(jw)^3+3.4142*10^2(jw)^2+2.6131*10^3(jw)+10^4)

%    画出H(jw)的幅频特性和相频特性.

%(3) 将f(t)通过上述系统,画出f(t)和输出信号的幅度谱.

%(4) 画出输出信号的波形.

%(1)

clear all;

dt=0.01;

K=5;

N=500;%修改这里可以改变采样点的数目

tt=-2:dt:4;

f1=tripuls(tt-1,2);%f1(t)的波形

subplot(4,2,1);

plot(tt,f1);

xlabel('t');

title('f1(t) 的波形');

f=tripuls(tt-1,2).*cos(50*tt);%f(t)的波形

subplot(4,2,2);

plot(tt,f);

xlabel('t');

title('f(t) 的波形');

%(2)由H(jw)易得到输入与输出的关系

b=10^4;

a=[1 26.131 3.4142*10^2 2.6131*10^3 10^4];

T=K+1;

w=linspace(-K*pi,K*pi,N);

H=freqs(b,a,w);

Ha=abs(H);%幅频特性

Hph=angle(H);%相频特性

subplot(4,2,3);

plot(w,Ha);

xlabel('w');

title('H(jw)的幅频特性');

subplot(4,2,4);

plot(w,Hph);

xlabel('w');

title('H(jw)的相频特性');

%(3)

F=zeros(1,N);

for k=1:N

factor=['exp(-j*t*',num2str(w(k)),')'];

F(k)=quad(['tripuls(t-1,2).*cos(50*t).*',factor],-T,T);

Y(k)=F(k)*H(k);

end

subplot(4,2,5);

plot(w,F);

xlabel('w');

title('f(t)的幅度谱');

subplot(4,2,6);

plot(w,Y);

xlabel('w');

title('y(t)的幅度谱');

%(4)

t=linspace(-K*pi,K*pi,N);

for k=1:N   %对输出信号进行求算

factor=['exp(j*w*',num2str(t(k)),')'];

y(k)=quad([num2str(Y(k)),'*',factor],-T,T)/(2*pi);

end

subplot(4,1,4);

plot(t,y);

xlabel('t');

title('y(t)的波形');

%% 关于page.100 程序的修改

%以下是我修改的程序

clear all;

T=4;

width=2;

A=0.5;

t1=-T/2:0.01:T/2;

ft1=0.5*[abs(t1)

t=[t1-T t1 t1+T];

ft=repmat(ft1,1,3);

subplot(3,1,1);

plot(t,ft);

xlabel('t');

title('original square waveform');

w0=2*pi/T;

N=6;

K=0:N;

for k=0:N

Fn(k+1)=quadv([num2str(A),'*rectpuls(t,2)*exp(-j*',num2str(k),'*',num2str(w0),'*t)'],-T/2,T/2)/T;

%Fn(k+1)=quadv([num2str(A),'*rectpuls(t,2)*exp(-j*',num2str(k),'*'num2str(w0)'*t')],-T/2,T/2)/T;

%注释中的是书上的程序,可是书写上有问题.在num2str(w0)这里逗号少写了两个

end

subplot(3,2,3);

stem(K*w0,abs(2*Fn));%这里的单边谱的Fn应该要乘以2

xlabel('nw0');

title('magnitude spectrum');

%phase

ph=angle(Fn);

subplot(3,2,4);

stem(K*w0,ph);

xlabel('nw0');

title('phase spectrum');

%sythesis

L=length(Fn);

F=zeros(1,2*L-1);

F(1:L)=flipud(Fn');F(L:end)=Fn';

K=[-N:N]';%f(t)是应该从-N:N

ft=F*exp(j*w0*K*t);

subplot(3,1,3);

plot(t,ft);

title('sythesized square wavform');

matlab (t)傅里叶,MATLAB 实现傅里叶变换 - 光子的日志 - 网易博客相关推荐

  1. matlab绘四叶玫瑰线,玫瑰线 - calculus的日志 - 网易博客

    在极坐标系中,以下方程表示的曲线称为玫瑰线(Rose curve): 或 当 n 是奇数时,玫瑰线有 n 个花瓣,称为 n 叶玫瑰. 当 n 是偶数时,玫瑰线有 2n 个花瓣,为 2n 叶玫瑰. 注: ...

  2. 冷却塔直纹面的matlab,直纹面 - calculus的日志 - 网易博客

    this.p={ m:2, b:2, loftPermalink:'', id:'fks_085074083084085075081084094095086083080064085095087069' ...

  3. matlab中绘制牟合方盖,牟合方盖 - calculus的日志 - 网易博客

    this.p={ m:2, b:2, loftPermalink:'', id:'fks_082075080094080075084087080095086083080064085095087069' ...

  4. matlab画椭圆抛物面参数方程,椭圆抛物面 - calculus的日志 - 网易博客

    this.p={ m:2, b:2, loftPermalink:'', id:'fks_082071092095089075084095083095086083080064085095087069' ...

  5. matlab中struct2,Matlab中struct的用法

    struct在matlab中是用来建立结构体数组的.通常有两种用法: s = struct('field1',{},'field2',{},...) 这是建立一个空的结构体,field1,field2 ...

  6. 【 MATLAB 】使用 MATLAB 实现模拟信号的近似及其连续傅里叶变换

    严格来说,利用MATLAB是不可能用来分析模拟信号的.然而,如果有足够小的时间增量在足够细的栅格上对采样而产生一种平滑的图,并有足够大的时间来展示所有的模式,那么就能对模拟信号作近似分析.令是栅格间隔 ...

  7. [MATLAB学习笔记]采用快速傅里叶变换求时间序列的周期项

    [MATLAB学习笔记]采用快速傅里叶变换求时间序列的周期项 1. 背景 现有长度为11年的5个时间序列,为某拟研究对象的5个参数.现计划先通过快速傅里叶变换求每个系数序列的显著周期项,再分别按照傅里 ...

  8. 用MATLAB计算序列的离散傅里叶变换

    用MATLAB计算序列的离散傅里叶变换 MATLAB提供了用快速算法计算离散傅里叶变换的函数fft,其调用格式为: Xk = fft(xn, N) 其中,调用参数xn为时域序列向量,N为离散傅里叶变换 ...

  9. matlab近红外光谱曲线,Matlab预处理近红外光谱.docx

    Matlab预处理近红外光谱 Matlab预处理近红外光谱1. 微分处理光谱一阶微分公式:二阶微分公式:式中,是谱图数据中i波数下的透过率,g为窗口宽度一阶导数MATLAB代码:X1st=diff(X ...

最新文章

  1. Altair Compose2020中文版
  2. linux—select具体解释
  3. java中注解动态传参_SpringMVC之注解、传参、返回值及拦截器
  4. 装饰器前奏2(2017年8月23日 11:50:39)(2017年8月29日 16:07:32)
  5. Cortex-M3的整体风景
  6. rtt面向对象oopc——5.IO设备管理之快速查看设备父类调用设备子类的方法
  7. Teradata在中国银行业的应用简介
  8. 美团百度联合布局无人驾驶外卖;高通裁员千人;英特尔关闭可穿戴业务 | CSDN极客头条...
  9. Python基础:集合与文件操作
  10. HeidiSQL- csv 表格导入数据到 DB表
  11. (1)信息熵,条件熵,信息增益,信息增益率
  12. 2021-11-14
  13. 算法导论(第三版)第一章习题答案
  14. 路由器和交换机的转发过程
  15. 程序员福利:当编程语言都变成女孩子
  16. 2022年软件测试人员必读的经典书籍推荐(附电子版)
  17. PDN仿真笔记5-电容走线影响寄生电感的因素分析
  18. 吴恩达深度学习第一课第三周编程作业(上)
  19. Project为项目设置预算
  20. java sca_用于Java的SCA客户机和实现模型

热门文章

  1. python编辑elif显示错误_elif给出语法错误python?
  2. iotBaidu问题小结
  3. 在Centos7.X版本下的UsbEAm LAN Party的自定义节点部署
  4. 头部UP主的赚钱方法,都在这里了
  5. 聊聊本科的毕业设计如何合理选题?
  6. 使用函数的得墨忒耳法则来解耦
  7. 闪迪SanDisk优盘USB3.0故障USB2.0正常的权宜处理
  8. 中国银行:从DevOps实践到应用性能管理
  9. 苹果电脑的系统安装的几种方式
  10. 2019年吉林大学数学建模校内选拔赛B题的一种思路