From: tobias sauter on
Hi,

I try to solve the Taylor-Goldstein equation for gravity waves. The second order differential equation is solved in frequency space. To get a solution in physical space I need to do a one-sided 2D inverse fourier transform.

I thought it seems reasonable considering only positive frequencies while setting all negative frequencies to zero. Unfortunately, the solution is still symmetric.

So my question is: How can I perform a one-sided 2D inverse fourier transformation?
From: Greg Heath on
On Jul 26, 4:48 am, "tobias sauter" <sauter.tob...(a)gmail.com> wrote:
> Hi,
>
> I try to solve the Taylor-Goldstein equation for gravity waves. The second order differential equation is solved in frequency space. To get a solution in physical space I need to do a one-sided 2D inverse fourier transform.
>
> I thought it seems reasonable considering only positive frequencies while setting all negative frequencies to zero. Unfortunately, the solution is still symmetric.
>
> So my question is: How can I perform a one-sided 2D inverse fourier transformation?

My question is:

If you need help, why don't you provide enough information so we know
exactly what you are talking about?

Greg
From: tobias sauter on
Greg Heath <heath(a)alumni.brown.edu> wrote in message <67c5a63b-e3db-46cf-9648-cfaca13fa404(a)c10g2000yqi.googlegroups.com>...
> On Jul 26, 4:48 am, "tobias sauter" <sauter.tob...(a)gmail.com> wrote:
> > Hi,
> >
> > I try to solve the Taylor-Goldstein equation for gravity waves. The second order differential equation is solved in frequency space. To get a solution in physical space I need to do a one-sided 2D inverse fourier transform.
> >
> > I thought it seems reasonable considering only positive frequencies while setting all negative frequencies to zero. Unfortunately, the solution is still symmetric.
> >
> > So my question is: How can I perform a one-sided 2D inverse fourier transformation?
>
> My question is:
>
> If you need help, why don't you provide enough information so we know
> exactly what you are talking about?
>
> Greg

Hi Greg,

I will try to describe it better ... this is not so easy.

So, lets assume I do have a gaussian curve hx in 2D, so I take the fourier transform
hn = fft2(hx)

then we solve the differential equation (Taylor-Goldstein) as following
wsurf(m,n) = 1i.*(ks.*U+ls.*V).*hn;
sigma = (U.*ks + V.*ls).^2;
m2 = sqrt((bv./sigma).*(ks.^2+ls.^2)).*sign(sigma);
w = wsurf .* exp(1i .* m2 .* (nz .* 1.e3));
where ks and ls are the wavenumbers, U and V are the wind velocities, m2 is the vertical wavenumber, wsurf the boundary condition and nz the height above ground.
w is our solution in frequency space.

After the equation is solved in frequency space we transform the solution back
wxz = real(ifft2(w));

I did not add the indices for clarity. wxz is symmetric as it should be, but I do just need one-side of the spectrum to transform back as the solution depends on the wind direction.

Hope I could clarify my problem. If you need the whole code I would be pleased to send it to you.

cheers, tobias