| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 860 人关注过本帖
标题:类似伽玛函数 带参变量广义积分 积分结果是求极限
只看楼主 加入收藏
xuchen11
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-7-2
结帖率:0
收藏
已结贴  问题点数:20 回复次数:6 
类似伽玛函数 带参变量广义积分 积分结果是求极限
请各位 或版主帮个忙 我要算一个概率密度函数 而且里面还有变量  k  n  ; 在给k取2  n取3 的时候 概率密度函数 f(z)
积分如下  syms z; syms z; int(x^5*z^2*exp(-x*(z+1)/2)/2^7,x,0,inf)    自己手动算完的结果是  f(z)=60*z^2/(z+1)^6.经检验确实算得没错,是个概率密度函数。手动计算用了 伽玛函数的性质  伽玛(n)=(n-1)!
下面说说matlab的计算结果  请各位帮助
计算方法一:
syms z; syms z; int(x^5*z^2*exp(-x*(z+1)/2)/2^7,x,0,inf)
结果:
Definite integration: Can't determine if the integral is convergent.Need to know the sign of --> 1/2+1/2*zWill now try indefinite
??? Error using ==> sym/sym (char2sym)
integration and then take limits.limit(-1/64*z^2*(exp(-1/2*x*(1+z))*x^5+5*exp(-1/2*x*(1+z))*x^5*z+10*x^5*z^2*exp(-1/2*x*(1+z))+10*exp(-1/2*x*(1+z))*x^5*z^3+5*exp(-1/2*x*(1+z))*x^5*z^4+exp(-1/2*x*(1+z))*x^5*z^5+10*exp(-1/2*x*(1+z))*x^4+40*exp(-1/2*x*(1+z))*x^4*z+60*exp(-1/2*x*(1+z))*x^4*z^2+40*exp(-1/2*x*(1+z))*x^4*z^3+10*exp(-1/2*x*(1+z))*x^4*z^4+80*exp(-1/2*x*(1+z))*x^3+240*exp(-1/2*x*(1+z))*x^3*z+240*exp(-1/2*x*(1+z))*x^3*z^2+80*exp(-1/2*x*(1+z))*x^3*z^3+480*exp(-1/2*x*(1+z))*x^2+960*exp(-1/2*x*(1+z))*x^2*z+480*exp(-1/2*x*(1+z))*x^2*z^2+1920*exp(-1/2*x*(1+z))*x+1920*exp(-1/2*x*(1+z))*x*z+3840*exp(-1/2*x*(1+z))-3840)/(1+z)^6,x = inf) is not a valid symbolic expression.

Error in ==> D:\MATLAB6p5\toolbox\symbolic\@sym\sym.m
On line 92  ==>    S = char2sym(x);

Error in ==> D:\MATLAB6p5\toolbox\symbolic\@sym\maple.m
On line 81  ==>    result = sym(result);

Error in ==> D:\MATLAB6p5\toolbox\symbolic\@sym\int.m
On line 51  ==>    r = maple('map','int',f,[x.s '=' a.s '..' b.s]);

这里提示错误  在积分过程中   被积函数中 z^2 没有用  因此 我把它去掉  再来计算:
计算方法二:
syms z; syms z; int(x^5*exp(-x*(z+1)/2)/2^7,x,0,inf)

结果
ans =

limit(-1/64*(exp(-1/2*x*(1+z))*x^5+5*exp(-1/2*x*(1+z))*x^5*z+10*exp(-1/2*x*(1+z))*x^5*z^2+10*exp(-1/2*x*(1+z))*x^5*z^3+5*exp(-1/2*x*(1+z))*x^5*z^4+exp(-1/2*x*(1+z))*x^5*z^5+10*exp(-1/2*x*(1+z))*x^4+40*exp(-1/2*x*(1+z))*x^4*z+60*exp(-1/2*x*(1+z))*x^4*z^2+40*exp(-1/2*x*(1+z))*x^4*z^3+10*exp(-1/2*x*(1+z))*x^4*z^4+80*exp(-1/2*x*(1+z))*x^3+240*exp(-1/2*x*(1+z))*x^3*z+240*exp(-1/2*x*(1+z))*x^3*z^2+80*exp(-1/2*x*(1+z))*x^3*z^3+480*exp(-1/2*x*(1+z))*x^2+960*exp(-1/2*x*(1+z))*x^2*z+480*exp(-1/2*x*(1+z))*x^2*z^2+1920*exp(-1/2*x*(1+z))*x+1920*exp(-1/2*x*(1+z))*x*z+3840*exp(-1/2*x*(1+z))-3840)/(1+z)^6,x = inf)



