COHSS

版本 1.0.1.0 (303.1 KB) 作者: Enrico Bertolazzi
COHSS solver for complex symmetrix linear system
418.0 次下载
更新时间 2017/10/26

查看许可证

COHSS solver for complex symmetrix linear system
Description: The script cohss solve iteratively a complex linear system
(1) (B+i*C) (x+i*y) = b+i*c
with B and C semi-SPD (SPD=Symmetric and Positive Definite matrices) and B+C an SPD matrix. The algorithm uses COCG (Conjugate Orthogonal Conjugate Gradient) or COCR (Conjugate Orthogonal Conjugate Residual) iterative solver preconditioned with the preconditioners proposed in the preprint:

Preconditioning complex symmetric linear systems, by Enrico Bertolazzi and Marco Frego
Mathematical Problems in Engineering, Volume 2015 (2015)
http://dx.doi.org/10.1155/2015/548609

Usage: To solve linear system Mat*x = rhs use

[x,res] = cohss( Mat, rhs, varargin )

where x is the solution and res is a vector with the residual history.

res(1) is the first resisual norm using L2 norm
res(k) is the ratio of the residual at the k-1 iterate divided by the first residual.
The matrix Mat must be sparse complex with real(Mat) and imag(Mat) semi definite positive. varargin are optional arguments. The arguments are couples string values. The first group of option change the standard parameters of the iterative solver:

'DISPLAY', nd = display iteration and residual every nd iter
'MAX_ITER', maxiter = maximum number of allowed iterations
'TOLERANCE', tol = iteration stop when ||r||/||r0|| < tol
'X0', x0 = initial guess
The second group of option change the way the solver work selecting the appropriate sub-solver

'SOLVER', handle = select iterative solver @cogr or @cocr for outer iterations. If not specified COCR (@cocr) is used as iterative solver for outer iterations.
'ILU', arg = use ILU matlab preconditioner, arg is the arguemnt passed to the ILU routine and can be 'nofill' or 'crout'
'POLY', dgr = use Jacobi preconditioner of degree dgr as preconditioner
'CHPOLY', dgr = use Chebyshev preconditioner of degree dgr as preconditioner
'DELTA', delta = windows where eigenvalues of Chebyshev polynomial are shrinked. Default delta = 0.2
'SSOR', [omega,dgr] = use SSOR preconditioner of degree dgr
'SCALE', scale = scale >= 1 extra scaling factor
Five example scripts: test_for_paper_nXX.m are used for the computation of tables and images described in the preprint.

The scrips cocg and cocr which implements Conjugate Orthogonal Conjugate Gradient and Conjugate Orthogonal Conjugate Residual algorithms used by cohss can be used also standalone.

Author:

Enrico Bertolazzi
Department of Industrial Engineering
University of Trento
enrico.bertolazzi@unitn.it

引用格式

Enrico Bertolazzi (2024). COHSS (https://www.mathworks.com/matlabcentral/fileexchange/47242-cohss), MATLAB Central File Exchange. 检索来源 .

MATLAB 版本兼容性
创建方式 R2013b
兼容任何版本
平台兼容性
Windows macOS Linux
类别
Help CenterMATLAB Answers 中查找有关 Polynomials 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
版本 已发布 发行说明
1.0.1.0

Updated reference

1.0.0.0