求助 关于matlab求积分问题
我想求这个含参量t的积分:syms s t
>> int(1/(1+abs(s-t)^3),s,0,inf)
ans =
-1/6*(-3^(1/2)*pi*signum(t)-2*log(t*signum(t)+1)+log(1-t*signum(t)+t^2*signum(t)^2)-2*3^(1/2)*atan(1/3*(-1+2*t*signum(t))*3^(1/2)))/signum(t)
t=1;subs(ans)%取参量t=1代入的结果
ans =
2/9*3^(1/2)*pi+1/3*log(2)
而如果验证一下(特别的取参量t=1)
syms s
>> int(1/(1+(abs(s-1)^3)),s,0,inf)
ans =
1/3*3^(1/2)*pi+1/3*log(2)
发现两个结果有出入啊,这是为什么呢?我matlab应用很生疏,请大家不吝赐教,谢谢!
[ 本帖最后由 落花时节 于 2008-6-21 20:57 编辑 ] 楼主用的什么版本?我用7.04得出的结果:
syms t;r=int(1/(1+abs(s-t)^3),s,0,inf)
r =
NaN
看来版本高就是好啊,呵呵。。。
回复 2楼 的帖子
谢谢你的回复!你在定义变量用symst(是把t定义为符号变量);我用的是语句symsst;(把s和t都定义为符号变量了再对s求含参量t的积分);我想结果可能和这句有关吧.我用的是版本6.5的,我手算出来结果是5/18*3^(1/2)*pi+1/3*log(abs(t+1))-1/6*log(t^2-t+1)+1/3*3^(1/2)*atan((2*t-1)/3^(1/2)).哪个对啊?困惑啊...
[ 本帖最后由 落花时节 于 2008-6-22 14:42 编辑 ] 不管是symst 还是symsst
结果都是
ans =
NaN
回复 楼主 的帖子
你这个积分只能分两种情况计算你手算的是s-t<0的情况,还有一种s-t>0的情况
回复 5楼 的帖子
我是分积分区间来积分的,s从0到t,再从t到正无穷大(t是要求大于等于0的,我忘了注明了,不好意思)从而去掉绝对值得到两个积分式的和,得到上面结果的。回复 4楼 的帖子
请问你用的是什么版本的matlab啊?回复 7楼 的帖子
2008a 呵呵,我身边的同学有用6.5的,7.0的,这个版本我头次听说,太落伍了,不过我手算有结果啊?这又是为什么呢? 比较奇怪,我运行syms s t 的时候,结果也是NAN,为什么呢?我运行了下syms s,即取t=1时,和楼主的结果是一样的。于是我想看看是不是有什么奇异点,导致积分结果为NAN。ezplot(1/(1+abs(s-1)^3))(t取1时);ezplot(1/(1+abs(s-t)^3))。发现前者的曲线是连续的,后者的曲线压根就没有。不明白其间的道理。望各位指正。 ezplot(1/(1+abs(s-t)^3))当然没有了
s t 都在变 我之后help ezplot了,ezplot(fun2)含两个参数,它的意思是画fun2=0的曲线。因为/(1+abs(s-t)^3))>0。所以没图像了。刚学matlab多指正。
页:
[1]