连续信号离散信号的功率谱密度--用MATLAB求功率谱密度

连续信号&离散信号的功率谱密度--用MATLAB求功率谱密度

目录

前言

一、能量及功率定义

1、连续信号

2、离散信号

二、功率谱密度计算公式

三、MATLAB仿真

1、源代码

2、仿真结果分析

总结


前言

        一直对数字信号处理中的功率谱密度计算有点好奇,虽然MATLAB有提供现成的计算功率谱密度的计算函数,但还是想不通过调用函数,就单纯的通过FFT变换利用所谓的周期图法,去计算信号的功率谱密度,于是就有了下文。


提示:以下是本篇文章正文内容,希望能帮助到各位,转载请附上链接。

一、能量及功率定义

1、连续信号

        连续信号x(t)的能量定义为:

E=\int_{-\infty }^{+\infty}x^2(t)dt

        功率定义为:

P=\lim_{t \to\infty }\frac{1}{2T}\int_{-T}^{T}x^2(t)dt

2、离散信号

        序列x(n)的能量定义为:

E=\sum_{n=-\infty}^{\infty}|x(n)|^{2}=\sum_{n=-\infty}^{\infty}x(n)x^{*}(n)

         功率定义为:

P=\lim\limits_{K\to\infty}\frac{1}{2K+1}\sum\limits_{n=-K}^{K}\left | x(n) \right |^2

        按照定义,对于离散信号,在固定的时间内,采样频率增加,采样点数增加,能量是会增加。

        无意中看到的新观点,采样频率增加会导致能量增加。感觉怪怪的,但又与公式吻合,分享给大家。

二、功率谱密度计算公式

        用于功率谱密度估计的公式有如下:

1)连续时间信号: 

S_{xx}(f)=\lim_{T\to\infty}\frac{|\mathcal{F}\{x_w(t)\}|^2}T;

2)离散时间信号:

S_{xx}(f)=\lim_{N\to\infty}\frac1{Nf_s}|\mathrm{DFT}\{x(n)\}|^2

        对于离散时间信号求功率谱密度,为什么要除以采样频率Fs,要用离散信号去推,比较复杂,本人不搞谱估计,就不细推了,大家可以参考下面几篇文章。

功率谱密度为什么等于fft的平方除N再除以fs? - 知乎

功率谱密度(Power Spectrum Density, PSD)的公式推导与谱密度估计 - 知乎

使用 FFT 获得功率频谱密度估计- MATLAB & Simulink- MathWorks 中国

三、MATLAB仿真

1、源代码

clear ; clc; close all;

