Re: Fourier and InverseFourier
- To: mathgroup at smc.vnet.net
- Subject: [mg75589] Re: Fourier and InverseFourier
- From: rob <josh2499 at hotmail.com>
- Date: Sun, 6 May 2007 01:45:22 -0400 (EDT)
- References: <f0v61b$8u4$1@smc.vnet.net> <f11gpl$kph$1@smc.vnet.net> <200705020756.DAA05199@smc.vnet.net> <f1c3qr$gou$1@smc.vnet.net>
Daniel Lichtblau wrote: > rob wrote: > >>Hi, thanks for responding. No, I'm not sure it exists. I >>tried Exp[-t^2] and it doesn't work either. I haven't yet >>found a case where InverseFourierTransform[] works so I >>suspect I'm still doing something wrong. >> >>Jens-Peer Kuska wrote: >> >> >>>Hi, >>> >>>and you are sure that >>> >>>FourierTransform[Exp[-t], t, w] >>> >>>is exist ? Because >>> >>>Integrate[Exp[-t]*Exp[I*w*t], {t, -Infinity, Infinity}]/Sqrt[2Pi] >>> >>>gives the correct error message that the integral does not converge >>>and in general Fourier transforms are only defined for quadratic >>>integrable functions and Exp[-t] is not quadratic integrable. >>> >>>Regards >>> Jens >>> >>>rob wrote: >>> >>> >>> >>>>I kind person on this ng (Gulliet) recently contributed a >>>>convolution scheme which works nicely to plot x2 below: >>>> >>>>conv[f1_, f2_] := Module[{u}, Evaluate[Integrate[f1[u] f2[# >>>>- u], {u, 0, #}]] &] >>>> >>>>x2[t_] := convolve[Sin[t], Exp[-t]][t] >>>> >>>>Plot[x2[t], {t, 0, 15}, PlotRange -> All] >>>> >>>>Wondering if I could achieve the same thing in the freq. >>>>domain, I tried what I thought should give the same result >>>>in x3: >>>> >>>>fs = FourierTransform[Sin[t], t, w] >>>>fe = FourierTransform[Exp[-t], t, w] >>>> >>>>x3[t_] := InverseFourierTransform[fs*fe, w, t] >>>> >>>>Plot[x3[t], {t, 0, 15}, PlotRange -> All] >>>> >>>>I find this does not work, getting this err message and Mathematica >>>>(v.5.1) didn't stop in over 30 minutes. >>>> >>>>NIntegrate::ploss: Numerical integration stopping due to >>>>loss of precision. Achieved neither the requested >>>>PrecisionGoal nor AccuracyGoal; suspect one of the >>>>following: highly oscillatory integrand or the true value of >>>>the integral is 0. If your integrand is oscillatory on a >>>>(semi-)infinite interval try using the option >>>>Method->Oscillatory in NIntegrate. >>>> >>>>Since I'm using the internal integrals of >>>>InverseFourierTransform I don't know how to try the >>>>suggestion of Method->Oscillatory as the message suggests. >>>> >>>>I changed the Sin[t] to t and the process gave no err >>>>messages and finished in just a few minutes. The plot had >>>>axes but nothing on it. >>>> >>>>Can someone give me any hints as what might work? > > > > Your explicit convolution integrates from 0 to t. Your attempt with > FT/IFT involves integrations from -infinity to infinity. In order to use > FT/IFT you'd need to have cutoff multipliers such as UnitStep, to get > results comparable to the explicit code. Also for functions like Exp[-t] > (with no cutoff) the FT does not exist because it grows too fast at > -infinity. > > > Daniel Lichtblau > Wolfram Research > Sir, thank you for the suggestion. I added the UnitStep[t] as below: fs = FourierTransform[UnitStep[t]*Sin[t], t, w] fe = FourierTransform[UnitStep[t]*Exp[-t], t, w] x3[t_] := InverseFourierTransform[fs*fe, w, t] Plot[x3[t], {t, 0, 15}, PlotRange -> All] The x3 now computes and plots but gives a narrowband sine output, different from the original convolution which is a wide band pulse (looks like a Gaussian pulse with an undershoot). So at least I'm getting an answer. Any suggestion which might yield the same result as the original convolution -- which I repeat below for clarity? conv[f1_, f2_] := Module[{u}, Evaluate[Integrate[f1[u] f2[# - u], {u, 0, #}]] &] x2[t_] := convolve[Sin[t], Exp[-t]][t] Plot[x2[t], {t, 0, 15}, PlotRange -> All] Thanks again, Rob
- Follow-Ups:
- Re: Re: Fourier and InverseFourier
- From: Daniel Lichtblau <danl@wolfram.com>
- Re: Re: Fourier and InverseFourier
- References:
- Re: Fourier and InverseFourier
- From: rob <josh2499@hotmail.com>
- Re: Fourier and InverseFourier