是个极限形式  因此我求了极限
>> syms z;limit(-1/64*(exp(-1/2*x*(1+z))*x^5+5*exp(-1/2*x*(1+z))*x^5*z+10*exp(-1/2*x*(1+z))*x^5*z^2+10*exp(-1/2*x*(1+z))*x^5*z^3+5*exp(-1/2*x*(1+z))*x^5*z^4+exp(-1/2*x*(1+z))*x^5*z^5+10*exp(-1/2*x*(1+z))*x^4+40*exp(-1/2*x*(1+z))*x^4*z+60*exp(-1/2*x*(1+z))*x^4*z^2+40*exp(-1/2*x*(1+z))*x^4*z^3+10*exp(-1/2*x*(1+z))*x^4*z^4+80*exp(-1/2*x*(1+z))*x^3+240*exp(-1/2*x*(1+z))*x^3*z+240*exp(-1/2*x*(1+z))*x^3*z^2+80*exp(-1/2*x*(1+z))*x^3*z^3+480*exp(-1/2*x*(1+z))*x^2+960*exp(-1/2*x*(1+z))*x^2*z+480*exp(-1/2*x*(1+z))*x^2*z^2+1920*exp(-1/2*x*(1+z))*x+1920*exp(-1/2*x*(1+z))*x*z+3840*exp(-1/2*x*(1+z))-3840)/(1+z)^6,x,inf)


结果:
ans =

limit((-1/64*exp(-1/2*x*(1+z))*x^5-5/64*exp(-1/2*x*(1+z))*x^5*z-5/32*exp(-1/2*x*(1+z))*x^5*z^2-5/32*exp(-1/2*x*(1+z))*x^5*z^3-5/64*exp(-1/2*x*(1+z))*x^5*z^4-1/64*exp(-1/2*x*(1+z))*x^5*z^5-5/32*exp(-1/2*x*(1+z))*x^4-5/8*exp(-1/2*x*(1+z))*x^4*z-15/16*exp(-1/2*x*(1+z))*x^4*z^2-5/8*exp(-1/2*x*(1+z))*x^4*z^3-5/32*exp(-1/2*x*(1+z))*x^4*z^4-5/4*exp(-1/2*x*(1+z))*x^3-15/4*exp(-1/2*x*(1+z))*x^3*z-15/4*exp(-1/2*x*(1+z))*x^3*z^2-5/4*exp(-1/2*x*(1+z))*x^3*z^3-15/2*exp(-1/2*x*(1+z))*x^2-15*exp(-1/2*x*(1+z))*x^2*z-15/2*exp(-1/2*x*(1+z))*x^2*z^2-30*exp(-1/2*x*(1+z))*x-30*exp(-1/2*x*(1+z))*x*z-60*exp(-1/2*x*(1+z))+60)/(1+z)^6,x = inf)


事实上这个结果是对的 只是matlab 还是没有真正的求极限 这个结果的表达式虽然长 ,但是前面那些求和项都是零  和我手动自己算的结果是一致的。
看上去 手动算还要快一些  问题是 我要求 更一般的情况  怎么样能让matlab直接出最终结果 而不是极限式子呢。

例如我想求  k=4  n=3这种情况下的密度函数  f(z)  其积分形式为syms x; syms z; int(x^5*z^2*exp(-x*(z+1)/2)*2^(-8)*12*(-1/8*z^2*x^2*exp(-1/2*z*x)-1/2*z*x*exp(-1/2*z*x)-exp(-1/2*z*x)+1/8*x^2*exp(-1/2*x)+1/2*x*exp(-1/2*x)+exp(-1/2*x))^2,x,0,inf)     这个式子我没写错。然后matlab 也计算出结果了  我手动算得结果 是12项关于z的函数求和。 但是matlab算出了 非常非常长 带极限的式子  我脑袋都大了 请大家帮帮忙 应该怎么办 谢谢了! 我Q  203零3662  如果帮我搞定  可以酬谢  非常感谢
搜索更多相关主题的帖子: determine 计算方法 matlab 极限 而且 
2013-07-02 16:14
xuchen11
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-7-2
收藏
得分:0 
继续问               
2013-07-03 11:10
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:20 
厉害

DO IT YOURSELF !
2013-07-03 13:32
xuchen11
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-7-2
收藏
得分:0 
继续问        
2013-07-04 09:28
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
根据我多年混论坛的经验  您就一直继续问吧  哈哈

DO IT YOURSELF !
2013-07-04 10:01
xuchen11
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-7-2
收藏
得分:0 
继续请教
2013-07-11 15:06
source123
Rank: 1
等 级:新手上路
帖 子:2
专家分:7
注 册:2013-7-11
收藏
得分:0 
clc
syms x s;
sym z positive
s=int(x^5*z^2*exp(-x*(z+1)/2)/2^7)
lim1=limit(s,x,0)
lim2=limit(s,x,inf)
lim2-lim1

运行结果:
60*z^2/(z+1)^6

s=1/128*z^2/(-1/2*z-1/2)^6*((-1/2*z-1/2)^5*x^5*exp((-1/2*z-1/2)*x)-5*(-1/2*z-1/2)^4*x^4*exp((-1/2*z-1/2)*x)+20*(-1/2*z-1/2)^3*x^3*exp((-1/2*z-1/2)*x)-60*(-1/2*z-1/2)^2*x^2*exp((-1/2*z-1/2)*x)+120*(-1/2*z-1/2)*x*exp((-1/2*z-1/2)*x)-120*exp((-1/2*z-1/2)*x))

z>-1时,z+1>0.sym z positive即取z>0的部分, x趋于正无穷时,确保limit(exp((-1/2*z-1/2)*x),x,inf)=0收敛。


[ 本帖最后由 source123 于 2013-7-12 00:58 编辑 ]
2013-07-12 00:50
快速回复:类似伽玛函数 带参变量广义积分 积分结果是求极限
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015434 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved