在Matlab中获取函数的代码?

在Matlab中获取函数的代码?,matlab,Matlab,我想知道我们——Matlab用户是否可以在Matlab中获得一些函数的代码(如fft-快速傅立叶变换、dwt-离散小波变换等),以防我们想要编辑一些东西来适应我们的需要。 在Matlab中可能吗? 如果是这样的话,我们怎样才能得到代码呢? 谢谢。在左侧的“当前目录”菜单下,matlab中有一个选项,选项名为“查找文件”,表示为双筒望远镜的图标,只需单击它,将目录设置为“输入matlab路径”,然后输入要搜索的函数名 例如,如果我想搜索函数imnoise,我会键入“imnoise.m” 在获得搜索

我想知道我们——Matlab用户是否可以在Matlab中获得一些函数的代码(如fft-快速傅立叶变换、dwt-离散小波变换等),以防我们想要编辑一些东西来适应我们的需要。 在Matlab中可能吗? 如果是这样的话,我们怎样才能得到代码呢?
谢谢。

在左侧的“当前目录”菜单下,matlab中有一个选项,选项名为“查找文件”,表示为双筒望远镜的图标,只需单击它,将目录设置为“输入matlab路径”,然后输入要搜索的函数名

例如,如果我想搜索函数imnoise,我会键入“imnoise.m”
在获得搜索结果后,只需双击函数文件,您就可以在那里编辑您想要的任何内容

正如前面提到的,许多MATLAB函数都是用MATLAB编写的,因此您可以查看源代码。出于性能原因,有些东西是在本机代码中实现的,或者使用外部库。在FFT的情况下,MATLAB使用FFTW库,该库的源代码是免费提供的。另请参见键入“edit function.m”(不带引号),其中“function”是包含要查看的代码的函数名


阅读更多内容:

总结一下,有几种方法可以做到这一点

例如,如果我们想查看函数的源代码
imread

a)
edit
编辑或创建文件

edit imread; %namely, edit('imread')
edit imread.m; %edit('imread.m')
b)
open
在适当的应用程序中打开文件

open imread; %open file 'imread.m' with matlab editor
c)
键入
以显示文件内容:

type imread; %this will display all the contents in command window, which is hard to read
注意命令语法是
funcName stringLiteral
,它等于其函数语法
funcName('stringLiteral')
。看见

对于大多数Matlab函数,您可以通过在Matlab提示符下键入“edit”来查看源代码。然而,大多数基本函数都是在内部实现的,您将无法查看源代码。您可以输入,这增加了不使用Matlab的额外好处:)顺便说一句,[i]fft是使用该库实现的。您还可以从中获得许多函数的MATLAB兼容源代码。