news 2026/4/3 3:05:22

积分旁瓣电平-matlab函数

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
积分旁瓣电平-matlab函数
%% ISL 计算 % 该示例用于采用我自己编写的ISL公式计算ISL clear all; close all; clear; N = 128; %信号长度 plotEnableHigh = 1; randPhaSig = exp(1j*2*pi*rand(N,1)); %生成随机相位编码信号 mlb = 0; %设置主瓣宽度为0,即只有自相关延迟为0的值 figure; plot(real(randPhaSig),'linewidth',1); axis tight; title(sprintf('长度为N=%d的随机相位编码信号',N)); [ISL_linear, ISL_dB, PSL_dB] = myISLPSL (randPhaSig, mlb, plotEnableHigh);

调用了计算积分旁瓣电平和峰值旁瓣电平的函数如下:

function [ISL_linear, ISL_dB, PSL_dB] = myISLPSL (x, mlb, plotEnable) %% 计算积分旁瓣电平 % 自己动手编写的波形的自相关的ISL积分旁瓣电平、PSL峰值旁瓣电平 % 输入: % x: 输入信号 % mlb: 主瓣宽度,主瓣一半的宽度 % 输出: % ISL_linear:ISL输出,以线性值 % ISL_dB: 以dB值输出 N = length(x); %输入信号的长度为N,那么自相关序列的长度为2N+1 acf = xcorr(x); %计算自相关函数 acf_norm = acf/max(abs(acf)); %对自相关函数进行归一化 acf_power = abs(acf_norm).^2; %能量值,这里取了平方 mainLobeCenter = N; %找到主瓣的中心位置 % 定义主瓣区域和旁瓣区域 mainLobeInd = mainLobeCenter-mlb : mainLobeCenter+mlb; %主瓣区域 sideLobeInd = [1: (mainLobeCenter - mlb - 1), (mainLobeCenter + mlb + 1):length(acf)]; %旁瓣区域 % 计算主瓣能量和旁瓣能量 mainLobePower = sum(acf_power(mainLobeInd)); %主瓣总能量 sideLobePower = sum(acf_power(sideLobeInd)); %旁瓣总能量 % 计算峰值旁瓣电平 sideLobePeak_linear = max(abs(acf_norm(sideLobeInd)))/1; %峰值旁瓣电平 PSL_dB = 20*log10(sideLobePeak_linear); %以dB为单位的PSL PSL_ind = find(abs(acf_norm) == sideLobePeak_linear) PSL_ind = PSL_ind(1); %仅保留第一个峰值 % 计算ISL(两种表示) ISL_linear = sideLobePower / mainLobePower; %积分旁瓣电平,这里以主瓣能量 ISL_dB = 10*log10(ISL_linear); %dB值表示的积分旁瓣电平 acd_ind = (-N+1):(N-1); %自相关函数的延迟取值范围 if plotEnable == 1 fprintf('=== ISL计算示例 ===\n'); fprintf('主瓣峰值能量: %.4f\n', mainLobePower); fprintf('旁瓣总能量: %.4f\n', sideLobePower); fprintf('ISL(线性): %.6f (无量纲比值)\n', ISL_linear); fprintf('ISL(dB): %.2f dB\n', ISL_dB); fprintf('\n注意:ISL_dB中的"dB"不是物理单位,而是对数标度表示\n'); sidelobePoints = length(sideLobeInd) averagePower = sum(abs(acf_norm(sideLobeInd)))/sidelobePoints; %平均能量 averLine = ones(1,2*N-1).*averagePower; figure; plot(acd_ind, 20*log10(abs(acf_norm) + eps), 'linewidth',1); %加上eps可以防止太小的值 %plot(acd_ind, (abs(acf_norm) + eps), 'linewidth',1); %加上eps可以防止太小的值 hold on; plot(acd_ind, 20*log10(averLine),'b--', 'linewidth',1); %加上eps可以防止太小的值 plot(acd_ind(PSL_ind), 20*log10(abs(acf_norm(PSL_ind))), 'ro'); axis tight; title(sprintf('自相关函数\n积分旁瓣电平ISL = %.2fdB, 峰值旁瓣电平PSL = %.2fdB',ISL_dB, PSL_dB)); legend('自相关值','平均值','PSL'); end


这里生成了128位的随机相位编码波形,经过自相关后再做归一化,可以看到主瓣峰值为0dB,积分旁瓣的整体的平均水平再-25dB左右,峰值旁瓣电平为-16.88dB,与LFM信号的-13.2dB相比还是略低一点的。但是它不如LFM的旁瓣那么平滑,而是有很多凸起。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/15 23:37:31

DeepSeek 开年王炸:mHC 架构用流形约束重构 ResNet 残差连接

大过节的qwen发布了image 2512,DeepSeek这边就偷摸的在arXiv 上挂出了这篇 mHC: Manifold-Constrained Hyper-Connections (arXiv:2512.24880),哪个正经公司在最后一天还发论文啊。 简单的看了一下,说说我的看法: 这回DeepSeek又…

作者头像 李华
网站建设 2026/3/30 16:01:05

深度学习毕设项目:基于MobileNet v2模型的口罩实时检测系统实现

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/2 7:40:18

ESLint 代码检查:规范代码风格

引言 在前端开发的世界里,代码风格的统一至关重要。想象一下,一个团队中每个人都有自己独特的代码书写习惯,有的喜欢使用单引号,有的喜欢双引号;有的缩进用两个空格,有的用四个空格。这样的代码混合在一起&…

作者头像 李华
网站建设 2026/4/1 5:14:26

持续集成与持续部署(CI/CD):自动化流程

在现代软件开发中,持续集成(Continuous Integration,CI)和持续部署(Continuous Deployment,CD)是至关重要的实践,它们能够显著提升开发效率、减少错误并加速软件交付。本文将深入探讨…

作者头像 李华
网站建设 2026/3/31 22:53:02

基于Simulink的光储微电网主从控制策略仿真

目录 手把手教你学Simulink--基础光伏储能场景实例:基于Simulink的光储微电网主从控制策略仿真 一、引言:为什么用主从控制策略?——光储微电网的“稳定中枢”设计 挑战: 二、核心原理:主从控制策略的“主-从协同”逻辑 1. 主从控制架构与角色分工 (1)主控制器(储…

作者头像 李华