OFDM系统PAPR算法的MATLAB仿真,对比SLM,PTS以及CAF,对比不同傅里叶变换长度

目录

1.算法运行效果图预览

2.算法运行软件版本

3.部分核心程序

4.算法理论概述

4.1、选择映射(SLM)

4.2 相位截断星座图(PTS)

5.算法完整程序工程


1.算法运行效果图预览

(完整程序运行后无水印)

2.算法运行软件版本

matlab2022a

3.部分核心程序

(完整版代码包含详细中文注释和操作步骤视频)

for jj=1:Nbits
    Index(1,:)   = floor(length(MAP_qpsk)*rand(1,Lfft))+1; % 生成第一个符号的随机索引
    Index(2:N,:) = floor(length(Phases)*rand(N-1,Lfft))+1; % 生成其余符号的随机索引
    
    X(1,:)       = MAP_qpsk(Index(1,:)); % 原始频域信号
    Phase_Rot    = Phases(Index(2:N,:)); % 相位旋转
    X(2:N,:)     = repmat(X(1,:),N-1,1).*Phase_Rot; % 相位旋转后的频域信号
    
    x            = ifft(X,[],2); % 时域信号
    Pow1         = abs(x.^2); % 信号功率
    Pow2         = max(Pow1,[],2); % 峰值功率
    Pow3         = mean(Pow1,2);   % 平均功率
    
    PAPR_temp    = 10*log10(Pow2./Pow3); % 计算PAPR
    papr0(jj)    = PAPR_temp(1); % 存储原始PAPR
    papr_slm(1,jj)  = min(PAPR_temp(1:end)); % 存储SLM N=4的情况
end

% 计算累积分布函数
[cdf1, PAPR1] = ecdf(papr0); % 原始PAPR的CDF
[cdf2, PAPR2] = ecdf(papr_slm(1,:)); % SLM N=2的PAPR CDF
174

4.算法理论概述

       在正交频分复用(Orthogonal Frequency Division Multiplexing, OFDM)系统中,高峰均功率比(Peak-to-Average Power Ratio, PAPR)是一个关键问题,因为它会导致功率放大器非线性失真、增加发射机功耗等问题。为了降低PAPR,研究人员提出了多种算法,其中包括选择映射(Selected Mapping, SLM)、相位截断星座图(Partial Transmit Sequences, PTS)等技术。

4.1、选择映射(SLM)

        选择映射(SLM)算法通过生成多个相位旋转的子载波数据,并选择具有最低PAPR的信号进行传输。假设原始信号为x,则生成N个相位旋转的信号xi​,其中 i=1,2,…,N。

4.2 相位截断星座图(PTS)

        PTS方法通过对部分子载波施加相位旋转来降低PAPR。假设将 K 个子载波分为 V 个组,每组内的子载波可以独立地施加相位旋转。

5.算法完整程序工程

OOOOO

OOO

O

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

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

相关文章

《JavaEE进阶》----14.<SpringMVC配置文件实践之【验证码项目】>

本篇博客介绍的是Google的开源项目Kaptcha来实现的验证码。 这种是最简单的验证码。 也是很常见的一种验证码。可以去看项目结果展示。就可以明白这个项目了。 前言: 随着安全性的要求越来越高、很多项目都使用了验证码。如今验证码的形式也是有许许多多、更复杂的图…

RT-Thread Nano版本在STM32F103RB上的快速移植

目录 概述 1 RT-Thread Nano 1.1 Nano版本介绍 1.2 RT-Thread Nano的特点 2 STM32Cube 创建工程 2.1 STM32Cub配置板卡参数 2.2 项目程序架构 3 移植RT-Thread 3.1 Keil IDE加载RT-Thread 3.2 解决上面两个ERROR 3.2.1 ERROR-1: 3.2.2 ERROR-2 3.3 移植FINSH 3.4…

下载Mongodb 4.2.25 版本教程

1、MongoDB 安装包的下载链接 Download MongoDB Community Server | MongoDB 进入如下截图: 2、查找历史版本 往下拉,点击“...”,找到”Archived releases”,点击进入 、 3、下载Mongodb 4.2.25 版本 找到如下图4.2.25版本下载链接,点击就可…

LSP协议:打造流动性管理的市场新标杆

随着以太坊从 PoW(工作量证明)向 PoS(权益证明)的转型,PoS已然成为主流区块链共识机制的重要组成部分。再加上跨链技术的发展,包含比特币在内的不同生态之间进行资产质押与交换也催生出市场对于流动性管理的…

基于RP2350 MCU的树莓派Pico 2开发板及MicroPython编程使用

2021年1月21日,树莓派基金会同时发布了第1代RP2040 MCU芯片和基于RP2040 MCU的第1代树莓派Pico开发板(Raspberry Pi Pico/ Raspberry Pi Pico 1)。2024年8月8日,树莓派基金会又发布了第2代RP2350 MCU芯片并推出了基于RP2350 MCU的第2代树莓派Pico开发板(Raspberry Pi Pico 2)…

英文外链代发服务靠谱吗?

