I need to solve following partial differential equation with Fourier transform numerically.
$
\frac{\partial T}{\partial t} = \nabla(c\nabla T)
$
where T is temperature, c heat conductivity and t is time.
Now the problem is c itself has space dependence. Had it not been after Fourier transform equation would look like
$
\frac{\partial \tilde T}{\partial t} = -k^2c\tilde T
$
How should Fourier transform of first equation look like?
What I am doing is as follows:
-
Take Fourier transform of T. Multiply corresponding values of c(in real space) and T (in Fourier space). i.e. evaluate $g = k\cdot i \cdot c \cdot\tilde T$
-
Take $g$ back to real space. Now $g = c\nabla T$
-
Take $g$ back to Fourier space . Evaulate $f = k \cdot i \cdot \tilde g$
-
Take $f$ to real space. Now $f$ should be $\nabla c \nabla T$
But results of the above procedure are not matching with Finite Difference approach. What am I missing here? Using convolution theorem seems difficult. Is using convolution theorem the only option?
Thanks for any help in advance
Best Answer
To evaluate $\nabla(c\nabla T)$ in Fourier space, you need to do the following. Suppose that you are given $\hat T$, which is the Fourier image of $T$.
Now you have $r = \nabla\cdot(c\nabla T)$. I think in practice, you don't need step 6, because the left hand side $\partial T/\partial t$ can be computed in Fourier space directly from $\hat T$. You can also write all the steps in one formula $$ \frac{\partial\hat T}{\partial t} = ik\cdot\mathrm{FT} (c\cdot\mathrm{IFT}(ik\hat{T})). $$