24小时热门版块排行榜    

查看: 2422  |  回复: 9

willow.322

金虫 (初入文坛)

[求助] 采用matlab中nlinfit拟合,出现问题了,不知道是哪错了,该怎么解决,求高手指点一下

我要拟合的模型是一个二元的非线性方程:y=B*x1*(x2^b)+A*(x2^a)

我用matlab拟合的代码和错误如下

>> x1=[10 5 3.3333 2.5 2 2.5 2.5 2.5 2.5];
>> x2=[30 30 30 30 30 10 20 40 50];
>> y=[0.8776 0.5662 0.4278 0.3060 0.2332 0.6769 0.4029 0.2441 0.2329];
>> myfunc=inline('beta(1)*x1*x2^beta(2)+beta(3)*x2^beta(4)','beta','x1','x2');
>> beta=nlinfit(x1,x2,y,myfunc,[0.5 0.5 0.5 0.5]);
??? Undefined command/function 'nlinfit'.

红色部分是出现的问题,这是怎么回事呢?我该怎么改进呢?
我使用的matlab7.0

还有我想问下除了用nlinfit来模拟的话,还有别的方法吗?要是多元非线性的模拟。。。
希望有高手能帮我解决,在这先谢过了
回复此楼
加油发文章,加油!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wmc_1979

金虫 (小有名气)

【答案】应助回帖

willow.322(金币+20): 得到的结果应该是合理的,就是这个M文件,我不懂,还想请问下具体怎么写M文件? 2011-08-24 09:29:27
主窗口为:
x1=[10 5 3.3333 2.5 2 2.5 2.5 2.5 2.5];
x2=[30 30 30 30 30 10 20 40 50];
y=[0.8776 0.5662 0.4278 0.3060 0.2332 0.6769 0.4029 0.2441 0.2329];
X=[x1' x2']
y=y';
beta=nlinfit(X,y,'fun44',[0.5 0.5 0.5 0.5])
fun44 的编写为(M文件)
function yy=fun44(beta,X)
   yy=beta(1)*X(:,1).*(X(:,2).^beta(2))+beta(3)*X(:,2).^beta(4);
结果为:
beta =

    0.3336   -0.4255    3.7457   -1.0139
不知是否正确.
2楼2011-08-23 23:20:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

willow.322

金虫 (初入文坛)

