Integration of a function with modified Bessel function of the first kind.
2 views (last 30 days)
Show older comments
Hi,
I want to create the function mentioned below on matlab:
Where all the variables are defined numbers (k,s=1,p=6,nc=84,..), W`k is a complex vector and Iν(z) is the modified Bessel function of the first kind.
The integral is function of z.
I'm trying to get the intergral values(not considering the log factor in this case).

f = @(z) ((exp(-s.*z.*((p.*nc)+Sigma2^-2)))./((norm(avg_ww(kk,:)).*sqrt(p.*nc.*z)).^(nc-1))).*besseli(nc-1,2.*s.*(norm(avg_ww(kk,:)).*sqrt(p.*nc.*z))).*besseli(0,2.*s.*(1./Sigma2).*sqrt(z.*abs(Uh)^2));
upper_limit = linspace(0.1,40); % upper limit of the integral (randomly chosen)
xval = arrayfun(@(uplim) integral(f, 0, uplim, 'ArrayValued',true), upper_limit);
Can you please advise if my integration is correct? because it doesn't feel like it
2 Comments
David Goodmanson
on 2 Jun 2020
Edited: David Goodmanson
on 10 Jun 2020
Hi Anthony,
Youd had better go back and check your parentheses placements, because right now I_0(...) is part ot the argument of the I_(nc-1) bessel function. That may not be the only bad one, I don't know.
Answers (0)
See Also
Categories
Find more on Bessel functions in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!