A double integral with a singularity point
4 次查看(过去 30 天)
显示 更早的评论
I am trying to perform a double integration of function as follows
I know how to write the double integral in MATLAB. As you can see this function is not very easy to compute due to that fact that the variables are at the denominator. Assume I call the integrad fun1.
I wrote the following code to solve it
gamma2min=@(gamma1)gamma1;
I= integral2(fun1,0,+inf,gamma2min,+inf);
I get the following error
Minimum step size reached near x = 0.160784. There may be a
singularity, or the tolerances may be too tight for this problem.
I also understand what the problem is, but I don't know how to fix it.
Thanks for any help
0 个评论
回答(1 个)
Mike Hosea
2015-2-26
The lines gamma1 == 0 and gamma1 == gamma2, are already on the boundary. Good. Apparently, f(gamma1,gamma2) --> 0 as gamma2 --> inf. If not, then you have trouble on that point. I think INTEGRAL is a bit more powerful with edge singularities. To leverage that, you can try the iterated method.
I = integral2(fun1,0,inf,gamma2min,inf,'method','iterated')
I'm not terribly optimistic, however.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Gamma Functions 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!