You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If I generate pull requests for the conjugate orthogonal conjugate gradient (COCG) method and conjugate A-orthogonal conjugate residual (COCR) method, will they be accepted? I notice that COCG and COCR are not in the roadmap, but these are useful methods.
COCG is a modification of CG for non-Hermitian, complex symmetric matrices. In fact, COCG is equivalent to BiCG for complex symmetric matrices: BiCG uses two matrix-vector multiplications (a.k.a. mat-vecs), A x and Aᵀ x, per iteration, but for complex symmetric A we need only one mat-vec because Aᵀ = A, and this simplification is basically what COCG is. Therefore, COCG produces the same convergence curve as BiCG for complex symmetric A, but it is twice as fast as BiCG in time. BiCGStab(l) also uses two mat-vecs per iteration, so for some problems COCG converges faster than BiCGStab(l).
Similarly, COCR is a modification of the conjugate residual (CR) method for complex symmetric matrices. (CR is a simplification of GMRES for Hermitian matrices.) COCR also uses one mat-vec per iteration, and it is known to produce less oscillatory convergence curves than COCG.
A good overview of the two methods can be found in this freely available journal article. The implementation of these two methods is as simple as CG. I need these methods for my research, so I would be happy to create pull requests implementing them, if the requests will be accepted even though they are not in the roadmap.
The text was updated successfully, but these errors were encountered:
I have implemented CR and COCR as well. Because the code for CR and COCR depends on the changes made for COCG in #289, I will create a PR for CR and COCR as soon as #289 is merged.
If I generate pull requests for the conjugate orthogonal conjugate gradient (COCG) method and conjugate A-orthogonal conjugate residual (COCR) method, will they be accepted? I notice that COCG and COCR are not in the roadmap, but these are useful methods.
COCG is a modification of CG for non-Hermitian, complex symmetric matrices. In fact, COCG is equivalent to BiCG for complex symmetric matrices: BiCG uses two matrix-vector multiplications (a.k.a. mat-vecs), A x and Aᵀ x, per iteration, but for complex symmetric A we need only one mat-vec because Aᵀ = A, and this simplification is basically what COCG is. Therefore, COCG produces the same convergence curve as BiCG for complex symmetric A, but it is twice as fast as BiCG in time. BiCGStab(l) also uses two mat-vecs per iteration, so for some problems COCG converges faster than BiCGStab(l).
Similarly, COCR is a modification of the conjugate residual (CR) method for complex symmetric matrices. (CR is a simplification of GMRES for Hermitian matrices.) COCR also uses one mat-vec per iteration, and it is known to produce less oscillatory convergence curves than COCG.
A good overview of the two methods can be found in this freely available journal article. The implementation of these two methods is as simple as CG. I need these methods for my research, so I would be happy to create pull requests implementing them, if the requests will be accepted even though they are not in the roadmap.
The text was updated successfully, but these errors were encountered: