mello 发表于 2010-12-22 13:54

请dingd帮个帮指点一下小弟一下!

我程序如下:
Title "myfunction";
Parameter k1,k2,k3 ;
Variable x,y1,y2,y3,y4,y1',y2',y3',y4';
Plot y1, y2(x),y3(x),y4(x);
ODEOptions = ;
ODEFunction y1'=k1*y1;
            y2'=k1*y1-k2*y2;
            y3'=k2*y2-k3*y3;
            y4'=k1*y1+k2*y2+k3*y3;
data;
//x,y1,y2,y3,y4=
0        0.9922         0.0054         0.0024         0.0000
3        0.9602         0.0195         0.0035         0.0169
28        0.8352         0.0826         0.0076         0.0746
53        0.5316         0.1766         0.0508         0.2409
78        0.2798         0.1752         0.1034         0.4348
103        0.1241         0.1241         0.1446         0.6058
183        0.0175         0.0413         0.1490         0.7922
303        0.0000         0.0165         0.1168         0.8666
463        0.0000         0.0123         0.1099         0.8777
603        0.0000         0.0137         0.1064         0.8799
不知道我的程序有没有问题?我是今天才听说1stopt这个软件,看了说明,只有3.0以上的版本才有四阶龙格库塔法解微分方程的算法,我只有一个1.5注册版,算不了,能指点一下,给算一下!谢了!

dingd 发表于 2010-12-22 18:12

运行了下,结果不好,你的公式和数据都准确无误吗?

mello 发表于 2010-12-22 19:59

可能是我的数学模型有缺陷!!相关系数是多少?

mello 发表于 2010-12-22 20:47

能把结果贴出来给我看看嘛?

dingd 发表于 2010-12-24 11:37

y2、y3的实测数据似乎不太好,将其去掉,代码如下:
Title "myfunction";
Parameter k1,k2,k3 ;
Variable x,y1,y4;
Plot y1, y2(x);
ODEFunction y1'=k1*y1;
            y2'=k1*y1-k2*y2;
            y3'=k2*y2-k3*y3;
            y4'=k1*y1+k2*y2+k3*y3;
data;
//x,y1,y4=
0      0.9922   0.0000
3      0.9602   0.0169
28      0.8352   0.0746
53      0.5316   0.2409
78      0.2798   0.4348
103      0.1241   0.6058
183      0.0175   0.7922
303      0.0000   0.8666
463      0.0000   0.8777
603      0.0000   0.8799
这样效果不错:

均方差(RMSE): 0.0507246125771497
残差平方和(SSE): 0.0514597264220387
相关系数(R): 0.994413167263415
相关系数之平方(R^2): 0.988857547226856

参数                  最佳估算
--------------------        -------------
k1        -0.0141381652038833
k2        0.0362911503571188
k3        0.01090046059588
y2初值        -2.22151837992446
y3初值        8.29247045974409

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

文件:数据文件 - 1
No        目标y1        计算y1        目标y4        计算y4
1        0.9602        0.950996330772447        0.0169        -0.00955352047735088
2        0.8352        0.667844974358125        0.0746        0.0720289051960028
3        0.5316        0.468999611266806        0.2409        0.259402442679004
4        0.2798        0.329358822221319        0.4348        0.43823026163409
5        0.1241        0.231294933045679        0.6058        0.578876425233124
6        0.0175        0.0746372926935245        0.7922        0.805583811137978
7        0        0.0136816942420446        0.8666        0.873038927418502
8        0        0.00142465303541955        0.8777        0.875649170774102
9        0        0.00019681354630113        0.8799        0.873770528426424

mello 发表于 2011-1-8 19:32

真是谢谢了{:{02}:}
页: [1]
查看完整版本: 请dingd帮个帮指点一下小弟一下!