作者hsuanboy (压力)
看板MATLAB
标题[讨论] 积分上限
时间Wed Jun 19 18:48:43 2013
f(x)=0.000000000001602*x^5+0.000000003780060*x^4-0.000000034210106*x^3
-0.000166783274301*x^2+0.000174904487267*x+1.103243573568212
th1
∫ f(x)dx
0 1
------------- = --------- ==> 可求出th1
90 100
∫ f(x)dx
0
th2
∫ f(x)dx
th1 1
------------- = --------- ==> 可求出th2
90 100
∫ f(x)dx
0
th3
∫ f(x)dx
th2 1
------------- = --------- ==> 可求出th3
90 100
∫ f(x)dx
0
以上是我想表达的形式 第一次的积分下限初始值是0 每次求出积分上限值之後
会在带入到下一行的积分下限去做运算 之後又会再求出积分上限值
依此类推 做100次
下面是我自己写的程式 程式有跑出来 但是最後得到角度很怪
再做积分时 我是用径度去做就算 算出上限的值都为劲度
for回圈的最後有再换成角度的形式 角度是以g表示
程式如下:
syms x theatai
th(1)=0;
f=0.000000000001602*x^5+0.000000003780060*x^4-0.000000034210106*x^3-0.000166783274301*x^2+0.000174904487267*x+1.103243573568212;
area=int(f,0,pi/2);
integralf=@(s,t) int(f,x,s,t);
for i=1:100
sol = solve(integralf( th(i),theatai )-area*1/100);
d = eval(sol);
e = d(find( 0<d & d<pi/2 ));
th(i+1) = e;
g(i) = e*(180/pi);
end
奇怪的问题点在 : 实际用手去计算每个角度之间的间距值应该是会越来越大才对
但是我算完後 每个角度的间距都是差0.9度 程式哪边有写错呢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 120.126.11.120
1F:→ ejialan:你的f在[0,π/2]几乎为常数 所以算出来的角度也是这样 06/20 09:48
2F:→ ejialan:都是0.9度附近 而且我算是间格越来越小 06/20 09:50