如何使用MATLAB搜索路径

时间:2010-01-25 01:08:59

标签: path directory search-path matlab

我对MATLAB搜索路径有一些疑问:

  1. 当前目录位于搜索路径上,但为什么它不在“path”的输出中?我在哪里可以找到完整的搜索路径?

  2. 添加搜索路径的所有可能方法是什么?

  3. 考虑添加搜索路径的所有可能方法(例如pathdef.m,startup.m,MATLABPATH env变量等),添加的搜索路径的顺序是什么?我认为这很重要,因为当不同搜索路径中存在同名文件时,将会选择顶部的文件。

2 个答案:

答案 0 :(得分:10)

Amro提供的链接在回答您的问题时非常有帮助。更具体地解决这些问题:

  1. PATH的输出会显示pathdef.m文件的内容,其中应包含以下所有内容:

    • MATLAB和其他MathWorks产品(即工具箱)提供的文件夹。这些文件夹位于根MATLAB文件夹中,您可以使用MATLABROOT功能找到它。

    • MATLAB用户文件夹(即Windows平台上的My Documents\MATLAB),可以使用USERPATH函数找到。

    • 用户已添加到路径文件的任何其他文件夹。

    完整的search path包含上述内容,以及当前目录。当前目录不会保存为路径文件的一部分,因为它可以在MATLAB会话期间更改。您可以使用PWD功能找到当前文件夹。

  2. 可以通过更改路径文件或当前目录来更改search path。您可以通过以下方式修改路径文件:

    可以通过以下方式更改当前目录:

  3. 使用上述方法修改路径文件时,通常会将新文件夹添加到路径列表的顶部。您可以使用Set Path dialog box更改路径文件中路径的顺序。

    当有share the same name函数时,MATLAB遵循以下function precedence order来确定使用哪个函数:

    • 变量(如果变量与函数同名)

    • 嵌套功能

    • 子功能

    • 私人功能

    • 类构造函数

    • 重载方法

    • 当前目录中的功能

    • 搜索路径上其他位置的功能

    请注意,当前目录中的函数在搜索路径上的其他位置之前调用。此外,最靠近搜索路径顶部的文件优先于文件的下方。

答案 1 :(得分:5)

最佳答案是指向相关的MATLAB文档: