# Wrong evaluation of integral in Mathematica? Numerical vs symbolic [closed]

I have Mathematica 11.0.1 in Ubuntu 16.04. My problem is that I have an integral but Mathematica is evaluating it wrong.
Here is the integral:

 Chop[(1/T)*Integrate[Exp[-I*3*ω*t]*(β Cos[ω t]^2) Exp[I*1*ω*t], {t, 0, T}]]


Using basic ideas($\frac{1}{4} e^{-2 i \pi\omega t}+\frac{1}{4} e^{2 i \pi \omega t}+\frac{1}{2}$), it is clear that the integral should be $\beta/4$. But Mathematica gives this result:

0.195312 β


Ingredients: (i) Choose $T=0.01$, $\omega = 2\pi/T$.

(i) Where am I going wrong?
Why such anomaly is coming?
(I really would like to know this. I think most of the time I know how to use Mathematica but then such wondrous things happen, and then again I am inside a Shutter Island(start again).)

(ii) If I choose $T=0.1$, answer is zero.

(iii) Variables($T$, $\omega$) are need to be declared or defined Globally, as they are required at so many places in my code(this was just an example). If I have to change the value then it has to be done at one place(globally defined), not locally at each defining places(cumbersome).

(iv) Finally, I have this

HB[a_, b_, t_,
k_] := {{0, -($q[a, t] +$w[b, t]*Exp[I k a])}, {-($q[a, t] +$w[b, t]*Exp[-I k a]), 0}};
where,  $q[a, t] = a*Cos[ω t]^2, and$w = b


instead of (β Cos[ω t]^2) in the integrand.

(V) *Speed is the only problem in the received answer(thanks a lot for the answer, though), if there is any idea which can be used by optimizing the code and decreasing the computation time, it will be a great help. Instead of 3 and 1 in exponential, I have $i$ and $j$ inside a Table, forming a square matrix, that is where the code received in answer was very slow. *

ParallelTable[AbIntHB[a, b, i, j, k], {i, 0, 21}, {j, 0, 21}];


where AbIntHB[a, b, i, j, k] = Above Integral with HB matrix in between the Exponentials with i->Exp[-I*i*ω*t] and j->Exp[I*j*ω*t] indices.

• restart your kernel? I get Chop[(1/T)* Integrate[ Exp[-I*3*\[Omega]*t]*(\[Beta] Cos[\[Omega] t]^2) Exp[ I*1*\[Omega]*t], {t, 0, T}] /. {T -> .01, \[Omega] -> 2 Pi /.01}] --> 0.25 beta
– grbl
Commented Feb 6, 2017 at 13:11
• @Feyre It is working but for my program it is necessary to define the variables(T) Globally not locally. Please see the addendum(ii) and (iii), again due to global assigning
– L.K.
Commented Feb 6, 2017 at 13:20
• You need to use rational constants. T = 1/100; \[Omega] = 100 2 Pi; Chop[(1/T) Evaluate[ Integrate[ Exp[-I 3 \[Omega] t]*(\[Beta] Cos[\[Omega] t]^2) Exp[ I \[Omega] t], {t, 0, T}]]]. Commented Feb 6, 2017 at 13:32
• how 'a' and 'b' are defined? Commented Feb 6, 2017 at 13:42
• @Stitch just real variables
– L.K.
Commented Feb 6, 2017 at 13:44

T and ω must be either undefined or exact numbers. If they are defined globally and you don't want to change it, you can do the following:

ClearAll[T, ω];
T = 0.01; ω = 2 Pi/T;
Chop[Block[{T = $T, ω =$w}, (1/T)*
Integrate[
Exp[-I*3*ω*t]*(β Cos[ω t]^2) Exp[
I*1*ω*t], {t, 0, T}]] /. {$T -> T,$w -> ω}]


0.25 β

ClearAll[T, ω];
T = 0.01; ω = 2 Pi/T;
int[a_, b_, t_, k_] :=
Chop[Block[{T = $T, ω =$w},
HB = {{0, -(a*Cos[ω t]^2 +
b*Exp[I k a])}, {-(a*Cos[ω t]^2 + b*Exp[-I k a]), 0}};
{{0, -(a*Cos[ω t]^2 +
b*Exp[I k a])}, {-(a*Cos[ω t]^2 + b*Exp[-I k a]), 0}};
(1/T) Integrate[Exp[-I*3*ω*t] HB Exp[I*1*ω*t], {t, 0, T}]] /. {$T -> T,$w -> ω}]

int[-β, 0, t, k]


{{0, 0.25 β}, {0.25 β, 0}}

• Aah thanks. Please see my edit(addendum). I would like to know the problem, why it happened(if it makes sense to ask this).
– L.K.
Commented Feb 6, 2017 at 13:36
• The issue here is exact calculation vs. numeric approximation. Related here Commented Feb 6, 2017 at 13:50
• Good one. Is there a way to speed it up. as insteas of 3 and 1 in exponential, I have i and j and it is now very slow(for evaluating all of them).
– L.K.
Commented Feb 6, 2017 at 14:11
• Probably you can optimize the assignment of variables, but the integration takes the most time. Try numeric integration in parallel? Commented Feb 6, 2017 at 14:28
• Just a last and most essential query, can we use Module instead of Block. Will it still work?
– L.K.
Commented Feb 6, 2017 at 14:34