英文外链代发服务的可靠性因供应商和服务类型而异。外链代发服务的主要目标是提高网站在搜索引擎中的排名,通过增加指向目标网站的链接数量和质量来实现。然而,并不是所有的外链代发服务都是可靠的,很多外链都是只管发,但是发了有…

驾校预约学习系统的设计与实现

摘 要 伴随着信息技术与互联网技术的不断发展,人们进到了一个新的信息化时代,传统管理技术性没法高效率、容易地管理信息内容。为了实现时代的发展必须,提升管理高效率,各种各样管理管理体系应时而生,各个领域陆续进到…

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-…

论文翻译:arxiv-2024 Benchmark Data Contamination of Large Language Models: A Survey

Benchmark Data Contamination of Large Language Models: A Survey https://arxiv.org/abs/2406.04244 大规模语言模型的基准数据污染:一项综述 文章目录 大规模语言模型的基准数据污染:一项综述摘要1 引言 摘要 大规模语言模型(LLMs&…

海洋运输船5G智能工厂物联数字孪生平台,推进制造业数字化转型

海洋运输船5G智能工厂物联数字孪生平台,推进制造业数字化转型。在当今全球制造业的浪潮中,数字化转型已成为不可逆转的趋势,它不仅重塑了生产流程,更深刻影响着企业的竞争力与可持续发展能力。其中,海洋运输船5G智能工…

LabVIEW中Request Deallocation 功能

此功能会在包含该功能的 VI 运行之后释放未使用的内存。 该功能仅适用于高级性能优化。在某些情况下,释放未使用的内存可以提高性能。然而,过于频繁地释放内存可能导致 LabVIEW 反复重新分配空间,而不是重用已有的内存分配。如果您的 VI 分配…

怎么修复松下相机死机视频只有0字节(0KB)的MDT文件【实测可修复】

死机后视频文件大小仅为0字节 松下S5相机录像死机,关机重新开机后有一个视频文件变成MDT,大小为0KB,录了30多分钟,本应为MOV格式的视频。0字节文件可以修复吗?怎么修复0字节的MDT文件为视频? 数据提取与视…

建造者模式builder

此篇为学习笔记,原文链接 https://refactoringguru.cn/design-patterns/builder 能够分步骤创建复杂对象。 该模式允许你使用相同的创建代码生成不同类型和形式的对象

Centos7.9 安装Elasticsearch 8.15.1(图文教程)

本章教程,主要记录在Centos7.9 安装Elasticsearch 8.15.1的整个安装过程。 一、下载安装包 下载地址: https://www.elastic.co/cn/downloads/past-releases/elasticsearch-8-15-1 你可以通过手动下载然后上传到服务器,也可以直接使用在线下载的方式。 wget https://artifacts…

2024全国大学省数学建模竞赛A题-原创参考论文(部分+第一问代码)

一问题重述 1.1 问题背景 "板凳龙",又称"盘龙",是浙闽地区的传统地方民俗文化活动。这种独特的表演艺术形式融合了中国传统龙舞的精髓和地方特色,展现了人们对美好生活的向往和对传统文化的传承。 在板凳龙表演中&am…

如何正确选择防逆流监测多功能仪表?

安科瑞戴婷 什么是防回流? 什么是“逆流”?在电力系统中,电力通常从电网输送到负载,称为正向电流。安装光伏电站后,当光伏系统的功率大于本地负载的功率时,无法消耗的功率将被送至电网。由于电流方向与传…

【算法思想·二叉树】序列化

本文参考labuladong算法笔记[二叉树心法(序列化篇) | labuladong 的算法笔记] 要说序列化和反序列化,得先从 JSON 数据格式说起。 JSON 的运用非常广泛,比如我们经常将编程语言中的结构体序列化成 JSON 字符串,存入缓…

Unity面向对象补全计划 之 List<T>与class(非基础)

C# & Unity 面向对象补全计划 泛型-CSDN博客 关于List,其本质就是C#封装好的一个数组,是一个很好用的轮子,所以并不需要什么特别说明 问题描述 假设我们有一个表示学生的类 Student,每个学生有姓名和年龄两个属性。我们需要创…

MFC工控项目实例之十二板卡测试信号输出界面

承接专栏《MFC工控项目实例之十一板卡测试信号输入界面》 1、在BoardTest.h文件中添加代码 CButtonST m_btnStart[16],m_btnStart_O[16];2、在BoardTest.cpp文件中添加代码 UINT No_IDC_CHECK_O[16] {IDC_CHECK16,IDC_CHECK17,IDC_CHECK18,IDC_CHECK19,IDC_CHECK20,IDC_CH…

Apache Guacamole 安装及配置VNC远程桌面控制

文章目录 官网简介支持多种协议无插件浏览器访问配置和管理应用场景 Podman 部署 Apache Guacamole拉取 docker 镜像docker-compose.yml部署 PostgreSQL生成 initdb.sql 脚本部署 guacamole Guacamole 基本用法配置 VNC 连接 Mac 电脑开启自带的 VNC 服务 官网 https://guacam…