New Reply

Conjugate gradient for nonsymmetric problem

 
Share Thread Thread Tools
Jul1-11, 02:58 PM   #1
 

Conjugate gradient for nonsymmetric problem


Hi, I was wondering if it is possible to adapt the conjugate gradient method (or if there's a variation of the method) for nonsymmetrical boundary value problems.

For example, I want to solve something like a 2D square grid, where [itex]f(x)=0[/itex] for all [itex]x[/itex] on the boundary of the square, [itex]f(x_{i0,j0})=1[/itex] and [itex]f(x_{i1, j1})[/itex] for specified interior points, and

[tex]f(x_{i,j})=.1f(x_{i-1,j})+.2f(x_{i+1,j})+.3f(x_{i,j-1})+.4f(x_{i,j+1})[/tex]

for all other interior grid points [itex]x_{i,j}[/itex]. If I change [itex]f_{i,j}[/itex] to a 1D vector [itex]y_{k}[/itex], and then write the system of eqs out, the matrix [itex]A[/itex] in the system I want to solve ([itex]Ay=b[/itex]) is not symmetric.

From what I've read, the conjugate gradient method only works for symmetric [itex]A[/itex], so I was wondering if there is some way to adapt the method, or a different way of setting up the system. If not, what would be the fastest way to solve this problem? (The only reason I'm interested in conjugate gradient is b/c I heard it's fast.) I'm currently using successive over-relaxation (SOR). Is there anything faster?
PhysOrg.com
PhysOrg
science news on PhysOrg.com

>> Galaxies fed by funnels of fuel
>> The better to see you with: Scientists build record-setting metamaterial flat lens
>> Google eyes emerging markets networks
Jul4-11, 06:21 PM   #2

Math 2012
 
Recognitions:
Science Advisor Science Advisor
Quote by ihggin View Post
From what I've read, the conjugate gradient method only works for symmetric [itex]A[/itex], so I was wondering if there is some way to adapt the method, or a different way of setting up the system.
Google for "biconjugate gradient algorithm".

There are some traps here, because biconjugate gradient can be unstable. A practical stabilized version is the BiCGSTAB algorithm (also in Google!)
Jul4-11, 06:27 PM   #3
 
Recognitions:
Gold Membership Gold Member
Science Advisor Science Advisor
Retired Staff Staff Emeritus
Another way the conjugate gradient method could be used is to solve
[tex]A^T A y = A^T b[/tex]
Jul5-11, 02:25 PM   #4

Math 2012
 
Recognitions:
Science Advisor Science Advisor

Conjugate gradient for nonsymmetric problem


Quote by Hurkyl View Post
Another way the conjugate gradient method could be used is to solve
[tex]A^T A y = A^T b[/tex]
True, provided it doesn't matter that the condition number of [itex]A^T A[/itex] is the square of the condition number of [itex]A[/itex], which may decrease the numerical precision.

The biconjugate gradient method also involves multiplyng vectors by [itex]A^T[/itex], but it doesn't degrade the condition number.
Jun11-12, 07:08 AM   #5
 
Anybody has Conjugate Gradient code snippet in C or C#?
New Reply
Thread Tools


Similar Threads for: Conjugate gradient for nonsymmetric problem
Thread Forum Replies
help on conjugate gradient programm in matlab Math & Science Software 0
Preconditioned conjugate gradient method General Math 0
Is the conjugate gradient algorithm susceptible to getting into local minima? Calculus 1
Conjugate Gradient Methods Aren't Working General Math 1
numerical LA: Cholesky & Conjugate gradient method Linear & Abstract Algebra 0