为什么matlab没有找到这个函数调用?

时间:2014-06-20 20:17:55

标签: python matlab mex

所以我下载了一些编译好的matlab文件。我在文件夹中看到以下文件。

makemesh.mexmaci64  
makemesh.mexw32  
makemesh.mexw64

我将此文件夹添加到userpath,现在路径变量显示该文件夹中存在该文件夹。

我尝试运行这些文件附带的测试脚本,并收到此错误消息。

Undefined function 'makemesh' for input arguments of type 'struct'.

现在要麻烦拍摄,我需要找到,

  1. 是否找到该功能,但数据类型错误。
  2. 它甚至找不到这个功能。
  3. 如果是案例1.

    1a上。我如何找出函数所期望的正确数据结构。

    我对python很好,但对matlab很新,所以你可以添加关于如何查询函数的帮助字符串的提示,如何打印出函数名称给出的函数签名(比如ipython接口中的?function_name)会非常有用。

    谢谢,

3 个答案:

答案 0 :(得分:3)

computer('arch')返回glnxa64,代表GnuLiNuX 64位。您已经下载了Win32bit(mexw32),Win64bit(mexw64)和Intel(mexmaci64)上的IOS的二进制文件。要么自己编译源文件,要么为linux编译二进制文件。

答案 1 :(得分:1)

您可以使用命令which <functionName>查看Matlab是否正在查看您的功能。

您是否尝试help <functionName>查看您的功能预期是否有任何有用的评论?

答案 2 :(得分:1)

您可以使用which命令在路径中找到文件的位置。例如:

which makemesh.mexw64

应该将该文件的位置打印到终端。如果你得到

  

'未找到'makemesh.mexmaci64'。

然后它意味着您的路径上不存在该文件。

至于找出这个功能想要什么,我会从“帮助”开始

help makemesh.mexw64

并查看是否可以为您提供任何有用的信息。

我怀疑在某种程度上,你的matlab没有将mex文件识别为函数,所以我开始在那里寻找。