在MATLAB中创建自定义函数

在MATLAB中创建自定义函数,matlab,Matlab,我在matlab中的函数有问题,我需要做一个均衡器,使用3个滤波器高通、低通、带通,我已经创建了三个不同的脚本来做这个滤波器,现在我想让我的均衡器主程序调用这3个脚本,有人知道怎么做吗?我已经在互联网上搜索过了,但是我没有找到任何可以帮助我的东西。如果我理解正确,您希望将您在中创建的过滤器作为函数传递给某个脚本来进行处理。通过将函数句柄作为参数传入,这是相当简单的。例如,如果在high_pass_filter.m文件中编写了一个名为high_pass_filter的函数,则可以使用以下方法将其作

我在matlab中的函数有问题,我需要做一个均衡器,使用3个滤波器高通、低通、带通,我已经创建了三个不同的脚本来做这个滤波器,现在我想让我的均衡器主程序调用这3个脚本,有人知道怎么做吗?我已经在互联网上搜索过了,但是我没有找到任何可以帮助我的东西。

如果我理解正确,您希望将您在中创建的过滤器作为函数传递给某个脚本来进行处理。通过将函数句柄作为参数传入,这是相当简单的。例如,如果在high_pass_filter.m文件中编写了一个名为high_pass_filter的函数,则可以使用以下方法将其作为参数传递给函数:

do_processing(@high_pass_filter, arguments);
在函数do_processing中,它的定义如下

function do_processing(filter, arguments)
然后,要应用过滤器,即执行high_pass_filter.m,只需编写

filter(arguments_for_filter_function);
然后可以为三个不同的过滤器调用相同的处理函数


有关函数句柄的更多信息,请参见

使第一个函数的输出成为下一个函数的输入…请查看有关