引用回帖:
2楼: Originally posted by wmc_1979 at 2011-08-23 23:20:21:
主窗口为:
x1=[10 5 3.3333 2.5 2 2.5 2.5 2.5 2.5];
x2=[30 30 30 30 30 10 20 40 50];
y=[0.8776 0.5662 0.4278 0.3060 0.2332 0.6769 0.4029 0.2441 0.2329];
X=[x1' x2']
y=y';
beta=nlinfit(X,y,' ...

最好,将从一开始到出结果的代码都帮忙贴上来,我再给你金币哈,我只学会matlab一点点,就是为了模拟这个模型的,万分感谢哈!
加油发文章,加油!
3楼2011-08-24 09:40:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wmc_1979

金虫 (小有名气)

引用回帖:
3楼: Originally posted by willow.322 at 2011-08-24 09:40:43:
最好,将从一开始到出结果的代码都帮忙贴上来,我再给你金币哈,我只学会matlab一点点,就是为了模拟这个模型的,万分感谢哈!

已经是所有的代码了,只有M文件的编写这样的:
    点file->new->M-file.
进入后把:
4楼2011-08-24 17:04:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wmc_1979

金虫 (小有名气)

引用回帖:
4楼: Originally posted by wmc_1979 at 2011-08-24 17:04:01:
已经是所有的代码了,只有M文件的编写这样的:
    点file->new->M-file.
进入后把:

function yy=fun44(beta,X)
   yy=beta(1)*X(:,1).*(X(:,2).^beta(2))+beta(3)*X(:,2).^beta(4);
拷进去就可以了,注意用fun44文件名保存就可以了.然后在主窗口输入:
5楼2011-08-24 17:06:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wmc_1979

金虫 (小有名气)

引用回帖:
5楼: Originally posted by wmc_1979 at 2011-08-24 17:06:16:
function yy=fun44(beta,X)
   yy=beta(1)*X(:,1).*(X(:,2).^beta(2))+beta(3)*X(:,2).^beta(4);
拷进去就可以了,注意用fun44文件名保存就可以了.然后在主窗口输入:

x1=[10 5 3.3333 2.5 2 2.5 2.5 2.5 2.5];
x2=[30 30 30 30 30 10 20 40 50];
y=[0.8776 0.5662 0.4278 0.3060 0.2332 0.6769 0.4029 0.2441 0.2329];
X=[x1' x2']
y=y';
beta=nlinfit(X,y,'fun44',[0.5 0.5 0.5 0.5])
就可以有结果了
6楼2011-08-24 17:08:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

willow.322

金虫 (初入文坛)

引用回帖:
6楼: Originally posted by wmc_1979 at 2011-08-24 17:08:24:
x1=[10 5 3.3333 2.5 2 2.5 2.5 2.5 2.5];
x2=[30 30 30 30 30 10 20 40 50];
y=[0.8776 0.5662 0.4278 0.3060 0.2332 0.6769 0.4029 0.2441 0.2329];
X=[x1' x2']
y=y';
beta=nlinfit(X,y,'fun44',[0.5 0. ...

可是,我按照你说的写了一遍,还是出现那个问题:
??? Undefined command/function 'nlinfit'.
这是怎么回事?是我版本的问题吗?版本里没有nlinfit这个函数吗?
谢谢您!
加油发文章,加油!
7楼2011-08-24 18:49:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wmc_1979

金虫 (小有名气)

引用回帖:
7楼: Originally posted by willow.322 at 2011-08-24 18:49:34:
可是,我按照你说的写了一遍,还是出现那个问题:
??? Undefined command/function 'nlinfit'.
这是怎么回事?是我版本的问题吗?版本里没有nlinfit这个函数吗?
谢谢您!

可能是这个原因!matlb7.0安装程序应该有1G以上的,有一些包可能你没有安装
8楼2011-08-24 22:04:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

willow.322

金虫 (初入文坛)

引用回帖:
8楼: Originally posted by wmc_1979 at 2011-08-24 22:04:43:
可能是这个原因!matlb7.0安装程序应该有1G以上的,有一些包可能你没有安装

啊,我刚看了一下,确实我装的才500M,那你用的是什么版本的,或是从那个网址上下下来的?可否发一个给我,谢谢!
加油发文章,加油!
9楼2011-08-25 09:04:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wmc_1979

金虫 (小有名气)

引用回帖:
9楼: Originally posted by willow.322 at 2011-08-25 09:04:45:
啊,我刚看了一下,确实我装的才500M,那你用的是什么版本的,或是从那个网址上下下来的?可否发一个给我,谢谢!

太大了,基本上很难发!你可以去买一张光盘.
10楼2011-08-25 13:33:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 willow.322 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +32 医学老男孩 2026-08-13 72/3600 2026-08-16 13:15 by 医学老男孩
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 26/1300 2026-08-16 12:35 by 启萌科技
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +11 家与远方 2026-08-10 16/800 2026-08-16 10:28 by ray43
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +10 majunge000 2026-08-11 12/600 2026-08-16 08:18 by xli1984
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[硕博家园] 请教兼职经验 +3 是阿文鸭 2026-08-09 3/150 2026-08-14 12:07 by HER12025
[基金申请] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[基金申请] FileCode能看出啥? +10 要乐观耀哥 2026-08-10 32/1600 2026-08-14 09:37 by 要乐观耀哥
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
[基金申请] 综述论文作为代表作会不会影响评审专家的印象分? +11 yufeiwaner 2026-08-09 13/650 2026-08-12 08:17 by yufeiwaner
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
信息提示
请填处理意见