Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
 
 
主题工具 显示模式
旧 2008-12-22, 17:07   #1
beardgh
初级会员
 
注册日期: 2008-09-17
年龄: 16
帖子: 4
声望力: 0
beardgh 正向着好的方向发展
默认 非线性回归出现的错误了,大家试过吗?

m文件如下:
function [result1,result2 ]= nlinfitfunc(x,y,c01,t1)
global c0 t
% NLINFITFUNC Summary of this function goes here
% Detailed explanation goes here
% x=[1.5 2.5 3.5 5 7 9 11];
% y=[0.524 0.4273 0.2715 0.1522 0.0684 0.0385 0.043];
%初始赋值
c0=c01;
t=t1;
beta0=[0.3,0.000003];
result=nlinfit(x,y,@model,beta0);
%结果1
result1=result(1);
%结果2
result2=result(2);
format long e;
end
function y=model(beta0,x)
global c0
global t
%MODEL Summary of this function goes here
% Detailed explanation goes here
a=beta0(1);
b=beta0(2);
%c=sqrt(4*b*t*24*60*60);
%d=x/c;
%format long e
%y=c0+(a-c0)*(1-erf(d));
y=c0+(a-c0)*(1-erf(x/sqrt(4*b*t*24*60*60)));
end

用的时候出现这样的错误啊!!
[result1,result2 ]= nlinfitfunc(x,y,c01,t1)
??? Error using ==> erfcore
Input must be real.

Error in ==> erf at 21
y = erfcore(x,0);

Error in ==> nlinfitfunc>model at 28
y=c0+(a-c0)*(1-erf(d));

Error in ==> nlinfit>LMfit at 300
yfit = model(beta,X);

Error in ==> nlinfit at 167
[beta,J,lsiter,cause] = LMfit(X,y, model,beta,options,verbose,maxiter);

Error in ==> nlinfitfunc at 11
result=nlinfit(x,y,@model,beta0);

就是这个erf的问题
beardgh 当前离线   回复时引用此帖
 


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
origin使用手册 kushugmail Origin论坛 29 2019-05-09 15:34
求汉明码的编码与解码MATLAB程序 rain1206 MATLAB论坛 2 2009-03-02 12:48
[分享][讨论]C++ 快速FFT(rlft3)用于2D处理 149700017 MATLAB论坛 0 2009-02-25 22:47
[求助]关于三维画图的问题 duckliton MATLAB论坛 6 2008-12-15 18:55
【文章】仿真动画软件设计作品--电路开闭 yesman MATLAB论坛 0 2007-12-11 16:21


所有时间均为北京时间。现在的时间是 05:51


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.