Undefined function or method 'u' for input arguments of type 'double'.

来源:百度知道 编辑:UC知道 时间:2024/06/06 17:40:46

我也碰到了同样的问题,还在排查中,已经查了一整天了。结果不理想,向不同为什么我的function输入参数不能是double,单独运行这个函数没有问题,但是一旦主程序调用这个函数就出现这该死的error。

确保在matlab命令输入窗口输入命令时你用的是英文输入法,再试试,我也曾经犯过这样的错误...

把程序放到根目录下面,就OK了

是你的M文件没有保存到主路径中去,可以点击M文件左上方的file,然后选择set path,应该就可以了。

我也在就这一个类似的问题,
function Z=erweililunwuxianda(z,r1,r2,q,g,a,t)
p2=2/pi^2;
p4=-62/(3*pi^4);
p6=15116/(15*pi^6);
p8=-12554474/(105*pi^8);
Z(1)=0;
for i= 1:150
p=4*i-1;
b=0.25*pi*p*(1+p2/p^2+p4/p^4+p6/p^6+p8/p^8)/r2;
%G=exp(-b*z)*(1-erf(z/sqrt(4*a*t)-b*sqrt(a*t)))-exp(b*z)*(1-erf(z/sqrt(4*a*t)+b*sqrt(a*t)));
u=exp(-b*z)*erfc(z/sqrt(4*a*t)-b*sqrt(a*t))-exp(b*z)*erfc(z/sqrt(4*a*t)+b*sqrt(a*t));
u1=q*r1*besselj(1,r1*b)/(r2^2*g*b^2*besselj(1,r2*b)^2);
Z=Z+u*u1;
i=i+1;
end
??? Undefined function or method 'erfc' for input arguments of type
'double' and attributes 'full scalar complex'.
望大侠相助

为定义的函数或方法 u