Clear Filters
Clear Filters

I try to calculate the following integral

5 views (last 30 days)
syms r sigma
assume(sigma>0)
assume(k>0 & k<1)
L=int(r*besseli(0,a*r)*besselk(0,a*r)),r,sigma,1)
Invalid expression. When calling a function or indexing a variable, use parentheses. Otherwise, check for mismatched delimiters.

Accepted Answer

Torsten
Torsten on 26 Nov 2023
Edited: Torsten on 26 Nov 2023

More Answers (1)

Walter Roberson
Walter Roberson on 26 Nov 2023
I had to guess about what k was in the code.
syms r sigma
assume(sigma>0)
syms a; assume(a>0 & a<1)
L=int(r*besseli(0,a*r)*besselk(0,a*r),r,sigma,1)
L = 
  5 Comments
Walter Roberson
Walter Roberson on 26 Nov 2023
format long g
syms r
sigma = 0.5;
k = 1/2;
L1 = int(r*besseli(0,k*r)*besselk(0,k*r),r,sigma,1)
L1 = 
L2 = double(L1)
L2 =
0.450428766292829
L3 = vpaintegral(r*besseli(0,k*r)*besselk(0,k*r),r,sigma,1)
L3 = 
0.450429
L4 = integral(@(r) r.*besseli(0,k*r).*besselk(0,k*r), sigma, 1)
L4 =
0.450428766292829

Sign in to comment.

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!