24小时热门版块排行榜    

查看: 1719  |  回复: 7
【悬赏金币】回答本帖问题,作者琳姑娘将赠送您 10 个金币

琳姑娘

新虫 (初入文坛)

[求助] 用MATLAB求已知函数方程求未知参数的非线性拟合 已有1人参与

各位大神们好,我是非计算机专业的,关于非线性拟合中已知方程求参数的过程出现了一些问题,苦于对origin和MATLAB的欠缺掌握,始终不能解决,所以求助各位大神给小妹支招,在此先谢谢各位了,具体问题如下:
已知方程:y=x/(a-x)+(x*b*c)/(1+b*x)
已知下x,y的值
求未知参数 a,b,c
小妹用origin进行了拟合单数参数得到的值与预测值有很大的偏差,不知道是不是初值设置的有问题,但是初值并没有一个准确的范围,所以小妹想是不是由MATLAB计算会更准确一点,但是不知该用什么函数更好一点,各位大神可否方便将具体程序告知,谢谢大家了!!!已知的x,y值如下:
x=
0
0.09091
0.14894
0.23077
0.27273
0.31034
0.4
0.5
0.57143
0.66667
0.8
1
y=
0
0.399253512
0.55816012
0.597886772
0.637613424
0.697202962
0.776656266
0.850151232
0.883918666
0.925631431
0.935563754
0.985221849@月只蓝@beefly
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

独孤神宇

版主 (知名作家)

【答案】应助回帖

感谢参与,应助指数 +1
初值设置不合理,将下面的初始值带入重新计算。

均方差(RMSE): 0.0237919175225245
残差平方和(SSR): 0.00679266407278332
相关系数(R): 0.996065403418679
相关系数之平方(R^2): 0.992146287887615
修正R平方(Adj. R^2): 0.990401018529308
确定系数(DC): 0.992128544027446
卡方系数(Chi-Square): 0.00523251582767804
F统计(F-Statistic): 571.665530237039

参数        最佳估算
----------        -------------
a        8.7864410152629
b        6.65195741674362
c        1.00233276840369

====== 结果输出 ======

No.        实测值 y        计算值 y
1        0        0
2        0.399253512        0.388175876924902
3        0.55816012        0.516079245550114
4        0.597886772        0.633919242642671
5        0.637613424        0.678195803188898
6        0.697202962        0.711853531236959
7        0.776656266        0.776225966518653
8        0.850151232        0.830971494232945
9        0.883918666        0.863121753220008
10        0.925631431        0.900003925610213
11        0.935563754        0.943944872945454
12        0.985221849        0.999770773095241
数值计算
2楼2021-03-08 12:42:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

琳姑娘

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by 独孤神宇 at 2021-03-08 12:42:06
初值设置不合理,将下面的初始值带入重新计算。

均方差(RMSE): 0.0237919175225245
残差平方和(SSR): 0.00679266407278332
相关系数(R): 0.996065403418679
相关系数之平方(R^2): 0.992146287887615
修正R平 ...

您好 我有四组数据 分别拟合后会得到四组a,b,c,理论上讲这四组参数会有一个规律的变化,第一组数据得到的参数值跟您一样且前两组有规律,后两组数据拟合程度很高但是a值很大,与前两组数据相差有点大,当改变初值的时候拟合程度依然很高,但是参数变化也大,我就有点晕了,不知初值该如何设定,在什么情况下得到的数值才是准确的呢,如果您方便的话,可以帮忙拟合一下以下四组数据么,谢谢您。数据如下:
       
x1                 y1                                 x2                y2                                x3                y3                                x4                y4
0                0                                 0                0                                0                0                                0                0
0.09091        0.399253512                0.05882        0.142546454                0.11111        0.205394308                0.09091        0.110595447
0.14894        0.55816012                0.11111        0.257949367                0.16667        0.30019229                0.2                0.192999346
0.23077        0.597886772                0.2                0.412035322                0.27273        0.3337663                0.3                0.255886764
0.27273        0.637613424                0.27273        0.45934859                0.33333        0.349565524                0.4                0.2992577
0.31034        0.697202962                0.33333        0.49888006                0.42          0.42                                0.5                0.342628636
0.4                0.776656266                0.4                0.528609329                0.5                0.489786494                0.66667        0.357808024
0.5                0.850151232                0.5                0.578104772                0.58         0.49                                0.8                0.37159
0.57143        0.883918666                0.57143        0.623640298                0.66667        0.531260996                1                0.396841866
0.66667        0.925631431                0.66667        0.726590222                0.8                0.54743                       
0.8                0.935563754                0.8                0.696893484                1                0.56680969                       
1                0.985221849                1                0.746388927
3楼2021-03-08 15:33:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

独孤神宇

版主 (知名作家)

【答案】应助回帖

引用回帖:
3楼: Originally posted by 琳姑娘 at 2021-03-08 15:33:24
您好 我有四组数据 分别拟合后会得到四组a,b,c,理论上讲这四组参数会有一个规律的变化,第一组数据得到的参数值跟您一样且前两组有规律,后两组数据拟合程度很高但是a值很大,与前两组数据相差有点大,当改变初值的 ...

拟合的时候可以限制参数的范围

发自小木虫Android客户端
数值计算
4楼2021-03-08 15:49:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

琳姑娘

新虫 (初入文坛)

引用回帖:
4楼: Originally posted by 独孤神宇 at 2021-03-08 15:49:22
拟合的时候可以限制参数的范围
...

大神您好,由于需要非常精准的数值,想用MATLAB计算,可否告知用MATLAB计算的程序,非常谢谢
5楼2021-03-14 10:48:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

独孤神宇

版主 (知名作家)

【答案】应助回帖

引用回帖:
5楼: Originally posted by 琳姑娘 at 2021-03-14 10:48:41
大神您好,由于需要非常精准的数值,想用MATLAB计算,可否告知用MATLAB计算的程序,非常谢谢...

origin设置初值范围也可以。
matlab拟合也是需要设置初值值以及约束拟合参数范围

发自小木虫Android客户端
数值计算
6楼2021-03-14 11:21:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Cfdstudio2

禁虫 (正式写手)

本帖内容被屏蔽

7楼2021-03-14 18:49:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

七月民谣

木虫 (正式写手)

8楼2021-05-14 10:11:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 琳姑娘 的主题更新
不应助 确定回帖应助 (注意:应助才可能被奖励,但不允许灌水,必须填写15个字符以上)
信息提示
请填处理意见