24小时热门版块排行榜    

查看: 1544  |  回复: 2

xwndf250

银虫 (小有名气)

[求助] 应用matlab已知数据求参数问题已有2人参与

流行病模型:
dI/dt=a*S*I-b*I
dS/dt=-a*S*I
dR/dt=b*I
已知
第1天:S=100 I=5 R=0
第2天:S=98  I=7 R=0
第3天:S=90 I=15 R=0
第4天:S=85 I=19 R=1
第5天:S=80 I=20 R=5
第6天:S=80 I=15 R=10
第7天:S=75 I=15 R=15
第8天:S=75 I=10 R=20
第9天:S=70 I=14 R=21
第10天:S=68 I=16 R=21
想求一下每天的参数 a b 请问怎么求解呢?(matlab)
另外,如何应用matlab 将实际点图以及公式图像 放到一个图上。观察他的模拟结果情况。
回复此楼

» 猜你喜欢

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

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

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
xwndf250: 金币+15, 有帮助, 我只想要matlab的的程序,不过还是要谢谢你。另外对于求参数问题,这个1stOpt有什么要求吗?比如像求解2个参数,至少知道几个已知参数为好? 2014-03-24 10:06:34
1stOpt求解:
CODE:
Variable t,S,I,R;
ODEFunction
I'=a*S*I-b*I;
S'=-a*S*I;
R'=b*I;
Data;
//t,S,I,R
1,100,5,0
2,98,7,0
3,90,15,0
4,85,19,1
5,80,20,5
6,80,15,10
7,75,15,15
8,75,10,20
9,70,14,21
10,68,16,21

均方差(RMSE):4.34441684362604
残差平方和(SSE):509.596858201905
相关系数(R): 0.672258204473979
相关系数之平方(R^2): 0.451931093482578
确定系数(DC): 0.147995676561136
F统计(F-Statistic): 34.0062120157514

参数                  最佳估算
--------------------        -------------
a        0.00461118762442189
b        0.252793800382281

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

文件: 数据文件-1
No        t        目标 s        计算 s        目标 i        计算 i        目标 r        计算 r
1        2        98        97.4741145006773        7        6.12335991909717        0        1.40252558022548
2        3        90        94.4863088186581        15        7.40445719340253        0        3.10923398793936
3        4        85        91.0210096991185        19        8.82136082391591        1        5.15762947696557
4        5        80        87.0912508279901        20        10.3316165847728        5        7.57713258723717
5        6        80        82.7448628642643        15        11.8714279459937        10        10.383709189742
6        7        75        78.0658734111211        15        13.3592965817125        15        13.5748300071664
7        8        75        73.1693543000699        10        14.7046582202379        20        17.1259874796922
8        9        70        68.1898075656599        14        15.8202753349948        21        20.9899170993453
9        10        68        63.2654522619756        16        16.6354209350298        21        25.0991268029947
2楼2014-03-23 22:34:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
xwndf250: 金币+15, ★★★很有帮助, 还是1stopt...不过最起码给了个matlab 参考了 谢谢 2014-03-26 22:51:04
引用回帖:
2楼: Originally posted by dingd at 2014-03-23 22:34:57
1stOpt求解:

Variable t,S,I,R;
ODEFunction
I'=a*S*I-b*I;
S'=-a*S*I;
R'=b*I;
Data;
//t,S,I,R
1,100,5,0
2,98,7,0
3,90,15,0
4,85,19,1
5,80,20,5
6,80,15,10
7,75,15,15
8,75,10,20
9,70,14 ...

常微分方程组参数的拟合,MATLAB参见:
http://muchong.com/bbs/viewthread.php?tid=7151341&authorid=1122189
在拟合方面,1stopt更强大哈。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
3楼2014-03-24 14:28:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 xwndf250 的主题更新
信息提示
请填处理意见