Fourier transform of heat equation 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
 A: Not sure why I can't comment below your question, so I'm posting a comment here:  The fourier transform will be a convolution, which is a bit nasty to work with, i.e. you get that:
$$\mathcal{F}(c T) = \mathcal{F}(c) \star \mathcal{F}(T)$$
Here $\mathcal{F}(f) = $ Fourier transform of $f$. Note that
$$  \mathcal{F}(c) \star \mathcal{F}(T) (s) = \int_{\infty}^{\infty}  \mathcal{F}(c)(s - t) \mathcal{F}(T) (t) dt$$
This will couple all the Fourier modes together.  In my humble opinion, the Fourier transform is going to be a bit nasty numerically, though maybe still do-able.  Unfortunately, I am not able to suggest another alternative.
A: 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$.


*

*Compute $\hat g(k)=ik\hat T(k)$. This corresponds to real space gradient.

*$g= \mathrm{IFT}\,\hat g$, the inverse Fourier transform.

*$f=cg$.

*$\hat f = \mathrm{FT}\,f$, the Fourier transform.

*Compute $\hat r(k)=ik\cdot\hat f(k)$. Note the scalar product. This corresponds to real space divergence.

*$r= \mathrm{IFT}\,\hat r$, the inverse Fourier transform.


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})).
$$
