在MATLAB中创建自定义函数

时间:2016-09-14 19:01:55

标签: matlab

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

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您希望将已创建的过滤器作为函数传递给将执行处理的某个脚本。通过传入一个函数句柄作为参数,这是相当简单的。例如,如果你有一个名为high_pass_filter的函数(写在文件high_pass_filter.m中),那么你可以使用类似的函数将它作为参数传递给函数:

do_processing(@high_pass_filter, arguments);

在函数do_processing中,它的定义类似于

function do_processing(filter, arguments)

然后应用过滤器(即执行high_pass_filter.m),你只需要写

filter(arguments_for_filter_function);

然后,您可以为三个不同的过滤器调用相同的处理函数。

有关函数句柄的更多信息,请参阅this page of the Matlab documentation