CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   Main CFD Forum (https://www.cfd-online.com/Forums/main/)
-   -   Gauss-Seidel vs. SOR (https://www.cfd-online.com/Forums/main/11235-gauss-seidel-vs-sor.html)

pXYZ April 15, 2006 13:26

Gauss-Seidel vs. SOR
 
Hi,

I have written a little program which solves an equation system (3x3) with a Jacobi- or Gauss-Seidel-procedure.

There is no doubt that the Jacobi-solver needs much more iterations to solve the problem than Gauss-Seidel.

I wonder that a successive over relaxation with Gauss-Seidel (SOR) does not lead to a further reduction of iterations. What could be the reason?

Thanks for help.

johannes April 16, 2006 10:15

Re: Gauss-Seidel vs. SOR
 
As you said you tried it with 3x3 matrices. Try it with some 100x100 matrices and see what happens. There can be many causes for the problem you described.

rt April 16, 2006 11:54

Re: Gauss-Seidel vs. SOR
 
Dear

Probably you don't use optimum over-relaxation parameter, this parameter usually is found with numerical experiment but 1.7 is usually good choice.

good luck

pXYZ April 17, 2006 18:01

Re: Gauss-Seidel vs. SOR
 
omega=1.7 ???

I thought it should be around between 0 and 1. I tested it but it does not improve my convergency.

I cannot see any reason why 10x10 should lead to a different behaviour than 3x3. Could you try to give me an explanation?

Thanks.

Darren April 17, 2006 22:40

Re: Gauss-Seidel vs. SOR
 
Having omega between 0 and 1 is under-relaxation, so omega should definately be >1 (and as said 1.7 usually does ok).

What is your matrix?? Iterative methods generally get used for sparse, diagonally dominant problems (like discrete PDE operators).

Also as said, the difference between SOR and GS is going to become more noticable as the size of the matrix increases (like 100's by 100's).

The convergence of iterative methods has alot to do with the spectral properties of the matrix (eigenvalues)

sam April 19, 2006 12:01

Re: Gauss-Seidel vs. SOR
 
when omega = 1 . it is simply as GS. value greater than 1 means overrelaxation and less mean uder relaxation.

rt April 19, 2006 14:47

Re: Gauss-Seidel vs. SOR
 
For better understanding the effect of omega (0<omega<2 is convergent) on system behavior, i suggest you to vary omega with small step size, between 0 and 2, and investigate variation of number of iterations with variation of omega, so select optimom value.

Also the number of iterations is completely function of system behavior e.g., when we deal with ill-posed systems (have large condition number) usually we don't acheive performance when we switch from GS to SOR. For such systems preconditionnig and application of non-stationary iterative methods (e.g. CG, BICGSTAB or GMRES) is good cure.


All times are GMT -4. The time now is 06:19.