CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   Main CFD Forum (https://www.cfd-online.com/Forums/main/)
-   -   Poisson eq. with Chebyshev collocation (https://www.cfd-online.com/Forums/main/4492-poisson-eq-chebyshev-collocation.html)

 Paul March 5, 2002 02:09

Poisson eq. with Chebyshev collocation

Dear all, I am trying to solve Poisson equation with Chebyshev collocation method. It is essentially a direct method, via two multiplications on the eigenvetors. However, I can only solve it with following b.c (in either direction)

1) Both Dirichlet 2) One Dirichlet and one Robin\

For Neumann conditions, I always fails. If anyone has experience in this topic, please kindly provide your comments.

P.S. from this link http://www.math.psu.edu/shen_j/spectral/projects/, you can download the proj2.pdf. From the second set of boundary conditions of problem 2, you may find a trick on this method !?

-Paul

 Patrick Godon March 6, 2002 11:41

Re: Poisson eq. with Chebyshev collocation

Hi Paul,

I had a look at your 'homework' and it seems that the second bc in probleme 2 is that

u(-1)=u'(-1)

or that the function is equal to its own derivative... I am not sure what physical sens this makes and it does not seem very clear, unless u(-1)=u'(-1)=0 ....

However, it is a condition on u(-1) not on u'(-1). And the main problem here would be that you have to compute the derivative of the function (u') at the boundary point and then impose this value on u at that boundary, and this would not be self-consistent.. an easy way would just be to change a0 in the expansion of u, such that u=u'.

However, the best way to do it, is as follows: Usually if you have a bc like u'=0, you change the value of u at the boundary such that u'=0. This is done by writting u'(xi) as a function of u(xj). Then you get one equation u'(xi=-1) = 0 (xi=-1, i=0), this gives you a relation between all the u(xj), j=0, 1, ..N. You then solve for u(xj=-1) as a function of the other u(xj). Here, I guess you could also solve for u'=u, u'(xi=-1)=u(xj=-1), you will have one equation where u(xj=1) appears on both sides, and you will have to solve this explicitly for u(xj=-1).

You have to bear in mind that the value that you impose in this particular case on u(x=-1) is computed from the numerical probleme, it is not a fixed value like 0, -1, -5, or whatever. Thus if there are small numerical oscillations, and you solve also as a function of time, these oscillations can amplify. Fortunately it is not the case here.

Let me know if I was clear enough,

Cheers, Patrick

 Paul March 7, 2002 03:24

Re: Poisson eq. with Chebyshev collocation

Thanks Patrick. The algorithm your described is very effecient in treating Helmholtz equtions occuring in solving NSe. For that equation, I always can get correct solution (I see). What I am really concerned is the Poisson equation which with the Neumann boundary conditon may pose a ill-condition matrix. But unfortunately, I can not find a reference EXACT on this topic. If you can make time, try to solve this simple 1D Poisson equation with Direct Chebyshev collocation method

u_xx = f in x=[-1,1] and f = - pi^2 sin(pi*(x-0.5))

exact solution: u = sin(pi*(x-0.5)); at x=-1, u_x = 0; at x=1, u=1.

 All times are GMT -4. The time now is 14:16.