Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-04-24, 15:06   #1
shuihefeng
初级会员
 
注册日期: 2008-04-24
年龄: 43
帖子: 5
声望力: 0
shuihefeng 正向着好的方向发展
默认 [求助]非线性数学模型如何计算

已知数学模型为Q=k1*(P-(1/d)^k3)^k2

且已知p,d,Q多组数据.怎么能求出系数k1,k2,k3的值

p d Q
0.22 0.02 44.95

0.2 0.02 42.61

0.18 0.02 38.60

0.16 0.02 35.28

0.15 0.02 34.19

0.14 0.02 32.49

0.12 0.02 31.25

0.1 0.02 28.04

0.08 0.02 19.07

0.06 0.02 13.50

0.05 0.02 10.13

0.04 0.02 7.39

0.147 0.025 29.04

0.14 0.025 27.8

0.12 0.025 24.88

0.1 0.025 21.03

0.08 0.025 17.54
shuihefeng 当前离线   回复时引用此帖
旧 2008-04-27, 22:38   #2
watcher
高级会员
 
注册日期: 2008-04-02
年龄: 47
帖子: 175
声望力: 21
watcher 正向着好的方向发展
默认

这个问题可以这样看:
每一组数据都通过数学模型建立了一个方程,在这个方程中只有k1,k2,k3是未知数。
如果求k1,k2,k3的值,只要三组数据就可以了。
现在存在多于三组的数据,因此可以看作是一个优化问题。
根据优化目标不同,结果是不同的。
用matlab解决优化问题,不多讲了,有现成的函数调用,不明白的,多看帮助。
这里讲一下如何获取优化目标函数。
以Q的方差最小为例,k1,k2,k3是待求未知数,那么每一对(Pi,di)可以确定一个Qi,同时根据数学模型有Qi*=k1*(Pi-(1/di)^k3)^k2,这里i表示一组数据。现在要使Q的方差最小,即Sum[(Qi-Qi*)^2]最小,所以最优目标为:
Sum[(Qi-k1*(Pi-(1/di)^k3)^k2)^2]
:smile:
watcher 当前离线   回复时引用此帖
旧 2008-04-28, 01:44   #3
fanxing39
高级会员
 
注册日期: 2007-12-02
年龄: 44
帖子: 303
声望力: 31
fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星fanxing39 是一位成功的新星
默认

引用:
作者: shuihefeng 查看帖子
已知数学模型为Q=k1*(P-(1/d)^k3)^k2

且已知p,d,Q多组数据.怎么能求出系数k1,k2,k3的值

p d Q
0.22 0.02 44.95

0.2 0.02 ...
貌似 要用最小二乘法 拟合得到 哦 :heart:
fanxing39 当前离线   回复时引用此帖
旧 2008-04-29, 11:47   #4
yinjiangming
初级会员
 
注册日期: 2008-04-23
年龄: 48
帖子: 10
声望力: 18
yinjiangming 正向着好的方向发展
默认

>> solve('k1*(0.22-(1/0.02)^k3)^k2-44.95=0','k1*(0.2-(1/0.02)^k3)^k2-42.61','k1*(0.18-(1/0.02)^k3)^k2-38.60')

x =63.581666294730701890019133676754
y =.12004519863509000656600188169454
z =-.46158940341158178454742966007143

第四排以后的数据好像有问题底数是负数
yinjiangming 当前离线   回复时引用此帖
旧 2008-05-10, 06:08   #5
slgu
高级会员
 
注册日期: 2007-06-24
年龄: 70
帖子: 188
声望力: 21
slgu 正向着好的方向发展
默认

[k1, k2, k3]= [ 124.899979, .613898557, .879510231]
R^2 =.973757
slgu 当前离线   回复时引用此帖
旧 2008-05-10, 17:02   #6
hzxsyzl943
普通会员
 
注册日期: 2008-04-28
年龄: 35
帖子: 63
声望力: 19
hzxsyzl943 正向着好的方向发展
默认

好:smile:
hzxsyzl943 当前离线   回复时引用此帖
回复


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

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


相似的主题
主题 主题作者 版面 回复 最后发表
人脸识别分类的问题 feiyan2000000 MATLAB论坛 0 2008-06-06 11:43
【文章】仿真动画软件设计作品--活塞运动 yesman MATLAB论坛 1 2008-04-21 18:31
【求助】matlab读取文件问题 tecpenguin MATLAB论坛 2 2008-02-03 14:04
【求助】急~~~请高手指点两个问题 陆羽樊 MATLAB论坛 0 2008-01-02 01:14
【求助】怎样对N个点拟合特定的概率分布 Palacio MATLAB论坛 0 2007-08-29 20:54


所有时间均为北京时间。现在的时间是 11:33


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