MatLab错误:输入参数太多

时间:2013-05-28 02:35:18

标签: matlab function input parameters arguments

我已经定义了这样的函数:

function [phi_D,phi_S,v_S] =libem2(n_D,p_D,n_S,vertpts_S,elemvert_S,alpha_S,beta_S,f_S)

显然libem2接受8个参数。该函数实际上是另一个名为interiorsquaretest的函数的辅助函数。因此,当我尝试在libem2中拨打interiorsquaretest时,就像这样:

[phi_D, phi_S,v_S] =libem2(5,points,32,vertpts,elemvert,a,b,F);

我收到错误说:

Error using libem2
Too many input arguments.

Error in interiorsquaretest (line 73)
      [phi_D, phi_S,v_S] =libem2(5,points,32,vertpts,elemvert,a,b,F);

这怎么可能!我传递了8个参数,libem2期望8个参数!请帮忙。

2 个答案:

答案 0 :(得分:1)

可能在某处定义了另一个libem2函数 - 在另一个文件中,或在定义interiorsquaretest相同文件中。

首先,尝试运行

which libem2

在MATLAB提示符下,来自interiorsquaretest.m所在的同一目录,并查看它是否提供了您期望的文件。如果它显示另一个文件,问题就解决了。

如果没有,请查看您的libem2文件中是否定义了其他interiorsquaretest.m

答案 1 :(得分:0)

您可能在路径设置中的某处有另一个文件,名称相同,参数数量不同。