24小时热门版块排行榜    

查看: 3365  |  回复: 12
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

缱莳霰瑜

金虫 (初入文坛)

[求助] 1stopt解方程组

现有一个方程组
Variable b,a;
Function b=x+z^2*(1-x)*(1-y)*(y+(1-x)*(1-y)*a)*(y+z^2*y^2);
Data;
   0.19530 1.00328  //b0 a0
   0.18546 0.52781  //b1 a1
   0.17207 0.03061  //b2 a2
假设c是一组点,可以通过一个点c1对应的6个值,即上面的数据来解b,a 通过解得x,y,z求得的目标值和实际值进行比较。
现在我想把c其它点对应的值一起放进来求其它点对应的x,y,z值,怎么编译?谢谢啦
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : 数据_1.txt
  • 2014-02-17 21:35:33, 38.07 K

» 猜你喜欢

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

缱莳霰瑜

金虫 (初入文坛)

谢谢您,修改了一下程序

Variable b0,a0,b1,a1,b2,a2;
Function b0=x+z^2*(1-x)*(1-y)*(y+(1-x)*(1-y)*a0)*(y+z^2*y^2);
b1=x+z^2*(1-x)*(1-y)*(y+(1-x)*(1-y)*a1)*(y+z^2*y^2);
b2=x+z^2*(1-x)*(1-y)*(y+(1-x)*(1-y)*a2)*(y+z^2*y^2);
Data;
0.17442        0.95736 0.15891        0.4845        0.15504        0.03101
0.16667        0.99225 0.15891        0.49225        0.13953        0.01938
0.17407        1 0.15556        0.5        0.14444        0.02222
数据运行后显示的是
====== 输出结果 =====

No.         Observed b0        Calculated b0
1        0.17442        0.641018956046972
2        0.15891        0.2027538816322
3        0.15504        -0.206553665837146
4        0.16667        0.664461961474227
5        0.15891        0.209682680487494
6        0.13953        -0.232461334312898
7        0.17407        0.678790760329521
8        0.15556        0.213261479342789
9        0.14444        -0.225012264796893
1.为什么上面显示的是b0,而实际上面是b0,b1,b2的值都在上面?
2.我只是选择了数据中的前3列,怎么写会让上述的值按照第一行的读取顺序算出此行b0,b1,b2的x,y,z值,第二行的x,y,z值,每行之间没有相互联系,能显示出每行的模拟值。
3.还有我想问这样数据的读取顺序是按照我设置参数的顺序读取的吗?为什么当我只给出单独一行数据的时候就不能计算了呢?
4.能不能画出模拟后每个b0,b1,b2的分布图?
谢谢各位大侠!!!!
13楼2014-02-19 17:06:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 13 个回答

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

★ ★ ★
感谢参与,应助指数 +1
缱莳霰瑜: 金币+3, 有帮助, 希望您再给我的代码详细一些,我的运行不出来。谢谢~~ 2014-02-19 16:17:59
没看明白楼主的描述,到底想求什么?
2楼2014-02-18 11:37:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

缱莳霰瑜

金虫 (初入文坛)

引用回帖:
2楼: Originally posted by dingd at 2014-02-18 11:37:35
没看明白楼主的描述,到底想求什么?

谢谢您。就是c是不在方程组的一个变量,c的变化对应一组b0,a0,b1,a1,b2,a2的变化,现在我可以将一个c对应的一组b0,a0,b1,a1,b2,a2值手动输入后,解出b,a.见下
====== 结果输出 =====

No        实测值b        计算值b
1        0.1953        0.1958163
2        0.18546        0.1844498
3        0.17207        0.1725639

这是一组的现在数据中想求任意c值对应下的实测和计算值,就是需要一个编译的将每个都求出来,怎么编译?
不好意思,请问您看懂了吗
3楼2014-02-18 15:36:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

引用回帖:
3楼: Originally posted by 缱莳霰瑜 at 2014-02-18 15:36:34
谢谢您。就是c是不在方程组的一个变量,c的变化对应一组b0,a0,b1,a1,b2,a2的变化,现在我可以将一个c对应的一组b0,a0,b1,a1,b2,a2值手动输入后,解出b,a.见下
====== 结果输出 =====

No        实测值b        计算值b
1        0. ...

你是想每组(或每行)b0,a0,b1,a1,b2,a2求出一组对应的x,y,z值吗?c根本就没用上?
4楼2014-02-18 16:18:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见