24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 1614  |  回复: 5

姜玉旺

木虫 (著名写手)

[求助] 关于matlab微分、及非线性拟合问题

最近一直苦苦思索化学反应速率的问题,想用matlab来求微分拟合非线性曲线求出常数,可我确实不懂matlab,望各位大侠不吝赐教,帮我编写出程序,最好能有图形结合,小弟感激涕零:
我的方程式是(dx)/(dt)=a*c*[(K-1)*x^2-32*K*x+31*K]
t,x的取值为t=0,x=0;t=1,x=0.0355;t=2,x=0.1014;t=3,x=0.1394;t=4,x=0.2147;t=5,x=0.2823;t=6,x=0.3274;t=7,x=0.3717;t=8,x=0.4095.
其中a,K未知,c=1.213.
小弟已经计算好几天了,其在无能为力,拜托了,帮我编出程序。。。感谢了。。。
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

东平Modelon

金虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+2, 谢谢参与 2013-01-14 00:21:28
姜玉旺: 金币+5, ★★★很有帮助 2013-01-14 08:52:30
分离微分方程变量以后,如果懒得用配方法解出微分方程的话,弄个mathematica可以直接用解析法解
Integrate[1/( a*c*((k - 1)*x^2 + 32*k*x + 31*k)), x]

                       16 k - x + k x
          ArcTanh[------------------------]
                  Sqrt[k] Sqrt[31 + 225 k]
             -(---------------------------------)           - 66  = t
            a c Sqrt[k] Sqrt[31 + 225 k]


然后显然
f(x_n) - t_n =0
喜欢用fmincon做优化 还是用nlinfit做非线性回归求系数也是随便你啦。
2楼2013-01-13 21:06:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

姜玉旺

木虫 (著名写手)

引用回帖:
2楼: Originally posted by 东平Modelon at 2013-01-13 21:06:18
分离微分方程变量以后,如果懒得用配方法解出微分方程的话,弄个mathematica可以直接用解析法解
Integrate

                       16 k - x + k x
          ArcTanh
                  Sqrt Sqrt
         ...

我输进去后,怎么出现以下问题了?在帮解决一下吧
??? Integrate[1/( a*c*((k - 1)*x^2 + 32*k*x + 31*k)), x]
             |
Error: Unbalanced or unexpected parenthesis or bracket.
3楼2013-01-14 14:08:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

东平Modelon

金虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★
姜玉旺: 金币+5, ★★★很有帮助 2013-01-15 10:48:45
引用回帖:
3楼: Originally posted by 姜玉旺 at 2013-01-14 07:08:23
我输进去后,怎么出现以下问题了?在帮解决一下吧
??? Integrate
             |
Error: Unbalanced or unexpected parenthesis or bracket....

积分我是用MATHEMATICA做的,不是matlab。


                       16 k - x + k x
          ArcTanh[------------------------]
                  Sqrt[k] Sqrt[31 + 225 k]
     -          (---------------------------------)           - 66  - t = 0
            a c Sqrt[k] Sqrt[31 + 225 k]
变换成matlab的代碼:


然后在matlab可以定义newfunction.m

function result = newfunction(X, beta)
k = beta(1);
a = beta(2);
x = X(1);
t = X(2);

result = 前面那个公式


最后用nlinfit(X, Y, beta0)算结果
其中
X = [ 0, 0; 1, 0.0355; 等等]
Y = [0 ; 0 等等](和X等高)
beta0 = [ 0, 0] 是初值,你猜一个吧。看code就可以知道前面是k后面是a了。
4楼2013-01-15 02:54:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

姜玉旺

木虫 (著名写手)

引用回帖:
4楼: Originally posted by 东平Modelon at 2013-01-15 02:54:24
积分我是用MATHEMATICA做的,不是matlab。


                       16 k - x + k x
          ArcTanh
                  Sqrt Sqrt
     -          (---------------------------------)           -  ...

