function s=SL20(A, x, group, sigma_min)
% Solution to the optimization problem min||s||_2,0 subject to x = As
% This is an NP hard problem. It is solved iteratively by smoothing the
% mixed ||.||_2,0 norm
% This algorithm is based upon the SL0 algorithm from the following webpage
%
% Web-page:
% ------------------
% http://ee.sharif.ir/~SLzero
%
% % Copyright (c) Angshul Majumdar 2009
% Input
% A = N X d dimensional measurment matrix
% y = N dimensional observation vector
% group = labels
% Output
% s = estimated sparse signal
MaxIter = 2500; j = 0;
sigma_decrease_factor = 0.5;
A_pinv = pinv(A);
mu_0 = 2;
L = 3;
ShowProgress = logical(0);
NoOfGroups = length(unique(group));
for i = 1:NoOfGroups
GroupInd{i} = find(group == i);
end
% Initialization
%s = A\x;
s = A_pinv*x;
sigma = 2*max(abs(s));
% Main Loop
while (sigma>sigma_min) && (j < MaxIter) % && (norm(x-A*s) > err)
j = j + 1;
for i=1:L
delta = OurDelta(s,sigma,GroupInd);
s = s - mu_0*delta';
s = s - A_pinv*(A*s-x); % Projection
end
if ShowProgress
fprintf(' sigma=%f, SNR=%f\n',sigma,estimate_SNR(s,true_s))
end
sigma = sigma * sigma_decrease_factor;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function delta=OurDelta(s,sigma,GroupInd)
for i = 1:length(GroupInd)
delta(GroupInd{i}) = s(GroupInd{i}).*exp(-norm(s(GroupInd{i}))^2/(2*sigma^2));
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function SNR=estimate_SNR(estim_s,true_s)
err = true_s - estim_s;
SNR = 10*log10(sum(true_s.^2)/sum(err.^2));
没有合适的资源?快使用搜索试试~ 我知道了~
【信道估计】基于matlab凸优化的OFDM信道估计【含Matlab源码 8819期】.zip
共5个文件
m:4个
jpg:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 177 浏览量
2024-10-08
19:25:06
上传
评论
收藏 26KB ZIP 举报
温馨提示
CSDN海神之光上传的代码均可运行,亲测可用,直接替换数据即可,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b或2023b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作 功率谱估计: 故障诊断分析: 雷达通信:雷达LFM、MIMO、成像、定位、干扰、检测、信号分析、脉冲压缩 滤波估计:SOC估计 目标定位:WSN定位、滤波跟踪、目标定位 生物电信号:肌电信号EMG、脑电信号EEG、心电信号ECG 通信系统:DOA估计、编码译码、变分模态分解、管道泄漏、滤波器、数字信号处理+传输+分析+去噪(CEEMDAN)、数字信号调制、误码率、信号估计、DTMF、信号检测识别融合、LEACH协议、信号检测、水声通信
资源推荐
资源详情
资源评论
收起资源包目录
【信道估计】基于matlab凸优化的OFDM信道估计【含Matlab源码 8819期】.zip (5个子文件)
【信道估计】基于matlab凸优化的OFDM信道估计【含Matlab源码 8819期】
l2p_re.m 1KB
main.m 261B
运行结果.jpg 31KB
SL20.m 2KB
GenerateProblem.m 1007B
共 5 条
- 1
资源评论
海神之光
- 粉丝: 5w+
- 资源: 6110
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功