My question falls under purview of turbulent flows. I want to add an initial perturbation, for which I have a given energy spectrum (say$ E(k)=ak^4e^{-bk^2} $). The steps involved in getting these perturbation is as follows:
- Choose random values for $u\in (-1,1)$
- Fourier transform: $u(x,y,z)\rightarrow\hat{u}(k)$
- Make $\hat{u}$ solenoidal $\hat{u}'=\hat{u}-\hat{k}.\hat{u}/k^2$
- Scale $\hat{u}'$ with the given energy spectrum
- Take inverse transform: $\hat{u}'(k)\rightarrow u(x,y,z)$
How to proceed when I have to give perturbations at discrete points, in which case $u(x,y,z)$ is available at discrete points $(x_i,y_j,z_k)$?