peymanmw
(Peyman Moradweysi)
February 5, 2016, 1:14pm
1
Hello, Can someone help me?
Mathematica is able to compute fourier transform of y’ and y’’ in term of unknown function y -individually- but appears it can’t evaluate Fourier transform of y’+y’’ , See picture:
In[1]:= FourierTransform[ \!\(
\*SubscriptBox[\(\[PartialD]\), \(r\)]\(y[r]\)\), r, \[Xi]]
Out[1]= -I \[Xi] FourierTransform[y[r], r, \[Xi]]
In[2]:= FourierTransform[ \!\(
\*SubscriptBox[\(\[PartialD]\), \({r, 2}\)]\(y[r]\)\), r, \[Xi]]
Out[2]= -\[Xi]^2 FourierTransform[y[r], r, \[Xi]]
In[3]:= FourierTransform[ \!\(
\*SubscriptBox[\(\[PartialD]\), \(r\)]\(y[r]\)\) + \!\(
\*SubscriptBox[\(\[PartialD]\), \({r, 2}\)]\(y[r]\)\), r, \[Xi]]
Out[3]= FourierTransform[
Derivative[1][y][r] + (y^\[Prime]\[Prime])[r], r, \[Xi]]
Also Integrate does not apply linearity by default:
Integrate[y'[x] + y''[x], x]
Integrate[y'[x] + y''[x], {x, 0, 1}]
Perhaps it is because the two terms may have singularities that cancel out when summed.
You can force FourierTransform to apply linearity, for example with a replacement rule:
fourierLinearity =
HoldPattern@FourierTransform[a_ + b_, c__] :>
FourierTransform[a, c] + FourierTransform[b, c];
FourierTransform[y'[x] + y''[x], x, \[Xi]] //. fourierLinearity
kayh
(Kay Herbert)
February 5, 2016, 6:39pm
3
I agree, I think it’s a bug in FourierTransform[], it should apply linearity!
I don’t see the problem with Integrate:
In[38]:= Integrate[y’[x] + y’'[x], x]
Out[38]= y[x] + Derivative[1][y][x]
kayh
(Kay Herbert)
February 5, 2016, 6:59pm
4
It looks like the other integral transforms apply linearity as well:
In[1]:= LaplaceTransform[y’[x] + y’'[x], x, s]
Out[1]= s LaplaceTransform[y[x], x, s] +
s^2 LaplaceTransform[y[x], x, s] - y[0] - s y[0] - Derivative[1][y][0]
In[2]:= FourierSinTransform[y'[t] + y''[t], t, \[Omega]]
Out[2]= -\[Omega] (FourierCosTransform[y[t],
t, \[Omega]] + \[Omega] FourierSinTransform[y[t], t, \[Omega]] -
Sqrt[2/\[Pi]] y[0])
In[3]:= FourierTransform[y'[t] + y''[t], t, \[Omega]]
Out[3]= FourierTransform[
Derivative[1][y][t] + (y^\[Prime]\[Prime])[t], t, \[Omega]]
In[4]:= FourierCosTransform[y'[t] + y''[t], t, \[Omega]]
Out[4]= -\[Omega]^2 FourierCosTransform[y[t],
t, \[Omega]] + \[Omega] FourierSinTransform[y[t], t, \[Omega]] -
Sqrt[2/\[Pi]] (y[0] + Derivative[1][y][0])
I didn’t test other generalities:
If Integrate applied linearity by default, it would get the following integral wrong:
Integrate[1/x - 1/Sin[x], {x, 0, 1}]
peymanmw
(Peyman Moradweysi)
February 5, 2016, 8:38pm
6
Thank you very much.
I enjoyed from your helpful Comments.
I learned very important points … Good luck.
kayh
(Kay Herbert)
March 19, 2016, 2:22am
7
Unfortunately version 10.4 still has not tackled the Fourier transform.
kayh
(Kay Herbert)
April 21, 2016, 9:35pm
8
Unfortunately 10.4.1 still hasn’t fixed the FourierTransform linearity issue maybe someone can pass this on to the right person?
In[6]:= FourierTransform[y'[t], t, \[Omega]]
Out[6]= -I \[Omega] FourierTransform[y[t], t, \[Omega]]
In[7]:= FourierTransform[y''[t], t, \[Omega]]
Out[7]= -\[Omega]^2 FourierTransform[y[t], t, \[Omega]]
In[8]:= FourierTransform[y'[t] + y''[t], t, \[Omega]]
Out[8]= FourierTransform[
Derivative[1][y][t] + (y^\[Prime]\[Prime])[t], t, \[Omega]]