谢谢哈,我试试吧
5楼2013-01-15 10:49:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
姜玉旺: 金币+10, ★★★很有帮助 2013-11-27 18:37:37
用1stOpt直接微分方程拟合:
CODE:
Constant c=1.213;
Variable t,x;
ODEFunction x'=a*c*((K-1)*x^2-32*K*x+31*K);
Data;
0,0
1,0.0355
2,0.1014
3,0.1394
4,0.2147
5,0.2823
6,0.3274
7,0.3717
8,0.4095

均方差(RMSE):0.0144298065185047
残差平方和(SSE):0.00166575452929184
相关系数(R): 0.995283478470763
相关系数之平方(R^2): 0.990589202516862
确定系数(DC): 0.986895420543766
F统计(F-Statistic): 457.855211610462

参数                  最佳估算
--------------------        -------------
a        -0.101555842272903
k        -0.0151477051447373

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

文件: 数据文件-1
No        t        目标 x        计算 x
1        1        0.0355        0.0562847266411599
2        2        0.1014        0.110052998758528
3        3        0.1394        0.162114481657899
4        4        0.2147        0.213185538231459
5        5        0.2823        0.263930448271775
6        6        0.3274        0.314996671293445
7        7        0.3717        0.367048236670994
8        8        0.4095        0.420800978410109
6楼2013-11-22 12:46:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 姜玉旺 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 0703化学 +7 妮妮ninicgb 2026-03-27 7/350 2026-03-28 11:20 by Awei099
[考研] 压国家一区线,求导师收留,有恩必谢! +4 迷人的哈哈 2026-03-28 4/200 2026-03-28 09:48 by zhshch
[考研] 315分求调剂 +7 26考研上岸版26 2026-03-26 7/350 2026-03-28 04:05 by fmesaito
[考研] 085600,材料与化工321分,求调剂 +9 大馋小子 2026-03-27 9/450 2026-03-27 14:30 by mmm just
[考研] 085601 材料工程 313分 求调剂 +5 Ong3 2026-03-27 5/250 2026-03-27 12:24 by goldfish51
[考研] 求调剂323材料与化工 +7 1124361 2026-03-24 7/350 2026-03-27 10:22 by wangjy2002
[硕博家园] 招收生物学/细胞生物学调剂 +3 IceGuo 2026-03-26 4/200 2026-03-27 05:35 by user003
[考研] 349求调剂 +5 杰斯塔里斯 2026-03-21 5/250 2026-03-27 00:31 by wxiongid
[考研] 333求调剂 +6 wfh030413@ 2026-03-23 6/300 2026-03-26 22:45 by 学员8dgXkO
[考研] 327求调剂 +7 prayer13 2026-03-23 7/350 2026-03-26 20:48 by 不吃魚的貓
[考研] 总分322求生物学/生化与分子/生物信息学相关调剂 +5 星沉uu 2026-03-26 6/300 2026-03-26 19:02 by macy2011
[考研] 085602 289分求调剂 +8 WWW西西弗斯 2026-03-24 8/400 2026-03-26 16:33 by 不吃魚的貓
[考研] 289求调剂 +17 硕星赴 2026-03-23 17/850 2026-03-26 16:18 by 不吃魚的貓
[考研] 一志愿北京化工大学材料与化工(085600)296求调剂 +9 稻妻小编 2026-03-26 9/450 2026-03-26 16:16 by 不吃魚的貓
[考研] 332求调剂 +6 032500 2026-03-25 6/300 2026-03-25 22:45 by 418490947
[考研] 306求0703调剂一志愿华中师范 +10 纸鱼ly 2026-03-21 11/550 2026-03-24 17:22 by qingfeng258
[考研] 333求调剂 +3 ALULU4408 2026-03-23 3/150 2026-03-23 19:04 by macy2011
[考研] 293求调剂 +3 涛涛Wjt 2026-03-22 5/250 2026-03-22 22:21 by jiangpengfei
[考研] 315分,诚求调剂,材料与化工085600 +3 13756423260 2026-03-22 3/150 2026-03-22 20:11 by edmund7
[考研] 求调剂院校信息 +6 CX 330 2026-03-21 6/300 2026-03-22 15:25 by 无懈可击111
信息提示
请填处理意见