24小时热门版块排行榜    

查看: 581  |  回复: 6
当前主题已经存档。

pallysally

银虫 (正式写手)

[交流] 【求助】matlab,这个错误究竟是什么?

Warning: Length of lower bounds is > length(x); ignoring extra bounds.
> In checkbounds at 27
  In optim\private\lsqncommon at 39
  In lsqnonlin at 182
  In zscanAbs at 220
Warning: Length of upper bounds is > length(x); ignoring extra bounds.
> In checkbounds at 37
  In optim\private\lsqncommon at 39
  In lsqnonlin at 182
  In zscanAbs at 220
??? Error using ==> lsqncommon at 101
LSQNONLIN cannot continue because user supplied objective function failed with the following error:
Error using ==> mpower
Matrix must be square.

Error in ==> lsqnonlin at 182
[x,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ...

Error in ==> zscanAbs at 220
[x,resnorm]= lsqnonlin('curvefunzscanAbs',x0,lb,ub,options);
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhaocaijunzl

银虫 (小有名气)

★ ★
wenzhenzhong(金币+2,VIP+0):谢谢探讨 11-2 17:37
2个警告:设置的上下限大于x的长度
一个错误:矩阵必须是方的
2楼2009-11-02 17:20:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cxymath

铁杆木虫 (知名作家)

大家看看 帮忙
3楼2009-11-02 23:16:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pallysally

银虫 (正式写手)

引用回帖:
Originally posted by cxymath at 2009-11-2 23:16:
大家看看 帮忙

感谢啊!
4楼2009-11-03 10:26:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pallysally

银虫 (正式写手)

谢谢以上两位,程序改动了一下,以前的问题暂时没有出现,但是出现了下边的问题:

主程序中是这样写的,调用curvefunzscanAbs作为拟合方程,其中NonAbs是拟合参数,transIntUp,pulse_temporal是拟合方程中的两个积分,一个带参数的变量积分,一个数值积分;

[x,resnorm]= lsqnonlin('curvefunzscanAbs',x0,lb,ub,options);

fitcurve1 = NonAbs*(1+xdata1.^2/0.005^2)*int(transIntUp,-25,25)/quad(@pulse_temporal,-25,25);


curvefunzscanAbs是这样写的:

function Q = curvefunzscanAbs(x,NonAbs)

syms x NonAbs;           %声明变量

DECLARE_Non;

Q1(1:datanum1,1)=0;

Q1= NonAbs*(1+xdata1.^2/0.005^2)*int(transIntUp,-25,25)/quad(@pulse_temporal,-25,25)-ydata1;

Q = [Q1'];


运行之后就报错:

??? Undefined function or method 'full' for input arguments of type 'sym'.

Error in ==> snls at 173
fvec = full(fval);

Error in ==> lsqncommon at 231
    [x,FVAL,LAMBDA,JACOB,EXITFLAG,OUTPUT,msg]=...

Error in ==> lsqnonlin at 182
[x,Resnorm,FVAL,EXITFLAG,OUTPUT,LAMBDA,JACOB] = ...

Error in ==> zscanAbs at 223
[x,resnorm]= lsqnonlin('curvefunzscanAbs',x0,lb,ub,options);


如果我去掉syms那一行,系统又说NonAbs没有定义。

到底问题出在哪里呢?
5楼2009-11-03 10:31:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

haixing2008

荣誉版主 (文坛精英)

友情顶帖,祝好运!
平平淡淡才是真!
6楼2009-11-21 16:43:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pallysally

银虫 (正式写手)

引用回帖:
Originally posted by haixing2008 at 2009-11-21 16:43:
友情顶帖,祝好运!

谢谢!
7楼2009-11-23 09:26:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 pallysally 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见