9
$\begingroup$

I have heard that a fast fourier transform can be used to solve the poisson problem when the boundary conditions are all one type... Sine series for dirichlet, cosine for neumann, and both for periodic. Considering a 2D rectangular domain, suppose two opposite sides have periodic boundary conditions, and the other two have dirichlet conditions. Can a fast fourier transform be applied to solve this problem efficiently? If so, wouldn't the exponential form be sufficient? If not, what solver would you recommend for this situation?

| cite | improve this question | | | | |
$\endgroup$
  • 2
    $\begingroup$ Have you seen this? $\endgroup$ – J. M. Jan 19 '12 at 17:18
  • $\begingroup$ @J.M.: Could you elaborate on this paper in an answer form? $\endgroup$ – Paul Apr 11 '12 at 19:11
  • $\begingroup$ I sorta kinda have my hands full on RL stuff, so it might take a while. But, if you've taken a glimpse at the paper, you'll see how the various DCTs/DSTs are suitably modified to suit boundary conditions... $\endgroup$ – J. M. Apr 14 '12 at 2:42
1
$\begingroup$

You can separate the problem along the direction with Dirichlet conditions and then solve the 2D periodic problems. Exactly yours combination of boundary conditions is covered by Wilhelmson, Ericksen, JCP 1976 and it is easy to implement. You could also use FISHPACK, but it is old and buggy. (I'm working on a small solver for similar cases, but it is not ready for release yet and it will not be a big MPI thing, just for shared memory machines.)


Actually, my code is now an MPI thing and it solves this problem too: https://github.com/LadaF/PoisFFT

| cite | improve this answer | | | | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.