randn('state',0);                    % 随机数初始化
Fs = 1000;                           % 采样频率
t = 0:1/Fs:1-1/Fs;                   % 时间刻度
f1=50; f2=120;                       % 两个正弦分量频率
x=cos(2*pi*f1*t)+3*cos(2*pi*f2*t)+randn(size(t)); % 信号
% 使用FFT
N = length(x);                       % x长度
xdft = fft(x);                       % FFT
xdft = xdft(1:N/2+1);                % 取正频率
psdx = (1/(Fs*N)) * abs(xdft).^2;    % 计算功率谱密度
psdx(2:end-1) = 2*psdx(2:end-1);     % 乘2(2:end-1)
freq = 0:Fs/length(x):Fs/2;          % 频率刻度
subplot 211
plot(freq,10*log10(psdx))        % 取对数作图
grid on; xlim([0 Fs/2]);
title('用FFT的周期图')
xlabel('频率/Hz')
ylabel('功率谱密度/(dB/Hz)')
% 调用periodogram函数
[Pxx,f]=periodogram(x,rectwin(length(x)),N,Fs); 
subplot 212
plot(freq,10*log10(Pxx));        % 取对数作图
grid on; xlim([0 Fs/2]);
title('调用periodogram函数的周期图')
xlabel('频率/Hz')
ylabel('功率谱密度/(dB/Hz)')
mxerr = max(psdx'-Pxx)               % 求两种方法的最大差值
set(gcf,'color','w'); 

P = Fs/N * (sum(psdx) - 0.5*(psdx(1) + psdx(end))) %梯形法积分

其中用到函数 [Pxx,f] = periodogram(x,rectwin(length(x)),N,Fs);

括号里面的参数依次为:序列,矩形窗,FFT长度,采样频率。

2、仿真结果分析

        可见,利用FFT计算的功率谱和调用函数计算功率谱是一样的结果。也可见,50Hz和120Hz处功率谱密度的值明显远大于其他频率处的值。

        那个P是我用梯形法积分求的功率,和我设置的信号的功率大致对得上,功率谱估计嘛,肯定会有误差的。

        f1=50; f2=120;                       % 两个正弦分量频率

        x=cos(2*pi*f1*t)+3*cos(2*pi*f2*t)+randn(size(t)); % 信号

        功率:\frac{1^2}{2}+\frac{3^2}{2}+1=6

        5.9123\approx 6

最后,给读者提一个小问题,功率谱和功率谱密度是同一个东西吗???


总结

        以上就是今天要讲的内容,本文介绍了如何用MATLAB去估计数字信号的功率谱密度,希望对大家有所帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/497444.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL】15. 事务管理(重点) -- 1

1. CURD不加控制,会有什么问题? 2. CURD满足什么属性,能解决上述问题? 买票的过程得是原子的 ?买票互相应该不能影响 ?买完票应该要永久有效 ?买前,和买后都要是确定的状态? 3. 什么是事务? 事务就是…

探索 2024 年 Web 开发最佳前端框架

前端框架通过简化和结构化的网站开发过程改变了 Web 开发人员设计和实现用户界面的方法。随着 Web 应用程序变得越来越复杂,交互和动画功能越来越多,这是开发前端框架的初衷之一。 在网络的早期,网页相当简单。它们主要以静态 HTML 为特色&a…

CSS 结构伪类选择器 伪元素选择器 盒子模型

目录 1. 结构伪类选择器1.1 :nth-child(公式) 2. 伪元素选择器3. 盒子模型3.1 盒子模型的重要组成部分3.2 盒子模型 - 边框线3.3 盒子模型 - 内边距3.4 盒子模型 - 尺寸计算3.5 盒子模型 - 外边距3.6 盒子模型 - 元素溢出3.7 外边距问题 - 合并现象3.8 外边距问题 - 塌陷问题3.…

游戏推广的新篇章:Xinstall助力实现全渠道效果统计与提升

随着游戏市场的日益繁荣,游戏推广已成为各大游戏公司争夺市场份额的关键环节。然而,面对众多推广渠道和复杂的用户行为,如何精准地评估推广效果、优化投放策略,成为了游戏推广人员亟待解决的问题。此时,Xinstall作为一…

如何使用Windows电脑部署Lychee私有图床网站并实现无公网IP远程管理本地图片

🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法|MySQL| ​💫个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-MSVdVLkQMnY9Y2HW {font-family:"trebuchet ms",verdana,arial,sans-serif;f…

网络工程师实验命令(华为数通HCIA)

VRP系统的基本操作 dis version #查看设备版本信息 sys #进入系统视图 system-name R1 #改设备名字为R1进入接口配置IP地址 int g0/0/0 ip address 192.168.1.1 255.255.255.0 #配置接口地址为192.168.1.1/255.255.255.0 ip address 192.168.1.2 24 sub #此…

flutter生成二维码并截图保存到图库

引入库:flutter_screenutil、image_gallery_saver、qr_flutter弹窗布局 import dart:async; import dart:typed_data; import package/generated/l10n.dart; import package:jade/configs/PathConfig.dart; import package:jade/utils/ImageWaterMarkUtil.dart; im…

车载以太网AVB交换机 gptp透明时钟 8口 千兆/百兆可切换 SW1100TR

SW1100车载以太网交换机 一、产品简要分析 8端口千兆和百兆混合车载以太网交换机,其中包含2个通道的1000BASE-T1采用罗森博格H-MTD接口,5通道100BASE-T1泰科MATEnet接口和1个通道1000BASE-T标准以太网(RJ45接口),可以实现车载以太网多通道交…

Flink系列之:Flink SQL Gateway

Flink系列之:Flink SQL Gateway 一、Flink SQL Gateway二、部署三、启动SQL Gateway四、运行 SQL 查询五、SQL 网关启动选项六、SQL网关配置七、支持的端点 一、Flink SQL Gateway SQL 网关是一项允许多个客户端从远程并发执行 SQL 的服务。它提供了一种简单的方法…

Unity图集编辑器

图集编辑器 欢迎使用图集编辑器新的改变编辑器图片 欢迎使用图集编辑器 Unity图集操作很是费劲 无法批量删除和添加图集中的图片 新的改变 自己写了一个图集编辑器 客: 支持批量删除 左键点击图片代表选中 右键点击图标定位到资产支持批量添加 选中图片拖拽到编…

Linux 系统 部署weblogic(新手版)

Linux 系统 部署weblogic(新手版) 一、 1、如果原环境有jdk则需要卸载。 先用命令查看 rpm -qa|grep java 如果有jdk则需要卸载rpm -e --nodeps java-1.7.0-openjdk-1.7.0.191-2.6.15.5.el7.x86_64rpm -e --nodeps java-1.8.0-openjdk-headl…

京东云0基础搭建帕鲁服务器_4核16G和8核32G幻兽帕鲁专用服务器

使用京东云服务器搭建幻兽帕鲁Palworld游戏联机服务器教程,非常简单,京东云推出幻兽帕鲁镜像系统,镜像直接选择幻兽帕鲁镜像即可一键自动部署,不需要手动操作,真正的新手0基础部署幻兽帕鲁,阿腾云atengyun.…

【Java面试题】Redis上篇(基础、持久化、底层数据结构)

文章目录 基础1.什么是Redis?2.Redis可以用来干什么?3.Redis的五种基本数据结构?4.Redis为什么这么快?5.什么是I/O多路复用?6.Redis6.0为什么使用了多线程? 持久化7.Redis的持久化方式?区别?8.…

【JavaEE】初识线程,线程与进程的区别

文章目录 ✍线程是什么?✍线程和进程的区别✍线程的创建1.继承 Thread 类2.实现Runnable接口3.匿名内部类4.匿名内部类创建 Runnable ⼦类对象5.lambda 表达式创建 Runnable ⼦类对象 ✍线程是什么? ⼀个线程就是⼀个 “执行流”. 每个线程之间都可以按…

Github 2024-03-28Go开源项目日报Top10

根据Github Trendings的统计,今日(2024-03-28统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Go项目9非开发语言项目1Ollama: 本地大型语言模型设置与运行 创建周期:248 天开发语言:Go协议类型:MIT LicenseStar数量:42421 个Fork数量:…

vue组件弹窗窗

import { createApp } from vue; import { Popup } from vant;const app createApp(); app.use(Popup); 有这样的一个效果 在手机上很美观 不错 建议大家使用

HarmonyOS实战开发-实现一个计步器卡片应用

介绍 本篇Codelab基于Stage模型实现带有卡片的计步应用,用于介绍卡片的开发及生命周期实现。需要完成以下功能: 消息通知栏,通知用户今天所行走步数。元服务卡片,在桌面上添加2x2或2x4规格元服务卡片,能看到步数变化…

论文问卷的六类分析思路

很多同学在写论文时,会选择通过收集问卷来获取研究所需的数据。然而,问卷收集完成后,如何对这些数据进行有效的分析,成为了一个重要的问题。这么多的问卷数据摆在面前,该如何进行分析呢? SPSSAU从问卷设计…

docker 部署 gitlab-ce 16.9.1

文章目录 [toc]拉取 gitlab-ce 镜像创建 gitlab-ce 持久化目录启停脚本配置配置 gitlab-ce编辑 gitlab-ce 配置文件重启 gitlab-ce配置 root 密码 设置中文 gitlab/gitlab-ce(需要科学上网) 拉取 gitlab-ce 镜像 docker pull gitlab/gitlab-ce:16.9.1-ce.0查看镜像是不是有 Vo…

图论之路径条数专题

一直忙着金工实习蓝桥杯,好久没有看图论了,今天就小试几题享受下被虐的快感。 1.最短路拓扑 首先来几个结论: 1.最短路图没有环(可以用反证法证明) 2.dis[u]edge[u,v]dis[v],那么u,v端点的边一定在最短路…