-
大小: 1KB文件类型: .rar金币: 1下载: 0 次发布日期: 2021-05-22
- 语言: Matlab
- 标签: 功率分配 matlab waterfilling
资源简介
非MATLAB自带的waterfill函数。 waterfill2为自己编写的带完整注释的注水功率分配算法。waterfill3为他人版本,以供参考。
代码片段和文件信息
function [allocatedpower waterlv] = waterfill2(transpowernoisearr)
% WATERFILL2 returns waterfill algorithm results of the given SNR paras.
% 注水算法,返回各个发射天线上分配的信号功率
% 伴随有完整算法注释。为避免和MATLAB内嵌函数重名,故加上2后缀
% Author: Jumper_Le (Southeast University) 20171125 Version.1
[arisenoisedt]=sort(noisearr);
% 升序排列noise方差序列
for p=length(arisenoise):-1:1
% 开始降序号循环
waterlevel=(transpower+sum(arisenoise(1:p)))/p;
% 计算当前前p个噪声水平算出的水平面值
pouringpower=waterlevel-arisenoise;
% 计算以当前水平面,需要注入的水量
pp=pouringpower(1:p);
% 复制注入水量数组的前p个值到新变量pp
if(pp(:)>=0)
break;
% 如果当前情况下,注入水量均为正值(有意义),那么退出循环,确认注水结束
end
% 如果注入水量有负值,需要舍弃当前序列噪声最大项,重新进行剩余项的注水分配
end
allocatedpower=zeros(1length(arisenoise));
allocatedpower(dt(1:p))=pp;
% 返回p长度的信号功率分配数组,剩余的项均为0,代表超出水平面(不考虑)
waterlv=waterlevel;
% 返回waterlevel
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1190 2017-11-26 02:12 waterfill2.m
文件 1054 2017-11-26 12:08 waterfill3.m
----------- --------- ---------- ----- ----
2244 2
相关资源
- 基于FCM的图像分割 MATLAB 实现
- 控制向量参数化Matlab案例与编程方法
- matlab2016下载103275
- turbo码编码译码MATLAB仿真程序
- matlab小波信号去噪可用于预测数据预
- MATLAB读取obj文件中的数据
- OFDM,QPSK,MATLAB仿真
- matlab基于多尺度retinex算法的图像去雾
- 一级倒立摆系统的PID控制MATLAB仿真程
- 无线通信-预编码-MATLAB代码合集-毕设
- matlab实现的图像非局部均值滤波
- MATLAB-高斯核密度估计
-
Matlab Simuli
nk 光通信仿真 - 亚像素边缘检测matlab代码
- 基于直方图均衡化,暗通道先验,r
-
matlab读取xm
l,xm l转换为matlab - CRC32 MATLAB代码
-
SVPWM矢量控制异步电机Matlab/simuli
n - 压缩感知之基追踪法BP
- chirp信号matlab代码
- CRC32的matlab代码
- 基于matlab与opendss交互的快速潮流计算
- 基于Matlab的ASKFSKPSK仿真数字调制技术
- HMM工具箱,隐马尔可夫matlab工具
- 三维曲线拟合函数的MATLAB程序
- matlab对光栅的仿真代码
- MATLAB读取ply文件程序
- matlab 图像形状识别
- lm算法的matlab实现
- 太阳板光照强度与板倾斜角和方位角
评论
共有 条评论