- #1
vector_problems
- 10
- 0
I am trying to solve the poisson equation with neumann BC's in a 2D cartesian geometry as part of a Navier-Stokes solver routine and was hoping for some help.
I am using a fast Fourier transform in the x direction and a finite difference scheme in the y. This means the poisson equation becomes
-kx^2p_{i,j}+(((p_{i,j-1})-(2*p_{i,j})+(p_{i,j+1}))/(dy^2))=RHS
with dp/dy=0 at the boundaries being enforced using ghost boundary points
this inverts easily for all wavenumbers except when kx=0 when the matrix is singular.
I was wondering if anyone had any experience dealing with this problem and any standard methods of solving such a problem?
Can you simply set p_{hat}=0 at these points and then convert back to real space?
Thanks
I am using a fast Fourier transform in the x direction and a finite difference scheme in the y. This means the poisson equation becomes
-kx^2p_{i,j}+(((p_{i,j-1})-(2*p_{i,j})+(p_{i,j+1}))/(dy^2))=RHS
with dp/dy=0 at the boundaries being enforced using ghost boundary points
this inverts easily for all wavenumbers except when kx=0 when the matrix is singular.
I was wondering if anyone had any experience dealing with this problem and any standard methods of solving such a problem?
Can you simply set p_{hat}=0 at these points and then convert back to real space?
Thanks