基于NLMS 算法的自适应信道均衡附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

个人主页:Matlab科研工作室

个人信条:格物致知。

基于NLMS算法的自适应滤波器的构建方法,该方法具体步骤如下:步骤一:确定参数;步骤二:初始化;步骤三:确定数据.本发明利用自适应滤波器中步长的变化,增强其滤波性能,尤其在低信噪比环境下,提高了滤波系统的抗噪能力.它在自适应滤波技术领域里具有较好的实用价值及广阔地应用前景.

基于NLMS 算法的自适应信道均衡附matlab代码_第1张图片

⛄ 部分代码

function y = slicer256(u);  

% This function maps its complex input u  

% into the closest entry in a 256QAM constellation.   

if abs(real(u)) <= 2

   a = 1;  

elseif abs(real(u)) <= 4 

   a = 3; 

elseif abs(real(u)) <= 6

   a = 5; 

elseif abs(real(u)) <= 8

   a = 7; 

elseif abs(real(u)) <= 10

   a = 9;   

elseif abs(real(u)) <= 12

   a = 11;   

elseif abs(real(u)) <= 14

   a = 13;    

else  

   a = 15;  

end  

  

if abs(imag(u)) <= 2  

   b = 1;  

elseif abs(imag(u)) <= 4

   b = 3; 

elseif abs(imag(u)) <= 6

   b = 5; 

elseif abs(imag(u)) <= 8

   b = 7; 

elseif abs(imag(u)) <= 10

   b = 9; 

elseif abs(imag(u)) <= 12

   b = 11; 

elseif abs(imag(u)) <= 14

   b = 13; 

else  

   b = 15;

end  

if real(u) >= 0   % Avoid using the sign function of  

   sign_a = 1;    % matlab since it returns 0 when its input 

else              % is zero.

   sign_a = -1;  

end  

  

if imag(u) >= 0  

   sign_b = 1;  

else  

   sign_b = -1;  

end  

y = a*sign_a + j*b*sign_b; 

⛄ 运行结果

基于NLMS 算法的自适应信道均衡附matlab代码_第2张图片

基于NLMS 算法的自适应信道均衡附matlab代码_第3张图片

⛄ 参考文献

[1]肖鹏韬, 姚金杰, 高磊. NLMS判决反馈均衡器在水声通信中的应用[J]. 伺服控制, 2011(2):49-50.

⛄ 完整代码

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料

你可能感兴趣的:(信号处理,matlab,算法,开发语言)