24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1196  |  回复: 3

箭头

金虫 (小有名气)

[求助] 急求1stOpt计算积分问题已有1人参与

小弟是菜鸟,最近一个数据,公式如下
急求1stOpt计算积分问题
Θ(tn)为常数,Aλi(t,λi)和tn为变量
tn      Aλi(t,λi)
0        1.2357
5        0.9815
10        0.8935
15        0.837
20        0.8057
25        0.7983
30        0.7903
35        0.7885

最终计算出Θ(tn)的数值,不知道代码如何写,急求各位高手帮忙
回复此楼

» 猜你喜欢

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

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

月只蓝

主管区长 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
箭头: 金币+20, 有帮助, 谢谢,先给20 2014-12-24 09:37:07
先1stopt拟合出
A和tn的关系式,记y=A,x=tn,得:
y = p1+p2*x+p3*x^2+p4*x^3+p5*x^4+p6*x^5+p7*x^6
式中参数
p1              1.23569635780248
p2              -0.0905374423191263
p3              0.0117012075219781
p4              -0.000936990967946798
p5              4.13502564435543E-5
p6              -9.14374359878871E-7
p7              7.90666667614666E-9


然后MATLAB计算积分:
clear all;clc
p1      =        1.23569635780248;
p2   =           -0.0905374423191263;
p3    =          0.0117012075219781;
p4   =           -0.000936990967946798;
p5     =         4.13502564435543E-5;
p6   =           -9.14374359878871E-7;
p7     =         7.90666667614666E-9;
bb=0:5:35;
for i=1:length(bb)
    b(i)=bb(i);
y(i)=quadgk(@(x) (1-10.^(-(p1+p2*x+p3*x.^2+p4*x.^3+p5*x.^4+p6*x.^5+p7*x.^6)) )./(p1+p2*x+p3*x.^2+p4*x.^3+p5*x.^4+p6*x.^5+p7*x.^6),0,b(i)   );
end
[b' y']

计算结果:
  tn             θ
    0              0
    5.0000    4.2468
   10.0000    8.9838
   15.0000   13.9813
   20.0000   19.1609
   25.0000   24.4170
   30.0000   29.6961
   35.0000   35.0191

以上思路仅是计算θ随着tn变化的情况。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
2楼2014-12-23 21:42:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

箭头

金虫 (小有名气)

引用回帖:
2楼: Originally posted by 月只蓝 at 2014-12-23 21:42:27
先1stopt拟合出
A和tn的关系式,记y=A,x=tn,得:
y = p1+p2*x+p3*x^2+p4*x^3+p5*x^4+p6*x^5+p7*x^6
式中参数
p1              1.23569635780248
p2              -0.0905374423191263
p3              0.0117012075219781
p4    ...

不好意思,我忘记加上y和x的关系式了,跟你这个算的很接近,y=0.7860+exp(-0.1499*x),最后算积分是用1stOpt算的吗,麻烦帮忙看一下下面这段代码是否有误
f2 = int(((1-10^(-0.7860-0.4490*exp(-0.1499*x)))/(0.7860+0.4490*exp(-0.1499*x))), x=0:35)
3楼2014-12-24 09:36:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

引用回帖:
3楼: Originally posted by 箭头 at 2014-12-24 09:36:41
不好意思,我忘记加上y和x的关系式了,跟你这个算的很接近,y=0.7860+exp(-0.1499*x),最后算积分是用1stOpt算的吗,麻烦帮忙看一下下面这段代码是否有误
f2 = int(((1-10^(-0.7860-0.4490*exp(-0.1499*x)))/(0 ...

积分我是用MATLAB算的。
因为1.5版本的1stopt不支持积分计算。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
4楼2014-12-24 10:33:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 箭头 的主题更新
信息提示
请填处理意见