在验证MATLAB算法的过程中,经常需要使用各种函数。 这减轻了主程序的负担,使程序和算法更简洁易懂,框架更清晰易懂。 MATLAB内部具有唯一的函数,但在研究算法时,您需要自己为特定算法创建和调用函数。 最近,在研究LSM(leastmeansquare )算法时,需要调用函数。 借用网上的程序,发现了一些错误,并对其进行了一些分析和研究。 对MATLAB大神来说可能很简单,但对部分初学者来说也值得借鉴和学习。
1.在主程序中我需要调用LMS这个函数:
[yn,w,en]=LMS[xn,dn,m,mu];
2.在LSM这个函数没有修改之前,仿照MATLAB自带的函数格式调用和编写:
(注:这个LMS函数原本不是我写的)
3.运行MATLAB主程序,发现以下问题:
命令行显示错误,分析如下:
1原作者没有将LMS写成函数。 那只是文件,不是函数;
2在调用过程中,LMS函数必须具有对应的输入变量、输出变量和结果;
3函数的格式必须与主程序兼容。
4.修改如下:
1重命名文件注释LMS1。 LMS1有与主程序相对应的输入输出变量和结果,函数格式的编写与MATLAB的本机格式相似。
2在主程序中重新调用
3编译如下。
正确的表示!
后记:首先你必须对你研究的算法熟悉,对MATLAB相关函数也有一定的了解。
MATLAB中文学习论坛: http://www.ilovematlab.cn/forum.PHP