Hello, everyone.
I have been trying to get the solution of [Eta] (in the code below) using Fouriertransform + InverseFouriertransform. But I faced some problems which gave me a kind of singular point behavior, even though there is no singular point in G[t] function that I used (at least I removed the candidate singular point). I don't know where this comes from. Here is the code.
Remove["Global`*"];
\[Lambda] = 800000;
A1 = 0.6; A2 = -1.8;
n = 2.48; k = 4.38 ;
\[Xi] = \[Lambda]/(4 \[Pi] k);
\[Chi] = \[Lambda]/(4 \[Pi] n);
v = 5894;
P1 = Re[(2 (n + I k))/(1 - (n + I k)^2) (A1 + I A2)]; P2 =
Im[(2 (n + I k))/(1 - (n + I k)^2) (A1 + I A2)];
ReflNormExpTot[t_, offset_] = -6 (Cos[0.25 t] + offset) Exp[-(t/10)^2];
Sol = NSolve[
Integrate[ReflNormExpTot[t, offset], {t, -100, 100},
Assumptions -> offset \[Element] Reals ] == 0, offset][[1]]
offsetT = Sol[[1, 2]];
start = SessionTime[];
G[t_] = (P1 Sin[v/\[Chi] t] +
P2 Cos[v/\[Chi] t] Sign[t]) Exp[-Abs[t] v/\[Xi]];
SS[\[Omega]_] =
FourierTransform[ReflNormExpTot[t, offsetT], t, \[Omega]];
GG[\[Omega]_] = FourierTransform[G[t], t, \[Omega]];
Plot[{Re[SS[\[Omega]]], Im[SS[\[Omega]]]}, {\[Omega], -20, 20},
PlotRange -> All, PlotStyle -> {Blue, Red}]
Plot[{Re[GG[\[Omega]]], Im[GG[\[Omega]]]}, {\[Omega], -20, 20},
PlotRange -> All, PlotStyle -> {Blue, Red}]
\[Eta][t_?NumericQ] := \[Lambda]/(16 \[Pi]^2 v)
NIntegrate[(SS[\[Omega]]/
GG[\[Omega]]) Exp[-I \[Omega] t], {\[Omega], -10, 10} ,
MaxPoints -> 1000];
Plot[{Re[\[Eta][t]], Im[\[Eta][t]]}, {t, -20, 20},
PlotStyle -> {Blue, Red}, PlotRange -> All]
(SessionTime[] - start)/60
In the code, ReflNormExpTot[t] is not a continuous function. So there is no reason why I got the spike (singular-like) after Fouriertransform. When I used NIntegrate (with a limited integration range) instead of FourierTransform as follows,
SS[\[Omega]_?NumericQ] :=
NIntegrate[
1/(2 \[Pi])^(1/2) (ReflNormExpTot[t, offset] /. Sol) Exp[
I \[Omega] t], {t, -100, 100}, MaxPoints -> 1000];
there was no singular-like point. Also, when I use InverseFourierTransform to retrieve [Eta][t], it does not stop and runs forever, even though the SS[\Omega], GG[\Omega] are simple functions. If I use NIntegrate here, the result of [Eta][t] can be obtained quickly (at some limited integration ranges) and looks 'not bad' except many discontinuous regions. Does anyone know what is the reason for these ? Thank you in advance.
This is my version. In[121]:= $Version
Out[121]= "10.2.0 for Microsoft Windows (64-bit) (July 7, 2015)"