This question is a follow-up to a previous question.
I need to perform a Fourier Transformation on an experimental data in time-domain, as shown in Fig 1. With the kind help from Daniel Lichtblau and BlacKow, I have already obtained the spectral distribution (in Fig 2) of this time-domain data.
The codes are shown below
SetDirectory[NotebookDirectory[]];
name = "try.txt";
a = Import[name, "Table"];
ListLinePlot[a, PlotRange -> All, Joined -> False, Mesh -> Full, Axes -> False, Frame -> True, AspectRatio -> .75, LabelStyle -> Directive[Black, FontSize -> 18], FrameLabel -> {{"Amplitude", None}, {"Time (fs)", None}}, ImageSize -> {400, 300}]
data = a;
{times, vals} = Transpose[data];
IFT[(w_)?NumberQ, vals_, times_] := Total[vals*Exp[(-I)*2 \[Pi]*w*times]]/Length[times];
Plot[Abs[IFT[w, vals, times]], {w, 0.16, 0.26}, PlotRange -> All, Frame -> True, Axes -> False, LabelStyle -> Directive[Black, FontSize -> 18], AspectRatio -> .75, FrameLabel -> {{"Amplitude", None}, {"Frequency (1/fs)", None}}, ImageSize -> {400, 300}]
The problem is that the spectral distribution in Fig 2 is a little far away from my theoretical expectation, which should be a Gaussian-like distribution, according to my experimental condition. But Fig 2 has too many peaks, not a single-peak Gaussian-like distribution.
The multi-peak distribution in Fig 2 may be caused by the imperfection in the experiment. Fig 3 is an enlarged figure of Fig 1. In Fig 3, the red curve corresponds to a fitting function of the experimental blue dots. If everything is perfect, the sampling period should be the same. But due to the unstable condition of the scanning Piezo in experiment, the sampling period was changing all the time, as shown in Fig 3. It was hard to calibrate the condition of the Piezo.
The codes for Fig 3 are:
Show[ListPlot[a, PlotRange -> {{0, 200}, All}], Plot[2931.8 + 11000/3 E^(-(t^2/45000)) Sqrt[2/\[Pi]] Cos[25/66 \[Pi] (-2.0314 + t)], {t, 0, 200}, PlotStyle -> {Red}, PlotRange -> All], Axes -> False, Frame -> True, AspectRatio -> .2, FrameLabel -> {"Time (fs)", "Intensity"}, LabelStyle -> Directive[Black, FontSize -> 18], ImageSize -> {1000, 200}]
My dream is to remove the multi-peak structure (frequency noises) in Fig 2, and obtain a single peak in a Gaussian-like distribution. Is it possible to remove the frequency noises? Any suggestion or help will be highly appreciated.