Hi there, I encounter the problem of calculating the value of integrals, the code is given as follows:
r1 = 2; r2 = 4; r3 = r2 - r1; d = 5; syms y x real tri = []; for i = 1 : d tri = [tri ; sin(20*i*x)]; end for i = 1 : d tri = [tri ; cos(20*i*x)]; end tri = [1; tri];trig = []; for i = 1 : dtrig = [trig ; sin(20*i*x)]; end for i = 1 : dtrig = [trig ; cos(20*i*x)]; endtrig = [1; trig];cl1 = -log(abs(2*sin(10*x))); cl2 = int(-log(abs(2*sin(0.5*y))), 0, 20*x); fi1 = [cl1; cl2]; fi2 = fi1;ny1 = size(fi1,1); ny2 = size(fi2,1); ny = ny1 + ny2; Ga1 = sym([ 0 zeros(1,d) 1./sym(1:d); 0 1./(sym(1:d)).^2 zeros(1,d)]); Ga2 = Ga1; ep1 = fi1 - Ga1*tri; ep2 = fi2 - Ga2*trig;epp1 = matlabFunction(ep1*ep1'); epp2 = matlabFunction(ep2*ep2');E1 = integral(epp1,-r1,0,'ArrayValued',true); E2 = integral(epp2,-r2,-r1,'ArrayValued',true);
In my code cl1 and cl2 are the Clausen functions which can be decomposed as series of trigonometric functions. The problem is that there are Inf values in the calculation results of E1 and E2, which should not be there at all.
E1 =
0.1135 -Inf -Inf Inf
>> E2
E2 =
0.0501 -Inf -Inf Inf
The function cl2 itself is expressed in terms of a integration, so I am not sure if any complication will be generated by the structure of cl2 here.
Could someone help me to figure out which step I got wrong here ? Thank you !
Best Answer